Files
mai-bot/dashboard/src/main.tsx
DrSmoothl 1fec4c3b9a feat(dashboard): add background customization system
Add image/video background support across 5 layout layers (page, sidebar,
header, card, dialog) with per-layer effect controls and custom CSS injection.
- IndexedDB asset store for blob persistence (idb)
- AssetStoreProvider for blob URL lifecycle management
- BackgroundLayer component with CSS effects and prefers-reduced-motion support
- useBackground hook with inherit logic
- BackgroundUploader with local file and remote URL support
- BackgroundEffectsControls and ComponentCSSEditor UI components
- Background settings integrated into AppearanceTab in settings.tsx
- Layout, Card, and Dialog integration via non-breaking wrapper components
2026-02-23 18:08:01 +08:00

30 lines
1.0 KiB
TypeScript

import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import { RouterProvider } from '@tanstack/react-router'
import './index.css'
import { router } from './router'
import { AssetStoreProvider } from './components/asset-provider'
import { ThemeProvider } from './components/theme-provider'
import { AnimationProvider } from './components/animation-provider'
import { TourProvider, TourRenderer } from './components/tour'
import { Toaster } from './components/ui/toaster'
import { ErrorBoundary } from './components/error-boundary'
createRoot(document.getElementById('root')!).render(
<StrictMode>
<ErrorBoundary>
<AssetStoreProvider>
<ThemeProvider defaultTheme="system">
<AnimationProvider>
<TourProvider>
<RouterProvider router={router} />
<TourRenderer />
<Toaster />
</TourProvider>
</AnimationProvider>
</ThemeProvider>
</AssetStoreProvider>
</ErrorBoundary>
</StrictMode>
)