'use client'; import React from 'react'; import { ExternalLink, Copy, Check } from 'lucide-react'; interface TransactionWalletsProps { metadata: any; } export default function TransactionWallets({ metadata }: TransactionWalletsProps) { const [copied, setCopied] = React.useState(null); if (!metadata || !metadata.wallets) return null; const wallets = metadata.wallets; const networks = Object.keys(wallets); if (networks.length === 0) return null; const handleCopy = (e: React.MouseEvent, text: string) => { e.stopPropagation(); navigator.clipboard.writeText(text); setCopied(text); setTimeout(() => setCopied(null), 2000); }; const getExplorerUrl = (network: string, address: string) => { if (network === 'SOLANA') return `https://explorer.solana.com/address/${address}?cluster=devnet`; if (network === 'POLYGON') return `https://polygonscan.com/address/${address}`; if (network === 'TRON') return `https://tronscan.org/#/address/${address}`; if (network === 'EVM') return `https://etherscan.io/address/${address}`; return '#'; }; return (
{networks.map(network => { const walletData = wallets[network]; const address = typeof walletData === 'string' ? walletData : walletData?.address; if (!address) return null; const shortAddress = `${address.substring(0, 5)}...${address.substring(address.length - 4)}`; return (
{network}: {shortAddress}
); })}
); }