@cromix-dev/payment-component 0.0.6 → 0.0.9

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.
@@ -1,13 +1,13 @@
1
1
  import { Decimal } from "decimal.js";
2
- import type { PaymentConfig, CreatePaymentRequest, CreatePaymentResponse, SignatureResponse } from "../types/index.js";
2
+ import { type PaymentConfig, type CreatePaymentRequest, type CreatePaymentResponse, type SignatureResponse } from "../types/index.js";
3
3
  interface CryptoPaymentProps {
4
- usdAmount: Decimal.Value;
5
4
  paymentConfig: PaymentConfig;
5
+ usdAmount: Decimal.Value;
6
6
  onCreatePayment: (request: CreatePaymentRequest) => Promise<CreatePaymentResponse>;
7
7
  onGetSignature: (paymentId: string) => Promise<SignatureResponse>;
8
8
  onSuccess: (paymentId: string) => void;
9
9
  onCancel: () => void;
10
10
  }
11
- export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePayment, onGetSignature, onSuccess, onCancel, }: CryptoPaymentProps): import("react/jsx-runtime").JSX.Element;
11
+ export default function CryptoPayment({ paymentConfig, usdAmount, onCreatePayment, onGetSignature, onSuccess, onCancel, }: CryptoPaymentProps): import("react/jsx-runtime").JSX.Element;
12
12
  export {};
13
13
  //# sourceMappingURL=CryptoPayment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoPayment.d.ts","sourceRoot":"","sources":["../../../src/components/CryptoPayment.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC,OAAO,KAAK,EAGV,aAAa,EACb,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,mBAAmB,CAAC;AAW3B,UAAU,kBAAkB;IAC1B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,CACf,OAAO,EAAE,oBAAoB,KAC1B,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,SAAS,EACT,aAAa,EACb,eAAe,EACf,cAAc,EACd,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,2CA0iBpB"}
1
+ {"version":3,"file":"CryptoPayment.d.ts","sourceRoot":"","sources":["../../../src/components/CryptoPayment.tsx"],"names":[],"mappings":"AAWA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAOrC,OAAO,EAGL,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACvB,MAAM,mBAAmB,CAAC;AAW3B,UAAU,kBAAkB;IAC1B,aAAa,EAAE,aAAa,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC;IACzB,eAAe,EAAE,CACf,OAAO,EAAE,oBAAoB,KAC1B,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAClE,SAAS,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,aAAa,EACb,SAAS,EACT,eAAe,EACf,cAAc,EACd,SAAS,EACT,QAAQ,GACT,EAAE,kBAAkB,2CA2dpB"}
@@ -2,74 +2,40 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { useState, useEffect, useCallback } from "react";
3
3
  import { useAccount, useWalletClient, usePublicClient, useSwitchChain, useDisconnect, } from "wagmi";
4
4
  import { useAppKit } from "@reown/appkit/react";
5
+ import { mainnet } from "@reown/appkit/networks";
5
6
  import { erc20Abi, maxUint256 } from "viem";
6
- import { mainnet } from "viem/chains";
7
- import { Decimal } from "decimal.js";
8
7
  import { PaymentRouterAbi, ETH, mainnetUSDTAbi, USDT_ADDRESSES, } from "@cromix-dev/evm";
9
- /** Check if token address represents native coin (ETH) using ERC-7528 standard */
10
- const isNativeToken = (tokenAddress) => tokenAddress.toLowerCase() === ETH.toLowerCase();
11
- /** Check if token is the non-standard Ethereum mainnet USDT */
8
+ // checkers for native coins
9
+ const isNativeCoin = (tokenAddress) => tokenAddress.toLowerCase() === ETH.toLowerCase();
10
+ // checkers for non-standard ERC20 tokens
12
11
  const isMainnetUSDT = (chainId, tokenAddress) => chainId === mainnet.id &&
13
12
  tokenAddress.toLowerCase() === USDT_ADDRESSES[mainnet.id].toLowerCase();
14
- export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePayment, onGetSignature, onSuccess, onCancel, }) {
15
- const { address, chain: currentChain, isConnected } = useAccount();
16
- const { data: walletClient } = useWalletClient();
13
+ export default function CryptoPayment({ paymentConfig, usdAmount, onCreatePayment, onGetSignature, onSuccess, onCancel, }) {
14
+ const { address, chain, isConnected } = useAccount();
17
15
  const publicClient = usePublicClient();
16
+ const { data: walletClient } = useWalletClient();
18
17
  const { switchChain } = useSwitchChain();
19
18
  const { disconnect } = useDisconnect();
20
19
  const { open } = useAppKit();
21
- const [selectedChainId, setSelectedChainId] = useState(null);
22
- const [selectedPaymentSetting, setSelectedPaymentSetting] = useState(null);
23
20
  const [status, setStatus] = useState("idle");
24
- const [error, setError] = useState(null);
21
+ const [selectedPaymentRouter, setSelectedPaymentRouter] = useState(null);
22
+ const [selectedPaymentSetting, setSelectedPaymentSetting] = useState(null);
25
23
  const [needsApproval, setNeedsApproval] = useState(null);
26
24
  const [currentAllowance, setCurrentAllowance] = useState(0n);
27
- const getPaymentRouterByChainId = (chainId) => {
28
- return (paymentConfig.paymentRouters.find((router) => router.chainId === chainId) || null);
29
- };
30
- const getPaymentSettingsByChainId = (chainId) => {
31
- return paymentConfig.paymentSettings.filter((setting) => setting.chainId === chainId && setting.isActive);
32
- };
33
- const getAvailableChainIds = () => {
34
- const chainIds = new Set();
35
- paymentConfig.paymentSettings.forEach((setting) => {
36
- if (setting.isActive) {
37
- chainIds.add(setting.chainId);
38
- }
39
- });
40
- return Array.from(chainIds);
41
- };
42
- const availableChainIds = getAvailableChainIds();
43
- const selectedPaymentRouter = selectedChainId
44
- ? getPaymentRouterByChainId(selectedChainId)
45
- : null;
46
- const availablePaymentSettings = selectedChainId
47
- ? getPaymentSettingsByChainId(selectedChainId)
48
- : [];
49
- const targetChainId = selectedPaymentSetting
50
- ? parseInt(selectedPaymentSetting.chainId)
51
- : null;
52
- const isCorrectNetwork = targetChainId
53
- ? currentChain?.id === targetChainId
54
- : false;
55
- /** Check current allowance for ERC20 tokens */
25
+ const [error, setError] = useState(null);
56
26
  const checkAllowance = useCallback(async () => {
57
- if (!selectedPaymentSetting ||
58
- !selectedPaymentRouter ||
27
+ if (!isConnected ||
28
+ !address ||
29
+ !chain ||
59
30
  !publicClient ||
60
- !address) {
61
- return;
62
- }
63
- // Check if wallet is on the correct network before making RPC calls
64
- const requiredChainId = parseInt(selectedPaymentSetting.chainId);
65
- if (currentChain?.id !== requiredChainId) {
66
- // Wrong network - can't check allowance yet, reset state
31
+ !selectedPaymentRouter ||
32
+ !selectedPaymentSetting ||
33
+ chain.id !== parseInt(selectedPaymentSetting.chainId)) {
67
34
  setNeedsApproval(null);
68
35
  setCurrentAllowance(0n);
69
36
  return;
70
37
  }
71
- // Native tokens don't need approval
72
- if (isNativeToken(selectedPaymentSetting.tokenAddress)) {
38
+ if (isNativeCoin(selectedPaymentSetting.tokenAddress)) {
73
39
  setNeedsApproval(false);
74
40
  setCurrentAllowance(0n);
75
41
  return;
@@ -82,47 +48,36 @@ export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePaymen
82
48
  functionName: "allowance",
83
49
  args: [address, selectedPaymentRouter.address],
84
50
  });
85
- setCurrentAllowance(allowance);
86
- // If allowance is 0, user needs to approve first
87
51
  setNeedsApproval(allowance === 0n);
52
+ setCurrentAllowance(allowance);
88
53
  setStatus("idle");
89
54
  }
90
55
  catch (err) {
91
56
  console.error("Failed to check allowance:", err);
92
- // Assume approval needed if we can't check
93
57
  setNeedsApproval(true);
58
+ setCurrentAllowance(0n);
94
59
  setStatus("idle");
95
60
  }
96
61
  }, [
97
- selectedPaymentSetting,
98
- selectedPaymentRouter,
99
- publicClient,
62
+ isConnected,
100
63
  address,
101
- currentChain,
64
+ chain,
65
+ publicClient,
66
+ selectedPaymentRouter,
67
+ selectedPaymentSetting,
102
68
  ]);
103
- // Check allowance when payment setting is selected or network changes (for ERC20 tokens)
104
69
  useEffect(() => {
105
- if (selectedPaymentSetting && selectedPaymentRouter && address) {
106
- checkAllowance();
107
- }
108
- else {
109
- setNeedsApproval(null);
110
- setCurrentAllowance(0n);
111
- }
112
- }, [selectedPaymentSetting, selectedPaymentRouter, address, checkAllowance]);
113
- const handleConnectWallet = () => {
114
- open();
115
- };
116
- const handleChainIdSelect = (chainId) => {
117
- setSelectedChainId(chainId);
118
- };
119
- const handleSwitchNetwork = async () => {
120
- if (!targetChainId)
70
+ checkAllowance();
71
+ }, [checkAllowance]);
72
+ const handleSwitchNetwork = () => {
73
+ if (!isConnected)
74
+ return;
75
+ if (!selectedPaymentRouter)
121
76
  return;
77
+ setError(null);
122
78
  try {
123
79
  setStatus("switching");
124
- setError(null);
125
- await switchChain({ chainId: targetChainId });
80
+ switchChain({ chainId: parseInt(selectedPaymentRouter.chainId) });
126
81
  setStatus("idle");
127
82
  }
128
83
  catch (err) {
@@ -131,102 +86,99 @@ export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePaymen
131
86
  setStatus("idle");
132
87
  }
133
88
  };
134
- /** Handle ERC20 token approval with special handling for mainnet USDT */
135
89
  const handleApprove = async () => {
136
- if (!address ||
137
- !walletClient ||
138
- !publicClient ||
139
- !selectedPaymentSetting ||
140
- !selectedPaymentRouter ||
141
- !targetChainId) {
90
+ if (!isConnected)
142
91
  return;
143
- }
144
- if (!isCorrectNetwork) {
145
- setError(`Please switch to Chain ID ${targetChainId}`);
92
+ if (!address)
93
+ return;
94
+ if (!chain)
95
+ return;
96
+ if (!publicClient)
97
+ return;
98
+ if (!walletClient)
99
+ return;
100
+ if (!selectedPaymentRouter)
101
+ return;
102
+ if (!selectedPaymentSetting)
103
+ return;
104
+ if (chain.id !== parseInt(selectedPaymentRouter.chainId)) {
105
+ setError(`Please switch to Chain ID ${selectedPaymentRouter.chainId}`);
146
106
  return;
147
107
  }
148
- const tokenAddress = selectedPaymentSetting.tokenAddress;
149
- const spender = selectedPaymentRouter.address;
150
- const isUSDT = isMainnetUSDT(targetChainId, tokenAddress);
108
+ setError(null);
151
109
  try {
152
- setError(null);
153
110
  setStatus("approving");
154
- // For mainnet USDT: if there's existing allowance, must revoke first
155
- if (isUSDT && currentAllowance > 0n) {
156
- console.log("Revoking existing USDT allowance...");
111
+ // if the token is ethereum USDT, then revoke existing allowance first
112
+ if (isMainnetUSDT(chain.id, selectedPaymentSetting.tokenAddress) &&
113
+ currentAllowance > 0n) {
157
114
  const { request: revokeRequest } = await publicClient.simulateContract({
158
115
  account: address,
159
- address: tokenAddress,
116
+ address: selectedPaymentSetting.tokenAddress,
160
117
  abi: mainnetUSDTAbi,
161
118
  functionName: "approve",
162
- args: [spender, 0n],
119
+ args: [selectedPaymentRouter.address, 0n],
163
120
  });
164
121
  const revokeHash = await walletClient.writeContract(revokeRequest);
165
122
  await publicClient.waitForTransactionReceipt({ hash: revokeHash });
166
- console.log("Revoke complete:", revokeHash);
167
123
  }
168
- // Approve max amount (common pattern for good UX)
169
- const approveAbi = isUSDT ? mainnetUSDTAbi : erc20Abi;
170
- console.log("Approving token...", { tokenAddress, spender, isUSDT });
124
+ // approve infinite
171
125
  const { request: approveRequest } = await publicClient.simulateContract({
172
126
  account: address,
173
- address: tokenAddress,
174
- abi: approveAbi,
127
+ address: selectedPaymentSetting.tokenAddress,
128
+ abi: isMainnetUSDT(chain.id, selectedPaymentSetting.tokenAddress)
129
+ ? mainnetUSDTAbi
130
+ : erc20Abi,
175
131
  functionName: "approve",
176
- args: [spender, maxUint256],
132
+ args: [selectedPaymentRouter.address, maxUint256],
177
133
  });
178
134
  const approveHash = await walletClient.writeContract(approveRequest);
179
- console.log("Approval transaction sent:", approveHash);
180
135
  await publicClient.waitForTransactionReceipt({ hash: approveHash });
181
- console.log("Approval confirmed");
182
- // Re-check allowance after approval
136
+ // re-check allowance after approval
183
137
  await checkAllowance();
138
+ setStatus("idle");
184
139
  }
185
140
  catch (err) {
186
- console.error("Approval error:", err);
141
+ console.error("Failed to approve token:", err);
187
142
  setError(err instanceof Error ? err.message : "Approval failed");
188
143
  setStatus("idle");
189
144
  }
190
145
  };
191
146
  const handlePay = async () => {
192
- if (!address ||
193
- !walletClient ||
194
- !publicClient ||
195
- !selectedPaymentSetting ||
196
- !selectedPaymentRouter)
147
+ if (!isConnected)
148
+ return;
149
+ if (!address)
150
+ return;
151
+ if (!chain)
152
+ return;
153
+ if (!publicClient)
197
154
  return;
198
- if (!isCorrectNetwork) {
199
- setError(`Please switch to Chain ID ${targetChainId}`);
155
+ if (!walletClient)
156
+ return;
157
+ if (!selectedPaymentRouter)
158
+ return;
159
+ if (!selectedPaymentSetting)
160
+ return;
161
+ if (chain.id !== parseInt(selectedPaymentRouter.chainId)) {
162
+ setError(`Please switch to Chain ID ${selectedPaymentRouter.chainId}`);
200
163
  return;
201
164
  }
202
- let createdPaymentId = null;
165
+ setError(null);
203
166
  try {
204
- setError(null);
205
167
  setStatus("creating");
206
168
  // Create payment via merchant's API
207
- const createResponse = await onCreatePayment({
169
+ const { id: createdPaymentId } = await onCreatePayment({
208
170
  usdAmount: usdAmount.toString(),
209
171
  chainId: selectedPaymentSetting.chainId,
210
172
  tokenAddress: selectedPaymentSetting.tokenAddress,
211
173
  sender: address,
212
174
  });
213
- createdPaymentId = createResponse.id;
214
175
  setStatus("signing");
215
176
  // Get signature from merchant's API
216
- const signatureResponse = await onGetSignature(createdPaymentId);
217
- const { signature, paymentData } = signatureResponse;
177
+ const { paymentData, signature } = await onGetSignature(createdPaymentId);
218
178
  setStatus("sending");
219
- const isNative = isNativeToken(paymentData.erc20);
220
- console.log("Sending transaction:", {
221
- paymentId: createdPaymentId,
222
- paymentRouter: selectedPaymentRouter.address,
223
- paymentData,
224
- isNative,
225
- });
226
- // Simulate then send transaction to PaymentRouter contract
179
+ // Send transaction to PaymentRouter contract
227
180
  let hash;
228
- if (isNative) {
229
- // Native coin (ETH): use payETH with value
181
+ if (isNativeCoin(paymentData.erc20)) {
230
182
  const { request } = await publicClient.simulateContract({
231
183
  account: address,
232
184
  address: selectedPaymentRouter.address,
@@ -244,7 +196,6 @@ export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePaymen
244
196
  hash = await walletClient.writeContract(request);
245
197
  }
246
198
  else {
247
- // ERC20 token: use payERC20 without value
248
199
  const { request } = await publicClient.simulateContract({
249
200
  account: address,
250
201
  address: selectedPaymentRouter.address,
@@ -262,40 +213,46 @@ export default function CryptoPayment({ usdAmount, paymentConfig, onCreatePaymen
262
213
  });
263
214
  hash = await walletClient.writeContract(request);
264
215
  }
265
- console.log("Transaction sent:", hash);
216
+ console.debug("Payment transaction sent:", hash);
266
217
  setStatus("confirming");
267
- // Wait for confirmation
268
- let receipt = null;
269
- if (publicClient) {
270
- receipt = await publicClient.waitForTransactionReceipt({ hash });
271
- console.log("Transaction confirmed:", receipt);
272
- }
218
+ // Confirm payment transaction
219
+ const receipt = await publicClient.waitForTransactionReceipt({ hash });
273
220
  if (!receipt) {
274
221
  throw new Error("Transaction receipt not found");
275
222
  }
223
+ console.debug("Payment transaction confirmed:", receipt);
276
224
  setStatus("success");
277
- setTimeout(() => onSuccess(createdPaymentId), 1000);
225
+ // Call onSuccess callback
226
+ onSuccess(createdPaymentId);
278
227
  }
279
228
  catch (err) {
280
- console.error("Payment error:", err);
229
+ console.error("Failed to process payment:", err);
281
230
  setError(err instanceof Error ? err.message : "Payment failed");
282
231
  setStatus("idle");
283
232
  }
284
233
  };
285
- return (_jsxs("div", { className: "space-y-6", children: [!isConnected && (_jsxs("div", { className: "text-center py-8", children: [_jsx("h5", { className: "text-lg mb-2 text-white", children: "Connect Your Wallet" }), _jsx("p", { className: "text-gray-400 mb-6", children: "Connect your wallet to proceed with crypto payment" }), _jsx("button", { onClick: handleConnectWallet, className: "bg-blue-600 text-white px-6 py-3 rounded hover:bg-blue-700 font-semibold transition", children: "Connect Wallet" })] })), isConnected && (_jsxs("div", { className: "bg-green-900 bg-opacity-30 border border-green-700 p-3 rounded flex justify-between items-center", children: [_jsxs("div", { children: [_jsx("div", { className: "text-sm text-green-400", children: "Wallet Connected" }), _jsx("div", { className: "text-white font-mono text-sm", children: address ? `${address.slice(0, 6)}...${address.slice(-4)}` : "" })] }), _jsx("button", { onClick: () => disconnect(), className: "bg-red-600 text-white px-3 py-1 text-sm rounded hover:bg-red-700 transition", children: "Disconnect" })] })), isConnected && !selectedChainId && (_jsxs("div", { children: [_jsx("h5", { className: "font-semibold mb-3 text-white", children: "Select Network" }), _jsx("div", { className: "grid grid-cols-2 gap-3", children: availableChainIds.map((chainId) => {
286
- const settings = getPaymentSettingsByChainId(chainId);
287
- return (_jsxs("button", { onClick: () => handleChainIdSelect(chainId), className: "p-4 border-2 border-gray-600 rounded-lg hover:border-blue-500 hover:bg-gray-700 text-left transition", children: [_jsxs("div", { className: "font-semibold text-white", children: ["Chain ID: ", chainId] }), _jsxs("div", { className: "text-sm text-gray-400", children: [settings.length, " token(s)"] })] }, chainId));
288
- }) })] })), isConnected && selectedChainId && !selectedPaymentSetting && (_jsxs("div", { children: [_jsxs("div", { className: "flex items-center mb-3", children: [_jsx("button", { onClick: () => {
289
- setSelectedChainId(null);
234
+ return (_jsxs("div", { className: "space-y-6", children: [!isConnected && (_jsxs("div", { className: "text-center py-8", children: [_jsx("h5", { className: "text-lg mb-2 text-white", children: "Connect Your Wallet" }), _jsx("p", { className: "text-gray-400 mb-6", children: "Connect your wallet to proceed with crypto payment" }), _jsx("button", { onClick: () => open(), className: "bg-blue-600 text-white px-6 py-3 rounded hover:bg-blue-700 font-semibold transition", children: "Connect Wallet" })] })), isConnected && (_jsxs("div", { className: "bg-green-900 bg-opacity-30 border border-green-700 p-3 rounded flex justify-between items-center", children: [_jsxs("div", { children: [_jsx("div", { className: "text-sm text-green-400", children: "Wallet Connected" }), _jsx("div", { className: "text-white font-mono text-sm", children: address ? `${address.slice(0, 6)}...${address.slice(-4)}` : "" })] }), _jsx("button", { onClick: () => disconnect(), className: "bg-red-600 text-white px-3 py-1 text-sm rounded hover:bg-red-700 transition", children: "Disconnect" })] })), isConnected && !selectedPaymentRouter && (_jsxs("div", { children: [_jsx("h5", { className: "font-semibold mb-3 text-white", children: "Select Network" }), _jsx("div", { className: "grid grid-cols-2 gap-3", children: paymentConfig.paymentRouters.map((paymentRouter) => {
235
+ const eligiblePaymentSettings = paymentConfig.paymentSettings.filter((paymentSetting) => paymentSetting.chainId === paymentRouter.chainId &&
236
+ paymentSetting.isActive);
237
+ return (_jsxs("button", { onClick: () => setSelectedPaymentRouter(paymentRouter), className: "p-4 border-2 border-gray-600 rounded-lg hover:border-blue-500 hover:bg-gray-700 text-left transition", children: [_jsxs("div", { className: "font-semibold text-white", children: ["Chain ID: ", paymentRouter.chainId] }), _jsxs("div", { className: "text-sm text-gray-400", children: [eligiblePaymentSettings.length, " token(s)"] })] }, paymentRouter.chainId));
238
+ }) })] })), isConnected && selectedPaymentRouter && !selectedPaymentSetting && (_jsxs("div", { children: [_jsxs("div", { className: "flex items-center mb-3", children: [_jsx("button", { onClick: () => {
239
+ setSelectedPaymentRouter(null);
290
240
  setSelectedPaymentSetting(null);
291
- }, className: "text-blue-400 hover:text-blue-300 mr-3", children: "\u2190 Back" }), _jsxs("h5", { className: "font-semibold text-white", children: ["Select Token (Chain ID ", selectedChainId, ")"] })] }), _jsx("div", { className: "grid grid-cols-2 gap-3", children: availablePaymentSettings.map((setting) => (_jsxs("button", { onClick: () => setSelectedPaymentSetting(setting), className: "p-4 border-2 border-gray-600 rounded-lg hover:border-blue-500 hover:bg-gray-700 text-left transition", children: [_jsx("div", { className: "font-semibold text-white", children: setting.tokenSymbol }), _jsx("div", { className: "text-sm text-gray-400", children: setting.tokenName })] }, setting.id))) })] })), isConnected && selectedPaymentSetting && selectedPaymentRouter && (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "bg-gray-700 p-4 rounded-lg border border-gray-600", children: [_jsx("h4", { className: "font-semibold mb-2 text-white", children: "Payment Details" }), _jsxs("div", { className: "space-y-1 text-sm text-gray-300", children: [_jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Amount:" }), _jsxs("span", { className: "text-white", children: ["$", new Decimal(usdAmount).toFixed(2), " USD"] })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Chain ID:" }), _jsx("span", { className: "text-white", children: selectedPaymentSetting.chainId })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Token:" }), _jsx("span", { className: "text-white", children: selectedPaymentSetting.tokenSymbol })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Receiver:" }), _jsxs("span", { className: "font-mono text-xs text-white", children: [selectedPaymentSetting.receiver.slice(0, 10), "..."] })] })] })] }), !isCorrectNetwork && currentChain && (_jsxs("div", { className: "bg-yellow-900 bg-opacity-30 border border-yellow-700 p-3 rounded", children: [_jsx("div", { className: "text-sm mb-2 text-yellow-300 font-semibold", children: "\u26A0\uFE0F Wrong Network" }), _jsxs("div", { className: "text-sm mb-3 text-yellow-200", children: ["Current: Chain ID ", currentChain.id, _jsx("br", {}), "Required: Chain ID ", targetChainId] }), _jsx("button", { onClick: handleSwitchNetwork, disabled: status === "switching", className: "w-full bg-yellow-600 text-white py-2 rounded hover:bg-yellow-700 disabled:opacity-50 transition", children: status === "switching" ? "Switching..." : "Switch Network" })] })), isCorrectNetwork && (_jsxs("div", { className: "bg-green-900 bg-opacity-30 border border-green-700 p-2 rounded text-sm text-green-300", children: ["\u2713 Connected to Chain ID ", targetChainId] })), error && (_jsx("div", { className: "bg-red-900 bg-opacity-30 border border-red-700 p-3 rounded text-red-300 text-sm", children: error })), status !== "idle" && (_jsxs("div", { className: "bg-blue-900 bg-opacity-30 border border-blue-700 p-3 rounded text-sm text-blue-300", children: [status === "switching" && "Switching network...", status === "checking_allowance" && "Checking allowance...", status === "approving" && "Approving token...", status === "creating" && "Creating payment...", status === "signing" && "Getting signature...", status === "sending" && "Sending transaction...", status === "confirming" && "Confirming...", status === "success" && "✓ Payment successful!"] })), _jsxs("div", { className: "flex gap-3", children: [_jsx("button", { onClick: () => {
292
- setSelectedChainId(null);
241
+ }, className: "text-blue-400 hover:text-blue-300 mr-3", children: "\u2190 Back" }), _jsxs("h5", { className: "font-semibold text-white", children: ["Select Token (Chain ID ", selectedPaymentRouter.chainId, ")"] })] }), _jsx("div", { className: "grid grid-cols-2 gap-3", children: paymentConfig.paymentSettings
242
+ .filter((paymentSetting) => paymentSetting.chainId === selectedPaymentRouter.chainId &&
243
+ paymentSetting.isActive)
244
+ .map((paymentSetting) => (_jsxs("button", { onClick: () => setSelectedPaymentSetting(paymentSetting), className: "p-4 border-2 border-gray-600 rounded-lg hover:border-blue-500 hover:bg-gray-700 text-left transition", children: [_jsx("div", { className: "font-semibold text-white", children: paymentSetting.tokenSymbol }), _jsx("div", { className: "text-sm text-gray-400", children: paymentSetting.tokenName })] }, paymentSetting.id))) })] })), isConnected && selectedPaymentRouter && selectedPaymentSetting && (_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "bg-gray-700 p-4 rounded-lg border border-gray-600", children: [_jsx("h4", { className: "font-semibold mb-2 text-white", children: "Payment Details" }), _jsxs("div", { className: "space-y-1 text-sm text-gray-300", children: [_jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Amount:" }), _jsxs("span", { className: "text-white", children: [usdAmount.toString(), " USD"] })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Chain ID:" }), _jsx("span", { className: "text-white", children: selectedPaymentSetting.chainId })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Token:" }), _jsx("span", { className: "text-white", children: selectedPaymentSetting.tokenSymbol })] }), _jsxs("div", { className: "flex justify-between", children: [_jsx("span", { children: "Receiver:" }), _jsxs("span", { className: "font-mono text-xs text-white", children: [selectedPaymentSetting.receiver.slice(0, 10), "..."] })] })] })] }), chain && chain.id !== parseInt(selectedPaymentRouter.chainId) && (_jsxs("div", { className: "bg-yellow-900 bg-opacity-30 border border-yellow-700 p-3 rounded", children: [_jsx("div", { className: "text-sm mb-2 text-yellow-300 font-semibold", children: "\u26A0\uFE0F Wrong Network" }), _jsxs("div", { className: "text-sm mb-3 text-yellow-200", children: ["Current: Chain ID ", chain.id, _jsx("br", {}), "Required: Chain ID ", selectedPaymentRouter.chainId] }), _jsx("button", { onClick: handleSwitchNetwork, disabled: status === "switching", className: "w-full bg-yellow-600 text-white py-2 rounded hover:bg-yellow-700 disabled:opacity-50 transition", children: status === "switching" ? "Switching..." : "Switch Network" })] })), chain && chain.id === parseInt(selectedPaymentRouter.chainId) && (_jsxs("div", { className: "bg-green-900 bg-opacity-30 border border-green-700 p-2 rounded text-sm text-green-300", children: ["\u2713 Connected to Chain ID ", selectedPaymentRouter.chainId] })), error && (_jsx("div", { className: "bg-red-900 bg-opacity-30 border border-red-700 p-3 rounded text-red-300 text-sm", children: error })), status !== "idle" && (_jsxs("div", { className: "bg-blue-900 bg-opacity-30 border border-blue-700 p-3 rounded text-sm text-blue-300", children: [status === "switching" && "Switching network...", status === "checking_allowance" && "Checking allowance...", status === "approving" && "Approving token...", status === "creating" && "Creating payment...", status === "signing" && "Getting signature...", status === "sending" && "Sending transaction...", status === "confirming" && "Confirming...", status === "success" && "✓ Payment successful!"] })), _jsxs("div", { className: "flex gap-3", children: [_jsx("button", { onClick: () => {
245
+ setSelectedPaymentRouter(null);
293
246
  setSelectedPaymentSetting(null);
294
- }, disabled: status !== "idle", className: "flex-1 bg-gray-600 text-white py-3 rounded hover:bg-gray-700 disabled:opacity-50 transition", children: "Back" }), needsApproval ? (_jsx("button", { onClick: handleApprove, disabled: status !== "idle" || !address || !isCorrectNetwork, className: "flex-1 bg-orange-600 text-white py-3 rounded hover:bg-orange-700 disabled:opacity-50 font-semibold transition", children: status === "idle"
247
+ }, disabled: status !== "idle", className: "flex-1 bg-gray-600 text-white py-3 rounded hover:bg-gray-700 disabled:opacity-50 transition", children: "Back" }), needsApproval ? (_jsx("button", { onClick: handleApprove, disabled: status !== "idle" ||
248
+ !address ||
249
+ !chain ||
250
+ chain.id !== parseInt(selectedPaymentRouter.chainId), className: "flex-1 bg-orange-600 text-white py-3 rounded hover:bg-orange-700 disabled:opacity-50 font-semibold transition", children: status === "idle"
295
251
  ? `Approve ${selectedPaymentSetting.tokenSymbol}`
296
252
  : "Processing..." })) : (_jsx("button", { onClick: handlePay, disabled: status !== "idle" ||
297
253
  !address ||
298
- !isCorrectNetwork ||
254
+ !chain ||
255
+ chain.id !== parseInt(selectedPaymentRouter.chainId) ||
299
256
  needsApproval === null, className: "flex-1 bg-blue-600 text-white py-3 rounded hover:bg-blue-700 disabled:opacity-50 font-semibold transition", children: status === "idle"
300
257
  ? `Pay ${selectedPaymentSetting.tokenSymbol}`
301
258
  : "Processing..." }))] })] })), _jsx("div", { className: "border-t border-gray-600 pt-4", children: _jsx("button", { onClick: onCancel, disabled: status !== "idle", className: "w-full bg-gray-600 text-white py-2 rounded hover:bg-gray-700 disabled:opacity-50 transition", children: "Cancel Payment" }) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"CryptoPayment.js","sourceRoot":"","sources":["../../../src/components/CryptoPayment.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CryptoPayment.js","sourceRoot":"","sources":["../../../src/components/CryptoPayment.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AppKitOptions } from "@reown/appkit/react";
1
+ import { type AppKitOptions } from "@reown/appkit/react";
2
2
  interface PaymentProviderProps {
3
3
  projectId: string;
4
4
  metadata: AppKitOptions["metadata"];
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentProvider.d.ts","sourceRoot":"","sources":["../../../src/components/PaymentProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAgB,MAAM,qBAAqB,CAAC;AAgClE,UAAU,oBAAoB;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,SAAS,EACT,QAAQ,EACR,eAAuB,EACvB,QAAQ,GACT,EAAE,oBAAoB,2CAmDtB"}
1
+ {"version":3,"file":"PaymentProvider.d.ts","sourceRoot":"","sources":["../../../src/components/PaymentProvider.tsx"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,aAAa,EAEnB,MAAM,qBAAqB,CAAC;AAqB7B,UAAU,oBAAoB;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IACpC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,SAAS,EACT,QAAQ,EACR,eAAuB,EACvB,QAAQ,GACT,EAAE,oBAAoB,2CAwDtB"}
@@ -1,62 +1,62 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { useRef, useEffect } from "react";
2
3
  import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
3
4
  import { WagmiProvider } from "wagmi";
4
- import { useRef, useEffect } from "react";
5
- import { createAppKit } from "@reown/appkit/react";
5
+ import { createAppKit, } from "@reown/appkit/react";
6
+ import { anvil, arbitrum, arbitrumSepolia, base, baseSepolia, bsc, bscTestnet, kaia, kairos, mainnet, polygon, polygonAmoy, sepolia, } from "@reown/appkit/networks";
6
7
  import { WagmiAdapter } from "@reown/appkit-adapter-wagmi";
7
- import { anvil, arbitrum, arbitrumSepolia, base, baseSepolia, bsc, bscTestnet, kaia, kairos, mainnet, polygon, polygonAmoy, sepolia, } from "viem/chains";
8
- const DEFAULT_MAINNETS = [mainnet, arbitrum, base, bsc, polygon, kaia];
9
- const DEFAULT_TESTNETS = [
10
- anvil,
11
- sepolia,
12
- arbitrumSepolia,
13
- baseSepolia,
14
- bscTestnet,
15
- polygonAmoy,
16
- kairos,
17
- ];
18
8
  const queryClient = new QueryClient();
19
9
  export default function PaymentProvider({ projectId, metadata, includeTestnets = false, children, }) {
20
- const adapterRef = useRef(null);
21
- const chainsRef = useRef(null);
22
- const appKitInitializedRef = useRef(false);
23
- // Create WagmiAdapter once (works on both server and client due to ssr: true)
24
- if (!adapterRef.current) {
25
- chainsRef.current = [
26
- ...DEFAULT_MAINNETS,
27
- ...(includeTestnets ? DEFAULT_TESTNETS : []),
28
- ];
29
- adapterRef.current = new WagmiAdapter({
30
- networks: chainsRef.current,
10
+ const networksRef = useRef(null);
11
+ const wagmiAdapterRef = useRef(null);
12
+ const appKitRef = useRef(null);
13
+ networksRef.current ??= [
14
+ mainnet,
15
+ arbitrum,
16
+ base,
17
+ bsc,
18
+ polygon,
19
+ kaia,
20
+ ...(includeTestnets
21
+ ? [
22
+ anvil,
23
+ sepolia,
24
+ arbitrumSepolia,
25
+ baseSepolia,
26
+ bscTestnet,
27
+ polygonAmoy,
28
+ kairos,
29
+ ]
30
+ : []),
31
+ ];
32
+ wagmiAdapterRef.current ??= new WagmiAdapter({
33
+ networks: networksRef.current,
34
+ projectId,
35
+ ssr: true,
36
+ });
37
+ useEffect(() => {
38
+ if (!networksRef.current)
39
+ return;
40
+ if (!wagmiAdapterRef.current)
41
+ return;
42
+ appKitRef.current ??= createAppKit({
43
+ adapters: [wagmiAdapterRef.current],
44
+ networks: networksRef.current,
31
45
  projectId,
32
- ssr: true,
46
+ metadata,
47
+ featuredWalletIds: [
48
+ "c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96", // metamask
49
+ "18388be9ac2d02726dbac9777c96efaac06d744b2f6d580fccdd4127a6d01fd1", // rabby
50
+ "8a0ee50d1f22f6651afcae7eb4253e52a3310b90af5daef78a8c4929a9bb99d4", // binance
51
+ "971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709", // okx
52
+ "fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa", // coinbase
53
+ ],
54
+ features: {
55
+ email: false,
56
+ socials: false,
57
+ },
33
58
  });
34
- }
35
- // Create AppKit singleton on client only (useEffect never runs on server)
36
- useEffect(() => {
37
- if (!appKitInitializedRef.current &&
38
- adapterRef.current &&
39
- chainsRef.current) {
40
- createAppKit({
41
- adapters: [adapterRef.current],
42
- networks: chainsRef.current,
43
- projectId,
44
- metadata,
45
- featuredWalletIds: [
46
- "c57ca95b47569778a828d19178114f4db188b89b763c899ba0be274e97267d96", // metamask
47
- "18388be9ac2d02726dbac9777c96efaac06d744b2f6d580fccdd4127a6d01fd1", // rabby
48
- "8a0ee50d1f22f6651afcae7eb4253e52a3310b90af5daef78a8c4929a9bb99d4", // binance
49
- "971e689d0a5be527bac79629b4ee9b925e82208e5168b733496a09c0faed0709", // okx
50
- "fd20dc426fb37566d803205b19bbc1d4096b248ac04548e3cfb6b3a38bd033aa", // coinbase
51
- ],
52
- features: {
53
- email: false,
54
- socials: false,
55
- },
56
- });
57
- appKitInitializedRef.current = true;
58
- }
59
59
  }, []);
60
- return (_jsx(WagmiProvider, { config: adapterRef.current.wagmiConfig, children: _jsx(QueryClientProvider, { client: queryClient, children: children }) }));
60
+ return (_jsx(WagmiProvider, { config: wagmiAdapterRef.current.wagmiConfig, children: _jsx(QueryClientProvider, { client: queryClient, children: children }) }));
61
61
  }
62
62
  //# sourceMappingURL=PaymentProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentProvider.js","sourceRoot":"","sources":["../../../src/components/PaymentProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAiB,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EACL,KAAK,EACL,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,WAAW,EACX,GAAG,EACH,UAAU,EACV,IAAI,EACJ,MAAM,EACN,OAAO,EACP,OAAO,EACP,WAAW,EACX,OAAO,GACR,MAAM,aAAa,CAAC;AAErB,MAAM,gBAAgB,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,CAAU,CAAC;AAChF,MAAM,gBAAgB,GAAG;IACvB,KAAK;IACL,OAAO;IACP,eAAe;IACf,WAAW;IACX,UAAU;IACV,WAAW;IACX,MAAM;CACE,CAAC;AAEX,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAStC,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,SAAS,EACT,QAAQ,EACR,eAAe,GAAG,KAAK,EACvB,QAAQ,GACa;IACrB,MAAM,UAAU,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAC;IACrD,MAAM,SAAS,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAC;IACxD,MAAM,oBAAoB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAE3C,8EAA8E;IAC9E,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QACxB,SAAS,CAAC,OAAO,GAAG;YAClB,GAAG,gBAAgB;YACnB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7C,CAAC;QACF,UAAU,CAAC,OAAO,GAAG,IAAI,YAAY,CAAC;YACpC,QAAQ,EAAE,SAAS,CAAC,OAAc;YAClC,SAAS;YACT,GAAG,EAAE,IAAI;SACV,CAAC,CAAC;IACL,CAAC;IAED,0EAA0E;IAC1E,SAAS,CAAC,GAAG,EAAE;QACb,IACE,CAAC,oBAAoB,CAAC,OAAO;YAC7B,UAAU,CAAC,OAAO;YAClB,SAAS,CAAC,OAAO,EACjB,CAAC;YACD,YAAY,CAAC;gBACX,QAAQ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;gBAC9B,QAAQ,EAAE,SAAS,CAAC,OAAc;gBAClC,SAAS;gBACT,QAAQ;gBACR,iBAAiB,EAAE;oBACjB,kEAAkE,EAAE,WAAW;oBAC/E,kEAAkE,EAAE,QAAQ;oBAC5E,kEAAkE,EAAE,UAAU;oBAC9E,kEAAkE,EAAE,MAAM;oBAC1E,kEAAkE,EAAE,WAAW;iBAChF;gBACD,QAAQ,EAAE;oBACR,KAAK,EAAE,KAAK;oBACZ,OAAO,EAAE,KAAK;iBACf;aACF,CAAC,CAAC;YACH,oBAAoB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW,YACnD,KAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,YAAG,QAAQ,GAAuB,GAC5D,CACjB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"PaymentProvider.js","sourceRoot":"","sources":["../../../src/components/PaymentProvider.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAGL,YAAY,GACb,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,KAAK,EACL,QAAQ,EACR,eAAe,EACf,IAAI,EACJ,WAAW,EACX,GAAG,EACH,UAAU,EACV,IAAI,EACJ,MAAM,EACN,OAAO,EACP,OAAO,EACP,WAAW,EACX,OAAO,GACR,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAStC,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,EACtC,SAAS,EACT,QAAQ,EACR,eAAe,GAAG,KAAK,EACvB,QAAQ,GACa;IACrB,MAAM,WAAW,GAAG,MAAM,CAA6C,IAAI,CAAC,CAAC;IAC7E,MAAM,eAAe,GAAG,MAAM,CAAsB,IAAI,CAAC,CAAC;IAC1D,MAAM,SAAS,GAAG,MAAM,CAAgB,IAAI,CAAC,CAAC;IAE9C,WAAW,CAAC,OAAO,KAAK;QACtB,OAAO;QACP,QAAQ;QACR,IAAI;QACJ,GAAG;QACH,OAAO;QACP,IAAI;QACJ,GAAG,CAAC,eAAe;YACjB,CAAC,CAAC;gBACE,KAAK;gBACL,OAAO;gBACP,eAAe;gBACf,WAAW;gBACX,UAAU;gBACV,WAAW;gBACX,MAAM;aACP;YACH,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;IACF,eAAe,CAAC,OAAO,KAAK,IAAI,YAAY,CAAC;QAC3C,QAAQ,EAAE,WAAW,CAAC,OAAO;QAC7B,SAAS;QACT,GAAG,EAAE,IAAI;KACV,CAAC,CAAC;IACH,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,WAAW,CAAC,OAAO;YAAE,OAAO;QACjC,IAAI,CAAC,eAAe,CAAC,OAAO;YAAE,OAAO;QACrC,SAAS,CAAC,OAAO,KAAK,YAAY,CAAC;YACjC,QAAQ,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC;YACnC,QAAQ,EAAE,WAAW,CAAC,OAAO;YAC7B,SAAS;YACT,QAAQ;YACR,iBAAiB,EAAE;gBACjB,kEAAkE,EAAE,WAAW;gBAC/E,kEAAkE,EAAE,QAAQ;gBAC5E,kEAAkE,EAAE,UAAU;gBAC9E,kEAAkE,EAAE,MAAM;gBAC1E,kEAAkE,EAAE,WAAW;aAChF;YACD,QAAQ,EAAE;gBACR,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;aACf;SACF,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CACL,KAAC,aAAa,IAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,WAAW,YACxD,KAAC,mBAAmB,IAAC,MAAM,EAAE,WAAW,YAAG,QAAQ,GAAuB,GAC5D,CACjB,CAAC;AACJ,CAAC"}
@@ -18,16 +18,15 @@ export interface PaymentConfig {
18
18
  paymentSettings: PaymentSetting[];
19
19
  }
20
20
  export interface CreatePaymentRequest {
21
- usdAmount: string;
22
21
  chainId: string;
23
22
  tokenAddress: string;
24
23
  sender: string;
24
+ usdAmount: string;
25
25
  }
26
26
  export interface CreatePaymentResponse {
27
27
  id: string;
28
28
  }
29
29
  export interface SignatureResponse {
30
- signature: string;
31
30
  paymentData: {
32
31
  id: string;
33
32
  erc20: string;
@@ -37,5 +36,6 @@ export interface SignatureResponse {
37
36
  feeRate: string;
38
37
  expirationTimestamp: string;
39
38
  };
39
+ signature: string;
40
40
  }
41
41
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;CACH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,eAAe,EAAE,cAAc,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE;QACX,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,mBAAmB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,SAAS,EAAE,MAAM,CAAC;CACnB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cromix-dev/payment-component",
3
- "version": "0.0.6",
3
+ "version": "0.0.9",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -24,7 +24,7 @@
24
24
  "decimal.js": "^10.6.0",
25
25
  "viem": "^2.38.5",
26
26
  "wagmi": "^2.17.0",
27
- "@cromix-dev/evm": "0.0.3"
27
+ "@cromix-dev/evm": "0.0.4"
28
28
  },
29
29
  "devDependencies": {
30
30
  "@eslint/eslintrc": "^3",
@@ -40,12 +40,15 @@
40
40
  "rimraf": "^6.0.1",
41
41
  "typescript": "^5.9.2"
42
42
  },
43
+ "peerDependencies": {
44
+ "react": "^18.0.0 || ^19.0.0",
45
+ "react-dom": "^18.0.0 || ^19.0.0"
46
+ },
43
47
  "publishConfig": {
44
48
  "access": "public"
45
49
  },
46
50
  "scripts": {
47
51
  "format": "prettier --write '**/*.{js,ts,jsx,tsx,json}'",
48
- "build": "rimraf dist && tsc",
49
- "prepublish": "pnpm build"
52
+ "build": "rimraf dist && tsc"
50
53
  }
51
54
  }