Files
Club-12/Club12-WebClient/src/main.tsx
T
2026-09-18 13:38:48 -03:00

65 lines
2.7 KiB
TypeScript

import { ComponentType, ReactNode } from 'react';
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
// Side-effect import: registers the global maintenance banner against
// axiosUtils' onStatusCode(HttpStatus.ServiceUnavailable, ...) registry.
import './modules/core/utils/maintenanceBanner';
import { AuthProvider } from './modules/auth/context/auth.context';
import { BrowserRouter } from 'react-router-dom';
import { ErrorProvider } from './modules/error/context/error.context';
import { TournamentProvider } from './modules/tournament/context/tournament.context';
import { VenueProvider } from './modules/venue/context/venue.context';
import { SeasonProvider } from './modules/season/context/season.context';
import { TeamProvider } from './modules/team/context/team.context';
import { ClubProvider } from './modules/club/context/club.context';
import { UserProvider } from './modules/user/context/user.context';
import { DivisionProvider } from './modules/division/context/division.context';
import { PlayerProvider } from './modules/player/context/player.context';
import { StageProvider } from './modules/stage/context/stage.context';
import { MatchProvider } from './modules/match/context/match.context';
import { PlayerSanctionProvider } from './modules/playerSanction/context/playerSanction.context';
import { PlayerStatisticProvider } from './modules/playerStatistic/context/playerStatistic.context';
import { ScorerProvider } from './modules/scorer/context/scorer.context';
import { BlogPostProvider } from './modules/blogPost/context/blogPost.context';
import { MedicalRecordProvider } from './modules/medicalRecord/context/medicalRecord.context';
import { AuditLogProvider } from './modules/auditLog/context/auditLog.context';
import ErrorBoundary from './views/core/errors/error-boundary';
import ComposeProviders from './views/core/components/ComposeProviders';
import QueryProvider from './views/core/components/QueryProvider';
import ThemedProvider from './views/core/components/ThemedProvider';
const providers: ComponentType<{ children: ReactNode }>[] = [
ErrorBoundary,
QueryProvider,
ThemedProvider,
BrowserRouter,
ErrorProvider,
AuthProvider,
VenueProvider,
SeasonProvider,
TeamProvider,
ClubProvider,
PlayerProvider,
UserProvider,
TournamentProvider,
DivisionProvider,
StageProvider,
MatchProvider,
PlayerSanctionProvider,
ScorerProvider,
PlayerStatisticProvider,
BlogPostProvider,
MedicalRecordProvider,
AuditLogProvider,
];
ReactDOM.createRoot(document.getElementById('root') as HTMLElement).render(
<React.StrictMode>
<ComposeProviders providers={providers}>
<App />
</ComposeProviders>
</React.StrictMode>
);