main.tsx 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. // react-query
  2. // react
  3. import { Suspense } from 'react'
  4. import ReactDOM from 'react-dom/client'
  5. // helmet
  6. import { HelmetProvider } from 'react-helmet-async'
  7. import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
  8. // vercel analytics
  9. import { Analytics } from '@vercel/analytics/react'
  10. // svg icons
  11. import 'virtual:svg-icons-register'
  12. import './theme/theme.css'
  13. import ProgressBar from './components/progress-bar'
  14. // mock api
  15. // import worker from './_mock'
  16. // root component
  17. import App from './App'
  18. // css
  19. import './global.css'
  20. // i18n
  21. import './locales/i18n'
  22. const root = ReactDOM.createRoot(document.getElementById('root') as HTMLElement)
  23. root.render(
  24. <HelmetProvider>
  25. <QueryClientProvider client={new QueryClient()}>
  26. {/* <ReactQueryDevtools initialIsOpen={false} /> */}
  27. <Suspense>
  28. <ProgressBar />
  29. <Analytics />
  30. <App />
  31. </Suspense>
  32. </QueryClientProvider>
  33. </HelmetProvider>
  34. )
  35. // 🥵 start service worker mock in development mode
  36. // worker.start({ onUnhandledRequest: "bypass" });