Skip to content

Commit b1421f4

Browse files
committed
Merge remote-tracking branch 'origin/peanut-wallet-dev' into fix/cross-chain-ui
2 parents 559ada8 + 43ce008 commit b1421f4

File tree

4 files changed

+15
-16
lines changed

4 files changed

+15
-16
lines changed

src/app/(mobile-ui)/withdraw/crypto/page.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,13 @@ import { PEANUT_WALLET_CHAIN, PEANUT_WALLET_TOKEN } from '@/constants'
2626
import { useRouter } from 'next/navigation'
2727
import { useCallback, useEffect, useMemo } from 'react'
2828
import { captureMessage } from '@sentry/nextjs'
29+
import type { Address } from 'viem'
2930

3031
export default function WithdrawCryptoPage() {
3132
const router = useRouter()
3233
const dispatch = useAppDispatch()
3334
const { chargeDetails: activeChargeDetailsFromStore } = usePaymentStore()
34-
const { isConnected: isPeanutWallet } = useWallet()
35+
const { isConnected: isPeanutWallet, address } = useWallet()
3536
const {
3637
amountToWithdraw,
3738
setAmountToWithdraw,
@@ -97,13 +98,14 @@ export default function WithdrawCryptoPage() {
9798
prepareTransactionDetails({
9899
chargeDetails: activeChargeDetailsFromStore,
99100
from: {
101+
address: address as Address,
100102
tokenAddress: PEANUT_WALLET_TOKEN,
101103
chainId: PEANUT_WALLET_CHAIN.id.toString(),
102104
},
103105
usdAmount: amountToWithdraw,
104106
})
105107
}
106-
}, [currentView, activeChargeDetailsFromStore, withdrawData, prepareTransactionDetails, amountToWithdraw])
108+
}, [currentView, activeChargeDetailsFromStore, withdrawData, prepareTransactionDetails, amountToWithdraw, address])
107109

108110
const handleSetupReview = useCallback(
109111
async (data: Omit<WithdrawData, 'amount'>) => {
@@ -238,12 +240,13 @@ export default function WithdrawCryptoPage() {
238240
await prepareTransactionDetails({
239241
chargeDetails: activeChargeDetailsFromStore,
240242
from: {
243+
address: address as Address,
241244
tokenAddress: PEANUT_WALLET_TOKEN,
242245
chainId: PEANUT_WALLET_CHAIN.id.toString(),
243246
},
244247
usdAmount: amountToWithdraw,
245248
})
246-
}, [activeChargeDetailsFromStore, prepareTransactionDetails, amountToWithdraw])
249+
}, [activeChargeDetailsFromStore, prepareTransactionDetails, amountToWithdraw, address])
247250

248251
const handleBackFromConfirm = useCallback(() => {
249252
setCurrentView('INITIAL')

src/components/Payment/Views/Confirm.payment.view.tsx

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -84,7 +84,7 @@ export default function ConfirmPaymentView({
8484
xChainRoute,
8585
} = usePaymentInitiator()
8686
const { selectedTokenData, selectedChainID } = useContext(tokenSelectorContext)
87-
const { isConnected: isPeanutWallet, fetchBalance } = useWallet()
87+
const { isConnected: isPeanutWallet, fetchBalance, address: peanutWalletAddress } = useWallet()
8888
const { isConnected: isWagmiConnected, address: wagmiAddress } = useAccount()
8989
const { rewardWalletBalance } = useWalletStore()
9090
const queryClient = useQueryClient()
@@ -173,9 +173,11 @@ export default function ConfirmPaymentView({
173173
isDirectUsdPayment && chargeDetails.currencyCode.toLowerCase() === 'usd'
174174
? chargeDetails.currencyAmount
175175
: undefined
176+
const senderAddress = isUsingExternalWallet ? wagmiAddress : peanutWalletAddress
176177
await prepareTransactionDetails({
177178
chargeDetails,
178179
from: {
180+
address: senderAddress as Address,
179181
tokenAddress: fromTokenAddress as Address,
180182
chainId: fromChainId,
181183
},
@@ -189,6 +191,8 @@ export default function ConfirmPaymentView({
189191
prepareTransactionDetails,
190192
isDirectUsdPayment,
191193
isUsingExternalWallet,
194+
wagmiAddress,
195+
peanutWalletAddress,
192196
])
193197

194198
useEffect(() => {

src/constants/general.consts.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export const infuraRpcUrls: Record<number, string> = {
1515
[arbitrumSepolia.id]: `https://arbitrum-sepolia.infura.io/v3/${INFURA_API_KEY}`,
1616
[polygon.id]: `https://polygon-mainnet.infura.io/v3/${INFURA_API_KEY}`,
1717
[optimism.id]: `https://optimism-mainnet.infura.io/v3/${INFURA_API_KEY}`,
18-
[base.id]: `https://base-sepolia.infura.io/v3/${INFURA_API_KEY}`,
18+
[base.id]: `https://base-mainnet.infura.io/v3/${INFURA_API_KEY}`,
1919
// Infura is returning weird estimations for BSC @2025-05-14
2020
//[bsc.id]: `https://bsc-mainnet.infura.io/v3/${INFURA_API_KEY}`,
2121
[bsc.id]: 'https://bsc-dataseed.bnbchain.org',

src/hooks/usePaymentInitiator.ts

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -185,16 +185,12 @@ export const usePaymentInitiator = () => {
185185
}: {
186186
chargeDetails: TRequestChargeResponse
187187
from: {
188+
address: Address
188189
tokenAddress: Address
189190
chainId: string
190191
}
191192
usdAmount?: string
192193
}) => {
193-
if (!peanutWalletAddress && !wagmiAddress) {
194-
console.warn('Missing data for transaction preparation')
195-
return
196-
}
197-
198194
setError(null)
199195
setIsFeeEstimationError(false)
200196
setUnsignedTx(null)
@@ -212,7 +208,6 @@ export const usePaymentInitiator = () => {
212208

213209
if (_isXChain || _diffTokens) {
214210
setLoadingStep('Preparing Transaction')
215-
const senderAddress = isPeanutWallet ? peanutWalletAddress : wagmiAddress
216211
setIsCalculatingFees(true)
217212
const amount = usdAmount
218213
? {
@@ -222,10 +217,7 @@ export const usePaymentInitiator = () => {
222217
toAmount: parseUnits(chargeDetails.tokenAmount, chargeDetails.tokenDecimals),
223218
}
224219
const xChainRoute = await getRoute({
225-
from: {
226-
address: senderAddress as Address,
227-
...from,
228-
},
220+
from,
229221
to: {
230222
address: chargeDetails.requestLink.recipientAddress as Address,
231223
tokenAddress: chargeDetails.tokenAddress as Address,
@@ -293,7 +285,7 @@ export const usePaymentInitiator = () => {
293285
setIsPreparingTx(false)
294286
}
295287
},
296-
[peanutWalletAddress, wagmiAddress, setIsXChain, isPeanutWallet]
288+
[setIsXChain, isPeanutWallet]
297289
)
298290

299291
// helper function: determine charge details (fetch or create)

0 commit comments

Comments
 (0)