import { VendorMaterialsView } from "@/db/schema/vendors"; /** * 테이블/엑셀에 보여줄 컬럼 한 칸을 어떻게 렌더링할지 결정하는 설정 */ export interface VendorColumnConfig { id: keyof VendorMaterialsView; label: string; group?: string; excelHeader?: string; type?: string; // New properties for sizing minWidth?: number; maxWidth?: number; defaultWidth?: number; // Padding multiplier for extra space (1.0 = normal, 1.5 = more space, etc.) paddingFactor?: number; } /** * 실제로 "User + Company + Roles" 정보 테이블에서 * 어떤 컬럼들을 어떤 순서로 표시할 것인지 정의. */ export const vendorMaterialsColumnsConfig: VendorColumnConfig[] = [ { id: "itemCode", label: "자재그룹코드", excelHeader: "자재그룹코드", minWidth: 80, paddingFactor: 1.2, }, { id: "itemName", label: "자재그룹명", excelHeader: "자재그룹명", minWidth: 120, paddingFactor: 1.5, }, { id: "description", label: "상세", excelHeader: "상세", minWidth: 150, paddingFactor: 2.0, // More padding for descriptions }, { id: "description", label: "클래스 레벨", excelHeader: "클래스 레벨", minWidth: 150, paddingFactor: 2.0, // More padding for descriptions }, { id: "unitOfMeasure", label: "UOM", excelHeader: "UOM", minWidth: 150, paddingFactor: 2.0, // More padding for descriptions }, { id: "steelType", label: "강종", excelHeader: "강종", minWidth: 150, paddingFactor: 2.0, // More padding for descriptions }, { id: "gradeMaterial", label: "등급 재질", excelHeader: "등급 재질", minWidth: 150, paddingFactor: 2.0, // More padding for descriptions }, { id: "createdAt", label: "생성일", excelHeader: "생성일", minWidth: 120, type: "date", }, { id: "updatedAt", label: "수정일", excelHeader: "수정일", minWidth: 120, type: "date", }, ];