diff --git a/src/components/ui/wallet/SendEth.tsx b/src/components/ui/wallet/SendEth.tsx index 2d20da1..51309b1 100644 --- a/src/components/ui/wallet/SendEth.tsx +++ b/src/components/ui/wallet/SendEth.tsx @@ -2,7 +2,7 @@ import { useCallback, useMemo } from "react"; import { useAccount, useSendTransaction, useWaitForTransactionReceipt } from "wagmi"; -import { base } from "wagmi/chains"; +import { arbitrum, base, mainnet, optimism, polygon, scroll, shape, zkSync, zora } from "wagmi/chains"; import { Button } from "../Button"; import { truncateAddress } from "../../../lib/truncateAddress"; import { renderError } from "../../../lib/errorUtils"; @@ -44,18 +44,37 @@ export function SendEth() { // --- Computed Values --- /** * Determines the recipient address based on the current chain. - * - * Uses different protocol guild addresses for different chains: - * - Base: 0x32e3C7fD24e175701A35c224f2238d18439C7dBC - * - Other chains: 0xB3d8d7887693a9852734b4D25e9C0Bb35Ba8a830 - * + * + * Uses different protocol guild addresses for different chains. + * Defaults to Ethereum mainnet address if chain is not recognized. + * Addresses are taken from the protocol guilds documentation: https://protocol-guild.readthedocs.io/en/latest/ + * * @returns string - The recipient address for the current chain */ const protocolGuildRecipientAddress = useMemo(() => { - // Protocol guild address - return chainId === base.id - ? "0x32e3C7fD24e175701A35c224f2238d18439C7dBC" - : "0xB3d8d7887693a9852734b4D25e9C0Bb35Ba8a830"; + switch (chainId) { + case mainnet.id: + return "0x25941dC771bB64514Fc8abBce970307Fb9d477e9"; + case arbitrum.id: + return "0x7F8DCFd764bA8e9B3BA577dC641D5c664B74c47b"; + case base.id: + return "0xd16713A5D4Eb7E3aAc9D2228eB72f6f7328FADBD"; + case optimism.id: + return "0x58ae0925077527a87D3B785aDecA018F9977Ec34"; + case polygon.id: + return "0xccccEbdBdA2D68bABA6da99449b9CA41Dba9d4FF"; + case scroll.id: + return "0xccccEbdBdA2D68bABA6da99449b9CA41Dba9d4FF"; + case shape.id: + return "0x700fccD433E878F1AF9B64A433Cb2E09f5226CE8"; + case zkSync.id: + return "0x9fb5F754f5222449F98b904a34494cB21AADFdf8"; + case zora.id: + return "0x32e3C7fD24e175701A35c224f2238d18439C7dBC"; + default: + // Default to Ethereum mainnet address + return "0x25941dC771bB64514Fc8abBce970307Fb9d477e9"; + } }, [chainId]); // --- Handlers ---