> }) {
- const { chainId } = await searchParams;
+ const { chainId, tokenAddress, amount } = await searchParams;
+
+ let symbol: string | undefined;
+ let decimals: number | undefined;
+ let tokenName: string | undefined;
+
+ if (chainId && tokenAddress) {
+ try {
+ const metadata = await getCurrencyMetadata({
+ contract: getContract({
+ client: bridgeAppThirdwebClient,
+ // eslint-disable-next-line no-restricted-syntax
+ chain: defineChain(Number(chainId)),
+ address: tokenAddress as Address,
+ }),
+ });
+ ({ symbol, decimals, name: tokenName } = metadata);
+ } catch (error) {
+ console.warn("Failed to fetch token metadata:", error);
+ // Continue with undefined values; the component should handle gracefully
+ }
+ }
+
return (
-
+
{/* eslint-disable-next-line @next/next/no-img-element */}