diff --git a/packages/arb-token-bridge-ui/src/components/TransferPanel/TransferPanel.tsx b/packages/arb-token-bridge-ui/src/components/TransferPanel/TransferPanel.tsx index 7ddd32024f..b4f8698f97 100644 --- a/packages/arb-token-bridge-ui/src/components/TransferPanel/TransferPanel.tsx +++ b/packages/arb-token-bridge-ui/src/components/TransferPanel/TransferPanel.tsx @@ -120,13 +120,10 @@ export function TransferPanel() { const nativeCurrency = useNativeCurrency({ provider: childChainProvider }) - const { isEOA, isSmartContractWallet } = useAccountType() + const { isSmartContractWallet } = useAccountType() - const { data: parentSigner } = useSigner({ - chainId: parentChain.id - }) - const { data: childSigner } = useSigner({ - chainId: childChain.id + const { data: signer } = useSigner({ + chainId: networks.sourceChain.id }) const { openTransactionHistoryPanel, setTransferring } = @@ -340,9 +337,8 @@ export function TransferPanel() { if (!walletAddress) { return } - const signer = isDepositMode ? parentSigner : childSigner if (!signer) { - throw 'Signer is undefined' + throw signerUndefinedError } setTransferring(true) @@ -561,8 +557,7 @@ export function TransferPanel() { return } - const hasBothSigners = parentSigner && childSigner - if (isEOA && !hasBothSigners) { + if (!signer) { throw signerUndefinedError } @@ -587,13 +582,6 @@ export function TransferPanel() { const isBatchTransfer = isBatchTransferSupported && Number(amount2) > 0 try { - if ( - (isDepositMode && !parentSigner) || - (!isDepositMode && !childSigner) - ) { - throw signerUndefinedError - } - const warningToken = selectedToken && warningTokens[selectedToken.address.toLowerCase()] if (warningToken) { @@ -673,8 +661,6 @@ export function TransferPanel() { ? selectedToken?.l2Address : selectedToken?.address - const signer = isDepositMode ? parentSigner : childSigner - const bridgeTransferStarter = await BridgeTransferStarterFactory.create({ sourceChainId, sourceChainErc20Address, @@ -689,8 +675,6 @@ export function TransferPanel() { destinationChainId }) - if (!signer) throw Error('Signer not connected!') - if (isWithdrawal && selectedToken && !sourceChainErc20Address) { /* just a fail-safe - since our types allow for an optional `selectedToken?.l2Address`, we can theoretically end up with a case