"use client"; import React from "react"; import { createComponentDefinition } from "../../utils/createComponentDefinition"; import { ComponentCategory } from "@/types/component"; import type { WebType } from "@/types/screen"; import { FileUploadComponent } from "./FileUploadComponent"; import { FileUploadConfigPanel } from "./FileUploadConfigPanel"; import { FileUploadConfig } from "./types"; /** * V2 FileUpload 컴포넌트 정의 * 화면관리 전용 V2 파일 업로드 컴포넌트입니다 */ export const V2FileUploadDefinition = createComponentDefinition({ id: "v2-file-upload", name: "파일 업로드", nameEng: "V2 FileUpload Component", description: "V2 파일 업로드를 위한 파일 선택 컴포넌트", category: ComponentCategory.INPUT, webType: "file", component: FileUploadComponent, defaultConfig: { placeholder: "파일을 선택하세요", multiple: true, accept: "*/*", maxSize: 10 * 1024 * 1024, // 10MB }, defaultSize: { width: 350, height: 240 }, configPanel: FileUploadConfigPanel, icon: "Upload", tags: ["file", "upload", "attachment", "v2"], version: "2.0.0", author: "개발팀", documentation: "https://docs.example.com/components/v2-file-upload", }); // 타입 내보내기 export type { FileUploadConfig, FileInfo, FileUploadProps, FileUploadStatus, FileUploadResponse } from "./types"; // 컴포넌트 내보내기 export { FileUploadComponent } from "./FileUploadComponent"; export { V2FileUploadRenderer } from "./V2FileUploadRenderer"; // 기본 export export default V2FileUploadDefinition;