"use client";

import { createComponentDefinition } from "../../utils/createComponentDefinition";
import { ComponentCategory } from "@/types/component";
import { SectionCardComponent } from "./SectionCardComponent";
import { SectionCardConfigPanel } from "./SectionCardConfigPanel";

/**
 * Section Card 컴포넌트 정의
 * 제목과 테두리가 있는 명확한 그룹화 컨테이너
 */
export const SectionCardDefinition = createComponentDefinition({
  id: "section-card",
  name: "Section Card",
  nameEng: "Section Card",
  description: "제목과 테두리가 있는 명확한 그룹화 컨테이너",
  category: ComponentCategory.LAYOUT,
  webType: "custom",
  component: SectionCardComponent,
  defaultConfig: {
    title: "섹션 제목",
    description: "",
    showHeader: true,
    padding: "md",
    backgroundColor: "default",
    borderStyle: "solid",
    collapsible: false,
    defaultOpen: true,
  },
  defaultSize: { width: 800, height: 250 },
  configPanel: SectionCardConfigPanel,
  icon: "LayoutPanelTop",
  tags: ["섹션", "그룹", "카드", "컨테이너", "제목", "card"],
  version: "1.0.0",
  author: "WACE",
  hidden: true, // v2-section-card 사용으로 패널에서 숨김
});

// 컴포넌트는 SectionCardRenderer에서 자동 등록됩니다

export { SectionCardComponent } from "./SectionCardComponent";
export { SectionCardConfigPanel } from "./SectionCardConfigPanel";
export { SectionCardRenderer } from "./SectionCardRenderer";

