import './index.css'
import React from 'react'
import ReactDOM from 'react-dom/client'
import { QueryClient, QueryClientProvider } from '@tanstack/react-query'
import { RouterProvider } from '@tanstack/react-router'
import { router } from './router'
import { requestedDemoMode, demoUser } from '@/demo/demoMode'
import { useAuthStore } from '@/store/auth'
import { CrmDocumentTitle } from '@/components/shared/CrmDocumentTitle'

if (requestedDemoMode()) {
  useAuthStore.getState().enterDemo(demoUser)
}

const queryClient = new QueryClient({
  defaultOptions: {
    queries: {
      staleTime: 1000 * 60,
      retry: 1,
    },
  },
})

ReactDOM.createRoot(document.getElementById('root')!).render(
  <React.StrictMode>
    <QueryClientProvider client={queryClient}>
      <CrmDocumentTitle />
      <RouterProvider router={router} />
    </QueryClientProvider>
  </React.StrictMode>
)
