import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import { Toaster } from 'sonner';
import "swiper/swiper-bundle.css";
import "flatpickr/dist/flatpickr.css";
import App from "./App.tsx";
import { AppWrapper } from "./components/common/PageMeta.tsx";
import { AuthProvider } from './context/AuthContext';
import { ThemeProvider } from "./context/ThemeContext.tsx";
import './index.css';
import "./styles/globals.css";
import "./styles/theme.css";
// Importar módulos para registrarlos
import './modules';

createRoot(document.getElementById("root")!).render(
  <StrictMode>
    <AuthProvider>
      <ThemeProvider>
        <AppWrapper>
          <App />
          <Toaster 
            position="top-right"
            toastOptions={{
              duration: 4000,
              style: {
                background: 'var(--background)',
                color: 'var(--foreground)',
                border: '1px solid var(--border)',
              },
            }}
            theme="system"
          />
        </AppWrapper>
      </ThemeProvider>
    </AuthProvider>
  </StrictMode>,
);