import React, { useMemo, useState } from 'react'; import { View } from 'react-native'; import { List } from 'react-native-paper'; import { NetworkDropdownProps } from '../types'; import styles from '../styles/stylesheet'; import { useAccounts } from '../context/AccountsContext'; const NetworkDropdown = ({ updateNetwork }: NetworkDropdownProps) => { const [expanded, setExpanded] = useState(false); const [selectedNetwork, setSelectedNetwork] = useState('Ethereum'); const { networksData } = useAccounts(); const networks = useMemo(() => { const defaultNetworks = [ { value: 'eth', chainId: 'eip155:1', displayName: 'Ethereum' }, { value: 'cosmos', chainId: 'cosmos:cosmoshub-4', displayName: 'Cosmos' }, ]; networksData.forEach(network => { defaultNetworks.push({ value: network.networkType, chainId: network.chainId, displayName: network.networkName, }); }); return defaultNetworks; }, [networksData]); const handleNetworkPress = (network: string, displayName: string) => { updateNetwork(network); setSelectedNetwork(displayName); setExpanded(false); }; return ( setExpanded(!expanded)}> {networks.map(network => ( handleNetworkPress(network.value, network.displayName) } /> ))} ); }; export { NetworkDropdown };