import React, { useState, useContext, useEffect, useCallback } from "react"; import { Nav, NavDropdown, Tooltip, OverlayTrigger, Spinner, } from "react-bootstrap"; import { useHistory } from "react-router-dom"; import { useNetworkName, useNetworkUrl, } from "src/services/network/networkProvider"; import { UserPrefContext } from "src/services/userPref/userPrefProvider"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faInfoCircle } from "@fortawesome/free-solid-svg-icons"; import "./NetworkSwitcher.css"; const NetworkSwitcher: React.FC = () => { const history = useHistory(); const networkName = useNetworkName(); const networkUrl = useNetworkUrl(); const userPrefContext = useContext(UserPrefContext); if (!userPrefContext) { return (
); } const { networkMap } = userPrefContext; const [showDropdown, setShowDropdown] = useState(false); const [currentNetwork, setCurrentNetwork] = useState(networkName); useEffect(() => { setCurrentNetwork(networkName); }, [networkName]); const changeNetwork = useCallback( (k: string) => { history.push({ pathname: "/", search: "?" + new URLSearchParams({ network: k }).toString(), }); }, [history] ); return ( ); }; export default NetworkSwitcher;