차량 관리 (신규): - VehicleList/VehicleDetail: 차량 목록/상세 - ForkliftList/ForkliftDetail: 지게차 목록/상세 - VehicleLogList/VehicleLogDetail: 운행일지 목록/상세 - 관련 페이지 라우트 추가 (/vehicle-management/*) CEO 대시보드: - Enhanced 섹션 컴포넌트 적용 (아이콘 + 컬러 테마) - EnhancedStatusBoardSection, EnhancedDailyReportSection, EnhancedMonthlyExpenseSection - TodayIssueSection 개선 IntegratedDetailTemplate: - FieldInput, FieldRenderer 기능 확장 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
32 lines
739 B
TypeScript
32 lines
739 B
TypeScript
'use client';
|
|
|
|
import { ReactNode } from "react";
|
|
|
|
interface PageLayoutProps {
|
|
children: ReactNode;
|
|
maxWidth?: "sm" | "md" | "lg" | "xl" | "2xl" | "full";
|
|
versionInfo?: ReactNode;
|
|
}
|
|
|
|
export function PageLayout({ children, maxWidth = "full", versionInfo }: PageLayoutProps) {
|
|
|
|
const maxWidthClasses = {
|
|
sm: "max-w-3xl",
|
|
md: "max-w-5xl",
|
|
lg: "max-w-6xl",
|
|
xl: "max-w-7xl",
|
|
"2xl": "max-w-[1600px]",
|
|
full: "w-full"
|
|
};
|
|
|
|
return (
|
|
<div className={`p-0 space-y-3 md:space-y-6 flex flex-col ${maxWidthClasses[maxWidth]} mx-auto w-full relative`}>
|
|
{versionInfo && (
|
|
<div className="absolute top-4 right-4 z-10">
|
|
{versionInfo}
|
|
</div>
|
|
)}
|
|
{children}
|
|
</div>
|
|
);
|
|
} |