44 lines
1.4 KiB
TypeScript
44 lines
1.4 KiB
TypeScript
import { SessionProvider } from "@ui/contexts/SessionContext";
|
|
import { ThemeProvider } from "@ui/contexts/ThemeContext";
|
|
import { routes } from "@ui/lib/routes";
|
|
import { DatadogRumProvider } from "@ui/providers/DatadogRumProvider";
|
|
import { UserStoreProvider } from "@ui/providers/UserStoreProvider";
|
|
import { AllCommunityModule, ModuleRegistry } from "ag-grid-community";
|
|
import { BrowserRouter as Router, useRoutes } from "react-router-dom";
|
|
|
|
// Register all Community features
|
|
ModuleRegistry.registerModules([AllCommunityModule]);
|
|
|
|
const AppRoutes = () => {
|
|
const element = useRoutes(routes);
|
|
return element;
|
|
};
|
|
|
|
export const App = () => {
|
|
return (
|
|
<ThemeProvider>
|
|
<SessionProvider>
|
|
<UserStoreProvider>
|
|
<Router>
|
|
<DatadogRumProvider>
|
|
<div className="min-h-screen bg-background">
|
|
<AppRoutes />
|
|
<style>
|
|
{`
|
|
@keyframes slide {
|
|
0% { transform: translateX(-100vw); }
|
|
100% { transform: translateX(100vw); }
|
|
}
|
|
.animate-slide {
|
|
animation: slide 24s linear infinite;
|
|
}
|
|
`}
|
|
</style>
|
|
</div>
|
|
</DatadogRumProvider>
|
|
</Router>
|
|
</UserStoreProvider>
|
|
</SessionProvider>
|
|
</ThemeProvider>
|
|
);
|
|
};
|