import ChainCard from '@/components/ChainCard' import { EIP155_MAINNET_CHAINS, EIP155_TEST_CHAINS } from '@/data/EIP155Data' import { NEAR_TEST_CHAINS } from '@/data/NEARData' import { SOLANA_MAINNET_CHAINS, SOLANA_TEST_CHAINS } from '@/data/SolanaData' import { MULTIVERSX_MAINNET_CHAINS, MULTIVERSX_TEST_CHAINS } from '@/data/MultiversxData' import { TRON_MAINNET_CHAINS, TRON_TEST_CHAINS } from '@/data/TronData' import { formatChainName } from '@/utils/HelperUtil' import { Col, Row, Text } from '@nextui-org/react' import { ProposalTypes } from '@walletconnect/types' import { Fragment } from 'react' /** * Utilities */ const CHAIN_METADATA = { ...SOLANA_MAINNET_CHAINS, ...MULTIVERSX_MAINNET_CHAINS, ...TRON_MAINNET_CHAINS, ...EIP155_MAINNET_CHAINS, ...EIP155_TEST_CHAINS, ...SOLANA_TEST_CHAINS, ...NEAR_TEST_CHAINS, ...MULTIVERSX_TEST_CHAINS, ...TRON_TEST_CHAINS } /** * Types */ interface IProps { requiredNamespace: ProposalTypes.RequiredNamespace } /** * Component */ export default function SessionProposalChainCard({ requiredNamespace }: IProps) { return ( {requiredNamespace.chains?.map(chainId => { // @ts-expect-error const rgb = CHAIN_METADATA[chainId]?.rgb return ( {formatChainName(chainId)} Methods {requiredNamespace.methods.length ? requiredNamespace.methods.join(', ') : '-'} Events {requiredNamespace.events.length ? requiredNamespace.events.join(', ') : '-'} ) })} ) }