@rotateprotocol/sdk 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 +453 -0
- package/dist/catalog.d.ts +112 -0
- package/dist/catalog.d.ts.map +1 -0
- package/dist/catalog.js +210 -0
- package/dist/catalog.js.map +1 -0
- package/dist/components/CheckoutForm.d.ts +86 -0
- package/dist/components/CheckoutForm.d.ts.map +1 -0
- package/dist/components/CheckoutForm.js +332 -0
- package/dist/components/CheckoutForm.js.map +1 -0
- package/dist/components/HostedCheckout.d.ts +57 -0
- package/dist/components/HostedCheckout.d.ts.map +1 -0
- package/dist/components/HostedCheckout.js +414 -0
- package/dist/components/HostedCheckout.js.map +1 -0
- package/dist/components/PaymentButton.d.ts +80 -0
- package/dist/components/PaymentButton.d.ts.map +1 -0
- package/dist/components/PaymentButton.js +210 -0
- package/dist/components/PaymentButton.js.map +1 -0
- package/dist/components/RotateProvider.d.ts +115 -0
- package/dist/components/RotateProvider.d.ts.map +1 -0
- package/dist/components/RotateProvider.js +264 -0
- package/dist/components/RotateProvider.js.map +1 -0
- package/dist/components/index.d.ts +17 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +27 -0
- package/dist/components/index.js.map +1 -0
- package/dist/embed.d.ts +85 -0
- package/dist/embed.d.ts.map +1 -0
- package/dist/embed.js +313 -0
- package/dist/embed.js.map +1 -0
- package/dist/hooks.d.ts +156 -0
- package/dist/hooks.d.ts.map +1 -0
- package/dist/hooks.js +280 -0
- package/dist/hooks.js.map +1 -0
- package/dist/idl/rotate_connect.json +2572 -0
- package/dist/index.d.ts +505 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1197 -0
- package/dist/index.js.map +1 -0
- package/dist/marketplace.d.ts +257 -0
- package/dist/marketplace.d.ts.map +1 -0
- package/dist/marketplace.js +433 -0
- package/dist/marketplace.js.map +1 -0
- package/dist/platform.d.ts +234 -0
- package/dist/platform.d.ts.map +1 -0
- package/dist/platform.js +268 -0
- package/dist/platform.js.map +1 -0
- package/dist/react.d.ts +140 -0
- package/dist/react.d.ts.map +1 -0
- package/dist/react.js +429 -0
- package/dist/react.js.map +1 -0
- package/dist/store.d.ts +213 -0
- package/dist/store.d.ts.map +1 -0
- package/dist/store.js +404 -0
- package/dist/store.js.map +1 -0
- package/dist/webhooks.d.ts +149 -0
- package/dist/webhooks.d.ts.map +1 -0
- package/dist/webhooks.js +371 -0
- package/dist/webhooks.js.map +1 -0
- package/package.json +114 -0
- package/src/catalog.ts +299 -0
- package/src/components/CheckoutForm.tsx +608 -0
- package/src/components/HostedCheckout.tsx +675 -0
- package/src/components/PaymentButton.tsx +348 -0
- package/src/components/RotateProvider.tsx +370 -0
- package/src/components/index.ts +26 -0
- package/src/embed.ts +408 -0
- package/src/hooks.ts +518 -0
- package/src/idl/rotate_connect.json +2572 -0
- package/src/index.ts +1538 -0
- package/src/marketplace.ts +642 -0
- package/src/platform.ts +403 -0
- package/src/react.ts +459 -0
- package/src/store.ts +577 -0
- package/src/webhooks.ts +506 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheckoutForm.js","sourceRoot":"","sources":["../../src/components/CheckoutForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rotate Hosted Checkout
|
|
3
|
+
*
|
|
4
|
+
* A complete, hosted checkout page that handles the entire payment flow.
|
|
5
|
+
* Redirect customers here to pay.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* // Use as a full page checkout
|
|
10
|
+
* <HostedCheckout
|
|
11
|
+
* linkId={12345}
|
|
12
|
+
* onSuccess={(result) => router.push(`/success?tx=${result.transactionId}`)}
|
|
13
|
+
* onCancel={() => router.push('/cart')}
|
|
14
|
+
* />
|
|
15
|
+
*
|
|
16
|
+
* // Or redirect to the hosted URL
|
|
17
|
+
* window.location.href = `https://rotate.app/checkout/?link=${linkId}&network=mainnet-beta`;
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
export interface HostedCheckoutProps {
|
|
21
|
+
/** Payment link ID */
|
|
22
|
+
linkId: number;
|
|
23
|
+
/** Merchant ID */
|
|
24
|
+
merchantId: number;
|
|
25
|
+
/** Platform ID */
|
|
26
|
+
platformId: number;
|
|
27
|
+
/** Network */
|
|
28
|
+
network?: 'devnet' | 'mainnet-beta';
|
|
29
|
+
/** Custom RPC endpoint */
|
|
30
|
+
rpcEndpoint?: string;
|
|
31
|
+
/** Brand name */
|
|
32
|
+
brandName?: string;
|
|
33
|
+
/** Brand logo URL */
|
|
34
|
+
brandLogo?: string;
|
|
35
|
+
/** Brand color */
|
|
36
|
+
brandColor?: string;
|
|
37
|
+
/** Success callback */
|
|
38
|
+
onSuccess?: (result: PaymentResult) => void;
|
|
39
|
+
/** Cancel callback */
|
|
40
|
+
onCancel?: () => void;
|
|
41
|
+
/** Error callback */
|
|
42
|
+
onError?: (error: Error) => void;
|
|
43
|
+
/** Success redirect URL */
|
|
44
|
+
successUrl?: string;
|
|
45
|
+
/** Cancel redirect URL */
|
|
46
|
+
cancelUrl?: string;
|
|
47
|
+
}
|
|
48
|
+
export interface PaymentResult {
|
|
49
|
+
linkId: number;
|
|
50
|
+
amount: bigint;
|
|
51
|
+
currency: string;
|
|
52
|
+
transactionId: string;
|
|
53
|
+
paidAt: number;
|
|
54
|
+
}
|
|
55
|
+
export declare function HostedCheckout({ linkId, merchantId, platformId, network, rpcEndpoint, brandName, brandLogo, brandColor, onSuccess, onCancel, onError, successUrl, cancelUrl, }: HostedCheckoutProps): import("react/jsx-runtime").JSX.Element;
|
|
56
|
+
export default HostedCheckout;
|
|
57
|
+
//# sourceMappingURL=HostedCheckout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HostedCheckout.d.ts","sourceRoot":"","sources":["../../src/components/HostedCheckout.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAQH,MAAM,WAAW,mBAAmB;IAClC,sBAAsB;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc;IACd,OAAO,CAAC,EAAE,QAAQ,GAAG,cAAc,CAAC;IACpC,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,IAAI,CAAC;IAC5C,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,qBAAqB;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AA8LD,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,UAAU,EACV,UAAU,EACV,OAAwB,EACxB,WAAW,EACX,SAAsB,EACtB,SAAS,EACT,UAAsB,EACtB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,UAAU,EACV,SAAS,GACV,EAAE,mBAAmB,2CAuZrB;AAED,eAAe,cAAc,CAAC"}
|
|
@@ -0,0 +1,414 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.HostedCheckout = HostedCheckout;
|
|
7
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
8
|
+
/**
|
|
9
|
+
* Rotate Hosted Checkout
|
|
10
|
+
*
|
|
11
|
+
* A complete, hosted checkout page that handles the entire payment flow.
|
|
12
|
+
* Redirect customers here to pay.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```tsx
|
|
16
|
+
* // Use as a full page checkout
|
|
17
|
+
* <HostedCheckout
|
|
18
|
+
* linkId={12345}
|
|
19
|
+
* onSuccess={(result) => router.push(`/success?tx=${result.transactionId}`)}
|
|
20
|
+
* onCancel={() => router.push('/cart')}
|
|
21
|
+
* />
|
|
22
|
+
*
|
|
23
|
+
* // Or redirect to the hosted URL
|
|
24
|
+
* window.location.href = `https://rotate.app/checkout/?link=${linkId}&network=mainnet-beta`;
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
const react_1 = require("react");
|
|
28
|
+
const index_1 = __importDefault(require("../index"));
|
|
29
|
+
// ==================== STYLES ====================
|
|
30
|
+
const pageStyles = {
|
|
31
|
+
minHeight: '100vh',
|
|
32
|
+
background: 'linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f0f23 100%)',
|
|
33
|
+
fontFamily: '-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif',
|
|
34
|
+
display: 'flex',
|
|
35
|
+
alignItems: 'center',
|
|
36
|
+
justifyContent: 'center',
|
|
37
|
+
padding: '20px',
|
|
38
|
+
};
|
|
39
|
+
const cardStyles = {
|
|
40
|
+
background: '#ffffff',
|
|
41
|
+
borderRadius: '16px',
|
|
42
|
+
boxShadow: '0 25px 50px -12px rgba(0, 0, 0, 0.25)',
|
|
43
|
+
maxWidth: '420px',
|
|
44
|
+
width: '100%',
|
|
45
|
+
overflow: 'hidden',
|
|
46
|
+
};
|
|
47
|
+
const headerStyles = (color) => ({
|
|
48
|
+
background: `linear-gradient(135deg, ${color} 0%, ${adjustColor(color, -30)} 100%)`,
|
|
49
|
+
padding: '24px',
|
|
50
|
+
color: '#ffffff',
|
|
51
|
+
textAlign: 'center',
|
|
52
|
+
});
|
|
53
|
+
const logoStyles = {
|
|
54
|
+
width: '48px',
|
|
55
|
+
height: '48px',
|
|
56
|
+
borderRadius: '12px',
|
|
57
|
+
objectFit: 'cover',
|
|
58
|
+
marginBottom: '12px',
|
|
59
|
+
};
|
|
60
|
+
const amountStyles = {
|
|
61
|
+
fontSize: '36px',
|
|
62
|
+
fontWeight: 700,
|
|
63
|
+
marginBottom: '4px',
|
|
64
|
+
};
|
|
65
|
+
const bodyStyles = {
|
|
66
|
+
padding: '24px',
|
|
67
|
+
};
|
|
68
|
+
const sectionStyles = {
|
|
69
|
+
marginBottom: '20px',
|
|
70
|
+
};
|
|
71
|
+
const labelStyles = {
|
|
72
|
+
display: 'block',
|
|
73
|
+
fontSize: '12px',
|
|
74
|
+
fontWeight: 600,
|
|
75
|
+
color: '#64748b',
|
|
76
|
+
marginBottom: '8px',
|
|
77
|
+
textTransform: 'uppercase',
|
|
78
|
+
letterSpacing: '0.5px',
|
|
79
|
+
};
|
|
80
|
+
const currencyGridStyles = {
|
|
81
|
+
display: 'grid',
|
|
82
|
+
gridTemplateColumns: 'repeat(3, 1fr)',
|
|
83
|
+
gap: '8px',
|
|
84
|
+
};
|
|
85
|
+
const currencyButtonStyles = (selected, color) => ({
|
|
86
|
+
padding: '16px 12px',
|
|
87
|
+
border: `2px solid ${selected ? color : '#e2e8f0'}`,
|
|
88
|
+
borderRadius: '12px',
|
|
89
|
+
background: selected ? `${color}10` : '#ffffff',
|
|
90
|
+
cursor: 'pointer',
|
|
91
|
+
transition: 'all 0.2s ease',
|
|
92
|
+
display: 'flex',
|
|
93
|
+
flexDirection: 'column',
|
|
94
|
+
alignItems: 'center',
|
|
95
|
+
gap: '8px',
|
|
96
|
+
});
|
|
97
|
+
const walletSectionStyles = {
|
|
98
|
+
background: '#f8fafc',
|
|
99
|
+
borderRadius: '12px',
|
|
100
|
+
padding: '20px',
|
|
101
|
+
marginBottom: '20px',
|
|
102
|
+
};
|
|
103
|
+
const walletButtonStyles = (color, loading) => ({
|
|
104
|
+
width: '100%',
|
|
105
|
+
padding: '16px',
|
|
106
|
+
background: loading ? '#94a3b8' : `linear-gradient(135deg, ${color} 0%, ${adjustColor(color, -20)} 100%)`,
|
|
107
|
+
border: 'none',
|
|
108
|
+
borderRadius: '12px',
|
|
109
|
+
color: '#ffffff',
|
|
110
|
+
fontSize: '16px',
|
|
111
|
+
fontWeight: 600,
|
|
112
|
+
cursor: loading ? 'wait' : 'pointer',
|
|
113
|
+
display: 'flex',
|
|
114
|
+
alignItems: 'center',
|
|
115
|
+
justifyContent: 'center',
|
|
116
|
+
gap: '10px',
|
|
117
|
+
boxShadow: `0 4px 14px ${color}40`,
|
|
118
|
+
transition: 'all 0.2s ease',
|
|
119
|
+
});
|
|
120
|
+
const detailRowStyles = {
|
|
121
|
+
display: 'flex',
|
|
122
|
+
justifyContent: 'space-between',
|
|
123
|
+
padding: '12px 0',
|
|
124
|
+
borderBottom: '1px solid #f1f5f9',
|
|
125
|
+
fontSize: '14px',
|
|
126
|
+
};
|
|
127
|
+
const footerStyles = {
|
|
128
|
+
padding: '16px 24px',
|
|
129
|
+
background: '#f8fafc',
|
|
130
|
+
textAlign: 'center',
|
|
131
|
+
fontSize: '12px',
|
|
132
|
+
color: '#94a3b8',
|
|
133
|
+
};
|
|
134
|
+
const cancelLinkStyles = {
|
|
135
|
+
color: '#64748b',
|
|
136
|
+
textDecoration: 'none',
|
|
137
|
+
fontSize: '14px',
|
|
138
|
+
display: 'block',
|
|
139
|
+
textAlign: 'center',
|
|
140
|
+
marginTop: '16px',
|
|
141
|
+
cursor: 'pointer',
|
|
142
|
+
};
|
|
143
|
+
const statusStyles = (status) => ({
|
|
144
|
+
textAlign: 'center',
|
|
145
|
+
padding: '40px 20px',
|
|
146
|
+
});
|
|
147
|
+
const statusIconStyles = (success) => ({
|
|
148
|
+
width: '80px',
|
|
149
|
+
height: '80px',
|
|
150
|
+
borderRadius: '50%',
|
|
151
|
+
background: success ? '#10B981' : '#EF4444',
|
|
152
|
+
display: 'flex',
|
|
153
|
+
alignItems: 'center',
|
|
154
|
+
justifyContent: 'center',
|
|
155
|
+
margin: '0 auto 20px',
|
|
156
|
+
fontSize: '40px',
|
|
157
|
+
});
|
|
158
|
+
function adjustColor(hex, percent) {
|
|
159
|
+
const num = parseInt(hex.replace('#', ''), 16);
|
|
160
|
+
const amt = Math.round(2.55 * percent);
|
|
161
|
+
const R = (num >> 16) + amt;
|
|
162
|
+
const G = (num >> 8 & 0x00FF) + amt;
|
|
163
|
+
const B = (num & 0x0000FF) + amt;
|
|
164
|
+
return '#' + (0x1000000 +
|
|
165
|
+
(R < 255 ? R < 1 ? 0 : R : 255) * 0x10000 +
|
|
166
|
+
(G < 255 ? G < 1 ? 0 : G : 255) * 0x100 +
|
|
167
|
+
(B < 255 ? B < 1 ? 0 : B : 255)).toString(16).slice(1);
|
|
168
|
+
}
|
|
169
|
+
// ==================== ICONS ====================
|
|
170
|
+
const WalletIcon = ({ name }) => ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
171
|
+
width: '40px',
|
|
172
|
+
height: '40px',
|
|
173
|
+
borderRadius: '10px',
|
|
174
|
+
background: '#f1f5f9',
|
|
175
|
+
display: 'flex',
|
|
176
|
+
alignItems: 'center',
|
|
177
|
+
justifyContent: 'center',
|
|
178
|
+
fontSize: '20px',
|
|
179
|
+
}, children: name === 'Phantom' ? '👻' : name === 'Solflare' ? '🌞' : '💳' }));
|
|
180
|
+
const SpinnerIcon = () => ((0, jsx_runtime_1.jsxs)("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", style: { animation: 'rotate-spin 1s linear infinite' }, children: [(0, jsx_runtime_1.jsx)("circle", { cx: "12", cy: "12", r: "10", strokeOpacity: "0.25" }), (0, jsx_runtime_1.jsx)("path", { d: "M12 2a10 10 0 0 1 10 10", strokeLinecap: "round" })] }));
|
|
181
|
+
// ==================== COMPONENT ====================
|
|
182
|
+
function HostedCheckout({ linkId, merchantId, platformId, network = 'mainnet-beta', rpcEndpoint, brandName = 'Checkout', brandLogo, brandColor = '#8B5CF6', onSuccess, onCancel, onError, successUrl, cancelUrl, }) {
|
|
183
|
+
// State
|
|
184
|
+
const [loading, setLoading] = (0, react_1.useState)(true);
|
|
185
|
+
const [paying, setPaying] = (0, react_1.useState)(false);
|
|
186
|
+
const [link, setLink] = (0, react_1.useState)(null);
|
|
187
|
+
const [merchant, setMerchant] = (0, react_1.useState)(null);
|
|
188
|
+
const [platform, setPlatform] = (0, react_1.useState)(null);
|
|
189
|
+
const [selectedCurrency, setSelectedCurrency] = (0, react_1.useState)('USDC');
|
|
190
|
+
const [status, setStatus] = (0, react_1.useState)('loading');
|
|
191
|
+
const [error, setError] = (0, react_1.useState)(null);
|
|
192
|
+
const [solPrice, setSolPrice] = (0, react_1.useState)(100);
|
|
193
|
+
const [selectedWallet, setSelectedWallet] = (0, react_1.useState)(null);
|
|
194
|
+
// Initialize SDK (memoized to prevent re-creation on every render)
|
|
195
|
+
const sdk = (0, react_1.useMemo)(() => new index_1.default({ network, rpcEndpoint }), [network, rpcEndpoint]);
|
|
196
|
+
// Load payment data
|
|
197
|
+
(0, react_1.useEffect)(() => {
|
|
198
|
+
async function loadData() {
|
|
199
|
+
try {
|
|
200
|
+
const [linkData, merchantData, platformData, price] = await Promise.all([
|
|
201
|
+
sdk.getPaymentLink(linkId),
|
|
202
|
+
sdk.getMerchant(merchantId),
|
|
203
|
+
sdk.getPlatform(platformId),
|
|
204
|
+
sdk.getSolPrice(),
|
|
205
|
+
]);
|
|
206
|
+
if (!linkData) {
|
|
207
|
+
setStatus('error');
|
|
208
|
+
setError('Payment link not found');
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
if (linkData.status === 'Paid') {
|
|
212
|
+
setStatus('success');
|
|
213
|
+
return;
|
|
214
|
+
}
|
|
215
|
+
if (linkData.status === 'Cancelled') {
|
|
216
|
+
setStatus('error');
|
|
217
|
+
setError('This payment was cancelled');
|
|
218
|
+
return;
|
|
219
|
+
}
|
|
220
|
+
if (linkData.expiresAt > 0 && Date.now() / 1000 > linkData.expiresAt) {
|
|
221
|
+
setStatus('expired');
|
|
222
|
+
return;
|
|
223
|
+
}
|
|
224
|
+
setLink(linkData);
|
|
225
|
+
setMerchant(merchantData);
|
|
226
|
+
setPlatform(platformData);
|
|
227
|
+
setSolPrice(price);
|
|
228
|
+
setStatus('ready');
|
|
229
|
+
}
|
|
230
|
+
catch (e) {
|
|
231
|
+
setStatus('error');
|
|
232
|
+
setError(e.message);
|
|
233
|
+
onError?.(e);
|
|
234
|
+
}
|
|
235
|
+
finally {
|
|
236
|
+
setLoading(false);
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
loadData();
|
|
240
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
241
|
+
}, [linkId, merchantId, platformId, sdk]);
|
|
242
|
+
// Format amount
|
|
243
|
+
const formatAmount = (lamports, currency) => {
|
|
244
|
+
const amount = Number(lamports) / (currency === 'SOL' ? 1e9 : 1e6);
|
|
245
|
+
if (currency === 'SOL') {
|
|
246
|
+
return `${amount.toFixed(amount < 1 ? 4 : 3)} SOL`;
|
|
247
|
+
}
|
|
248
|
+
return `$${amount.toFixed(2)}`;
|
|
249
|
+
};
|
|
250
|
+
// Get amount in selected currency
|
|
251
|
+
const getAmountInCurrency = () => {
|
|
252
|
+
if (!link)
|
|
253
|
+
return '—';
|
|
254
|
+
const usdAmount = Number(link.amount) / 1e6; // Assuming USD base
|
|
255
|
+
if (selectedCurrency === 'SOL') {
|
|
256
|
+
const solAmount = usdAmount / solPrice;
|
|
257
|
+
return `${solAmount.toFixed(solAmount < 1 ? 4 : 3)} SOL`;
|
|
258
|
+
}
|
|
259
|
+
return `$${usdAmount.toFixed(2)}`;
|
|
260
|
+
};
|
|
261
|
+
// Handle wallet connect and payment
|
|
262
|
+
const connectWallet = (0, react_1.useCallback)(async (walletName) => {
|
|
263
|
+
setSelectedWallet(walletName);
|
|
264
|
+
setPaying(true);
|
|
265
|
+
setStatus('paying');
|
|
266
|
+
try {
|
|
267
|
+
// Detect wallet adapter
|
|
268
|
+
let wallet = null;
|
|
269
|
+
if (walletName === 'Phantom' && window.solana?.isPhantom) {
|
|
270
|
+
wallet = window.solana;
|
|
271
|
+
}
|
|
272
|
+
else if (walletName === 'Solflare' && window.solflare?.isSolflare) {
|
|
273
|
+
wallet = window.solflare;
|
|
274
|
+
}
|
|
275
|
+
if (!wallet) {
|
|
276
|
+
throw new Error(`${walletName} wallet not found. Please install it.`);
|
|
277
|
+
}
|
|
278
|
+
// Connect wallet
|
|
279
|
+
const response = await wallet.connect();
|
|
280
|
+
const buyerPublicKey = response.publicKey;
|
|
281
|
+
if (!link)
|
|
282
|
+
throw new Error('Payment link not loaded');
|
|
283
|
+
// Initialize SDK with the connected wallet for transaction signing
|
|
284
|
+
sdk.initWithWallet({
|
|
285
|
+
publicKey: buyerPublicKey,
|
|
286
|
+
signTransaction: (tx) => wallet.signTransaction(tx),
|
|
287
|
+
signAllTransactions: (txs) => wallet.signAllTransactions(txs),
|
|
288
|
+
});
|
|
289
|
+
let txSignature;
|
|
290
|
+
const baseParams = {
|
|
291
|
+
linkId,
|
|
292
|
+
merchantId,
|
|
293
|
+
platformId,
|
|
294
|
+
amount: link.amount,
|
|
295
|
+
};
|
|
296
|
+
// Route to the correct payment method based on link type and selected currency.
|
|
297
|
+
// For USD-denominated links (tokenType === 'Usd'), the user selects which
|
|
298
|
+
// currency to pay with. For native SOL/token links, use the matching payment
|
|
299
|
+
// method directly.
|
|
300
|
+
if (link.tokenType === 'Usdc' || link.tokenType === 'Usdt') {
|
|
301
|
+
// Native token link — pay with the link's token
|
|
302
|
+
const currency = link.tokenType === 'Usdc' ? 'USDC' : 'USDT';
|
|
303
|
+
txSignature = await sdk.payLinkToken({ ...baseParams, currency });
|
|
304
|
+
}
|
|
305
|
+
else if (link.tokenType === 'Sol') {
|
|
306
|
+
// Native SOL link — pay with SOL directly
|
|
307
|
+
txSignature = await sdk.payLinkSol({ ...baseParams });
|
|
308
|
+
}
|
|
309
|
+
else if (selectedCurrency === 'SOL') {
|
|
310
|
+
// USD-denominated link paid in SOL
|
|
311
|
+
const lamportsAmount = await sdk.microUsdToLamports(link.amount);
|
|
312
|
+
txSignature = await sdk.payLinkUsdSol({
|
|
313
|
+
...baseParams,
|
|
314
|
+
lamportsAmount,
|
|
315
|
+
});
|
|
316
|
+
}
|
|
317
|
+
else {
|
|
318
|
+
// USD-denominated link paid with USDC/USDT
|
|
319
|
+
txSignature = await sdk.payLinkUsdToken({
|
|
320
|
+
...baseParams,
|
|
321
|
+
currency: selectedCurrency,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
const result = {
|
|
325
|
+
linkId,
|
|
326
|
+
amount: link.amount,
|
|
327
|
+
currency: selectedCurrency,
|
|
328
|
+
transactionId: txSignature,
|
|
329
|
+
paidAt: Date.now(),
|
|
330
|
+
};
|
|
331
|
+
setStatus('success');
|
|
332
|
+
onSuccess?.(result);
|
|
333
|
+
// Post message to parent if in popup
|
|
334
|
+
if (window.opener) {
|
|
335
|
+
window.opener.postMessage({ type: 'rotate_payment_success', payment: result }, '*');
|
|
336
|
+
}
|
|
337
|
+
// Redirect if URL provided
|
|
338
|
+
if (successUrl) {
|
|
339
|
+
setTimeout(() => {
|
|
340
|
+
window.location.href = successUrl;
|
|
341
|
+
}, 2000);
|
|
342
|
+
}
|
|
343
|
+
}
|
|
344
|
+
catch (e) {
|
|
345
|
+
setPaying(false);
|
|
346
|
+
setStatus('ready');
|
|
347
|
+
setError(e.message);
|
|
348
|
+
onError?.(e);
|
|
349
|
+
}
|
|
350
|
+
}, [link, linkId, merchantId, platformId, sdk, selectedCurrency, onSuccess, onError, successUrl]);
|
|
351
|
+
// Handle cancel
|
|
352
|
+
const handleCancel = (0, react_1.useCallback)(() => {
|
|
353
|
+
if (window.opener) {
|
|
354
|
+
window.opener.postMessage({ type: 'rotate_payment_cancel' }, '*');
|
|
355
|
+
window.close();
|
|
356
|
+
}
|
|
357
|
+
else if (cancelUrl) {
|
|
358
|
+
window.location.href = cancelUrl;
|
|
359
|
+
}
|
|
360
|
+
else {
|
|
361
|
+
onCancel?.();
|
|
362
|
+
}
|
|
363
|
+
}, [cancelUrl, onCancel]);
|
|
364
|
+
// Render loading state
|
|
365
|
+
if (status === 'loading') {
|
|
366
|
+
return ((0, jsx_runtime_1.jsxs)("div", { style: pageStyles, children: [(0, jsx_runtime_1.jsx)("style", { children: `@keyframes rotate-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }` }), (0, jsx_runtime_1.jsx)("div", { style: cardStyles, children: (0, jsx_runtime_1.jsxs)("div", { style: { ...statusStyles('loading'), padding: '60px 20px' }, children: [(0, jsx_runtime_1.jsx)(SpinnerIcon, {}), (0, jsx_runtime_1.jsx)("p", { style: { marginTop: '16px', color: '#64748b' }, children: "Loading payment details..." })] }) })] }));
|
|
367
|
+
}
|
|
368
|
+
// Render success state
|
|
369
|
+
if (status === 'success') {
|
|
370
|
+
return ((0, jsx_runtime_1.jsx)("div", { style: pageStyles, children: (0, jsx_runtime_1.jsx)("div", { style: cardStyles, children: (0, jsx_runtime_1.jsxs)("div", { style: statusStyles('success'), children: [(0, jsx_runtime_1.jsx)("div", { style: statusIconStyles(true), children: "\u2713" }), (0, jsx_runtime_1.jsx)("h2", { style: { fontSize: '24px', fontWeight: 700, marginBottom: '8px' }, children: "Payment Successful!" }), (0, jsx_runtime_1.jsx)("p", { style: { color: '#64748b' }, children: "Thank you for your payment." }), successUrl && ((0, jsx_runtime_1.jsx)("p", { style: { color: '#64748b', marginTop: '16px', fontSize: '14px' }, children: "Redirecting you back..." }))] }) }) }));
|
|
371
|
+
}
|
|
372
|
+
// Render error state
|
|
373
|
+
if (status === 'error' || status === 'expired') {
|
|
374
|
+
return ((0, jsx_runtime_1.jsx)("div", { style: pageStyles, children: (0, jsx_runtime_1.jsx)("div", { style: cardStyles, children: (0, jsx_runtime_1.jsxs)("div", { style: statusStyles('error'), children: [(0, jsx_runtime_1.jsx)("div", { style: statusIconStyles(false), children: "\u2715" }), (0, jsx_runtime_1.jsx)("h2", { style: { fontSize: '24px', fontWeight: 700, marginBottom: '8px' }, children: status === 'expired' ? 'Payment Expired' : 'Payment Error' }), (0, jsx_runtime_1.jsx)("p", { style: { color: '#64748b' }, children: status === 'expired'
|
|
375
|
+
? 'This payment link has expired.'
|
|
376
|
+
: error || 'Something went wrong.' }), (0, jsx_runtime_1.jsx)("button", { onClick: handleCancel, style: {
|
|
377
|
+
marginTop: '24px',
|
|
378
|
+
padding: '12px 24px',
|
|
379
|
+
background: '#f1f5f9',
|
|
380
|
+
border: 'none',
|
|
381
|
+
borderRadius: '8px',
|
|
382
|
+
fontSize: '14px',
|
|
383
|
+
fontWeight: 500,
|
|
384
|
+
cursor: 'pointer',
|
|
385
|
+
}, children: "Go Back" })] }) }) }));
|
|
386
|
+
}
|
|
387
|
+
// Main checkout render
|
|
388
|
+
return ((0, jsx_runtime_1.jsxs)("div", { style: pageStyles, children: [(0, jsx_runtime_1.jsx)("style", { children: `@keyframes rotate-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }` }), (0, jsx_runtime_1.jsxs)("div", { style: cardStyles, children: [(0, jsx_runtime_1.jsxs)("div", { style: headerStyles(brandColor), children: [brandLogo && (0, jsx_runtime_1.jsx)("img", { src: brandLogo, alt: brandName, style: logoStyles }), (0, jsx_runtime_1.jsx)("div", { style: { fontSize: '14px', opacity: 0.9, marginBottom: '8px' }, children: brandName }), (0, jsx_runtime_1.jsx)("div", { style: amountStyles, children: getAmountInCurrency() }), (0, jsx_runtime_1.jsxs)("div", { style: { fontSize: '14px', opacity: 0.8 }, children: ["Link #", linkId] })] }), (0, jsx_runtime_1.jsxs)("div", { style: bodyStyles, children: [error && ((0, jsx_runtime_1.jsx)("div", { style: {
|
|
389
|
+
padding: '12px 16px',
|
|
390
|
+
background: '#fef2f2',
|
|
391
|
+
border: '1px solid #fecaca',
|
|
392
|
+
borderRadius: '8px',
|
|
393
|
+
color: '#dc2626',
|
|
394
|
+
fontSize: '14px',
|
|
395
|
+
marginBottom: '16px',
|
|
396
|
+
}, children: error })), (0, jsx_runtime_1.jsxs)("div", { style: sectionStyles, children: [(0, jsx_runtime_1.jsx)("label", { style: labelStyles, children: "Pay with" }), (0, jsx_runtime_1.jsx)("div", { style: currencyGridStyles, children: ['USDC', 'USDT', 'SOL'].map((curr) => ((0, jsx_runtime_1.jsxs)("button", { type: "button", onClick: () => setSelectedCurrency(curr), style: currencyButtonStyles(selectedCurrency === curr, brandColor), children: [(0, jsx_runtime_1.jsx)("span", { style: { fontSize: '20px' }, children: curr === 'SOL' ? '◎' : '$' }), (0, jsx_runtime_1.jsx)("span", { style: {
|
|
397
|
+
fontSize: '14px',
|
|
398
|
+
fontWeight: selectedCurrency === curr ? 600 : 400,
|
|
399
|
+
color: selectedCurrency === curr ? brandColor : '#64748b',
|
|
400
|
+
}, children: curr })] }, curr))) })] }), (0, jsx_runtime_1.jsxs)("div", { style: sectionStyles, children: [(0, jsx_runtime_1.jsx)("label", { style: labelStyles, children: "Payment Details" }), (0, jsx_runtime_1.jsxs)("div", { style: { background: '#f8fafc', borderRadius: '8px', padding: '4px 16px' }, children: [(0, jsx_runtime_1.jsxs)("div", { style: detailRowStyles, children: [(0, jsx_runtime_1.jsx)("span", { style: { color: '#64748b' }, children: "Amount" }), (0, jsx_runtime_1.jsx)("span", { style: { fontWeight: 500 }, children: getAmountInCurrency() })] }), (0, jsx_runtime_1.jsxs)("div", { style: detailRowStyles, children: [(0, jsx_runtime_1.jsx)("span", { style: { color: '#64748b' }, children: "Network Fee" }), (0, jsx_runtime_1.jsx)("span", { style: { fontWeight: 500 }, children: "~$0.01" })] }), (0, jsx_runtime_1.jsxs)("div", { style: { ...detailRowStyles, borderBottom: 'none' }, children: [(0, jsx_runtime_1.jsx)("span", { style: { fontWeight: 600 }, children: "Total" }), (0, jsx_runtime_1.jsx)("span", { style: { fontWeight: 700, color: brandColor }, children: getAmountInCurrency() })] })] })] }), (0, jsx_runtime_1.jsxs)("div", { style: walletSectionStyles, children: [(0, jsx_runtime_1.jsx)("label", { style: labelStyles, children: "Connect Wallet" }), (0, jsx_runtime_1.jsx)("div", { style: { display: 'flex', flexDirection: 'column', gap: '8px' }, children: ['Phantom', 'Solflare'].map((wallet) => ((0, jsx_runtime_1.jsxs)("button", { onClick: () => connectWallet(wallet), disabled: paying, style: {
|
|
401
|
+
display: 'flex',
|
|
402
|
+
alignItems: 'center',
|
|
403
|
+
gap: '12px',
|
|
404
|
+
padding: '14px 16px',
|
|
405
|
+
background: '#ffffff',
|
|
406
|
+
border: '2px solid #e2e8f0',
|
|
407
|
+
borderRadius: '10px',
|
|
408
|
+
cursor: paying ? 'wait' : 'pointer',
|
|
409
|
+
transition: 'all 0.2s ease',
|
|
410
|
+
width: '100%',
|
|
411
|
+
}, children: [(0, jsx_runtime_1.jsx)(WalletIcon, { name: wallet }), (0, jsx_runtime_1.jsx)("span", { style: { flex: 1, textAlign: 'left', fontWeight: 500 }, children: paying && selectedWallet === wallet ? ((0, jsx_runtime_1.jsxs)("span", { style: { display: 'flex', alignItems: 'center', gap: '8px' }, children: [(0, jsx_runtime_1.jsx)(SpinnerIcon, {}), " Confirming..."] })) : (`Pay with ${wallet}`) })] }, wallet))) })] }), (0, jsx_runtime_1.jsx)("a", { onClick: handleCancel, style: cancelLinkStyles, children: "Cancel and go back" })] }), (0, jsx_runtime_1.jsxs)("div", { style: footerStyles, children: [(0, jsx_runtime_1.jsxs)("div", { style: { display: 'flex', alignItems: 'center', justifyContent: 'center', gap: '6px' }, children: [(0, jsx_runtime_1.jsx)("svg", { width: "14", height: "14", viewBox: "0 0 24 24", fill: "#94a3b8", children: (0, jsx_runtime_1.jsx)("path", { d: "M19 11H5c-1.1 0-2 .9-2 2v7c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-7c0-1.1-.9-2-2-2zm0 9H5v-7h14v7z" }) }), (0, jsx_runtime_1.jsxs)("span", { children: ["Secured by ", (0, jsx_runtime_1.jsx)("strong", { style: { color: brandColor }, children: "Rotate Protocol" })] })] }), (0, jsx_runtime_1.jsx)("div", { style: { marginTop: '4px', fontSize: '11px' }, children: "Funds go directly to merchant \u2022 Non-custodial" })] })] })] }));
|
|
412
|
+
}
|
|
413
|
+
exports.default = HostedCheckout;
|
|
414
|
+
//# sourceMappingURL=HostedCheckout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HostedCheckout.js","sourceRoot":"","sources":["../../src/components/HostedCheckout.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Rotate Payment Button
|
|
3
|
+
*
|
|
4
|
+
* Drop-in payment button that handles the entire checkout flow.
|
|
5
|
+
* Just add to your page and you're accepting payments!
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* // Simple usage - just amount!
|
|
10
|
+
* <PaymentButton amount={29.99} />
|
|
11
|
+
*
|
|
12
|
+
* // With customization
|
|
13
|
+
* <PaymentButton
|
|
14
|
+
* amount={99.99}
|
|
15
|
+
* currency="USD"
|
|
16
|
+
* label="Buy Now"
|
|
17
|
+
* description="Premium Plan"
|
|
18
|
+
* onSuccess={(payment) => console.log('Paid!', payment)}
|
|
19
|
+
* />
|
|
20
|
+
*
|
|
21
|
+
* // Styled button
|
|
22
|
+
* <PaymentButton
|
|
23
|
+
* amount={49.99}
|
|
24
|
+
* variant="outline"
|
|
25
|
+
* size="lg"
|
|
26
|
+
* className="my-custom-class"
|
|
27
|
+
* />
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
import { CSSProperties } from 'react';
|
|
31
|
+
export interface PaymentButtonProps {
|
|
32
|
+
/** Amount to charge */
|
|
33
|
+
amount: number;
|
|
34
|
+
/** Currency (default: USD) */
|
|
35
|
+
currency?: 'SOL' | 'USDC' | 'USDT' | 'USD';
|
|
36
|
+
/** Button label (default: "Pay {amount}") */
|
|
37
|
+
label?: string;
|
|
38
|
+
/** Product/order description */
|
|
39
|
+
description?: string;
|
|
40
|
+
/** Your order reference ID */
|
|
41
|
+
orderRef?: string;
|
|
42
|
+
/** Allow customer tips */
|
|
43
|
+
allowTips?: boolean;
|
|
44
|
+
/** Button variant */
|
|
45
|
+
variant?: 'solid' | 'outline' | 'ghost';
|
|
46
|
+
/** Button size */
|
|
47
|
+
size?: 'sm' | 'md' | 'lg';
|
|
48
|
+
/** Disabled state */
|
|
49
|
+
disabled?: boolean;
|
|
50
|
+
/** Custom class name */
|
|
51
|
+
className?: string;
|
|
52
|
+
/** Custom inline styles */
|
|
53
|
+
style?: CSSProperties;
|
|
54
|
+
/** Success callback */
|
|
55
|
+
onSuccess?: (payment: PaymentResult) => void;
|
|
56
|
+
/** Error callback */
|
|
57
|
+
onError?: (error: Error) => void;
|
|
58
|
+
/** Cancel callback */
|
|
59
|
+
onCancel?: () => void;
|
|
60
|
+
/** Loading state change callback */
|
|
61
|
+
onLoadingChange?: (loading: boolean) => void;
|
|
62
|
+
/** Open in popup instead of redirect */
|
|
63
|
+
popup?: boolean;
|
|
64
|
+
/** Custom success URL */
|
|
65
|
+
successUrl?: string;
|
|
66
|
+
/** Custom cancel URL */
|
|
67
|
+
cancelUrl?: string;
|
|
68
|
+
/** Additional metadata */
|
|
69
|
+
metadata?: Record<string, string>;
|
|
70
|
+
}
|
|
71
|
+
export interface PaymentResult {
|
|
72
|
+
linkId: number;
|
|
73
|
+
amount: number;
|
|
74
|
+
currency: string;
|
|
75
|
+
transactionId: string;
|
|
76
|
+
paidAt: number;
|
|
77
|
+
}
|
|
78
|
+
export declare function PaymentButton({ amount, currency, label, description, orderRef, allowTips, variant, size, disabled, className, style, onSuccess, onError, onCancel, onLoadingChange, popup, successUrl, cancelUrl, metadata, }: PaymentButtonProps): import("react/jsx-runtime").JSX.Element;
|
|
79
|
+
export default PaymentButton;
|
|
80
|
+
//# sourceMappingURL=PaymentButton.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PaymentButton.d.ts","sourceRoot":"","sources":["../../src/components/PaymentButton.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAc,EAAyB,aAAa,EAAE,MAAM,OAAO,CAAC;AAKpE,MAAM,WAAW,kBAAkB;IACjC,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,CAAC;IAC3C,6CAA6C;IAC7C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,qBAAqB;IACrB,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;IACxC,kBAAkB;IAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,qBAAqB;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,2BAA2B;IAC3B,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,uBAAuB;IACvB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7C,qBAAqB;IACrB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IACjC,sBAAsB;IACtB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,oCAAoC;IACpC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC7C,wCAAwC;IACxC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,yBAAyB;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,wBAAwB;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAoFD,wBAAgB,aAAa,CAAC,EAC5B,MAAM,EACN,QAAgB,EAChB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,SAAiB,EACjB,OAAiB,EACjB,IAAW,EACX,QAAgB,EAChB,SAAc,EACd,KAAU,EACV,SAAS,EACT,OAAO,EACP,QAAQ,EACR,eAAe,EACf,KAAY,EACZ,UAAU,EACV,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,2CA+JpB;AAED,eAAe,aAAa,CAAC"}
|