import { useState, useEffect } from 'react'; import * as Sentry from '@sentry/react'; import { BrowserTracing } from '@sentry/tracing'; import { useLocation } from 'react-router-dom'; import { ThemeContext, useThemeSwitcher } from '@vegaprotocol/react-helpers'; import { EnvironmentProvider, NetworkLoader, useEnvironment, } from '@vegaprotocol/environment'; import { NetworkInfo } from '@vegaprotocol/network-info'; import { Nav } from './components/nav'; import { Header } from './components/header'; import { Main } from './components/main'; import { TendermintWebsocketProvider } from './contexts/websocket/tendermint-websocket-provider'; import { ENV } from './config/env'; import type { InMemoryCacheConfig } from '@apollo/client'; function App() { const { VEGA_ENV } = useEnvironment(); const [theme, toggleTheme] = useThemeSwitcher(); const [menuOpen, setMenuOpen] = useState(false); const location = useLocation(); useEffect(() => { setMenuOpen(false); }, [location]); useEffect(() => { Sentry.init({ dsn: ENV.dsn, integrations: [new BrowserTracing()], tracesSampleRate: 1, environment: VEGA_ENV, }); }, [VEGA_ENV]); const cacheConfig: InMemoryCacheConfig = { typePolicies: { Node: { keyFields: false, }, }, }; return (
); } const Wrapper = () => { return ( ); }; export default Wrapper;