23 lines
800 B
TypeScript
23 lines
800 B
TypeScript
'use client';
|
||
|
||
import { AppChrome } from '@/components/layout/AppChrome';
|
||
import { RequireAuth } from '@/components/layout/RequireAuth';
|
||
import { TabStrip } from '@/components/layout/TabStrip';
|
||
|
||
/** 登录后带侧栏 + 多标签主工作区布局(dashboard 与 (iam) 等业务页共用) */
|
||
export function AuthenticatedLayout({ children }: { children: React.ReactNode }) {
|
||
return (
|
||
<RequireAuth>
|
||
<AppChrome>
|
||
<div className="flex min-h-0 w-full min-w-0 flex-1 flex-col overflow-hidden">
|
||
<TabStrip />
|
||
{/* 与 TabStrip 间距及距底 12px(Tailwind p-3) */}
|
||
<div className="flex min-h-0 min-w-0 flex-1 flex-col overflow-y-auto px-3 pt-3 pb-3">
|
||
{children}
|
||
</div>
|
||
</div>
|
||
</AppChrome>
|
||
</RequireAuth>
|
||
);
|
||
}
|