@evervault/evervault-react-native 0.3.0 → 0.4.3
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 +39 -50
- package/{lib → dist}/commonjs/components/Card/Card.js +2 -2
- package/dist/commonjs/components/Card/Card.js.map +1 -0
- package/{lib → dist}/commonjs/components/Card/CardCVC.js +7 -1
- package/dist/commonjs/components/Card/CardCVC.js.map +1 -0
- package/{lib → dist}/commonjs/components/Card/CardExpiry.js +13 -3
- package/dist/commonjs/components/Card/CardExpiry.js.map +1 -0
- package/{lib → dist}/commonjs/components/Card/CardHolder.js +8 -1
- package/dist/commonjs/components/Card/CardHolder.js.map +1 -0
- package/{lib → dist}/commonjs/components/Card/CardNumber.js +5 -0
- package/dist/commonjs/components/Card/CardNumber.js.map +1 -0
- package/{lib → dist}/commonjs/components/Card/context.js.map +1 -1
- package/{lib → dist}/commonjs/components/Card/index.js +0 -7
- package/dist/commonjs/components/Card/index.js.map +1 -0
- package/dist/commonjs/components/Card/types.js +2 -0
- package/{lib → dist}/commonjs/components/Card/types.js.map +1 -1
- package/{lib → dist}/commonjs/components/Card/utilities.js +2 -2
- package/dist/commonjs/components/Card/utilities.js.map +1 -0
- package/dist/commonjs/components/useForm.js +116 -0
- package/dist/commonjs/components/useForm.js.map +1 -0
- package/{lib → dist}/commonjs/index.js +1 -1
- package/{lib → dist}/commonjs/index.js.map +1 -1
- package/{lib → dist}/commonjs/native.js.map +1 -1
- package/{lib → dist}/commonjs/sdk.js +8 -2
- package/dist/commonjs/sdk.js.map +1 -0
- package/{lib → dist}/module/components/Card/Card.js +1 -1
- package/{lib → dist}/module/components/Card/Card.js.map +1 -1
- package/{lib → dist}/module/components/Card/CardCVC.js +6 -0
- package/dist/module/components/Card/CardCVC.js.map +1 -0
- package/{lib → dist}/module/components/Card/CardExpiry.js +13 -3
- package/dist/module/components/Card/CardExpiry.js.map +1 -0
- package/{lib → dist}/module/components/Card/CardHolder.js +8 -1
- package/dist/module/components/Card/CardHolder.js.map +1 -0
- package/{lib → dist}/module/components/Card/CardNumber.js +5 -0
- package/dist/module/components/Card/CardNumber.js.map +1 -0
- package/{lib → dist}/module/components/Card/context.js.map +1 -1
- package/dist/module/components/Card/index.js +2 -0
- package/dist/module/components/Card/index.js.map +1 -0
- package/dist/module/components/Card/types.js +2 -0
- package/{lib → dist}/module/components/Card/types.js.map +1 -1
- package/{lib → dist}/module/components/Card/utilities.js +2 -2
- package/dist/module/components/Card/utilities.js.map +1 -0
- package/dist/module/components/useForm.js +110 -0
- package/dist/module/components/useForm.js.map +1 -0
- package/dist/module/index.js +3 -0
- package/{lib → dist}/module/index.js.map +1 -1
- package/{lib → dist}/module/native.js.map +1 -1
- package/{lib → dist}/module/sdk.js +10 -4
- package/dist/module/sdk.js.map +1 -0
- package/{lib → dist}/typescript/src/components/Card/Card.d.ts +1 -2
- package/dist/typescript/src/components/Card/Card.d.ts.map +1 -0
- package/{lib → dist}/typescript/src/components/Card/CardCVC.d.ts.map +1 -1
- package/{lib → dist}/typescript/src/components/Card/CardExpiry.d.ts +1 -1
- package/{lib → dist}/typescript/src/components/Card/CardExpiry.d.ts.map +1 -1
- package/{lib → dist}/typescript/src/components/Card/CardHolder.d.ts +1 -1
- package/{lib → dist}/typescript/src/components/Card/CardHolder.d.ts.map +1 -1
- package/{lib → dist}/typescript/src/components/Card/CardNumber.d.ts.map +1 -1
- package/{lib → dist}/typescript/src/components/Card/context.d.ts +2 -3
- package/dist/typescript/src/components/Card/context.d.ts.map +1 -0
- package/dist/typescript/src/components/Card/index.d.ts +2 -0
- package/{lib → dist}/typescript/src/components/Card/index.d.ts.map +1 -1
- package/dist/typescript/src/components/Card/types.d.ts +35 -0
- package/dist/typescript/src/components/Card/types.d.ts.map +1 -0
- package/{lib → dist}/typescript/src/components/Card/utilities.d.ts +2 -3
- package/dist/typescript/src/components/Card/utilities.d.ts.map +1 -0
- package/dist/typescript/src/components/useForm.d.ts +22 -0
- package/dist/typescript/src/components/useForm.d.ts.map +1 -0
- package/dist/typescript/src/index.d.ts +4 -0
- package/dist/typescript/src/index.d.ts.map +1 -0
- package/{lib → dist}/typescript/src/native.d.ts.map +1 -1
- package/{lib → dist}/typescript/src/sdk.d.ts.map +1 -1
- package/package.json +16 -22
- package/src/components/Card/Card.tsx +2 -3
- package/src/components/Card/CardCVC.tsx +7 -1
- package/src/components/Card/CardExpiry.tsx +11 -2
- package/src/components/Card/CardHolder.tsx +7 -0
- package/src/components/Card/CardNumber.tsx +5 -0
- package/src/components/Card/context.tsx +7 -8
- package/src/components/Card/index.ts +0 -1
- package/src/components/Card/types.ts +40 -3
- package/src/components/Card/utilities.ts +4 -6
- package/src/components/useForm.tsx +172 -0
- package/src/index.tsx +9 -2
- package/src/native.ts +7 -7
- package/src/sdk.ts +12 -4
- package/lib/commonjs/components/Card/Card.js.map +0 -1
- package/lib/commonjs/components/Card/CardCVC.js.map +0 -1
- package/lib/commonjs/components/Card/CardExpiry.js.map +0 -1
- package/lib/commonjs/components/Card/CardHolder.js.map +0 -1
- package/lib/commonjs/components/Card/CardNumber.js.map +0 -1
- package/lib/commonjs/components/Card/index.js.map +0 -1
- package/lib/commonjs/components/Card/types.js +0 -6
- package/lib/commonjs/components/Card/utilities.js.map +0 -1
- package/lib/commonjs/components/Common/Error.js +0 -2
- package/lib/commonjs/components/Common/Error.js.map +0 -1
- package/lib/commonjs/components/index.js +0 -3
- package/lib/commonjs/components/index.js.map +0 -1
- package/lib/commonjs/sdk.js.map +0 -1
- package/lib/module/components/Card/CardCVC.js.map +0 -1
- package/lib/module/components/Card/CardExpiry.js.map +0 -1
- package/lib/module/components/Card/CardHolder.js.map +0 -1
- package/lib/module/components/Card/CardNumber.js.map +0 -1
- package/lib/module/components/Card/index.js +0 -3
- package/lib/module/components/Card/index.js.map +0 -1
- package/lib/module/components/Card/types.js +0 -2
- package/lib/module/components/Card/utilities.js.map +0 -1
- package/lib/module/components/Common/Error.js +0 -2
- package/lib/module/components/Common/Error.js.map +0 -1
- package/lib/module/components/index.js +0 -2
- package/lib/module/components/index.js.map +0 -1
- package/lib/module/index.js +0 -3
- package/lib/module/sdk.js.map +0 -1
- package/lib/typescript/src/components/Card/Card.d.ts.map +0 -1
- package/lib/typescript/src/components/Card/context.d.ts.map +0 -1
- package/lib/typescript/src/components/Card/index.d.ts +0 -3
- package/lib/typescript/src/components/Card/types.d.ts +0 -13
- package/lib/typescript/src/components/Card/types.d.ts.map +0 -1
- package/lib/typescript/src/components/Card/utilities.d.ts.map +0 -1
- package/lib/typescript/src/components/Common/Error.d.ts +0 -1
- package/lib/typescript/src/components/Common/Error.d.ts.map +0 -1
- package/lib/typescript/src/components/index.d.ts +0 -1
- package/lib/typescript/src/components/index.d.ts.map +0 -1
- package/lib/typescript/src/index.d.ts +0 -4
- package/lib/typescript/src/index.d.ts.map +0 -1
- package/src/components/Common/Error.tsx +0 -0
- package/src/components/index.ts +0 -1
- /package/{lib → dist}/commonjs/components/Card/context.js +0 -0
- /package/{lib → dist}/commonjs/native.js +0 -0
- /package/{lib → dist}/module/components/Card/context.js +0 -0
- /package/{lib → dist}/module/native.js +0 -0
- /package/{lib → dist}/typescript/src/components/Card/CardCVC.d.ts +0 -0
- /package/{lib → dist}/typescript/src/components/Card/CardNumber.d.ts +0 -0
- /package/{lib → dist}/typescript/src/native.d.ts +0 -0
- /package/{lib → dist}/typescript/src/sdk.d.ts +0 -0
package/README.md
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
# react-native-evervault-sdk
|
|
2
2
|
|
|
3
|
+
## [Documentation](https://docs.evervault.com/sdks/react-native)
|
|
4
|
+
Please see our documentation site for a full guide and reference.
|
|
3
5
|
|
|
4
6
|
## Installation
|
|
5
7
|
|
|
@@ -12,65 +14,52 @@ yarn add @evervault/evervault-react-native
|
|
|
12
14
|
```
|
|
13
15
|
|
|
14
16
|
## Usage
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
import { init } from '@evervault/evervault-react-native';
|
|
17
|
+
```tsx
|
|
18
|
+
import { init, Card, type CardPayload } from "@evervault/evervault-react-native"
|
|
18
19
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
const [cardData, setCardData] = useState<CardPayload | null>(null);
|
|
20
|
+
export default function App() {
|
|
21
|
+
const [cardData, setCardData] = useState<CardPayload | undefined>(undefined);
|
|
22
22
|
|
|
23
23
|
useEffect(() => {
|
|
24
|
-
async function
|
|
24
|
+
async function setupEvervault() {
|
|
25
25
|
try {
|
|
26
|
-
await init(
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
);
|
|
30
|
-
} catch (error) {
|
|
31
|
-
console.error(error);
|
|
26
|
+
await init(process.env.EXPO_PUBLIC_EV_TEAM_UUID, process.env.EXPO_PUBLIC_EV_APP_UUID);
|
|
27
|
+
} catch (err) {
|
|
28
|
+
throw new Error("Failed to initialize Evervault", err);
|
|
32
29
|
}
|
|
33
30
|
}
|
|
34
|
-
|
|
31
|
+
setupEvervault();
|
|
35
32
|
}, []);
|
|
36
33
|
|
|
37
34
|
return (
|
|
38
|
-
<
|
|
39
|
-
<
|
|
40
|
-
<Card
|
|
41
|
-
|
|
42
|
-
|
|
35
|
+
<ScrollView contentContainerStyle={styles.container}>
|
|
36
|
+
<Text style={styles.title}>evervault react native</Text>
|
|
37
|
+
<Card
|
|
38
|
+
onChange={setCardData}
|
|
39
|
+
onComplete={(payload) => console.log("Card Complete!", payload)}
|
|
40
|
+
style={styles.card}
|
|
41
|
+
>
|
|
42
|
+
<Text>Card Number</Text>
|
|
43
|
+
<Card.Number
|
|
44
|
+
placeholder="4242 4242 4242 4242"
|
|
45
|
+
style={styles.input}
|
|
46
|
+
/>
|
|
47
|
+
<Card.Expiry
|
|
48
|
+
placeholder="MM / YY"
|
|
49
|
+
style={styles.input}
|
|
50
|
+
/>
|
|
51
|
+
<Card.Holder
|
|
52
|
+
placeholder="John Doe"
|
|
53
|
+
style={styles.input}
|
|
54
|
+
/>
|
|
55
|
+
<Card.CVC
|
|
56
|
+
placeholder="523"
|
|
57
|
+
style={styles.input}
|
|
58
|
+
/>
|
|
59
|
+
</Card>
|
|
60
|
+
<Text style={styles.details}>{JSON.stringify(cardData, null, 2)}</Text>
|
|
61
|
+
<StatusBar style="auto" />
|
|
62
|
+
</ScrollView>
|
|
43
63
|
);
|
|
44
64
|
}
|
|
45
65
|
```
|
|
46
|
-
|
|
47
|
-
## Reference
|
|
48
|
-
### `init(teamUuid, appUuid)`
|
|
49
|
-
|
|
50
|
-
Initialize the Evervault SDK, this must be called before `encrypt` to set your Apps keys on the device.
|
|
51
|
-
|
|
52
|
-
### Options
|
|
53
|
-
|
|
54
|
-
| Type | Type | Required |
|
|
55
|
-
| -------- | ------ | -------- |
|
|
56
|
-
| teamUuid | string | yes |
|
|
57
|
-
| appUuid | string | yes |
|
|
58
|
-
|
|
59
|
-
### Returns
|
|
60
|
-
|
|
61
|
-
`Promise<void>`
|
|
62
|
-
|
|
63
|
-
### `encrypt(data)`
|
|
64
|
-
Encrypts data using [Evervault Encryption](https://docs.evervault.com/security/evervault-encryption).
|
|
65
|
-
|
|
66
|
-
To encrypt strings using the React Native SDK, simply pass a String or an Object into the `encrypt()` function.
|
|
67
|
-
|
|
68
|
-
### Options
|
|
69
|
-
|
|
70
|
-
| Type | Type | Required |
|
|
71
|
-
| ---- | ----------------------------- | -------- |
|
|
72
|
-
| data | String, Number, Object, Array | yes |
|
|
73
|
-
|
|
74
|
-
### Returns
|
|
75
|
-
|
|
76
|
-
`Promise<string>`
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.Card = void 0;
|
|
7
7
|
var _cardValidator = require("@evervault/card-validator");
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _useForm = require("../useForm");
|
|
10
10
|
var _utilities = require("./utilities");
|
|
11
11
|
var _CardNumber = require("./CardNumber");
|
|
12
12
|
var _context = require("./context");
|
|
@@ -24,7 +24,7 @@ function Card({
|
|
|
24
24
|
style
|
|
25
25
|
}) {
|
|
26
26
|
const [registeredFields, setRegisteredFields] = (0, _react.useState)(new Set());
|
|
27
|
-
const form = (0,
|
|
27
|
+
const form = (0, _useForm.useForm)({
|
|
28
28
|
initialValues: initialValue ?? {
|
|
29
29
|
cvc: '',
|
|
30
30
|
expiry: '',
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_cardValidator","require","_react","_useForm","_utilities","_CardNumber","_context","_sdk","_CardCVC","_CardHolder","_CardExpiry","_reactNative","Card","initialValue","config","children","onChange","onComplete","style","registeredFields","setRegisteredFields","useState","Set","form","useForm","initialValues","cvc","expiry","number","name","validate","values","has","undefined","length","cardValidation","validateNumber","isValid","isAcceptedBrand","acceptedBrands","expiryValidation","validateExpiry","cvcValidation","validateCVC","formState","triggerChange","cardData","changePayload","encrypt","Array","from","useEffect","getCardData","isComplete","React","createElement","CardContext","Provider","value","register","View","CardNamespace","exports","Object","assign","Number","CardNumber","CVC","CardCVC","Holder","CardHolder","Expiry","CardExpiry"],"sourceRoot":"../../../../src","sources":["components/Card/Card.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,7 +9,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
9
9
|
var _reactNativeMaskedText = require("react-native-masked-text");
|
|
10
10
|
var _context = require("./context");
|
|
11
11
|
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); }
|
|
12
|
-
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 &&
|
|
12
|
+
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 && {}.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; }
|
|
13
13
|
const CardCVC = ({
|
|
14
14
|
style,
|
|
15
15
|
disabled,
|
|
@@ -30,6 +30,11 @@ const CardCVC = ({
|
|
|
30
30
|
} = context.register('cvc');
|
|
31
31
|
(0, _react.useEffect)(() => {
|
|
32
32
|
context.setRegisteredFields(prev => new Set(prev).add('cvc'));
|
|
33
|
+
return () => context.setRegisteredFields(prev => {
|
|
34
|
+
const next = new Set(prev);
|
|
35
|
+
next.delete('cvc');
|
|
36
|
+
return next;
|
|
37
|
+
});
|
|
33
38
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
34
39
|
}, []);
|
|
35
40
|
return /*#__PURE__*/_react.default.createElement(_reactNativeMaskedText.TextInputMask, {
|
|
@@ -45,6 +50,7 @@ const CardCVC = ({
|
|
|
45
50
|
selectTextOnFocus: disabled,
|
|
46
51
|
onBlur: onBlur,
|
|
47
52
|
placeholder: placeholder,
|
|
53
|
+
inputMode: "numeric",
|
|
48
54
|
autoComplete: "cc-csc",
|
|
49
55
|
readOnly: readOnly
|
|
50
56
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_cardValidator","require","_react","_interopRequireWildcard","_reactNativeMaskedText","_context","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","CardCVC","style","disabled","placeholder","readOnly","context","useCardContext","mask","useMemo","type","validateNumber","values","number","brand","onChange","onBlur","register","useEffect","setRegisteredFields","prev","Set","add","next","delete","createElement","TextInputMask","options","value","cvc","onChangeText","id","editable","selectTextOnFocus","inputMode","autoComplete","exports"],"sourceRoot":"../../../../src","sources":["components/Card/CardCVC.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,8 @@ var _react = require("react");
|
|
|
10
10
|
function CardExpiry({
|
|
11
11
|
disabled,
|
|
12
12
|
placeholder,
|
|
13
|
-
readOnly
|
|
13
|
+
readOnly,
|
|
14
|
+
style
|
|
14
15
|
}) {
|
|
15
16
|
const context = (0, _context.useCardContext)();
|
|
16
17
|
const {
|
|
@@ -19,20 +20,29 @@ function CardExpiry({
|
|
|
19
20
|
} = context.register('expiry');
|
|
20
21
|
(0, _react.useEffect)(() => {
|
|
21
22
|
context.setRegisteredFields(prev => new Set(prev).add('expiry'));
|
|
23
|
+
return () => context.setRegisteredFields(prev => {
|
|
24
|
+
const next = new Set(prev);
|
|
25
|
+
next.delete('expiry');
|
|
26
|
+
return next;
|
|
27
|
+
});
|
|
22
28
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
23
29
|
}, []);
|
|
24
30
|
return /*#__PURE__*/React.createElement(_reactNativeMaskedText.TextInputMask, {
|
|
31
|
+
style: style,
|
|
25
32
|
type: "datetime",
|
|
26
33
|
value: context.values.expiry,
|
|
27
34
|
editable: disabled,
|
|
28
|
-
selectTextOnFocus: disabled
|
|
29
|
-
|
|
35
|
+
selectTextOnFocus: disabled
|
|
36
|
+
// store the expiry as MMYY not MM / YY
|
|
37
|
+
,
|
|
38
|
+
onChangeText: rawExpiry => onChange(rawExpiry.replace(' / ', '')),
|
|
30
39
|
options: {
|
|
31
40
|
format: '99 / 99'
|
|
32
41
|
},
|
|
33
42
|
id: "expiry",
|
|
34
43
|
onBlur: onBlur,
|
|
35
44
|
placeholder: placeholder ?? 'MM / YY',
|
|
45
|
+
inputMode: "numeric",
|
|
36
46
|
autoComplete: "cc-exp",
|
|
37
47
|
readOnly: readOnly
|
|
38
48
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeMaskedText","require","_context","_react","CardExpiry","disabled","placeholder","readOnly","style","context","useCardContext","onBlur","onChange","register","useEffect","setRegisteredFields","prev","Set","add","next","delete","React","createElement","TextInputMask","type","value","values","expiry","editable","selectTextOnFocus","onChangeText","rawExpiry","replace","options","format","id","inputMode","autoComplete"],"sourceRoot":"../../../../src","sources":["components/Card/CardExpiry.tsx"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,OAAA;AACA,IAAAC,QAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAKO,SAASG,UAAUA,CAAC;EACzBC,QAAQ;EACRC,WAAW;EACXC,QAAQ;EACRC;AACe,CAAC,EAAE;EAClB,MAAMC,OAAO,GAAG,IAAAC,uBAAc,EAAC,CAAC;EAEhC,MAAM;IAAEC,MAAM;IAAEC;EAAS,CAAC,GAAGH,OAAO,CAACI,QAAQ,CAAC,QAAQ,CAAC;EAEvD,IAAAC,gBAAS,EAAC,MAAM;IACdL,OAAO,CAACM,mBAAmB,CAAEC,IAAI,IAAK,IAAIC,GAAG,CAACD,IAAI,CAAC,CAACE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClE,OAAO,MAAMT,OAAO,CAACM,mBAAmB,CAAEC,IAAI,IAAK;MACjD,MAAMG,IAAI,GAAG,IAAIF,GAAG,CAACD,IAAI,CAAC;MAC1BG,IAAI,CAACC,MAAM,CAAC,QAAQ,CAAC;MACrB,OAAOD,IAAI;IACb,CAAC,CAAC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEE,KAAA,CAAAC,aAAA,CAACtB,sBAAA,CAAAuB,aAAa;IACZf,KAAK,EAAEA,KAAM;IACbgB,IAAI,EAAC,UAAU;IACfC,KAAK,EAAEhB,OAAO,CAACiB,MAAM,CAACC,MAAO;IAC7BC,QAAQ,EAAEvB,QAAS;IACnBwB,iBAAiB,EAAExB;IACnB;IAAA;IACAyB,YAAY,EAAGC,SAAS,IAAKnB,QAAQ,CAACmB,SAAS,CAACC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAE;IACpEC,OAAO,EAAE;MACPC,MAAM,EAAE;IACV,CAAE;IACFC,EAAE,EAAC,QAAQ;IACXxB,MAAM,EAAEA,MAAO;IACfL,WAAW,EAAEA,WAAW,IAAI,SAAU;IACtC8B,SAAS,EAAC,SAAS;IACnBC,YAAY,EAAC,QAAQ;IACrB9B,QAAQ,EAAEA;EAAS,CACpB,CAAC;AAEN","ignoreList":[]}
|
|
@@ -11,7 +11,8 @@ function CardHolder({
|
|
|
11
11
|
autoFocus,
|
|
12
12
|
disabled,
|
|
13
13
|
placeholder,
|
|
14
|
-
readOnly
|
|
14
|
+
readOnly,
|
|
15
|
+
style
|
|
15
16
|
}) {
|
|
16
17
|
const context = (0, _context.useCardContext)();
|
|
17
18
|
const {
|
|
@@ -20,10 +21,16 @@ function CardHolder({
|
|
|
20
21
|
} = context.register('name');
|
|
21
22
|
(0, _react.useEffect)(() => {
|
|
22
23
|
context.setRegisteredFields(prev => new Set(prev).add('name'));
|
|
24
|
+
return () => context.setRegisteredFields(prev => {
|
|
25
|
+
const next = new Set(prev);
|
|
26
|
+
next.delete('name');
|
|
27
|
+
return next;
|
|
28
|
+
});
|
|
23
29
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
24
30
|
}, []);
|
|
25
31
|
return /*#__PURE__*/React.createElement(_reactNative.TextInput, {
|
|
26
32
|
id: "name",
|
|
33
|
+
style: style,
|
|
27
34
|
value: context.values.name,
|
|
28
35
|
readOnly: readOnly,
|
|
29
36
|
onBlur: onBlur,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_context","CardHolder","autoFocus","disabled","placeholder","readOnly","style","context","useCardContext","onBlur","onChange","register","useEffect","setRegisteredFields","prev","Set","add","next","delete","React","createElement","TextInput","id","value","values","name","editable","selectTextOnFocus","autoComplete","onChangeText","v"],"sourceRoot":"../../../../src","sources":["components/Card/CardHolder.tsx"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AAOO,SAASG,UAAUA,CAAC;EACzBC,SAAS;EACTC,QAAQ;EACRC,WAAW;EACXC,QAAQ;EACRC;AACe,CAAC,EAAE;EAClB,MAAMC,OAAO,GAAG,IAAAC,uBAAc,EAAC,CAAC;EAEhC,MAAM;IAAEC,MAAM;IAAEC;EAAS,CAAC,GAAGH,OAAO,CAACI,QAAQ,CAAC,MAAM,CAAC;EAErD,IAAAC,gBAAS,EAAC,MAAM;IACdL,OAAO,CAACM,mBAAmB,CAAEC,IAAI,IAAK,IAAIC,GAAG,CAACD,IAAI,CAAC,CAACE,GAAG,CAAC,MAAM,CAAC,CAAC;IAChE,OAAO,MAAMT,OAAO,CAACM,mBAAmB,CAAEC,IAAI,IAAK;MACjD,MAAMG,IAAI,GAAG,IAAIF,GAAG,CAACD,IAAI,CAAC;MAC1BG,IAAI,CAACC,MAAM,CAAC,MAAM,CAAC;MACnB,OAAOD,IAAI;IACb,CAAC,CAAC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEE,KAAA,CAAAC,aAAA,CAACrB,YAAA,CAAAsB,SAAS;IACRC,EAAE,EAAC,MAAM;IACThB,KAAK,EAAEA,KAAM;IACbiB,KAAK,EAAEhB,OAAO,CAACiB,MAAM,CAACC,IAAK;IAC3BpB,QAAQ,EAAEA,QAAS;IACnBI,MAAM,EAAEA,MAAO;IACfP,SAAS,EAAEA,SAAU;IACrBwB,QAAQ,EAAEvB,QAAS;IACnBwB,iBAAiB,EAAExB,QAAS;IAC5BC,WAAW,EAAEA,WAAY;IACzBwB,YAAY,EAAC,SAAS;IACtBC,YAAY,EAAGC,CAAC,IAAKpB,QAAQ,CAACoB,CAAC;EAAE,CAClC,CAAC;AAEN","ignoreList":[]}
|
|
@@ -38,6 +38,11 @@ function CardNumber({
|
|
|
38
38
|
} = context.register('number');
|
|
39
39
|
(0, _react.useEffect)(() => {
|
|
40
40
|
context.setRegisteredFields(prev => new Set(prev).add('number'));
|
|
41
|
+
return () => context.setRegisteredFields(prev => {
|
|
42
|
+
const next = new Set(prev);
|
|
43
|
+
next.delete('name');
|
|
44
|
+
return next;
|
|
45
|
+
});
|
|
41
46
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
42
47
|
}, []);
|
|
43
48
|
return /*#__PURE__*/React.createElement(_reactNativeMaskedText.TextInputMask, {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_cardValidator","require","_react","_reactNativeMaskedText","_context","CardNumber","autoFocus","disabled","placeholder","readOnly","style","context","useCardContext","ref","useRef","innerValue","mask","useMemo","value","values","number","brand","validateNumber","masks","default","onBlur","onChange","register","useEffect","setRegisteredFields","prev","Set","add","next","delete","React","createElement","TextInputMask","type","options","id","onChangeText","inputMode","editable","selectTextOnFocus","autoComplete"],"sourceRoot":"../../../../src","sources":["components/Card/CardNumber.tsx"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,sBAAA,GAAAF,OAAA;AACA,IAAAG,QAAA,GAAAH,OAAA;AAOO,SAASI,UAAUA,CAAC;EACzBC,SAAS;EACTC,QAAQ;EACRC,WAAW;EACXC,QAAQ;EACRC;AACe,CAAC,EAAE;EAClB,MAAMC,OAAO,GAAG,IAAAC,uBAAc,EAAC,CAAC;EAChC,MAAMC,GAAG,GAAG,IAAAC,aAAM,EAAgB,IAAI,CAAC;EAEvC,MAAM,CAACC,UAAU,EAAEC,IAAI,CAAC,GAAG,IAAAC,cAAO,EAAC,MAAM;IACvC,MAAMC,KAAK,GAAGP,OAAO,CAACQ,MAAM,CAACC,MAAM;IAEnC,MAAM;MAAEC;IAAM,CAAC,GAAG,IAAAC,6BAAc,EAACJ,KAAK,CAAC;IAEvC,MAAMK,KAAK,GAAG;MACZ,SAAS,EAAE,qBAAqB;MAChC,UAAU,EAAE,yBAAyB;MACrC,kBAAkB,EAAE;IACtB,CAA2B;IAE3B,IAAIF,KAAK,IAAI,CAAC,CAACE,KAAK,CAACF,KAAK,CAAC,EAAE;MAC3B,OAAO,CAACH,KAAK,EAAEK,KAAK,CAACF,KAAK,CAAC,CAAC;IAC9B;IACA,OAAO,CAACH,KAAK,EAAEK,KAAK,CAACC,OAAO,CAAC;EAC/B,CAAC,EAAE,CAACb,OAAO,CAACQ,MAAM,CAACC,MAAM,CAAC,CAAC;EAE3B,MAAM;IAAEK,MAAM;IAAEC;EAAS,CAAC,GAAGf,OAAO,CAACgB,QAAQ,CAAC,QAAQ,CAAC;EAEvD,IAAAC,gBAAS,EAAC,MAAM;IACdjB,OAAO,CAACkB,mBAAmB,CAAEC,IAAI,IAAK,IAAIC,GAAG,CAACD,IAAI,CAAC,CAACE,GAAG,CAAC,QAAQ,CAAC,CAAC;IAClE,OAAO,MAAMrB,OAAO,CAACkB,mBAAmB,CAAEC,IAAI,IAAK;MACjD,MAAMG,IAAI,GAAG,IAAIF,GAAG,CAACD,IAAI,CAAC;MAC1BG,IAAI,CAACC,MAAM,CAAC,MAAM,CAAC;MACnB,OAAOD,IAAI;IACb,CAAC,CAAC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEE,KAAA,CAAAC,aAAA,CAACjC,sBAAA,CAAAkC,aAAa;IACZ3B,KAAK,EAAEA,KAAM;IACbG,GAAG,EAAEA,GAAI;IACTyB,IAAI,EAAC,QAAQ;IACbC,OAAO,EAAE;MAAEvB;IAAK,CAAE;IAClBwB,EAAE,EAAC,QAAQ;IACXtB,KAAK,EAAEH,UAAW;IAClB0B,YAAY,EAAEf,QAAS;IACvBD,MAAM,EAAEA,MAAO;IACfhB,QAAQ,EAAEA,QAAS;IACnBiC,SAAS,EAAC,SAAS;IACnBpC,SAAS,EAAEA,SAAU;IACrBE,WAAW,EAAEA,WAAY;IACzBmC,QAAQ,EAAEpC,QAAS;IACnBqC,iBAAiB,EAAErC,QAAS;IAC5BsC,YAAY,EAAC;EAAW,CACzB,CAAC;AAEN","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","require","CardContext","exports","createContext","values","name","number","cvc","expiry","register","onChange","onBlur","setRegisteredFields","useCardContext","useContext"],"sourceRoot":"../../../../src","sources":["components/Card/context.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;
|
|
1
|
+
{"version":3,"names":["_react","require","CardContext","exports","createContext","values","name","number","cvc","expiry","register","onChange","onBlur","setRegisteredFields","useCardContext","useContext"],"sourceRoot":"../../../../src","sources":["components/Card/context.tsx"],"mappings":";;;;;;AACA,IAAAA,MAAA,GAAAC,OAAA;AASO,MAAMC,WAAW,GAAAC,OAAA,CAAAD,WAAA,gBAAG,IAAAE,oBAAa,EAAoB;EAC1DC,MAAM,EAAE;IACNC,IAAI,EAAE,EAAE;IACRC,MAAM,EAAE,EAAE;IACVC,GAAG,EAAE,EAAE;IACPC,MAAM,EAAE;EACV,CAAC;EACDC,QAAQ,EAAEA,CAAA,MAAO;IACfC,QAAQ,EAAEA,CAAA,KAAM,CAAC,CAAC;IAChBC,MAAM,EAAEA,CAAA,KAAM,CAAC;EACf,CAAC,CAAC;EACNC,mBAAmB,EAAEA,CAAA,KAAM,CAAC;AAC5B,CAAC,CAAC;AAEG,MAAMC,cAAc,GAAGA,CAAA,KAAM,IAAAC,iBAAU,EAACb,WAAW,CAAC;AAACC,OAAA,CAAAW,cAAA,GAAAA,cAAA","ignoreList":[]}
|
|
@@ -9,12 +9,5 @@ Object.defineProperty(exports, "Card", {
|
|
|
9
9
|
return _Card.Card;
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
-
Object.defineProperty(exports, "CardPayload", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _types.CardPayload;
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
12
|
var _Card = require("./Card");
|
|
19
|
-
var _types = require("types");
|
|
20
13
|
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_Card","require"],"sourceRoot":"../../../../src","sources":["components/Card/index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../../../src","sources":["components/Card/types.ts"],"mappings":""}
|
|
1
|
+
{"version":3,"names":[],"sourceRoot":"../../../../src","sources":["components/Card/types.ts"],"mappings":"","ignoreList":[]}
|
|
@@ -46,7 +46,7 @@ function isComplete(form, fields) {
|
|
|
46
46
|
if (!cardValidation.isValid) return false;
|
|
47
47
|
}
|
|
48
48
|
if (fields.includes('expiry')) {
|
|
49
|
-
const expiryValidation = (0, _cardValidator.validateExpiry)(form.values.expiry
|
|
49
|
+
const expiryValidation = (0, _cardValidator.validateExpiry)(form.values.expiry);
|
|
50
50
|
if (!expiryValidation.isValid) return false;
|
|
51
51
|
}
|
|
52
52
|
if (fields.includes('cvc')) {
|
|
@@ -66,7 +66,7 @@ function isAcceptedBrand(acceptedBrands, cardNumberValidationResult) {
|
|
|
66
66
|
return isBrandAccepted || isLocalBrandAccepted;
|
|
67
67
|
}
|
|
68
68
|
function formatExpiry(expiry) {
|
|
69
|
-
const parsedExpiry = (0, _cardValidator.validateExpiry)(expiry
|
|
69
|
+
const parsedExpiry = (0, _cardValidator.validateExpiry)(expiry);
|
|
70
70
|
return {
|
|
71
71
|
month: parsedExpiry.month,
|
|
72
72
|
year: parsedExpiry.year
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_cardValidator","require","changePayload","encrypt","form","fields","name","number","expiry","cvc","values","brand","localBrands","bin","lastFour","isValid","isValidCardNumber","validateNumber","card","encryptedNumber","formatExpiry","encryptedCVC","isComplete","errors","Object","keys","length","includes","cardValidation","expiryValidation","validateExpiry","cvcValidation","validateCVC","isAcceptedBrand","acceptedBrands","cardNumberValidationResult","isBrandAccepted","isLocalBrandAccepted","some","localBrand","parsedExpiry","month","year","cardNumber"],"sourceRoot":"../../../../src","sources":["components/Card/utilities.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useForm = useForm;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
function useForm({
|
|
9
|
+
initialValues,
|
|
10
|
+
validate,
|
|
11
|
+
onChange
|
|
12
|
+
}) {
|
|
13
|
+
const validators = (0, _react.useRef)(validate);
|
|
14
|
+
const triggerChange = (0, _react.useRef)(false);
|
|
15
|
+
const [values, setValues] = (0, _react.useState)(initialValues);
|
|
16
|
+
const [errors, setErrors] = (0, _react.useState)({});
|
|
17
|
+
|
|
18
|
+
// keep track of latest validation functions in a ref to prevent
|
|
19
|
+
// re-renders when the function changes.
|
|
20
|
+
(0, _react.useEffect)(() => {
|
|
21
|
+
validators.current = validate;
|
|
22
|
+
}, [validate]);
|
|
23
|
+
const setError = (0, _react.useCallback)((field, error) => {
|
|
24
|
+
if (!error) {
|
|
25
|
+
setErrors(prev => {
|
|
26
|
+
if (!prev) return prev;
|
|
27
|
+
return Object.keys(prev).reduce((acc, key) => {
|
|
28
|
+
if (key === field) return acc;
|
|
29
|
+
return {
|
|
30
|
+
...acc,
|
|
31
|
+
[key]: prev?.[key]
|
|
32
|
+
};
|
|
33
|
+
}, {});
|
|
34
|
+
});
|
|
35
|
+
return;
|
|
36
|
+
}
|
|
37
|
+
setErrors(prev => ({
|
|
38
|
+
...prev,
|
|
39
|
+
[field]: error
|
|
40
|
+
}));
|
|
41
|
+
triggerChange.current = true;
|
|
42
|
+
}, []);
|
|
43
|
+
const setValue = (0, _react.useCallback)((field, value) => {
|
|
44
|
+
if (errors?.[field]) {
|
|
45
|
+
setError(field, undefined);
|
|
46
|
+
}
|
|
47
|
+
setValues(previous => ({
|
|
48
|
+
...previous,
|
|
49
|
+
[field]: value
|
|
50
|
+
}));
|
|
51
|
+
triggerChange.current = true;
|
|
52
|
+
}, [errors, setError]);
|
|
53
|
+
const isValid = (0, _react.useMemo)(() => Object.keys(errors ?? {}).length === 0, [errors]);
|
|
54
|
+
const validateForm = (0, _react.useCallback)(() => {
|
|
55
|
+
const nextErrors = Object.keys(values).reduce((acc, key) => {
|
|
56
|
+
const validator = validators.current?.[key];
|
|
57
|
+
if (validator) {
|
|
58
|
+
const error = validator(values);
|
|
59
|
+
if (error) {
|
|
60
|
+
return {
|
|
61
|
+
...acc,
|
|
62
|
+
[key]: error
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return acc;
|
|
67
|
+
}, {});
|
|
68
|
+
const hasErrors = Object.keys(nextErrors).length > 0;
|
|
69
|
+
setErrors(hasErrors ? nextErrors : null);
|
|
70
|
+
|
|
71
|
+
// iterate over the errors and if any of them are different then we should
|
|
72
|
+
// trigger a change event.
|
|
73
|
+
const shouldTriggerChange = Object.keys(nextErrors).some(key => {
|
|
74
|
+
const prevError = errors?.[key];
|
|
75
|
+
const nextError = nextErrors[key];
|
|
76
|
+
return prevError !== nextError;
|
|
77
|
+
});
|
|
78
|
+
triggerChange.current = shouldTriggerChange;
|
|
79
|
+
}, [errors, values]);
|
|
80
|
+
const validateField = (0, _react.useCallback)(field => {
|
|
81
|
+
const validator = validators.current?.[field];
|
|
82
|
+
if (validator) {
|
|
83
|
+
const error = validator(values);
|
|
84
|
+
setError(field, error);
|
|
85
|
+
}
|
|
86
|
+
}, [values, setError]);
|
|
87
|
+
const register = (0, _react.useCallback)(name => {
|
|
88
|
+
const handleBlur = () => {
|
|
89
|
+
validateField(name);
|
|
90
|
+
};
|
|
91
|
+
const handleChange = value => {
|
|
92
|
+
setValue(name, value);
|
|
93
|
+
};
|
|
94
|
+
return {
|
|
95
|
+
onBlur: handleBlur,
|
|
96
|
+
onChange: handleChange
|
|
97
|
+
};
|
|
98
|
+
}, [setValue, validateField]);
|
|
99
|
+
const form = (0, _react.useMemo)(() => ({
|
|
100
|
+
values,
|
|
101
|
+
setValue,
|
|
102
|
+
errors,
|
|
103
|
+
setError,
|
|
104
|
+
isValid,
|
|
105
|
+
register,
|
|
106
|
+
setValues,
|
|
107
|
+
validate: validateForm
|
|
108
|
+
}), [values, setValue, errors, setError, isValid, register, validateForm]);
|
|
109
|
+
(0, _react.useEffect)(() => {
|
|
110
|
+
if (!triggerChange.current) return;
|
|
111
|
+
triggerChange.current = false;
|
|
112
|
+
onChange?.(form);
|
|
113
|
+
}, [form, onChange]);
|
|
114
|
+
return form;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=useForm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","useForm","initialValues","validate","onChange","validators","useRef","triggerChange","values","setValues","useState","errors","setErrors","useEffect","current","setError","useCallback","field","error","prev","Object","keys","reduce","acc","key","setValue","value","undefined","previous","isValid","useMemo","length","validateForm","nextErrors","validator","hasErrors","shouldTriggerChange","some","prevError","nextError","validateField","register","name","handleBlur","handleChange","onBlur","form"],"sourceRoot":"../../../src","sources":["components/useForm.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Card","require","_sdk"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA"}
|
|
1
|
+
{"version":3,"names":["_Card","require","_sdk"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,IAAA,GAAAD,OAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","EvervaultSdk","exports","NativeModules","Proxy","get","Error"],"sourceRoot":"../../src","sources":["native.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,aAAa,GAChB,4FAA2F,GAC5FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAE1B,MAAMC,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAGE,0BAAa,CAACF,YAAY,GAClDE,0BAAa,CAACF,YAAY,GAC1B,IAAIG,KAAK,
|
|
1
|
+
{"version":3,"names":["_reactNative","require","LINKING_ERROR","Platform","select","ios","default","EvervaultSdk","exports","NativeModules","Proxy","get","Error"],"sourceRoot":"../../src","sources":["native.ts"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAEA,MAAMC,aAAa,GAChB,4FAA2F,GAC5FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;AAE1B,MAAMC,YAAY,GAAAC,OAAA,CAAAD,YAAA,GAAGE,0BAAa,CAACF,YAAY,GAClDE,0BAAa,CAACF,YAAY,GAC1B,IAAIG,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACV,aAAa,CAAC;EAChC;AACF,CACF,CAAC","ignoreList":[]}
|
|
@@ -8,15 +8,21 @@ exports.init = init;
|
|
|
8
8
|
var _reactNative = require("react-native");
|
|
9
9
|
var _native = require("./native");
|
|
10
10
|
async function init(teamUuid, appUuid) {
|
|
11
|
+
if (!teamUuid.startsWith('team_')) {
|
|
12
|
+
throw new Error("Invalid Evervault Team UUID");
|
|
13
|
+
}
|
|
14
|
+
if (!appUuid.startsWith('app_')) {
|
|
15
|
+
throw new Error("Invalid Evervault App UUID");
|
|
16
|
+
}
|
|
11
17
|
return _native.EvervaultSdk.initialize(teamUuid, appUuid);
|
|
12
18
|
}
|
|
13
19
|
async function encrypt(data) {
|
|
14
|
-
if (_reactNative.Platform.OS ===
|
|
20
|
+
if (_reactNative.Platform.OS === 'android' && typeof data !== 'string') {
|
|
15
21
|
throw new Error(`The Evervault SDK does not currently support encrypting non-string data on Android.
|
|
16
22
|
If this is required for your use case, please get in touch with us at support@evervault.com. Please do not
|
|
17
23
|
serialize other data types to strings and pass them to this method as this will result in the data
|
|
18
24
|
type being returned in it's stringified form when decryption occurs.`);
|
|
19
25
|
}
|
|
20
|
-
return _native.EvervaultSdk.encrypt(data
|
|
26
|
+
return _native.EvervaultSdk.encrypt(data);
|
|
21
27
|
}
|
|
22
28
|
//# sourceMappingURL=sdk.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_native","init","teamUuid","appUuid","startsWith","Error","EvervaultSdk","initialize","encrypt","data","Platform","OS"],"sourceRoot":"../../src","sources":["sdk.ts"],"mappings":";;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEO,eAAeE,IAAIA,CAACC,QAAgB,EAAEC,OAAe,EAAiB;EAC3E,IAAI,CAACD,QAAQ,CAACE,UAAU,CAAC,OAAO,CAAC,EAAE;IACjC,MAAM,IAAIC,KAAK,CAAC,6BAA6B,CAAC;EAChD;EAEA,IAAI,CAACF,OAAO,CAACC,UAAU,CAAC,MAAM,CAAC,EAAE;IAC/B,MAAM,IAAIC,KAAK,CAAC,4BAA4B,CAAC;EAC/C;EAEA,OAAOC,oBAAY,CAACC,UAAU,CAACL,QAAQ,EAAEC,OAAO,CAAC;AACnD;AAEO,eAAeK,OAAOA,CAACC,IAAS,EAAmB;EACxD,IAAIC,qBAAQ,CAACC,EAAE,KAAK,SAAS,IAAI,OAAOF,IAAI,KAAK,QAAQ,EAAE;IACzD,MAAM,IAAIJ,KAAK,CAAE;AACrB;AACA;AACA,2EAA2E,CAAC;EAC1E;EAEA,OAAOC,oBAAY,CAACE,OAAO,CAACC,IAAI,CAAC;AACnC","ignoreList":[]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { validateNumber, validateCVC, validateExpiry } from '@evervault/card-validator';
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
|
-
import { useForm } from '
|
|
3
|
+
import { useForm } from '../useForm';
|
|
4
4
|
import { changePayload, isAcceptedBrand, isComplete } from './utilities';
|
|
5
5
|
import { CardNumber } from './CardNumber';
|
|
6
6
|
import { CardContext } from './context';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["validateNumber","validateCVC","validateExpiry","useEffect","useState","useForm","changePayload","isAcceptedBrand","isComplete","CardNumber","CardContext","encrypt","CardCVC","CardHolder","CardExpiry","View","Card","initialValue","config","children","onChange","onComplete","style","registeredFields","setRegisteredFields","Set","form","initialValues","cvc","expiry","number","name","validate","values","has","undefined","length","cardValidation","isValid","acceptedBrands","expiryValidation","cvcValidation","formState","triggerChange","cardData","Array","from","getCardData","React","createElement","Provider","value","register","CardNamespace","Object","assign","Number","CVC","Holder","Expiry"],"sourceRoot":"../../../../src","sources":["components/Card/Card.tsx"],"mappings":"AAAA,SACEA,cAAc,EACdC,WAAW,EACXC,cAAc,QACT,2BAA2B;AAClC,SAAoBC,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AACtD,SAASC,OAAO,QAAQ,
|
|
1
|
+
{"version":3,"names":["validateNumber","validateCVC","validateExpiry","useEffect","useState","useForm","changePayload","isAcceptedBrand","isComplete","CardNumber","CardContext","encrypt","CardCVC","CardHolder","CardExpiry","View","Card","initialValue","config","children","onChange","onComplete","style","registeredFields","setRegisteredFields","Set","form","initialValues","cvc","expiry","number","name","validate","values","has","undefined","length","cardValidation","isValid","acceptedBrands","expiryValidation","cvcValidation","formState","triggerChange","cardData","Array","from","getCardData","React","createElement","Provider","value","register","CardNamespace","Object","assign","Number","CVC","Holder","Expiry"],"sourceRoot":"../../../../src","sources":["components/Card/Card.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -22,6 +22,11 @@ export const CardCVC = ({
|
|
|
22
22
|
} = context.register('cvc');
|
|
23
23
|
useEffect(() => {
|
|
24
24
|
context.setRegisteredFields(prev => new Set(prev).add('cvc'));
|
|
25
|
+
return () => context.setRegisteredFields(prev => {
|
|
26
|
+
const next = new Set(prev);
|
|
27
|
+
next.delete('cvc');
|
|
28
|
+
return next;
|
|
29
|
+
});
|
|
25
30
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
26
31
|
}, []);
|
|
27
32
|
return /*#__PURE__*/React.createElement(TextInputMask, {
|
|
@@ -37,6 +42,7 @@ export const CardCVC = ({
|
|
|
37
42
|
selectTextOnFocus: disabled,
|
|
38
43
|
onBlur: onBlur,
|
|
39
44
|
placeholder: placeholder,
|
|
45
|
+
inputMode: "numeric",
|
|
40
46
|
autoComplete: "cc-csc",
|
|
41
47
|
readOnly: readOnly
|
|
42
48
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["validateNumber","React","useEffect","useMemo","TextInputMask","useCardContext","CardCVC","style","disabled","placeholder","readOnly","context","mask","type","values","number","brand","onChange","onBlur","register","setRegisteredFields","prev","Set","add","next","delete","createElement","options","value","cvc","onChangeText","t","id","editable","selectTextOnFocus","inputMode","autoComplete"],"sourceRoot":"../../../../src","sources":["components/Card/CardCVC.tsx"],"mappings":"AAAA,SAASA,cAAc,QAAQ,2BAA2B;AAC1D,OAAOC,KAAK,IAAIC,SAAS,EAAEC,OAAO,QAAQ,OAAO;AACjD,SAASC,aAAa,QAAQ,0BAA0B;AACxD,SAASC,cAAc,QAAQ,WAAW;AAK1C,OAAO,MAAMC,OAAO,GAAGA,CAAC;EACtBC,KAAK;EACLC,QAAQ;EACRC,WAAW;EACXC;AACQ,CAAC,KAAK;EACd,MAAMC,OAAO,GAAGN,cAAc,CAAC,CAAC;EAChC,MAAMO,IAAI,GAAGT,OAAO,CAAC,MAAM;IACzB,MAAMU,IAAI,GAAGb,cAAc,CAACW,OAAO,CAACG,MAAM,CAACC,MAAM,CAAC,CAACC,KAAK;IACxD,IAAIH,IAAI,KAAK,kBAAkB,EAAE;MAC/B,OAAO,MAAM;IACf;IACA,OAAO,KAAK;EACd,CAAC,EAAE,CAACF,OAAO,CAACG,MAAM,CAACC,MAAM,CAAC,CAAC;EAE3B,MAAM;IAAEE,QAAQ;IAAEC;EAAO,CAAC,GAAGP,OAAO,CAACQ,QAAQ,CAAC,KAAK,CAAC;EAEpDjB,SAAS,CAAC,MAAM;IACdS,OAAO,CAACS,mBAAmB,CAAEC,IAAI,IAAK,IAAIC,GAAG,CAACD,IAAI,CAAC,CAACE,GAAG,CAAC,KAAK,CAAC,CAAC;IAC/D,OAAO,MAAMZ,OAAO,CAACS,mBAAmB,CAAEC,IAAI,IAAK;MACjD,MAAMG,IAAI,GAAG,IAAIF,GAAG,CAACD,IAAI,CAAC;MAC1BG,IAAI,CAACC,MAAM,CAAC,KAAK,CAAC;MAClB,OAAOD,IAAI;IACb,CAAC,CAAC;IACF;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACEvB,KAAA,CAAAyB,aAAA,CAACtB,aAAa;IACZS,IAAI,EAAC,QAAQ;IACbc,OAAO,EAAE;MAAEf;IAAK,CAAE;IAClBL,KAAK,EAAEA,KAAM;IACbqB,KAAK,EAAEjB,OAAO,CAACG,MAAM,CAACe,GAAI;IAC1BC,YAAY,EAAGC,CAAC,IAAKd,QAAQ,CAACc,CAAC,CAAE;IACjCC,EAAE,EAAC,KAAK;IACRC,QAAQ,EAAEzB,QAAS;IACnB0B,iBAAiB,EAAE1B,QAAS;IAC5BU,MAAM,EAAEA,MAAO;IACfT,WAAW,EAAEA,WAAY;IACzB0B,SAAS,EAAC,SAAS;IACnBC,YAAY,EAAC,QAAQ;IACrB1B,QAAQ,EAAEA;EAAS,CACpB,CAAC;AAEN,CAAC","ignoreList":[]}
|
|
@@ -4,7 +4,8 @@ import { useEffect } from 'react';
|
|
|
4
4
|
export function CardExpiry({
|
|
5
5
|
disabled,
|
|
6
6
|
placeholder,
|
|
7
|
-
readOnly
|
|
7
|
+
readOnly,
|
|
8
|
+
style
|
|
8
9
|
}) {
|
|
9
10
|
const context = useCardContext();
|
|
10
11
|
const {
|
|
@@ -13,20 +14,29 @@ export function CardExpiry({
|
|
|
13
14
|
} = context.register('expiry');
|
|
14
15
|
useEffect(() => {
|
|
15
16
|
context.setRegisteredFields(prev => new Set(prev).add('expiry'));
|
|
17
|
+
return () => context.setRegisteredFields(prev => {
|
|
18
|
+
const next = new Set(prev);
|
|
19
|
+
next.delete('expiry');
|
|
20
|
+
return next;
|
|
21
|
+
});
|
|
16
22
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
17
23
|
}, []);
|
|
18
24
|
return /*#__PURE__*/React.createElement(TextInputMask, {
|
|
25
|
+
style: style,
|
|
19
26
|
type: "datetime",
|
|
20
27
|
value: context.values.expiry,
|
|
21
28
|
editable: disabled,
|
|
22
|
-
selectTextOnFocus: disabled
|
|
23
|
-
|
|
29
|
+
selectTextOnFocus: disabled
|
|
30
|
+
// store the expiry as MMYY not MM / YY
|
|
31
|
+
,
|
|
32
|
+
onChangeText: rawExpiry => onChange(rawExpiry.replace(' / ', '')),
|
|
24
33
|
options: {
|
|
25
34
|
format: '99 / 99'
|
|
26
35
|
},
|
|
27
36
|
id: "expiry",
|
|
28
37
|
onBlur: onBlur,
|
|
29
38
|
placeholder: placeholder ?? 'MM / YY',
|
|
39
|
+
inputMode: "numeric",
|
|
30
40
|
autoComplete: "cc-exp",
|
|
31
41
|
readOnly: readOnly
|
|
32
42
|
});
|