feat(app): auth UI, SPA mode, /api base URL
- auth: login/register bottom sheets, token storage, authFetch - AuthProvider context w/ auto-refresh on mount - hide add/edit/delete for guests, sign-in button in nav - SPA mode (ssr:false), loaders→client-side useEffect - API base URL /api (same-origin), loading spinners
This commit is contained in:
@@ -10,6 +10,7 @@ import { ThemeProvider } from "next-themes";
|
||||
|
||||
import type { Route } from "./+types/root";
|
||||
import "./app.css";
|
||||
import { AuthProvider } from "./lib/auth";
|
||||
import { TooltipProvider } from "./components/ui/tooltip";
|
||||
|
||||
export const links: Route.LinksFunction = () => [
|
||||
@@ -43,11 +44,13 @@ export function Layout({ children }: { children: React.ReactNode }) {
|
||||
</head>
|
||||
<body>
|
||||
<ThemeProvider attribute="class" defaultTheme="system" enableSystem>
|
||||
<TooltipProvider>
|
||||
{children}
|
||||
<ScrollRestoration />
|
||||
<Scripts />
|
||||
</TooltipProvider>
|
||||
<AuthProvider>
|
||||
<TooltipProvider>
|
||||
{children}
|
||||
<ScrollRestoration />
|
||||
<Scripts />
|
||||
</TooltipProvider>
|
||||
</AuthProvider>
|
||||
</ThemeProvider>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user