@clockpay/react-native 1.0.0
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 +113 -0
- package/lib/commonjs/api/client.js +73 -0
- package/lib/commonjs/api/client.js.map +1 -0
- package/lib/commonjs/api/endpoints.js +11 -0
- package/lib/commonjs/api/endpoints.js.map +1 -0
- package/lib/commonjs/components/bottom-sheet.js +137 -0
- package/lib/commonjs/components/bottom-sheet.js.map +1 -0
- package/lib/commonjs/components/icons.js +129 -0
- package/lib/commonjs/components/icons.js.map +1 -0
- package/lib/commonjs/components/payment-button.js +106 -0
- package/lib/commonjs/components/payment-button.js.map +1 -0
- package/lib/commonjs/components/payment-sheet.js +156 -0
- package/lib/commonjs/components/payment-sheet.js.map +1 -0
- package/lib/commonjs/components/views/status-view.js +109 -0
- package/lib/commonjs/components/views/status-view.js.map +1 -0
- package/lib/commonjs/components/views/transfer-view.js +162 -0
- package/lib/commonjs/components/views/transfer-view.js.map +1 -0
- package/lib/commonjs/components/views/verify-view.js +98 -0
- package/lib/commonjs/components/views/verify-view.js.map +1 -0
- package/lib/commonjs/hooks/use-countdown.js +24 -0
- package/lib/commonjs/hooks/use-countdown.js.map +1 -0
- package/lib/commonjs/index.js +13 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/internal/constants.js +42 -0
- package/lib/commonjs/internal/constants.js.map +1 -0
- package/lib/commonjs/internal/format.js +29 -0
- package/lib/commonjs/internal/format.js.map +1 -0
- package/lib/commonjs/internal/theme.js +24 -0
- package/lib/commonjs/internal/theme.js.map +1 -0
- package/lib/commonjs/package.json +1 -0
- package/lib/commonjs/types.js +6 -0
- package/lib/commonjs/types.js.map +1 -0
- package/lib/module/api/client.js +67 -0
- package/lib/module/api/client.js.map +1 -0
- package/lib/module/api/endpoints.js +7 -0
- package/lib/module/api/endpoints.js.map +1 -0
- package/lib/module/components/bottom-sheet.js +133 -0
- package/lib/module/components/bottom-sheet.js.map +1 -0
- package/lib/module/components/icons.js +120 -0
- package/lib/module/components/icons.js.map +1 -0
- package/lib/module/components/payment-button.js +103 -0
- package/lib/module/components/payment-button.js.map +1 -0
- package/lib/module/components/payment-sheet.js +152 -0
- package/lib/module/components/payment-sheet.js.map +1 -0
- package/lib/module/components/views/status-view.js +105 -0
- package/lib/module/components/views/status-view.js.map +1 -0
- package/lib/module/components/views/transfer-view.js +157 -0
- package/lib/module/components/views/transfer-view.js.map +1 -0
- package/lib/module/components/views/verify-view.js +94 -0
- package/lib/module/components/views/verify-view.js.map +1 -0
- package/lib/module/hooks/use-countdown.js +21 -0
- package/lib/module/hooks/use-countdown.js.map +1 -0
- package/lib/module/index.js +4 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/internal/constants.js +37 -0
- package/lib/module/internal/constants.js.map +1 -0
- package/lib/module/internal/format.js +24 -0
- package/lib/module/internal/format.js.map +1 -0
- package/lib/module/internal/theme.js +21 -0
- package/lib/module/internal/theme.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/types.js +4 -0
- package/lib/module/types.js.map +1 -0
- package/lib/typescript/api/client.d.ts +17 -0
- package/lib/typescript/api/client.d.ts.map +1 -0
- package/lib/typescript/api/endpoints.d.ts +5 -0
- package/lib/typescript/api/endpoints.d.ts.map +1 -0
- package/lib/typescript/components/bottom-sheet.d.ts +18 -0
- package/lib/typescript/components/bottom-sheet.d.ts.map +1 -0
- package/lib/typescript/components/icons.d.ts +12 -0
- package/lib/typescript/components/icons.d.ts.map +1 -0
- package/lib/typescript/components/payment-button.d.ts +7 -0
- package/lib/typescript/components/payment-button.d.ts.map +1 -0
- package/lib/typescript/components/payment-sheet.d.ts +17 -0
- package/lib/typescript/components/payment-sheet.d.ts.map +1 -0
- package/lib/typescript/components/views/status-view.d.ts +12 -0
- package/lib/typescript/components/views/status-view.d.ts.map +1 -0
- package/lib/typescript/components/views/transfer-view.d.ts +13 -0
- package/lib/typescript/components/views/transfer-view.d.ts.map +1 -0
- package/lib/typescript/components/views/verify-view.d.ts +10 -0
- package/lib/typescript/components/views/verify-view.d.ts.map +1 -0
- package/lib/typescript/hooks/use-countdown.d.ts +8 -0
- package/lib/typescript/hooks/use-countdown.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +3 -0
- package/lib/typescript/index.d.ts.map +1 -0
- package/lib/typescript/internal/constants.d.ts +20 -0
- package/lib/typescript/internal/constants.d.ts.map +1 -0
- package/lib/typescript/internal/format.d.ts +7 -0
- package/lib/typescript/internal/format.d.ts.map +1 -0
- package/lib/typescript/internal/theme.d.ts +13 -0
- package/lib/typescript/internal/theme.d.ts.map +1 -0
- package/lib/typescript/types.d.ts +67 -0
- package/lib/typescript/types.d.ts.map +1 -0
- package/package.json +70 -0
- package/src/api/client.ts +76 -0
- package/src/api/endpoints.ts +4 -0
- package/src/components/bottom-sheet.tsx +144 -0
- package/src/components/icons.tsx +90 -0
- package/src/components/payment-button.tsx +112 -0
- package/src/components/payment-sheet.tsx +149 -0
- package/src/components/views/status-view.tsx +61 -0
- package/src/components/views/transfer-view.tsx +112 -0
- package/src/components/views/verify-view.tsx +69 -0
- package/src/hooks/use-countdown.ts +20 -0
- package/src/index.ts +10 -0
- package/src/internal/constants.ts +34 -0
- package/src/internal/format.ts +21 -0
- package/src/internal/theme.ts +28 -0
- package/src/types.ts +73 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useMemo, useState } from 'react';
|
|
4
|
+
import { Linking, Pressable, ScrollView, StyleSheet, Text, View } from 'react-native';
|
|
5
|
+
import { COUNTDOWN_SECONDS } from '../internal/constants';
|
|
6
|
+
import { resolveNetworkCode } from '../internal/format';
|
|
7
|
+
import { ClockPayClient } from '../api/client';
|
|
8
|
+
import { useCountdown } from '../hooks/use-countdown';
|
|
9
|
+
import { BottomSheet } from './bottom-sheet';
|
|
10
|
+
import { CloseIcon, LogoIcon } from './icons';
|
|
11
|
+
import { TransferView } from './views/transfer-view';
|
|
12
|
+
import { VerifyView } from './views/verify-view';
|
|
13
|
+
import { StatusView } from './views/status-view';
|
|
14
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
15
|
+
export function PaymentSheet({
|
|
16
|
+
visible,
|
|
17
|
+
checkout,
|
|
18
|
+
publicKey,
|
|
19
|
+
apiBaseUrl,
|
|
20
|
+
theme,
|
|
21
|
+
redirectUrl,
|
|
22
|
+
onRequestClose,
|
|
23
|
+
onClosed,
|
|
24
|
+
onSuccess,
|
|
25
|
+
onError
|
|
26
|
+
}) {
|
|
27
|
+
const [step, setStep] = useState('pay');
|
|
28
|
+
const [busy, setBusy] = useState(false);
|
|
29
|
+
const [success, setSuccess] = useState(false);
|
|
30
|
+
const [error, setError] = useState(null);
|
|
31
|
+
const {
|
|
32
|
+
formatted,
|
|
33
|
+
expired
|
|
34
|
+
} = useCountdown(COUNTDOWN_SECONDS);
|
|
35
|
+
const client = useMemo(() => new ClockPayClient(publicKey, apiBaseUrl), [publicKey, apiBaseUrl]);
|
|
36
|
+
const startVerification = async trxHash => {
|
|
37
|
+
setStep('status');
|
|
38
|
+
setBusy(true);
|
|
39
|
+
setError(null);
|
|
40
|
+
try {
|
|
41
|
+
const data = await client.verifyCrypto({
|
|
42
|
+
reference: checkout.reference,
|
|
43
|
+
trxHash,
|
|
44
|
+
code: resolveNetworkCode(checkout.network, checkout.networkCode)
|
|
45
|
+
});
|
|
46
|
+
setSuccess(true);
|
|
47
|
+
onSuccess?.(data);
|
|
48
|
+
} catch (err) {
|
|
49
|
+
const e = err instanceof Error ? err : new Error('Verification failed.');
|
|
50
|
+
setError(e.message);
|
|
51
|
+
onError?.(e);
|
|
52
|
+
} finally {
|
|
53
|
+
setBusy(false);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
const handleClosed = () => {
|
|
57
|
+
onClosed();
|
|
58
|
+
if (success && redirectUrl) Linking.openURL(redirectUrl).catch(() => {});
|
|
59
|
+
};
|
|
60
|
+
return /*#__PURE__*/_jsxs(BottomSheet, {
|
|
61
|
+
visible: visible,
|
|
62
|
+
onClose: onRequestClose,
|
|
63
|
+
onClosed: handleClosed,
|
|
64
|
+
closeOnBackdropPress: false,
|
|
65
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
66
|
+
style: styles.header,
|
|
67
|
+
children: [/*#__PURE__*/_jsx(LogoIcon, {
|
|
68
|
+
size: 18
|
|
69
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
70
|
+
style: [styles.title, {
|
|
71
|
+
color: theme.accent
|
|
72
|
+
}],
|
|
73
|
+
children: "Pay with Clockpay"
|
|
74
|
+
}), /*#__PURE__*/_jsx(Pressable, {
|
|
75
|
+
onPress: onRequestClose,
|
|
76
|
+
style: styles.cancel,
|
|
77
|
+
hitSlop: 8,
|
|
78
|
+
accessibilityRole: "button",
|
|
79
|
+
accessibilityLabel: "Cancel",
|
|
80
|
+
children: /*#__PURE__*/_jsx(CloseIcon, {
|
|
81
|
+
size: 22
|
|
82
|
+
})
|
|
83
|
+
})]
|
|
84
|
+
}), /*#__PURE__*/_jsxs(ScrollView, {
|
|
85
|
+
showsVerticalScrollIndicator: false,
|
|
86
|
+
keyboardShouldPersistTaps: "handled",
|
|
87
|
+
children: [step === 'pay' && /*#__PURE__*/_jsxs(View, {
|
|
88
|
+
style: styles.card,
|
|
89
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
90
|
+
style: styles.muted,
|
|
91
|
+
children: "Total amount to be paid"
|
|
92
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
|
93
|
+
style: styles.amount,
|
|
94
|
+
children: [checkout.amount, checkout.coin?.toUpperCase()]
|
|
95
|
+
}), /*#__PURE__*/_jsx(TransferView, {
|
|
96
|
+
checkout: checkout,
|
|
97
|
+
theme: theme,
|
|
98
|
+
formattedTime: formatted,
|
|
99
|
+
expired: expired,
|
|
100
|
+
onNext: () => setStep('verify')
|
|
101
|
+
})]
|
|
102
|
+
}), step === 'verify' && /*#__PURE__*/_jsx(VerifyView, {
|
|
103
|
+
theme: theme,
|
|
104
|
+
busy: busy,
|
|
105
|
+
onSubmit: startVerification
|
|
106
|
+
}), step === 'status' && /*#__PURE__*/_jsx(StatusView, {
|
|
107
|
+
theme: theme,
|
|
108
|
+
busy: busy,
|
|
109
|
+
success: success,
|
|
110
|
+
error: error,
|
|
111
|
+
onClose: onRequestClose
|
|
112
|
+
})]
|
|
113
|
+
})]
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
const styles = StyleSheet.create({
|
|
117
|
+
header: {
|
|
118
|
+
flexDirection: 'row',
|
|
119
|
+
alignItems: 'center',
|
|
120
|
+
justifyContent: 'center',
|
|
121
|
+
gap: 8,
|
|
122
|
+
paddingBottom: 16
|
|
123
|
+
},
|
|
124
|
+
title: {
|
|
125
|
+
fontSize: 16,
|
|
126
|
+
fontWeight: '700'
|
|
127
|
+
},
|
|
128
|
+
cancel: {
|
|
129
|
+
position: 'absolute',
|
|
130
|
+
right: 0,
|
|
131
|
+
top: -2,
|
|
132
|
+
padding: 4
|
|
133
|
+
},
|
|
134
|
+
card: {
|
|
135
|
+
borderWidth: 1,
|
|
136
|
+
borderColor: '#edf1f6',
|
|
137
|
+
borderRadius: 16,
|
|
138
|
+
padding: 20,
|
|
139
|
+
alignItems: 'center'
|
|
140
|
+
},
|
|
141
|
+
muted: {
|
|
142
|
+
fontSize: 13,
|
|
143
|
+
color: '#94a3b8'
|
|
144
|
+
},
|
|
145
|
+
amount: {
|
|
146
|
+
fontSize: 24,
|
|
147
|
+
fontWeight: '700',
|
|
148
|
+
color: '#000',
|
|
149
|
+
marginTop: 4
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
//# sourceMappingURL=payment-sheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useMemo","useState","Linking","Pressable","ScrollView","StyleSheet","Text","View","COUNTDOWN_SECONDS","resolveNetworkCode","ClockPayClient","useCountdown","BottomSheet","CloseIcon","LogoIcon","TransferView","VerifyView","StatusView","jsx","_jsx","jsxs","_jsxs","PaymentSheet","visible","checkout","publicKey","apiBaseUrl","theme","redirectUrl","onRequestClose","onClosed","onSuccess","onError","step","setStep","busy","setBusy","success","setSuccess","error","setError","formatted","expired","client","startVerification","trxHash","data","verifyCrypto","reference","code","network","networkCode","err","e","Error","message","handleClosed","openURL","catch","onClose","closeOnBackdropPress","children","style","styles","header","size","title","color","accent","onPress","cancel","hitSlop","accessibilityRole","accessibilityLabel","showsVerticalScrollIndicator","keyboardShouldPersistTaps","card","muted","amount","coin","toUpperCase","formattedTime","onNext","onSubmit","create","flexDirection","alignItems","justifyContent","gap","paddingBottom","fontSize","fontWeight","position","right","top","padding","borderWidth","borderColor","borderRadius","marginTop"],"sourceRoot":"..\\..\\..\\src","sources":["components/payment-sheet.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { ActivityIndicator, StyleSheet, Text, TouchableOpacity, View } from 'react-native';
|
|
4
|
+
import { CheckIcon } from '../icons';
|
|
5
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
|
+
/** Terminal step: processing spinner, success confirmation, or an error. */
|
|
7
|
+
export function StatusView({
|
|
8
|
+
theme,
|
|
9
|
+
busy,
|
|
10
|
+
success,
|
|
11
|
+
error,
|
|
12
|
+
onClose
|
|
13
|
+
}) {
|
|
14
|
+
if (busy) {
|
|
15
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
16
|
+
style: styles.center,
|
|
17
|
+
children: [/*#__PURE__*/_jsx(ActivityIndicator, {
|
|
18
|
+
size: "large",
|
|
19
|
+
color: theme.accent
|
|
20
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
21
|
+
style: styles.muted,
|
|
22
|
+
children: "Please wait while we verify your transaction\u2026"
|
|
23
|
+
})]
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
if (success) {
|
|
27
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
28
|
+
style: styles.center,
|
|
29
|
+
children: [/*#__PURE__*/_jsx(CheckIcon, {
|
|
30
|
+
size: 48
|
|
31
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
32
|
+
style: styles.title,
|
|
33
|
+
children: "Payment received!"
|
|
34
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
35
|
+
style: styles.muted,
|
|
36
|
+
children: "You can safely close this window."
|
|
37
|
+
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
38
|
+
style: [styles.primaryBtn, {
|
|
39
|
+
backgroundColor: theme.accent,
|
|
40
|
+
borderRadius: theme.radius
|
|
41
|
+
}],
|
|
42
|
+
onPress: onClose,
|
|
43
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
44
|
+
style: styles.primaryBtnText,
|
|
45
|
+
children: "Close"
|
|
46
|
+
})
|
|
47
|
+
})]
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
51
|
+
style: styles.center,
|
|
52
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
53
|
+
style: styles.title,
|
|
54
|
+
children: "Verification failed"
|
|
55
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
56
|
+
style: styles.error,
|
|
57
|
+
children: error ?? 'We could not verify your transaction.'
|
|
58
|
+
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
59
|
+
style: [styles.primaryBtn, {
|
|
60
|
+
backgroundColor: theme.accent,
|
|
61
|
+
borderRadius: theme.radius
|
|
62
|
+
}],
|
|
63
|
+
onPress: onClose,
|
|
64
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
65
|
+
style: styles.primaryBtnText,
|
|
66
|
+
children: "Close"
|
|
67
|
+
})
|
|
68
|
+
})]
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
const styles = StyleSheet.create({
|
|
72
|
+
center: {
|
|
73
|
+
alignItems: 'center',
|
|
74
|
+
paddingVertical: 24,
|
|
75
|
+
gap: 8
|
|
76
|
+
},
|
|
77
|
+
title: {
|
|
78
|
+
fontSize: 18,
|
|
79
|
+
fontWeight: '700',
|
|
80
|
+
color: '#000',
|
|
81
|
+
marginTop: 8
|
|
82
|
+
},
|
|
83
|
+
muted: {
|
|
84
|
+
fontSize: 13,
|
|
85
|
+
color: '#94a3b8',
|
|
86
|
+
textAlign: 'center'
|
|
87
|
+
},
|
|
88
|
+
error: {
|
|
89
|
+
fontSize: 13,
|
|
90
|
+
color: '#ef4444',
|
|
91
|
+
textAlign: 'center'
|
|
92
|
+
},
|
|
93
|
+
primaryBtn: {
|
|
94
|
+
width: '100%',
|
|
95
|
+
paddingVertical: 15,
|
|
96
|
+
alignItems: 'center',
|
|
97
|
+
marginTop: 16
|
|
98
|
+
},
|
|
99
|
+
primaryBtnText: {
|
|
100
|
+
fontSize: 16,
|
|
101
|
+
fontWeight: '600',
|
|
102
|
+
color: '#fff'
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
//# sourceMappingURL=status-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["ActivityIndicator","StyleSheet","Text","TouchableOpacity","View","CheckIcon","jsx","_jsx","jsxs","_jsxs","StatusView","theme","busy","success","error","onClose","style","styles","center","children","size","color","accent","muted","title","primaryBtn","backgroundColor","borderRadius","radius","onPress","primaryBtnText","create","alignItems","paddingVertical","gap","fontSize","fontWeight","marginTop","textAlign","width"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/views/status-view.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { StyleSheet, Text, TouchableOpacity, View } from 'react-native';
|
|
5
|
+
import QRCode from 'react-native-qrcode-svg';
|
|
6
|
+
import Clipboard from '@react-native-clipboard/clipboard';
|
|
7
|
+
import { CopyIcon, InfoIcon } from '../icons';
|
|
8
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
|
+
/** Manual-transfer flow: QR + deposit address + notes + countdown. */
|
|
10
|
+
export function TransferView({
|
|
11
|
+
checkout,
|
|
12
|
+
theme,
|
|
13
|
+
formattedTime,
|
|
14
|
+
expired,
|
|
15
|
+
onNext
|
|
16
|
+
}) {
|
|
17
|
+
const [copied, setCopied] = useState(false);
|
|
18
|
+
const coin = checkout.coin?.toUpperCase() ?? '';
|
|
19
|
+
const copyAddress = () => {
|
|
20
|
+
Clipboard.setString(checkout.address);
|
|
21
|
+
setCopied(true);
|
|
22
|
+
setTimeout(() => setCopied(false), 1500);
|
|
23
|
+
};
|
|
24
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
25
|
+
style: styles.container,
|
|
26
|
+
children: [/*#__PURE__*/_jsx(View, {
|
|
27
|
+
style: [styles.qr, {
|
|
28
|
+
borderColor: theme.accent
|
|
29
|
+
}],
|
|
30
|
+
children: /*#__PURE__*/_jsx(QRCode, {
|
|
31
|
+
value: checkout.address,
|
|
32
|
+
size: 108
|
|
33
|
+
})
|
|
34
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
35
|
+
style: styles.addressLabel,
|
|
36
|
+
children: "Address:"
|
|
37
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
38
|
+
style: styles.address,
|
|
39
|
+
children: checkout.address
|
|
40
|
+
}), /*#__PURE__*/_jsxs(TouchableOpacity, {
|
|
41
|
+
style: styles.copyRow,
|
|
42
|
+
onPress: copyAddress,
|
|
43
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
44
|
+
style: [styles.copyText, {
|
|
45
|
+
color: theme.accent
|
|
46
|
+
}],
|
|
47
|
+
children: copied ? 'Copied!' : 'Copy'
|
|
48
|
+
}), /*#__PURE__*/_jsx(CopyIcon, {
|
|
49
|
+
size: 18,
|
|
50
|
+
color: theme.accent
|
|
51
|
+
})]
|
|
52
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
53
|
+
style: styles.note,
|
|
54
|
+
children: [/*#__PURE__*/_jsxs(View, {
|
|
55
|
+
style: styles.noteRow,
|
|
56
|
+
children: [/*#__PURE__*/_jsx(InfoIcon, {
|
|
57
|
+
size: 16
|
|
58
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
|
59
|
+
style: styles.noteText,
|
|
60
|
+
children: ["Only send ", coin, " (", checkout.networkCode, ") assets to this address. Other assets will be lost forever."]
|
|
61
|
+
})]
|
|
62
|
+
}), /*#__PURE__*/_jsxs(View, {
|
|
63
|
+
style: styles.noteRow,
|
|
64
|
+
children: [/*#__PURE__*/_jsx(InfoIcon, {
|
|
65
|
+
size: 16
|
|
66
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
67
|
+
style: styles.noteText,
|
|
68
|
+
children: "When you make a transfer, you'll paste the transaction hash on the next screen."
|
|
69
|
+
})]
|
|
70
|
+
})]
|
|
71
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
72
|
+
style: styles.timer,
|
|
73
|
+
children: formattedTime
|
|
74
|
+
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
75
|
+
style: [styles.primaryBtn, {
|
|
76
|
+
backgroundColor: expired ? '#dff0f7' : theme.accent,
|
|
77
|
+
borderRadius: theme.radius
|
|
78
|
+
}],
|
|
79
|
+
disabled: expired,
|
|
80
|
+
onPress: onNext,
|
|
81
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
82
|
+
style: [styles.primaryBtnText, {
|
|
83
|
+
color: expired ? '#9ca3af' : '#fff'
|
|
84
|
+
}],
|
|
85
|
+
children: "Next"
|
|
86
|
+
})
|
|
87
|
+
})]
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
const styles = StyleSheet.create({
|
|
91
|
+
container: {
|
|
92
|
+
alignItems: 'center'
|
|
93
|
+
},
|
|
94
|
+
qr: {
|
|
95
|
+
borderWidth: 1,
|
|
96
|
+
borderStyle: 'dashed',
|
|
97
|
+
borderRadius: 8,
|
|
98
|
+
padding: 10,
|
|
99
|
+
marginVertical: 12
|
|
100
|
+
},
|
|
101
|
+
addressLabel: {
|
|
102
|
+
fontSize: 13,
|
|
103
|
+
fontWeight: '700',
|
|
104
|
+
color: '#64748b'
|
|
105
|
+
},
|
|
106
|
+
address: {
|
|
107
|
+
fontSize: 13,
|
|
108
|
+
fontWeight: '700',
|
|
109
|
+
color: '#64748b',
|
|
110
|
+
textAlign: 'center',
|
|
111
|
+
marginTop: 4,
|
|
112
|
+
marginBottom: 8
|
|
113
|
+
},
|
|
114
|
+
copyRow: {
|
|
115
|
+
flexDirection: 'row',
|
|
116
|
+
alignItems: 'center',
|
|
117
|
+
gap: 6,
|
|
118
|
+
marginBottom: 16
|
|
119
|
+
},
|
|
120
|
+
copyText: {
|
|
121
|
+
fontSize: 13,
|
|
122
|
+
fontWeight: '700'
|
|
123
|
+
},
|
|
124
|
+
note: {
|
|
125
|
+
width: '100%',
|
|
126
|
+
backgroundColor: '#eefaff',
|
|
127
|
+
borderRadius: 8,
|
|
128
|
+
padding: 16,
|
|
129
|
+
gap: 8,
|
|
130
|
+
marginBottom: 16
|
|
131
|
+
},
|
|
132
|
+
noteRow: {
|
|
133
|
+
flexDirection: 'row',
|
|
134
|
+
gap: 8
|
|
135
|
+
},
|
|
136
|
+
noteText: {
|
|
137
|
+
flex: 1,
|
|
138
|
+
color: '#7785b0',
|
|
139
|
+
fontSize: 12,
|
|
140
|
+
lineHeight: 18
|
|
141
|
+
},
|
|
142
|
+
timer: {
|
|
143
|
+
color: '#3bc5ff',
|
|
144
|
+
fontSize: 14,
|
|
145
|
+
marginBottom: 12
|
|
146
|
+
},
|
|
147
|
+
primaryBtn: {
|
|
148
|
+
width: '100%',
|
|
149
|
+
paddingVertical: 15,
|
|
150
|
+
alignItems: 'center'
|
|
151
|
+
},
|
|
152
|
+
primaryBtnText: {
|
|
153
|
+
fontSize: 16,
|
|
154
|
+
fontWeight: '600'
|
|
155
|
+
}
|
|
156
|
+
});
|
|
157
|
+
//# sourceMappingURL=transfer-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","StyleSheet","Text","TouchableOpacity","View","QRCode","Clipboard","CopyIcon","InfoIcon","jsx","_jsx","jsxs","_jsxs","TransferView","checkout","theme","formattedTime","expired","onNext","copied","setCopied","coin","toUpperCase","copyAddress","setString","address","setTimeout","style","styles","container","children","qr","borderColor","accent","value","size","addressLabel","copyRow","onPress","copyText","color","note","noteRow","noteText","networkCode","timer","primaryBtn","backgroundColor","borderRadius","radius","disabled","primaryBtnText","create","alignItems","borderWidth","borderStyle","padding","marginVertical","fontSize","fontWeight","textAlign","marginTop","marginBottom","flexDirection","gap","width","flex","lineHeight","paddingVertical"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/views/transfer-view.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useState } from 'react';
|
|
4
|
+
import { StyleSheet, Text, TextInput, TouchableOpacity, View } from 'react-native';
|
|
5
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
|
+
/** Step where the buyer pastes their transaction hash to confirm the transfer. */
|
|
7
|
+
export function VerifyView({
|
|
8
|
+
theme,
|
|
9
|
+
busy,
|
|
10
|
+
onSubmit
|
|
11
|
+
}) {
|
|
12
|
+
const [hash, setHash] = useState('');
|
|
13
|
+
const trimmed = hash.trim();
|
|
14
|
+
const disabled = !trimmed || busy;
|
|
15
|
+
return /*#__PURE__*/_jsxs(View, {
|
|
16
|
+
children: [/*#__PURE__*/_jsx(Text, {
|
|
17
|
+
style: styles.title,
|
|
18
|
+
children: "Verify transaction"
|
|
19
|
+
}), /*#__PURE__*/_jsx(Text, {
|
|
20
|
+
style: styles.subtitle,
|
|
21
|
+
children: "Enter your transaction hash to confirm the payment."
|
|
22
|
+
}), /*#__PURE__*/_jsxs(Text, {
|
|
23
|
+
style: styles.label,
|
|
24
|
+
children: ["Hash ", /*#__PURE__*/_jsx(Text, {
|
|
25
|
+
style: styles.req,
|
|
26
|
+
children: "*"
|
|
27
|
+
})]
|
|
28
|
+
}), /*#__PURE__*/_jsx(TextInput, {
|
|
29
|
+
style: styles.input,
|
|
30
|
+
placeholder: "Enter your transaction hash",
|
|
31
|
+
placeholderTextColor: "#9ca3af",
|
|
32
|
+
value: hash,
|
|
33
|
+
onChangeText: setHash,
|
|
34
|
+
autoCapitalize: "none",
|
|
35
|
+
autoCorrect: false
|
|
36
|
+
}), /*#__PURE__*/_jsx(TouchableOpacity, {
|
|
37
|
+
style: [styles.primaryBtn, {
|
|
38
|
+
backgroundColor: disabled ? '#dff0f7' : theme.accent,
|
|
39
|
+
borderRadius: theme.radius
|
|
40
|
+
}],
|
|
41
|
+
disabled: disabled,
|
|
42
|
+
onPress: () => onSubmit(trimmed),
|
|
43
|
+
children: /*#__PURE__*/_jsx(Text, {
|
|
44
|
+
style: [styles.primaryBtnText, {
|
|
45
|
+
color: disabled ? '#9ca3af' : '#fff'
|
|
46
|
+
}],
|
|
47
|
+
children: busy ? 'Verifying…' : 'Confirm transaction'
|
|
48
|
+
})
|
|
49
|
+
})]
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
const styles = StyleSheet.create({
|
|
53
|
+
title: {
|
|
54
|
+
fontSize: 16,
|
|
55
|
+
fontWeight: '700',
|
|
56
|
+
color: '#1e1e1e',
|
|
57
|
+
textAlign: 'center'
|
|
58
|
+
},
|
|
59
|
+
subtitle: {
|
|
60
|
+
fontSize: 13,
|
|
61
|
+
color: '#94a3b8',
|
|
62
|
+
textAlign: 'center',
|
|
63
|
+
marginTop: 4,
|
|
64
|
+
marginBottom: 16
|
|
65
|
+
},
|
|
66
|
+
label: {
|
|
67
|
+
fontSize: 14,
|
|
68
|
+
fontWeight: '500',
|
|
69
|
+
color: '#1e1e1e',
|
|
70
|
+
marginBottom: 6
|
|
71
|
+
},
|
|
72
|
+
req: {
|
|
73
|
+
color: '#fb7185'
|
|
74
|
+
},
|
|
75
|
+
input: {
|
|
76
|
+
borderWidth: 1,
|
|
77
|
+
borderColor: '#d9d9d9',
|
|
78
|
+
borderRadius: 8,
|
|
79
|
+
padding: 12,
|
|
80
|
+
fontSize: 14,
|
|
81
|
+
color: '#1e1e1e',
|
|
82
|
+
marginBottom: 20
|
|
83
|
+
},
|
|
84
|
+
primaryBtn: {
|
|
85
|
+
width: '100%',
|
|
86
|
+
paddingVertical: 15,
|
|
87
|
+
alignItems: 'center'
|
|
88
|
+
},
|
|
89
|
+
primaryBtnText: {
|
|
90
|
+
fontSize: 16,
|
|
91
|
+
fontWeight: '600'
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
//# sourceMappingURL=verify-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","StyleSheet","Text","TextInput","TouchableOpacity","View","jsx","_jsx","jsxs","_jsxs","VerifyView","theme","busy","onSubmit","hash","setHash","trimmed","trim","disabled","children","style","styles","title","subtitle","label","req","input","placeholder","placeholderTextColor","value","onChangeText","autoCapitalize","autoCorrect","primaryBtn","backgroundColor","accent","borderRadius","radius","onPress","primaryBtnText","color","create","fontSize","fontWeight","textAlign","marginTop","marginBottom","borderWidth","borderColor","padding","width","paddingVertical","alignItems"],"sourceRoot":"..\\..\\..\\..\\src","sources":["components/views/verify-view.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { useEffect, useState } from 'react';
|
|
4
|
+
import { formatTime } from '../internal/format';
|
|
5
|
+
|
|
6
|
+
/** A simple seconds countdown that stops at zero. */
|
|
7
|
+
export function useCountdown(seconds) {
|
|
8
|
+
const [timeLeft, setTimeLeft] = useState(seconds);
|
|
9
|
+
useEffect(() => {
|
|
10
|
+
if (timeLeft <= 0) return;
|
|
11
|
+
const id = setInterval(() => setTimeLeft(t => t - 1), 1000);
|
|
12
|
+
return () => clearInterval(id);
|
|
13
|
+
}, [timeLeft]);
|
|
14
|
+
return {
|
|
15
|
+
timeLeft,
|
|
16
|
+
formatted: formatTime(timeLeft),
|
|
17
|
+
expired: timeLeft <= 0,
|
|
18
|
+
reset: () => setTimeLeft(seconds)
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=use-countdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useState","formatTime","useCountdown","seconds","timeLeft","setTimeLeft","id","setInterval","t","clearInterval","formatted","expired","reset"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/use-countdown.ts"],"mappings":";;AAAA,SAASA,SAAS,EAAEC,QAAQ,QAAQ,OAAO;AAC3C,SAASC,UAAU,QAAQ,oBAAoB;;AAE/C;AACA,OAAO,SAASC,YAAYA,CAACC,OAAe,EAAE;EAC5C,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAGL,QAAQ,CAACG,OAAO,CAAC;EAEjDJ,SAAS,CAAC,MAAM;IACd,IAAIK,QAAQ,IAAI,CAAC,EAAE;IACnB,MAAME,EAAE,GAAGC,WAAW,CAAC,MAAMF,WAAW,CAAEG,CAAC,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;IAC7D,OAAO,MAAMC,aAAa,CAACH,EAAE,CAAC;EAChC,CAAC,EAAE,CAACF,QAAQ,CAAC,CAAC;EAEd,OAAO;IACLA,QAAQ;IACRM,SAAS,EAAET,UAAU,CAACG,QAAQ,CAAC;IAC/BO,OAAO,EAAEP,QAAQ,IAAI,CAAC;IACtBQ,KAAK,EAAEA,CAAA,KAAMP,WAAW,CAACF,OAAO;EAClC,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["PaymentButton"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,6BAA6B","ignoreList":[]}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/** API gateway for test keys (`cpay_test_pk_…`). */
|
|
4
|
+
export const TEST_API_BASE_URL = 'https://api.dev.theclockchain.io/api/v1';
|
|
5
|
+
|
|
6
|
+
/** API gateway for live keys (`cpay_live_pk_…`). */
|
|
7
|
+
export const LIVE_API_BASE_URL = 'https://api.theclockchain.io/api/v1';
|
|
8
|
+
|
|
9
|
+
/** ClockPay brand blue. */
|
|
10
|
+
export const DEFAULT_ACCENT = '#27AAE1';
|
|
11
|
+
|
|
12
|
+
/** How long the buyer has to complete a transfer, in seconds. */
|
|
13
|
+
export const COUNTDOWN_SECONDS = 300;
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Picks the API gateway from the public key's environment prefix, unless an
|
|
17
|
+
* explicit `override` (the `apiBaseUrl` prop) is provided. Unknown prefixes fall
|
|
18
|
+
* back to the test gateway.
|
|
19
|
+
*/
|
|
20
|
+
export function resolveApiBaseUrl(publicKey, override) {
|
|
21
|
+
if (override) return override;
|
|
22
|
+
if (publicKey.startsWith('cpay_live_pk_')) return LIVE_API_BASE_URL;
|
|
23
|
+
return TEST_API_BASE_URL;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Maps a coin's settlement network to its on-chain id, used when verifying a
|
|
28
|
+
* crypto transaction. Falls back to the `networkCode` from the checkout payload.
|
|
29
|
+
*/
|
|
30
|
+
export const NETWORK_CODES = {
|
|
31
|
+
eth: '1',
|
|
32
|
+
optimism: '10',
|
|
33
|
+
bsc: '56',
|
|
34
|
+
polygon: '137',
|
|
35
|
+
tron: '10121'
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TEST_API_BASE_URL","LIVE_API_BASE_URL","DEFAULT_ACCENT","COUNTDOWN_SECONDS","resolveApiBaseUrl","publicKey","override","startsWith","NETWORK_CODES","eth","optimism","bsc","polygon","tron"],"sourceRoot":"..\\..\\..\\src","sources":["internal/constants.ts"],"mappings":";;AAAA;AACA,OAAO,MAAMA,iBAAiB,GAAG,yCAAyC;;AAE1E;AACA,OAAO,MAAMC,iBAAiB,GAAG,qCAAqC;;AAEtE;AACA,OAAO,MAAMC,cAAc,GAAG,SAAS;;AAEvC;AACA,OAAO,MAAMC,iBAAiB,GAAG,GAAG;;AAEpC;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,iBAAiBA,CAACC,SAAiB,EAAEC,QAAiB,EAAU;EAC9E,IAAIA,QAAQ,EAAE,OAAOA,QAAQ;EAC7B,IAAID,SAAS,CAACE,UAAU,CAAC,eAAe,CAAC,EAAE,OAAON,iBAAiB;EACnE,OAAOD,iBAAiB;AAC1B;;AAEA;AACA;AACA;AACA;AACA,OAAO,MAAMQ,aAAqC,GAAG;EACnDC,GAAG,EAAE,GAAG;EACRC,QAAQ,EAAE,IAAI;EACdC,GAAG,EAAE,IAAI;EACTC,OAAO,EAAE,KAAK;EACdC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
import { NETWORK_CODES } from './constants';
|
|
4
|
+
|
|
5
|
+
/** Formats a number of seconds as `MM:SS`. */
|
|
6
|
+
export function formatTime(totalSeconds) {
|
|
7
|
+
const safe = Math.max(0, totalSeconds);
|
|
8
|
+
const minutes = Math.floor(safe / 60);
|
|
9
|
+
const seconds = safe % 60;
|
|
10
|
+
return `${String(minutes).padStart(2, '0')}:${String(seconds).padStart(2, '0')}`;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/** Resolves the on-chain code used to verify a transaction for a given checkout. */
|
|
14
|
+
export function resolveNetworkCode(network, fallback) {
|
|
15
|
+
const key = network?.toLowerCase() ?? '';
|
|
16
|
+
return NETWORK_CODES[key] ?? fallback ?? '';
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
/** Truncates a long address for compact display: `0x1234…abcd`. */
|
|
20
|
+
export function truncateMiddle(value, lead = 10, tail = 8) {
|
|
21
|
+
if (value.length <= lead + tail + 1) return value;
|
|
22
|
+
return `${value.slice(0, lead)}…${value.slice(-tail)}`;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=format.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["NETWORK_CODES","formatTime","totalSeconds","safe","Math","max","minutes","floor","seconds","String","padStart","resolveNetworkCode","network","fallback","key","toLowerCase","truncateMiddle","value","lead","tail","length","slice"],"sourceRoot":"..\\..\\..\\src","sources":["internal/format.ts"],"mappings":";;AAAA,SAASA,aAAa,QAAQ,aAAa;;AAE3C;AACA,OAAO,SAASC,UAAUA,CAACC,YAAoB,EAAU;EACvD,MAAMC,IAAI,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEH,YAAY,CAAC;EACtC,MAAMI,OAAO,GAAGF,IAAI,CAACG,KAAK,CAACJ,IAAI,GAAG,EAAE,CAAC;EACrC,MAAMK,OAAO,GAAGL,IAAI,GAAG,EAAE;EACzB,OAAO,GAAGM,MAAM,CAACH,OAAO,CAAC,CAACI,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAID,MAAM,CAACD,OAAO,CAAC,CAACE,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE;AAClF;;AAEA;AACA,OAAO,SAASC,kBAAkBA,CAACC,OAAgB,EAAEC,QAAiB,EAAU;EAC9E,MAAMC,GAAG,GAAGF,OAAO,EAAEG,WAAW,CAAC,CAAC,IAAI,EAAE;EACxC,OAAOf,aAAa,CAACc,GAAG,CAAC,IAAID,QAAQ,IAAI,EAAE;AAC7C;;AAEA;AACA,OAAO,SAASG,cAAcA,CAACC,KAAa,EAAEC,IAAI,GAAG,EAAE,EAAEC,IAAI,GAAG,CAAC,EAAU;EACzE,IAAIF,KAAK,CAACG,MAAM,IAAIF,IAAI,GAAGC,IAAI,GAAG,CAAC,EAAE,OAAOF,KAAK;EACjD,OAAO,GAAGA,KAAK,CAACI,KAAK,CAAC,CAAC,EAAEH,IAAI,CAAC,IAAID,KAAK,CAACI,KAAK,CAAC,CAACF,IAAI,CAAC,EAAE;AACxD","ignoreList":[]}
|