"use client"; /** * pop-card-list 디자인 모드 미리보기 컴포넌트 (V2) * * 디자이너 캔버스에서 표시되는 미리보기 * 이미지 참조 기반 카드 구조 반영 */ import React from "react"; import { LayoutGrid, Package } from "lucide-react"; import type { PopCardListConfig } from "../types"; import { CARD_LAYOUT_MODE_LABELS, CARD_SIZE_LABELS, DEFAULT_CARD_IMAGE, } from "../types"; interface PopCardListPreviewProps { config?: PopCardListConfig; } export function PopCardListPreviewComponent({ config, }: PopCardListPreviewProps) { const layoutMode = config?.layoutMode || "grid"; const cardSize = config?.cardSize || "medium"; const cardsPerRow = config?.cardsPerRow || 3; const dataSource = config?.dataSource; const template = config?.cardTemplate; // 설정 상태 확인 const hasTable = !!dataSource?.tableName; const hasHeader = !!template?.header?.codeField || !!template?.header?.titleField; const hasImage = template?.image?.enabled ?? true; const fieldCount = template?.body?.fields?.length || 0; // 샘플 카드 개수 (미리보기용) const sampleCardCount = layoutMode === "grid" ? Math.min(cardsPerRow, 3) : 2; return (
데이터 소스를 설정하세요