feat: Web 版上线 footpr.linyux.cn —— 登录页 + 按用户隔离的命令 API + 静态托管

This commit is contained in:
root
2026-10-16 15:00:58 +08:00
parent 99358b834a
commit 547157aaa1
31 changed files with 967 additions and 60 deletions
+14 -1
View File
@@ -1,12 +1,25 @@
import { useState } from 'react';
import { useEffect, useState } from 'react';
import { Outlet } from 'react-router-dom';
import { Sidebar } from './Sidebar';
import { Header } from './Header';
import { ToastProvider } from '@/components/ui';
import { LoginPage } from '@/components/auth/LoginPage';
import { isLocalMode } from '@/lib/api';
export function AppShell() {
const [authed, setAuthed] = useState(() => isLocalMode());
const [navOpen, setNavOpen] = useState(false);
useEffect(() => {
const h = () => setAuthed(false);
window.addEventListener('fp-auth-required', h);
return () => window.removeEventListener('fp-auth-required', h);
}, []);
if (!authed) {
return <LoginPage onAuthed={() => setAuthed(true)} />;
}
return (
<ToastProvider>
<div className="flex h-full">