import React, { Suspense } from 'react';
import { BrowserRouter, Redirect, Route, Switch } from 'react-router-dom';
import { TcProvider, useColorScheme, useLanguage } from 'tailchat-shared';
import clsx from 'clsx';
import { Loadable } from './components/Loadable';
import { ConfigProvider as AntdProvider } from 'antd';
import { Helmet } from 'react-helmet';
import { useRecordMeasure } from './utils/measure-helper';
import { getPopupContainer, preventDefault } from './utils/dom-helper';
import { LoadingSpinner } from './components/LoadingSpinner';
const MainRoute = Loadable(() => import('./routes/Main'));
const EntryRoute = Loadable(() => import('./routes/Entry'));
const PanelRoute = Loadable(() => import('./routes/Panel'));
const InviteRoute = Loadable(() => import('./routes/Invite'));
const AppProvider: React.FC = React.memo((props) => {
return (