@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,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.PaymentSheet = PaymentSheet;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _constants = require("../internal/constants");
|
|
10
|
+
var _format = require("../internal/format");
|
|
11
|
+
var _client = require("../api/client");
|
|
12
|
+
var _useCountdown = require("../hooks/use-countdown");
|
|
13
|
+
var _bottomSheet = require("./bottom-sheet");
|
|
14
|
+
var _icons = require("./icons");
|
|
15
|
+
var _transferView = require("./views/transfer-view");
|
|
16
|
+
var _verifyView = require("./views/verify-view");
|
|
17
|
+
var _statusView = require("./views/status-view");
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
function PaymentSheet({
|
|
20
|
+
visible,
|
|
21
|
+
checkout,
|
|
22
|
+
publicKey,
|
|
23
|
+
apiBaseUrl,
|
|
24
|
+
theme,
|
|
25
|
+
redirectUrl,
|
|
26
|
+
onRequestClose,
|
|
27
|
+
onClosed,
|
|
28
|
+
onSuccess,
|
|
29
|
+
onError
|
|
30
|
+
}) {
|
|
31
|
+
const [step, setStep] = (0, _react.useState)('pay');
|
|
32
|
+
const [busy, setBusy] = (0, _react.useState)(false);
|
|
33
|
+
const [success, setSuccess] = (0, _react.useState)(false);
|
|
34
|
+
const [error, setError] = (0, _react.useState)(null);
|
|
35
|
+
const {
|
|
36
|
+
formatted,
|
|
37
|
+
expired
|
|
38
|
+
} = (0, _useCountdown.useCountdown)(_constants.COUNTDOWN_SECONDS);
|
|
39
|
+
const client = (0, _react.useMemo)(() => new _client.ClockPayClient(publicKey, apiBaseUrl), [publicKey, apiBaseUrl]);
|
|
40
|
+
const startVerification = async trxHash => {
|
|
41
|
+
setStep('status');
|
|
42
|
+
setBusy(true);
|
|
43
|
+
setError(null);
|
|
44
|
+
try {
|
|
45
|
+
const data = await client.verifyCrypto({
|
|
46
|
+
reference: checkout.reference,
|
|
47
|
+
trxHash,
|
|
48
|
+
code: (0, _format.resolveNetworkCode)(checkout.network, checkout.networkCode)
|
|
49
|
+
});
|
|
50
|
+
setSuccess(true);
|
|
51
|
+
onSuccess?.(data);
|
|
52
|
+
} catch (err) {
|
|
53
|
+
const e = err instanceof Error ? err : new Error('Verification failed.');
|
|
54
|
+
setError(e.message);
|
|
55
|
+
onError?.(e);
|
|
56
|
+
} finally {
|
|
57
|
+
setBusy(false);
|
|
58
|
+
}
|
|
59
|
+
};
|
|
60
|
+
const handleClosed = () => {
|
|
61
|
+
onClosed();
|
|
62
|
+
if (success && redirectUrl) _reactNative.Linking.openURL(redirectUrl).catch(() => {});
|
|
63
|
+
};
|
|
64
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_bottomSheet.BottomSheet, {
|
|
65
|
+
visible: visible,
|
|
66
|
+
onClose: onRequestClose,
|
|
67
|
+
onClosed: handleClosed,
|
|
68
|
+
closeOnBackdropPress: false,
|
|
69
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
70
|
+
style: styles.header,
|
|
71
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.LogoIcon, {
|
|
72
|
+
size: 18
|
|
73
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
74
|
+
style: [styles.title, {
|
|
75
|
+
color: theme.accent
|
|
76
|
+
}],
|
|
77
|
+
children: "Pay with Clockpay"
|
|
78
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Pressable, {
|
|
79
|
+
onPress: onRequestClose,
|
|
80
|
+
style: styles.cancel,
|
|
81
|
+
hitSlop: 8,
|
|
82
|
+
accessibilityRole: "button",
|
|
83
|
+
accessibilityLabel: "Cancel",
|
|
84
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.CloseIcon, {
|
|
85
|
+
size: 22
|
|
86
|
+
})
|
|
87
|
+
})]
|
|
88
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.ScrollView, {
|
|
89
|
+
showsVerticalScrollIndicator: false,
|
|
90
|
+
keyboardShouldPersistTaps: "handled",
|
|
91
|
+
children: [step === 'pay' && /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
92
|
+
style: styles.card,
|
|
93
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
94
|
+
style: styles.muted,
|
|
95
|
+
children: "Total amount to be paid"
|
|
96
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
|
|
97
|
+
style: styles.amount,
|
|
98
|
+
children: [checkout.amount, checkout.coin?.toUpperCase()]
|
|
99
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_transferView.TransferView, {
|
|
100
|
+
checkout: checkout,
|
|
101
|
+
theme: theme,
|
|
102
|
+
formattedTime: formatted,
|
|
103
|
+
expired: expired,
|
|
104
|
+
onNext: () => setStep('verify')
|
|
105
|
+
})]
|
|
106
|
+
}), step === 'verify' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_verifyView.VerifyView, {
|
|
107
|
+
theme: theme,
|
|
108
|
+
busy: busy,
|
|
109
|
+
onSubmit: startVerification
|
|
110
|
+
}), step === 'status' && /*#__PURE__*/(0, _jsxRuntime.jsx)(_statusView.StatusView, {
|
|
111
|
+
theme: theme,
|
|
112
|
+
busy: busy,
|
|
113
|
+
success: success,
|
|
114
|
+
error: error,
|
|
115
|
+
onClose: onRequestClose
|
|
116
|
+
})]
|
|
117
|
+
})]
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
const styles = _reactNative.StyleSheet.create({
|
|
121
|
+
header: {
|
|
122
|
+
flexDirection: 'row',
|
|
123
|
+
alignItems: 'center',
|
|
124
|
+
justifyContent: 'center',
|
|
125
|
+
gap: 8,
|
|
126
|
+
paddingBottom: 16
|
|
127
|
+
},
|
|
128
|
+
title: {
|
|
129
|
+
fontSize: 16,
|
|
130
|
+
fontWeight: '700'
|
|
131
|
+
},
|
|
132
|
+
cancel: {
|
|
133
|
+
position: 'absolute',
|
|
134
|
+
right: 0,
|
|
135
|
+
top: -2,
|
|
136
|
+
padding: 4
|
|
137
|
+
},
|
|
138
|
+
card: {
|
|
139
|
+
borderWidth: 1,
|
|
140
|
+
borderColor: '#edf1f6',
|
|
141
|
+
borderRadius: 16,
|
|
142
|
+
padding: 20,
|
|
143
|
+
alignItems: 'center'
|
|
144
|
+
},
|
|
145
|
+
muted: {
|
|
146
|
+
fontSize: 13,
|
|
147
|
+
color: '#94a3b8'
|
|
148
|
+
},
|
|
149
|
+
amount: {
|
|
150
|
+
fontSize: 24,
|
|
151
|
+
fontWeight: '700',
|
|
152
|
+
color: '#000',
|
|
153
|
+
marginTop: 4
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
//# sourceMappingURL=payment-sheet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_constants","_format","_client","_useCountdown","_bottomSheet","_icons","_transferView","_verifyView","_statusView","_jsxRuntime","PaymentSheet","visible","checkout","publicKey","apiBaseUrl","theme","redirectUrl","onRequestClose","onClosed","onSuccess","onError","step","setStep","useState","busy","setBusy","success","setSuccess","error","setError","formatted","expired","useCountdown","COUNTDOWN_SECONDS","client","useMemo","ClockPayClient","startVerification","trxHash","data","verifyCrypto","reference","code","resolveNetworkCode","network","networkCode","err","e","Error","message","handleClosed","Linking","openURL","catch","jsxs","BottomSheet","onClose","closeOnBackdropPress","children","View","style","styles","header","jsx","LogoIcon","size","Text","title","color","accent","Pressable","onPress","cancel","hitSlop","accessibilityRole","accessibilityLabel","CloseIcon","ScrollView","showsVerticalScrollIndicator","keyboardShouldPersistTaps","card","muted","amount","coin","toUpperCase","TransferView","formattedTime","onNext","VerifyView","onSubmit","StatusView","StyleSheet","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,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.StatusView = StatusView;
|
|
7
|
+
var _reactNative = require("react-native");
|
|
8
|
+
var _icons = require("../icons");
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
/** Terminal step: processing spinner, success confirmation, or an error. */
|
|
11
|
+
function StatusView({
|
|
12
|
+
theme,
|
|
13
|
+
busy,
|
|
14
|
+
success,
|
|
15
|
+
error,
|
|
16
|
+
onClose
|
|
17
|
+
}) {
|
|
18
|
+
if (busy) {
|
|
19
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
20
|
+
style: styles.center,
|
|
21
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.ActivityIndicator, {
|
|
22
|
+
size: "large",
|
|
23
|
+
color: theme.accent
|
|
24
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
25
|
+
style: styles.muted,
|
|
26
|
+
children: "Please wait while we verify your transaction\u2026"
|
|
27
|
+
})]
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
if (success) {
|
|
31
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
32
|
+
style: styles.center,
|
|
33
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.CheckIcon, {
|
|
34
|
+
size: 48
|
|
35
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
36
|
+
style: styles.title,
|
|
37
|
+
children: "Payment received!"
|
|
38
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
39
|
+
style: styles.muted,
|
|
40
|
+
children: "You can safely close this window."
|
|
41
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
42
|
+
style: [styles.primaryBtn, {
|
|
43
|
+
backgroundColor: theme.accent,
|
|
44
|
+
borderRadius: theme.radius
|
|
45
|
+
}],
|
|
46
|
+
onPress: onClose,
|
|
47
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
48
|
+
style: styles.primaryBtnText,
|
|
49
|
+
children: "Close"
|
|
50
|
+
})
|
|
51
|
+
})]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
55
|
+
style: styles.center,
|
|
56
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
57
|
+
style: styles.title,
|
|
58
|
+
children: "Verification failed"
|
|
59
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
60
|
+
style: styles.error,
|
|
61
|
+
children: error ?? 'We could not verify your transaction.'
|
|
62
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
63
|
+
style: [styles.primaryBtn, {
|
|
64
|
+
backgroundColor: theme.accent,
|
|
65
|
+
borderRadius: theme.radius
|
|
66
|
+
}],
|
|
67
|
+
onPress: onClose,
|
|
68
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
69
|
+
style: styles.primaryBtnText,
|
|
70
|
+
children: "Close"
|
|
71
|
+
})
|
|
72
|
+
})]
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
const styles = _reactNative.StyleSheet.create({
|
|
76
|
+
center: {
|
|
77
|
+
alignItems: 'center',
|
|
78
|
+
paddingVertical: 24,
|
|
79
|
+
gap: 8
|
|
80
|
+
},
|
|
81
|
+
title: {
|
|
82
|
+
fontSize: 18,
|
|
83
|
+
fontWeight: '700',
|
|
84
|
+
color: '#000',
|
|
85
|
+
marginTop: 8
|
|
86
|
+
},
|
|
87
|
+
muted: {
|
|
88
|
+
fontSize: 13,
|
|
89
|
+
color: '#94a3b8',
|
|
90
|
+
textAlign: 'center'
|
|
91
|
+
},
|
|
92
|
+
error: {
|
|
93
|
+
fontSize: 13,
|
|
94
|
+
color: '#ef4444',
|
|
95
|
+
textAlign: 'center'
|
|
96
|
+
},
|
|
97
|
+
primaryBtn: {
|
|
98
|
+
width: '100%',
|
|
99
|
+
paddingVertical: 15,
|
|
100
|
+
alignItems: 'center',
|
|
101
|
+
marginTop: 16
|
|
102
|
+
},
|
|
103
|
+
primaryBtnText: {
|
|
104
|
+
fontSize: 16,
|
|
105
|
+
fontWeight: '600',
|
|
106
|
+
color: '#fff'
|
|
107
|
+
}
|
|
108
|
+
});
|
|
109
|
+
//# sourceMappingURL=status-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_icons","_jsxRuntime","StatusView","theme","busy","success","error","onClose","jsxs","View","style","styles","center","children","jsx","ActivityIndicator","size","color","accent","Text","muted","CheckIcon","title","TouchableOpacity","primaryBtn","backgroundColor","borderRadius","radius","onPress","primaryBtnText","StyleSheet","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,162 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TransferView = TransferView;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _reactNativeQrcodeSvg = _interopRequireDefault(require("react-native-qrcode-svg"));
|
|
10
|
+
var _clipboard = _interopRequireDefault(require("@react-native-clipboard/clipboard"));
|
|
11
|
+
var _icons = require("../icons");
|
|
12
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
/** Manual-transfer flow: QR + deposit address + notes + countdown. */
|
|
15
|
+
function TransferView({
|
|
16
|
+
checkout,
|
|
17
|
+
theme,
|
|
18
|
+
formattedTime,
|
|
19
|
+
expired,
|
|
20
|
+
onNext
|
|
21
|
+
}) {
|
|
22
|
+
const [copied, setCopied] = (0, _react.useState)(false);
|
|
23
|
+
const coin = checkout.coin?.toUpperCase() ?? '';
|
|
24
|
+
const copyAddress = () => {
|
|
25
|
+
_clipboard.default.setString(checkout.address);
|
|
26
|
+
setCopied(true);
|
|
27
|
+
setTimeout(() => setCopied(false), 1500);
|
|
28
|
+
};
|
|
29
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
30
|
+
style: styles.container,
|
|
31
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.View, {
|
|
32
|
+
style: [styles.qr, {
|
|
33
|
+
borderColor: theme.accent
|
|
34
|
+
}],
|
|
35
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeQrcodeSvg.default, {
|
|
36
|
+
value: checkout.address,
|
|
37
|
+
size: 108
|
|
38
|
+
})
|
|
39
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
40
|
+
style: styles.addressLabel,
|
|
41
|
+
children: "Address:"
|
|
42
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
43
|
+
style: styles.address,
|
|
44
|
+
children: checkout.address
|
|
45
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.TouchableOpacity, {
|
|
46
|
+
style: styles.copyRow,
|
|
47
|
+
onPress: copyAddress,
|
|
48
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
49
|
+
style: [styles.copyText, {
|
|
50
|
+
color: theme.accent
|
|
51
|
+
}],
|
|
52
|
+
children: copied ? 'Copied!' : 'Copy'
|
|
53
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.CopyIcon, {
|
|
54
|
+
size: 18,
|
|
55
|
+
color: theme.accent
|
|
56
|
+
})]
|
|
57
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
58
|
+
style: styles.note,
|
|
59
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
60
|
+
style: styles.noteRow,
|
|
61
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.InfoIcon, {
|
|
62
|
+
size: 16
|
|
63
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
|
|
64
|
+
style: styles.noteText,
|
|
65
|
+
children: ["Only send ", coin, " (", checkout.networkCode, ") assets to this address. Other assets will be lost forever."]
|
|
66
|
+
})]
|
|
67
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
68
|
+
style: styles.noteRow,
|
|
69
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icons.InfoIcon, {
|
|
70
|
+
size: 16
|
|
71
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
72
|
+
style: styles.noteText,
|
|
73
|
+
children: "When you make a transfer, you'll paste the transaction hash on the next screen."
|
|
74
|
+
})]
|
|
75
|
+
})]
|
|
76
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
77
|
+
style: styles.timer,
|
|
78
|
+
children: formattedTime
|
|
79
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
80
|
+
style: [styles.primaryBtn, {
|
|
81
|
+
backgroundColor: expired ? '#dff0f7' : theme.accent,
|
|
82
|
+
borderRadius: theme.radius
|
|
83
|
+
}],
|
|
84
|
+
disabled: expired,
|
|
85
|
+
onPress: onNext,
|
|
86
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
87
|
+
style: [styles.primaryBtnText, {
|
|
88
|
+
color: expired ? '#9ca3af' : '#fff'
|
|
89
|
+
}],
|
|
90
|
+
children: "Next"
|
|
91
|
+
})
|
|
92
|
+
})]
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
const styles = _reactNative.StyleSheet.create({
|
|
96
|
+
container: {
|
|
97
|
+
alignItems: 'center'
|
|
98
|
+
},
|
|
99
|
+
qr: {
|
|
100
|
+
borderWidth: 1,
|
|
101
|
+
borderStyle: 'dashed',
|
|
102
|
+
borderRadius: 8,
|
|
103
|
+
padding: 10,
|
|
104
|
+
marginVertical: 12
|
|
105
|
+
},
|
|
106
|
+
addressLabel: {
|
|
107
|
+
fontSize: 13,
|
|
108
|
+
fontWeight: '700',
|
|
109
|
+
color: '#64748b'
|
|
110
|
+
},
|
|
111
|
+
address: {
|
|
112
|
+
fontSize: 13,
|
|
113
|
+
fontWeight: '700',
|
|
114
|
+
color: '#64748b',
|
|
115
|
+
textAlign: 'center',
|
|
116
|
+
marginTop: 4,
|
|
117
|
+
marginBottom: 8
|
|
118
|
+
},
|
|
119
|
+
copyRow: {
|
|
120
|
+
flexDirection: 'row',
|
|
121
|
+
alignItems: 'center',
|
|
122
|
+
gap: 6,
|
|
123
|
+
marginBottom: 16
|
|
124
|
+
},
|
|
125
|
+
copyText: {
|
|
126
|
+
fontSize: 13,
|
|
127
|
+
fontWeight: '700'
|
|
128
|
+
},
|
|
129
|
+
note: {
|
|
130
|
+
width: '100%',
|
|
131
|
+
backgroundColor: '#eefaff',
|
|
132
|
+
borderRadius: 8,
|
|
133
|
+
padding: 16,
|
|
134
|
+
gap: 8,
|
|
135
|
+
marginBottom: 16
|
|
136
|
+
},
|
|
137
|
+
noteRow: {
|
|
138
|
+
flexDirection: 'row',
|
|
139
|
+
gap: 8
|
|
140
|
+
},
|
|
141
|
+
noteText: {
|
|
142
|
+
flex: 1,
|
|
143
|
+
color: '#7785b0',
|
|
144
|
+
fontSize: 12,
|
|
145
|
+
lineHeight: 18
|
|
146
|
+
},
|
|
147
|
+
timer: {
|
|
148
|
+
color: '#3bc5ff',
|
|
149
|
+
fontSize: 14,
|
|
150
|
+
marginBottom: 12
|
|
151
|
+
},
|
|
152
|
+
primaryBtn: {
|
|
153
|
+
width: '100%',
|
|
154
|
+
paddingVertical: 15,
|
|
155
|
+
alignItems: 'center'
|
|
156
|
+
},
|
|
157
|
+
primaryBtnText: {
|
|
158
|
+
fontSize: 16,
|
|
159
|
+
fontWeight: '600'
|
|
160
|
+
}
|
|
161
|
+
});
|
|
162
|
+
//# sourceMappingURL=transfer-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_reactNativeQrcodeSvg","_interopRequireDefault","_clipboard","_icons","_jsxRuntime","e","__esModule","default","TransferView","checkout","theme","formattedTime","expired","onNext","copied","setCopied","useState","coin","toUpperCase","copyAddress","Clipboard","setString","address","setTimeout","jsxs","View","style","styles","container","children","jsx","qr","borderColor","accent","value","size","Text","addressLabel","TouchableOpacity","copyRow","onPress","copyText","color","CopyIcon","note","noteRow","InfoIcon","noteText","networkCode","timer","primaryBtn","backgroundColor","borderRadius","radius","disabled","primaryBtnText","StyleSheet","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,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.VerifyView = VerifyView;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
10
|
+
/** Step where the buyer pastes their transaction hash to confirm the transfer. */
|
|
11
|
+
function VerifyView({
|
|
12
|
+
theme,
|
|
13
|
+
busy,
|
|
14
|
+
onSubmit
|
|
15
|
+
}) {
|
|
16
|
+
const [hash, setHash] = (0, _react.useState)('');
|
|
17
|
+
const trimmed = hash.trim();
|
|
18
|
+
const disabled = !trimmed || busy;
|
|
19
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.View, {
|
|
20
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
21
|
+
style: styles.title,
|
|
22
|
+
children: "Verify transaction"
|
|
23
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
24
|
+
style: styles.subtitle,
|
|
25
|
+
children: "Enter your transaction hash to confirm the payment."
|
|
26
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_reactNative.Text, {
|
|
27
|
+
style: styles.label,
|
|
28
|
+
children: ["Hash ", /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
29
|
+
style: styles.req,
|
|
30
|
+
children: "*"
|
|
31
|
+
})]
|
|
32
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TextInput, {
|
|
33
|
+
style: styles.input,
|
|
34
|
+
placeholder: "Enter your transaction hash",
|
|
35
|
+
placeholderTextColor: "#9ca3af",
|
|
36
|
+
value: hash,
|
|
37
|
+
onChangeText: setHash,
|
|
38
|
+
autoCapitalize: "none",
|
|
39
|
+
autoCorrect: false
|
|
40
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.TouchableOpacity, {
|
|
41
|
+
style: [styles.primaryBtn, {
|
|
42
|
+
backgroundColor: disabled ? '#dff0f7' : theme.accent,
|
|
43
|
+
borderRadius: theme.radius
|
|
44
|
+
}],
|
|
45
|
+
disabled: disabled,
|
|
46
|
+
onPress: () => onSubmit(trimmed),
|
|
47
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNative.Text, {
|
|
48
|
+
style: [styles.primaryBtnText, {
|
|
49
|
+
color: disabled ? '#9ca3af' : '#fff'
|
|
50
|
+
}],
|
|
51
|
+
children: busy ? 'Verifying…' : 'Confirm transaction'
|
|
52
|
+
})
|
|
53
|
+
})]
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
const styles = _reactNative.StyleSheet.create({
|
|
57
|
+
title: {
|
|
58
|
+
fontSize: 16,
|
|
59
|
+
fontWeight: '700',
|
|
60
|
+
color: '#1e1e1e',
|
|
61
|
+
textAlign: 'center'
|
|
62
|
+
},
|
|
63
|
+
subtitle: {
|
|
64
|
+
fontSize: 13,
|
|
65
|
+
color: '#94a3b8',
|
|
66
|
+
textAlign: 'center',
|
|
67
|
+
marginTop: 4,
|
|
68
|
+
marginBottom: 16
|
|
69
|
+
},
|
|
70
|
+
label: {
|
|
71
|
+
fontSize: 14,
|
|
72
|
+
fontWeight: '500',
|
|
73
|
+
color: '#1e1e1e',
|
|
74
|
+
marginBottom: 6
|
|
75
|
+
},
|
|
76
|
+
req: {
|
|
77
|
+
color: '#fb7185'
|
|
78
|
+
},
|
|
79
|
+
input: {
|
|
80
|
+
borderWidth: 1,
|
|
81
|
+
borderColor: '#d9d9d9',
|
|
82
|
+
borderRadius: 8,
|
|
83
|
+
padding: 12,
|
|
84
|
+
fontSize: 14,
|
|
85
|
+
color: '#1e1e1e',
|
|
86
|
+
marginBottom: 20
|
|
87
|
+
},
|
|
88
|
+
primaryBtn: {
|
|
89
|
+
width: '100%',
|
|
90
|
+
paddingVertical: 15,
|
|
91
|
+
alignItems: 'center'
|
|
92
|
+
},
|
|
93
|
+
primaryBtnText: {
|
|
94
|
+
fontSize: 16,
|
|
95
|
+
fontWeight: '600'
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
//# sourceMappingURL=verify-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_reactNative","_jsxRuntime","VerifyView","theme","busy","onSubmit","hash","setHash","useState","trimmed","trim","disabled","jsxs","View","children","jsx","Text","style","styles","title","subtitle","label","req","TextInput","input","placeholder","placeholderTextColor","value","onChangeText","autoCapitalize","autoCorrect","TouchableOpacity","primaryBtn","backgroundColor","accent","borderRadius","radius","onPress","primaryBtnText","color","StyleSheet","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,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.useCountdown = useCountdown;
|
|
7
|
+
var _react = require("react");
|
|
8
|
+
var _format = require("../internal/format");
|
|
9
|
+
/** A simple seconds countdown that stops at zero. */
|
|
10
|
+
function useCountdown(seconds) {
|
|
11
|
+
const [timeLeft, setTimeLeft] = (0, _react.useState)(seconds);
|
|
12
|
+
(0, _react.useEffect)(() => {
|
|
13
|
+
if (timeLeft <= 0) return;
|
|
14
|
+
const id = setInterval(() => setTimeLeft(t => t - 1), 1000);
|
|
15
|
+
return () => clearInterval(id);
|
|
16
|
+
}, [timeLeft]);
|
|
17
|
+
return {
|
|
18
|
+
timeLeft,
|
|
19
|
+
formatted: (0, _format.formatTime)(timeLeft),
|
|
20
|
+
expired: timeLeft <= 0,
|
|
21
|
+
reset: () => setTimeLeft(seconds)
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=use-countdown.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_format","useCountdown","seconds","timeLeft","setTimeLeft","useState","useEffect","id","setInterval","t","clearInterval","formatted","formatTime","expired","reset"],"sourceRoot":"..\\..\\..\\src","sources":["hooks/use-countdown.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEA;AACO,SAASE,YAAYA,CAACC,OAAe,EAAE;EAC5C,MAAM,CAACC,QAAQ,EAAEC,WAAW,CAAC,GAAG,IAAAC,eAAQ,EAACH,OAAO,CAAC;EAEjD,IAAAI,gBAAS,EAAC,MAAM;IACd,IAAIH,QAAQ,IAAI,CAAC,EAAE;IACnB,MAAMI,EAAE,GAAGC,WAAW,CAAC,MAAMJ,WAAW,CAAEK,CAAC,IAAKA,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC;IAC7D,OAAO,MAAMC,aAAa,CAACH,EAAE,CAAC;EAChC,CAAC,EAAE,CAACJ,QAAQ,CAAC,CAAC;EAEd,OAAO;IACLA,QAAQ;IACRQ,SAAS,EAAE,IAAAC,kBAAU,EAACT,QAAQ,CAAC;IAC/BU,OAAO,EAAEV,QAAQ,IAAI,CAAC;IACtBW,KAAK,EAAEA,CAAA,KAAMV,WAAW,CAACF,OAAO;EAClC,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "PaymentButton", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _paymentButton.PaymentButton;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _paymentButton = require("./components/payment-button");
|
|
13
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_paymentButton","require"],"sourceRoot":"..\\..\\src","sources":["index.ts"],"mappings":";;;;;;;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA","ignoreList":[]}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.TEST_API_BASE_URL = exports.NETWORK_CODES = exports.LIVE_API_BASE_URL = exports.DEFAULT_ACCENT = exports.COUNTDOWN_SECONDS = void 0;
|
|
7
|
+
exports.resolveApiBaseUrl = resolveApiBaseUrl;
|
|
8
|
+
/** API gateway for test keys (`cpay_test_pk_…`). */
|
|
9
|
+
const TEST_API_BASE_URL = exports.TEST_API_BASE_URL = 'https://api.dev.theclockchain.io/api/v1';
|
|
10
|
+
|
|
11
|
+
/** API gateway for live keys (`cpay_live_pk_…`). */
|
|
12
|
+
const LIVE_API_BASE_URL = exports.LIVE_API_BASE_URL = 'https://api.theclockchain.io/api/v1';
|
|
13
|
+
|
|
14
|
+
/** ClockPay brand blue. */
|
|
15
|
+
const DEFAULT_ACCENT = exports.DEFAULT_ACCENT = '#27AAE1';
|
|
16
|
+
|
|
17
|
+
/** How long the buyer has to complete a transfer, in seconds. */
|
|
18
|
+
const COUNTDOWN_SECONDS = exports.COUNTDOWN_SECONDS = 300;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Picks the API gateway from the public key's environment prefix, unless an
|
|
22
|
+
* explicit `override` (the `apiBaseUrl` prop) is provided. Unknown prefixes fall
|
|
23
|
+
* back to the test gateway.
|
|
24
|
+
*/
|
|
25
|
+
function resolveApiBaseUrl(publicKey, override) {
|
|
26
|
+
if (override) return override;
|
|
27
|
+
if (publicKey.startsWith('cpay_live_pk_')) return LIVE_API_BASE_URL;
|
|
28
|
+
return TEST_API_BASE_URL;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Maps a coin's settlement network to its on-chain id, used when verifying a
|
|
33
|
+
* crypto transaction. Falls back to the `networkCode` from the checkout payload.
|
|
34
|
+
*/
|
|
35
|
+
const NETWORK_CODES = exports.NETWORK_CODES = {
|
|
36
|
+
eth: '1',
|
|
37
|
+
optimism: '10',
|
|
38
|
+
bsc: '56',
|
|
39
|
+
polygon: '137',
|
|
40
|
+
tron: '10121'
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TEST_API_BASE_URL","exports","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;AACO,MAAMA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,yCAAyC;;AAE1E;AACO,MAAME,iBAAiB,GAAAD,OAAA,CAAAC,iBAAA,GAAG,qCAAqC;;AAEtE;AACO,MAAMC,cAAc,GAAAF,OAAA,CAAAE,cAAA,GAAG,SAAS;;AAEvC;AACO,MAAMC,iBAAiB,GAAAH,OAAA,CAAAG,iBAAA,GAAG,GAAG;;AAEpC;AACA;AACA;AACA;AACA;AACO,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,OAAOF,iBAAiB;AAC1B;;AAEA;AACA;AACA;AACA;AACO,MAAMS,aAAqC,GAAAR,OAAA,CAAAQ,aAAA,GAAG;EACnDC,GAAG,EAAE,GAAG;EACRC,QAAQ,EAAE,IAAI;EACdC,GAAG,EAAE,IAAI;EACTC,OAAO,EAAE,KAAK;EACdC,IAAI,EAAE;AACR,CAAC","ignoreList":[]}
|