Files
sam-react-prod/src/components/organisms/PageLayout.tsx
byeongcheolryu ded0bc2439 fix: TypeScript 타입 오류 수정 및 설정 페이지 추가
- BOMItem Omit 타입 시그니처 통일 (useTemplateManagement, SectionsTab, ItemMasterContext)
- HeadersInit → Record<string, string> 타입 변경
- Zustand useShallow 마이그레이션 (zustand/react/shallow)
- DataTable, ListPageTemplate 제네릭 타입 제약 추가
- 설정 관리 페이지 추가 (직급, 직책, 휴가정책, 근무일정, 권한)
- HR 관리 페이지 추가 (급여, 휴가)
- 단가관리 페이지 리팩토링

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-09 18:07:47 +09:00

32 lines
751 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-3 md:p-6 pb-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>
);
}