import React, { ReactElement, useEffect, useState } from 'react' import { formatCurrency } from '@coingecko/cryptoformat' import { useUserPreferences } from '../../../providers/UserPreferences' import Button from '../../atoms/Button' import AddToken from '../../atoms/AddToken' import Conversion from '../../atoms/Price/Conversion' import { useWeb3 } from '../../../providers/Web3' import Web3Feedback from '../Web3Feedback' import styles from './Details.module.css' import { getOceanConfig } from '../../../utils/ocean' export default function Details(): ReactElement { const { web3Provider, web3ProviderInfo, web3Modal, connect, logout, networkData, networkId, balance } = useWeb3() const { locale } = useUserPreferences() const [mainCurrency, setMainCurrency] = useState() const [oceanTokenMetadata, setOceanTokenMetadata] = useState<{ address: string symbol: string }>() // const [portisNetwork, setPortisNetwork] = useState() useEffect(() => { if (!networkId) return const symbol = networkId === 2021000 ? 'GX' : networkData?.nativeCurrency.symbol setMainCurrency(symbol) const oceanConfig = getOceanConfig(networkId) oceanConfig && setOceanTokenMetadata({ address: oceanConfig.oceanTokenAddress, symbol: oceanConfig.oceanTokenSymbol }) }, [networkData, networkId]) // Handle network change for Portis // async function handlePortisNetworkChange(e: ChangeEvent) { // setPortisNetwork(e.target.value) // const portisNetworkName = e.target.value.toLowerCase() // await web3Provider._portis.changeNetwork(portisNetworkName) // // TODO: using our connect initializes a new Portis instance, // // which then defaults back to initial network (Mainnet). // // await connect() // } return (
    {Object.entries(balance).map(([key, value]) => (
  • {key === 'eth' ? mainCurrency : oceanTokenMetadata?.symbol} {' '} {formatCurrency(Number(value), '', locale, false, { significantFigures: 4 })} {key === 'ocean' && }
  • ))}
  • {web3ProviderInfo?.name} {/* {web3ProviderInfo?.name === 'Portis' && ( )} */} {web3ProviderInfo?.name === 'MetaMask' && ( )}

    {web3ProviderInfo?.name === 'Portis' && ( )}

) }