0xtrails 0.1.2 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/dist/analytics.d.ts +68 -1
  2. package/dist/analytics.d.ts.map +1 -1
  3. package/dist/{ccip-BmFTEOaB.js → ccip-CWd4g9uZ.js} +1 -1
  4. package/dist/chains.d.ts +9 -3
  5. package/dist/chains.d.ts.map +1 -1
  6. package/dist/ens.d.ts +7 -0
  7. package/dist/ens.d.ts.map +1 -0
  8. package/dist/error.d.ts +2 -0
  9. package/dist/error.d.ts.map +1 -1
  10. package/dist/{index-BPsVj7zK.js → index-BTUBzx4R.js} +23624 -21770
  11. package/dist/index.js +2 -2
  12. package/dist/lifi.d.ts +4 -0
  13. package/dist/lifi.d.ts.map +1 -0
  14. package/dist/mode.d.ts +1 -1
  15. package/dist/mode.d.ts.map +1 -1
  16. package/dist/prepareSend.d.ts +3 -1
  17. package/dist/prepareSend.d.ts.map +1 -1
  18. package/dist/prices.d.ts +2 -0
  19. package/dist/prices.d.ts.map +1 -1
  20. package/dist/relaySdk.d.ts.map +1 -1
  21. package/dist/relayer.d.ts.map +1 -1
  22. package/dist/tokenBalances.d.ts.map +1 -1
  23. package/dist/tokens.d.ts +2 -1
  24. package/dist/tokens.d.ts.map +1 -1
  25. package/dist/trails.d.ts +3 -3
  26. package/dist/trails.d.ts.map +1 -1
  27. package/dist/transactions.d.ts.map +1 -1
  28. package/dist/wallets.d.ts +247 -5
  29. package/dist/wallets.d.ts.map +1 -1
  30. package/dist/widget/components/ChainFilterDropdown.d.ts +2 -0
  31. package/dist/widget/components/ChainFilterDropdown.d.ts.map +1 -1
  32. package/dist/widget/components/ConnectWallet.d.ts +1 -0
  33. package/dist/widget/components/ConnectWallet.d.ts.map +1 -1
  34. package/dist/widget/components/DebugScreensDropdown.d.ts.map +1 -1
  35. package/dist/widget/components/FundSendForm.d.ts +2 -2
  36. package/dist/widget/components/FundSendForm.d.ts.map +1 -1
  37. package/dist/widget/components/PaySendForm.d.ts +2 -2
  38. package/dist/widget/components/PaySendForm.d.ts.map +1 -1
  39. package/dist/widget/components/QrCode.d.ts +1 -1
  40. package/dist/widget/components/QrCode.d.ts.map +1 -1
  41. package/dist/widget/components/RefundAddressInput.d.ts +13 -0
  42. package/dist/widget/components/RefundAddressInput.d.ts.map +1 -0
  43. package/dist/widget/components/Swap.d.ts +43 -0
  44. package/dist/widget/components/Swap.d.ts.map +1 -0
  45. package/dist/widget/components/TokenList.d.ts +0 -2
  46. package/dist/widget/components/TokenList.d.ts.map +1 -1
  47. package/dist/widget/components/TokenSelector.d.ts +26 -0
  48. package/dist/widget/components/TokenSelector.d.ts.map +1 -0
  49. package/dist/widget/components/WalletConnect.d.ts.map +1 -1
  50. package/dist/widget/components/WalletConnectionPending.d.ts +12 -0
  51. package/dist/widget/components/WalletConnectionPending.d.ts.map +1 -0
  52. package/dist/widget/components/WalletList.d.ts.map +1 -1
  53. package/dist/widget/hooks/useAmountUsd.d.ts +1 -3
  54. package/dist/widget/hooks/useAmountUsd.d.ts.map +1 -1
  55. package/dist/widget/hooks/useCheckout.d.ts.map +1 -1
  56. package/dist/widget/hooks/useSendForm.d.ts +6 -4
  57. package/dist/widget/hooks/useSendForm.d.ts.map +1 -1
  58. package/dist/widget/hooks/useTokenList.d.ts +2 -3
  59. package/dist/widget/hooks/useTokenList.d.ts.map +1 -1
  60. package/dist/widget/index.js +1 -1
  61. package/dist/widget/widget.d.ts.map +1 -1
  62. package/package.json +9 -6
  63. package/src/aave.ts +13 -13
  64. package/src/analytics.ts +87 -4
  65. package/src/chains.ts +45 -7
  66. package/src/constants.ts +4 -4
  67. package/src/ens.ts +17 -0
  68. package/src/error.ts +16 -1
  69. package/src/lifi.ts +58 -0
  70. package/src/mode.ts +1 -1
  71. package/src/morpho.ts +3 -3
  72. package/src/pools.ts +18 -18
  73. package/src/prepareSend.ts +35 -3
  74. package/src/prices.ts +21 -0
  75. package/src/relaySdk.ts +1 -0
  76. package/src/relayer.ts +8 -0
  77. package/src/tokenBalances.ts +3 -0
  78. package/src/tokens.ts +85 -19
  79. package/src/trails.ts +2 -2
  80. package/src/transactions.ts +1 -0
  81. package/src/wallets.ts +275 -35
  82. package/src/widget/compiled.css +1 -1
  83. package/src/widget/components/ChainFilterDropdown.tsx +42 -33
  84. package/src/widget/components/ChainImage.tsx +1 -1
  85. package/src/widget/components/ConnectWallet.tsx +92 -128
  86. package/src/widget/components/DebugScreensDropdown.tsx +3 -0
  87. package/src/widget/components/FundSendForm.tsx +17 -3
  88. package/src/widget/components/PaySendForm.tsx +16 -2
  89. package/src/widget/components/QRCodeDeposit.tsx +1 -1
  90. package/src/widget/components/QrCode.tsx +277 -16
  91. package/src/widget/components/Receipt.tsx +1 -1
  92. package/src/widget/components/RefundAddressInput.tsx +149 -0
  93. package/src/widget/components/Swap.tsx +648 -0
  94. package/src/widget/components/TokenList.tsx +27 -363
  95. package/src/widget/components/TokenSelector.tsx +405 -0
  96. package/src/widget/components/WalletConnect.tsx +9 -7
  97. package/src/widget/components/WalletConnectionPending.tsx +157 -0
  98. package/src/widget/components/WalletList.tsx +6 -5
  99. package/src/widget/hooks/useAmountUsd.ts +3 -8
  100. package/src/widget/hooks/useCheckout.ts +3 -2
  101. package/src/widget/hooks/useSendForm.ts +66 -32
  102. package/src/widget/hooks/useTokenList.ts +158 -106
  103. package/src/widget/widget.tsx +335 -72
@@ -1,10 +1,9 @@
1
1
  import React, { useEffect, useState } from "react"
2
2
  import { ChevronRight, Copy, LogOut } from "lucide-react"
3
3
  import { useAccount, useDisconnect } from "wagmi"
4
- import MetaMaskFox from "../assets/MetaMask-icon-fox.svg"
5
- import WalletConnectLogoWhite from "../assets/WalletConnect-logo-white.svg"
6
4
  import { AlignJustify, Wallet } from "lucide-react"
7
5
  import { ScreenHeader } from "./ScreenHeader.js"
6
+ import { useWallets, wagmiConnectorToWalletId } from "../../wallets.js"
8
7
 
9
8
  export interface WalletOption {
10
9
  id: string
@@ -18,6 +17,7 @@ export interface ConnectWalletProps {
18
17
  onContinue: () => void
19
18
  onError: (error: Error) => void
20
19
  walletOptions: WalletOption[]
20
+ lastClickedWallet?: string | null
21
21
  }
22
22
 
23
23
  export const ConnectWallet: React.FC<ConnectWalletProps> = ({
@@ -25,25 +25,12 @@ export const ConnectWallet: React.FC<ConnectWalletProps> = ({
25
25
  onDisconnect,
26
26
  onContinue,
27
27
  onError,
28
- walletOptions,
28
+ lastClickedWallet,
29
29
  }) => {
30
30
  const { isConnected, address, connector } = useAccount()
31
31
  const { disconnect } = useDisconnect()
32
+ const { wallets: allWallets } = useWallets()
32
33
  const [error, setError] = useState<string | null>(null)
33
- const [lastClickedWallet, setLastClickedWallet] = useState<string | null>(
34
- () => {
35
- // Initialize from localStorage if available
36
- if (typeof window !== "undefined") {
37
- try {
38
- return localStorage.getItem("trails-last-wallet") || null
39
- } catch (error) {
40
- console.error("[trails-sdk] Failed to read from localStorage:", error)
41
- return null
42
- }
43
- }
44
- return null
45
- },
46
- )
47
34
  const [showCopied, setShowCopied] = useState(false)
48
35
 
49
36
  useEffect(() => {
@@ -55,15 +42,6 @@ export const ConnectWallet: React.FC<ConnectWalletProps> = ({
55
42
  }, [error, onError])
56
43
 
57
44
  const handleWalletConnect = (walletId: string) => {
58
- setLastClickedWallet(walletId)
59
- // Save to localStorage
60
- if (typeof window !== "undefined") {
61
- try {
62
- localStorage.setItem("trails-last-wallet", walletId)
63
- } catch (error) {
64
- console.error("[trails-sdk] Failed to save to localStorage:", error)
65
- }
66
- }
67
45
  onConnect(walletId)
68
46
  }
69
47
 
@@ -92,24 +70,48 @@ export const ConnectWallet: React.FC<ConnectWalletProps> = ({
92
70
  }
93
71
  }
94
72
 
95
- // Get the wallet type for styling the continue button
96
- const getWalletType = () => {
97
- if (!connector?.name) return "injected"
98
- const name = connector.name.toLowerCase()
99
- if (name.includes("metamask")) return "injected"
100
- if (name.includes("walletconnect")) return "walletconnect"
101
- return "injected"
73
+ // Get the wallet config for the current connector
74
+ const getCurrentWalletConfig = () => {
75
+ if (!connector?.id) return null
76
+ const walletId = wagmiConnectorToWalletId(connector)
77
+ return allWallets.find((wallet) => wallet.id === walletId) || null
102
78
  }
103
79
 
104
- // Reorder wallet options to put the recent one first
80
+ // Create wallet options from allWallets and always prepend recent wallet
105
81
  const orderedWalletOptions = React.useMemo(() => {
106
- if (!lastClickedWallet) return walletOptions
82
+ // Convert allWallets to wallet options format
83
+ const walletOptionsFromAllWallets = allWallets.map((wallet) => ({
84
+ id: wallet.id,
85
+ name: wallet.name,
86
+ connector: () => wallet.connector?.connect?.(),
87
+ }))
107
88
 
108
- const recentWallet = walletOptions.find((w) => w.id === lastClickedWallet)
109
- const otherWallets = walletOptions.filter((w) => w.id !== lastClickedWallet)
89
+ const alwaysShowWallets = ["metamask", "walletconnect"]
90
+ const filteredWallets = walletOptionsFromAllWallets
91
+ .filter((wallet) => alwaysShowWallets.includes(wallet.id))
92
+ .sort((a, b) => {
93
+ const aIndex = alwaysShowWallets.indexOf(a.id)
94
+ const bIndex = alwaysShowWallets.indexOf(b.id)
95
+ return aIndex - bIndex
96
+ })
97
+
98
+ // Always prepend recent wallet if it exists, regardless of allowed list
99
+ if (lastClickedWallet) {
100
+ console.log("lastClickedWallet", lastClickedWallet)
101
+ const recentWallet = walletOptionsFromAllWallets.find(
102
+ (w) => w.id === lastClickedWallet,
103
+ )
104
+ const otherWallets = filteredWallets.filter(
105
+ (w) => w.id !== lastClickedWallet,
106
+ )
107
+
108
+ if (recentWallet) {
109
+ return [recentWallet, ...otherWallets]
110
+ }
111
+ }
110
112
 
111
- return recentWallet ? [recentWallet, ...otherWallets] : walletOptions
112
- }, [walletOptions, lastClickedWallet])
113
+ return filteredWallets
114
+ }, [lastClickedWallet, allWallets])
113
115
 
114
116
  return (
115
117
  <div className="space-y-6">
@@ -136,48 +138,30 @@ export const ConnectWallet: React.FC<ConnectWalletProps> = ({
136
138
  className="w-full flex items-center justify-between cursor-pointer font-semibold py-4 px-6 trails-border-radius-large-button transition-all duration-200 trails-bg-secondary trails-hover-bg trails-text-primary"
137
139
  >
138
140
  <div className="flex items-center space-x-3">
139
- {getWalletType() === "injected" &&
140
- window.ethereum?.isMetaMask ? (
141
- <>
142
- <img
143
- src={MetaMaskFox}
144
- alt="MetaMask Fox"
145
- className="h-6 w-6"
146
- />
147
- <div className="flex items-center space-x-2">
148
- <span>MetaMask</span>
149
- <span className="text-xs bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200 px-2 py-1 trails-border-radius-container font-normal">
150
- Connected
151
- </span>
152
- </div>
153
- </>
154
- ) : getWalletType() === "walletconnect" ? (
155
- <>
156
- <div className="h-6 w-6 bg-[#3B99FC] rounded flex items-center justify-center">
157
- <img
158
- src={WalletConnectLogoWhite}
159
- alt="WalletConnect"
160
- className="h-4 w-4"
161
- />
162
- </div>
163
- <div className="flex items-center space-x-2">
164
- <span>WalletConnect</span>
165
- <span className="text-xs bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200 px-2 py-1 trails-border-radius-container font-normal">
166
- Connected
167
- </span>
168
- </div>
169
- </>
170
- ) : (
171
- <>
172
- <Wallet className="h-6 w-6 text-gray-600 dark:text-gray-400" />
173
- <div className="flex items-center space-x-2">
174
- <span>{connector?.name || "Wallet"}</span>
175
- <span className="text-xs bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200 px-2 py-1 trails-border-radius-container font-normal">
176
- Connected
177
- </span>
178
- </div>
179
- </>
180
- )}
141
+ {(() => {
142
+ const walletConfig = getCurrentWalletConfig()
143
+ return (
144
+ <>
145
+ {typeof walletConfig?.icon === "string" ? (
146
+ <img
147
+ src={walletConfig?.icon}
148
+ alt={walletConfig?.name}
149
+ className="h-6 w-6"
150
+ />
151
+ ) : (
152
+ <Wallet className="h-6 w-6 text-gray-600 dark:text-gray-400" />
153
+ )}
154
+ <div className="flex items-center space-x-2">
155
+ <span>
156
+ {walletConfig?.name || connector?.name || "Wallet"}
157
+ </span>
158
+ <span className="text-xs bg-green-100 text-green-800 dark:bg-green-900 dark:text-green-200 px-2 py-1 trails-border-radius-container font-normal">
159
+ Connected
160
+ </span>
161
+ </div>
162
+ </>
163
+ )
164
+ })()}
181
165
  </div>
182
166
 
183
167
  <ChevronRight className="h-5 w-5 text-gray-400" />
@@ -246,64 +230,44 @@ export const ConnectWallet: React.FC<ConnectWalletProps> = ({
246
230
  <button
247
231
  type="button"
248
232
  key={wallet.id}
233
+ data-wallet-id={wallet.id}
249
234
  onClick={() => handleWalletConnect(wallet.id)}
250
235
  className={`w-full flex items-center justify-between cursor-pointer font-semibold py-4 px-6 trails-border-radius-large-button transition-all duration-200 trails-bg-secondary trails-hover-bg trails-text-primary`}
251
236
  >
252
237
  <div className="flex items-center space-x-3">
253
- {wallet.id === "injected" && window.ethereum?.isMetaMask ? (
254
- <>
255
- <img
256
- src={MetaMaskFox}
257
- alt="MetaMask Fox"
258
- className="h-6 w-6"
259
- />
260
- <div className="flex items-center space-x-2">
261
- <span>MetaMask</span>
262
- {lastClickedWallet === wallet.id && (
263
- <span className="text-xs bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300 px-2 py-1 trails-border-radius-container font-normal">
264
- Recent
265
- </span>
266
- )}
267
- </div>
268
- </>
269
- ) : wallet.id === "walletconnect" ? (
270
- <>
271
- <div className="h-6 w-6 bg-[#3B99FC] rounded flex items-center justify-center">
272
- <img
273
- src={WalletConnectLogoWhite}
274
- alt="WalletConnect"
275
- className="h-4 w-4"
276
- />
277
- </div>
278
- <div className="flex items-center space-x-2">
279
- <span>WalletConnect</span>
280
- {lastClickedWallet === wallet.id && (
281
- <span className="text-xs bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300 px-2 py-1 trails-border-radius-container font-normal">
282
- Recent
283
- </span>
284
- )}
285
- </div>
286
- </>
287
- ) : (
288
- <>
289
- <Wallet className="h-6 w-6 text-gray-600 dark:text-gray-400" />
290
- <div className="flex items-center space-x-2">
291
- <span>{wallet.name}</span>
292
- {lastClickedWallet === wallet.id && (
293
- <span className="text-xs bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300 px-2 py-1 trails-border-radius-container font-normal">
294
- Recent
295
- </span>
238
+ {(() => {
239
+ const walletConfig = allWallets.find(
240
+ (w) => w.id === wallet.id,
241
+ )
242
+ return (
243
+ <>
244
+ {typeof walletConfig?.icon === "string" ? (
245
+ <img
246
+ src={walletConfig?.icon}
247
+ alt={walletConfig?.name}
248
+ className="h-6 w-6"
249
+ />
250
+ ) : (
251
+ <Wallet className="h-6 w-6 text-gray-600 dark:text-gray-400" />
296
252
  )}
297
- </div>
298
- </>
299
- )}
253
+ <div className="flex items-center space-x-2">
254
+ <span>{walletConfig?.name || wallet.name}</span>
255
+ {lastClickedWallet === wallet.id && (
256
+ <span className="text-xs bg-gray-100 text-gray-600 dark:bg-gray-700 dark:text-gray-300 px-2 py-1 trails-border-radius-container font-normal">
257
+ Recent
258
+ </span>
259
+ )}
260
+ </div>
261
+ </>
262
+ )
263
+ })()}
300
264
  </div>
301
265
  <ChevronRight className="h-5 w-5 text-gray-400" />
302
266
  </button>
303
267
  ))}
304
268
 
305
269
  {/* More Wallets Link - only show if more than 1 wallet option */}
306
- {orderedWalletOptions.length > 1 && (
270
+ {orderedWalletOptions.length > 0 && (
307
271
  <button
308
272
  type="button"
309
273
  onClick={() => onConnect("wallet-list")}
@@ -13,10 +13,13 @@ const SCREENS = [
13
13
  "Mesh Connect",
14
14
  "Wallet Connect",
15
15
  "Wallet List",
16
+ "Wallet Connection Pending",
17
+ "Wallet Connection Pending Retry",
16
18
  "Tokens",
17
19
  "Send Form",
18
20
  "Fund Form",
19
21
  "Earn Pools",
22
+ "Swap",
20
23
  "Wallet Confirmation",
21
24
  "Wallet Confirmation Retry",
22
25
  "Pending 1-item-0-confirmed",
@@ -11,6 +11,7 @@ import { ChainImage } from "./ChainImage.js"
11
11
  import { TokenImage } from "./TokenImage.js"
12
12
  import { QuoteDetails } from "./QuoteDetails.js"
13
13
  import { TruncatedAddress } from "./TruncatedAddress.js"
14
+ // import { RefundAddressInput } from "./RefundAddressInput.js"
14
15
  import { TradeType } from "../../prepareSend.js"
15
16
  import type { PrepareSendQuote } from "../../prepareSend.js"
16
17
  import { formatAmount, formatUsdAmountDisplay } from "../../tokenBalances.js"
@@ -36,8 +37,8 @@ interface FundSendFormProps {
36
37
  gasless?: boolean
37
38
  setWalletConfirmRetryHandler: (handler: () => Promise<void>) => void
38
39
  quoteProvider?: string
39
- fundMethod?: string | null
40
- mode?: "pay" | "fund" | "earn"
40
+ fundMethod?: string
41
+ mode?: "pay" | "fund" | "earn" | "swap"
41
42
  onNavigateToMeshConnect?: (
42
43
  props: {
43
44
  toTokenSymbol: string
@@ -77,6 +78,8 @@ export const FundSendForm: React.FC<FundSendFormProps> = ({
77
78
  }) => {
78
79
  // Local state for fund-specific functionality
79
80
  const [isInputTypeUsd, setIsInputTypeUsd] = useState(false)
81
+ // const [isRefundAddressOpen, setIsRefundAddressOpen] = useState(false)
82
+ // const [refundAddress, setRefundAddress] = useState<string>(account.address)
80
83
 
81
84
  const [tokenAmountForBackend, setTokenAmountForBackend] = useState("")
82
85
  const [inputDisplayValue, setInputDisplayValue] = useState("")
@@ -126,6 +129,7 @@ export const FundSendForm: React.FC<FundSendFormProps> = ({
126
129
  toChainId,
127
130
  toToken,
128
131
  toCalldata,
132
+ // refundAddress,
129
133
  walletClient,
130
134
  onTransactionStateChange,
131
135
  onError,
@@ -479,7 +483,7 @@ export const FundSendForm: React.FC<FundSendFormProps> = ({
479
483
 
480
484
  {/* Percentage Buttons */}
481
485
  <div className="flex space-x-1 justify-center">
482
- {[25, 50, 100].map((percentage) => (
486
+ {[25, 50, 75, 100].map((percentage) => (
483
487
  <button
484
488
  key={percentage}
485
489
  type="button"
@@ -688,6 +692,16 @@ export const FundSendForm: React.FC<FundSendFormProps> = ({
688
692
  </div>
689
693
  )}
690
694
 
695
+ {/* Refund Address Input */}
696
+ {/* <RefundAddressInput
697
+ account={account}
698
+ isOpen={isRefundAddressOpen}
699
+ onToggle={() => setIsRefundAddressOpen(!isRefundAddressOpen)}
700
+ refundAddress={refundAddress}
701
+ onRefundAddressChange={setRefundAddress}
702
+ chainId={selectedDestinationChain.id}
703
+ /> */}
704
+
691
705
  {/* Warning Messages - Show only one at a time */}
692
706
  {prepareSendQuote?.noSufficientBalance ? (
693
707
  <div className="px-2 py-3 rounded-lg bg-amber-500/10 border border-solid border-amber-500/30">
@@ -12,6 +12,7 @@ import { FeeOptions } from "./FeeOptions.js"
12
12
  import { TokenImage } from "./TokenImage.js"
13
13
  import { QuoteDetails } from "./QuoteDetails.js"
14
14
  import { TruncatedAddress } from "./TruncatedAddress.js"
15
+ // import { RefundAddressInput } from "./RefundAddressInput.js"
15
16
  import { type PrepareSendQuote, TradeType } from "../../prepareSend.js"
16
17
  import { getChainInfo, getChainColor } from "../../chains.js"
17
18
  import { formatTvl } from "../../prices.js"
@@ -41,7 +42,7 @@ interface PaySendFormProps {
41
42
  gasless?: boolean
42
43
  setWalletConfirmRetryHandler: (handler: () => Promise<void>) => void
43
44
  quoteProvider?: string
44
- fundMethod?: string | null
45
+ fundMethod?: string
45
46
  onNavigateToMeshConnect?: (
46
47
  props: {
47
48
  toTokenSymbol: string
@@ -52,7 +53,7 @@ interface PaySendFormProps {
52
53
  quote?: PrepareSendQuote | null,
53
54
  ) => void
54
55
  onAmountUpdate?: (amount: string) => void
55
- mode?: "pay" | "fund" | "earn"
56
+ mode?: "pay" | "fund" | "earn" | "swap"
56
57
  selectedPool?: {
57
58
  id: string
58
59
  name: string
@@ -102,6 +103,8 @@ export const PaySendForm: React.FC<PaySendFormProps> = ({
102
103
  selectedPool,
103
104
  checkoutOnHandlers,
104
105
  }) => {
106
+ // const [isRefundAddressOpen, setIsRefundAddressOpen] = useState(false)
107
+ // const [refundAddress, setRefundAddress] = useState<string>(account.address)
105
108
  const {
106
109
  amount,
107
110
  amountRaw,
@@ -145,6 +148,7 @@ export const PaySendForm: React.FC<PaySendFormProps> = ({
145
148
  toChainId,
146
149
  toToken,
147
150
  toCalldata,
151
+ // refundAddress,
148
152
  walletClient,
149
153
  onTransactionStateChange,
150
154
  onError,
@@ -653,6 +657,16 @@ export const PaySendForm: React.FC<PaySendFormProps> = ({
653
657
  </div>
654
658
  )}
655
659
 
660
+ {/* Refund Address Input */}
661
+ {/* <RefundAddressInput
662
+ account={account}
663
+ isOpen={isRefundAddressOpen}
664
+ onToggle={() => setIsRefundAddressOpen(!isRefundAddressOpen)}
665
+ refundAddress={refundAddress}
666
+ onRefundAddressChange={setRefundAddress}
667
+ chainId={selectedDestinationChain.id}
668
+ /> */}
669
+
656
670
  {/* Fee Options */}
657
671
  <FeeOptions
658
672
  options={FEE_TOKENS}
@@ -64,7 +64,7 @@ export const QRCodeDeposit: React.FC<QRCodeDepositProps> = ({
64
64
  >
65
65
  <QrCode
66
66
  url={useSimpleQrCode ? eip631Url : eip681Url}
67
- size={200}
67
+ size={300}
68
68
  />
69
69
  </button>
70
70
  {!useSimpleQrCode && (