feat:添加管理员登录
This commit is contained in:
@@ -1,19 +1,34 @@
|
||||
"use client";
|
||||
|
||||
import type { ReactNode } from "react";
|
||||
import { useEffect } from "react";
|
||||
import { ThemeProvider } from "next-themes";
|
||||
|
||||
import { Toaster } from "@/components/ui/sonner";
|
||||
import { TooltipProvider } from "@/components/ui/tooltip";
|
||||
import { readStoredAdminToken } from "@/lib/admin-token-local-storage";
|
||||
import { useAdminSessionStore } from "@/stores/admin-session-store";
|
||||
|
||||
type ProvidersProps = {
|
||||
children: ReactNode;
|
||||
};
|
||||
|
||||
function AdminTokenHydrator() {
|
||||
useEffect(() => {
|
||||
const token = readStoredAdminToken();
|
||||
if (token) {
|
||||
useAdminSessionStore.getState().setBearerToken(token);
|
||||
}
|
||||
}, []);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
export function Providers({ children }: ProvidersProps) {
|
||||
return (
|
||||
<ThemeProvider attribute="class" defaultTheme="system" enableSystem>
|
||||
<TooltipProvider>
|
||||
<AdminTokenHydrator />
|
||||
{children}
|
||||
<Toaster />
|
||||
</TooltipProvider>
|
||||
|
||||
Reference in New Issue
Block a user