"use client"; import { memo } from "react"; import { NodeProps } from "reactflow"; import { Database } from "lucide-react"; import { CompactNodeShell } from "./CompactNodeShell"; import type { TableSourceNodeData } from "@/types/node-editor"; export const TableSourceNode = memo(({ data, selected }: NodeProps) => { const fieldCount = data.fields?.length || 0; const summary = data.tableName ? `${data.tableName} (${fieldCount}개 필드)` : "테이블을 선택해 주세요"; return ( } selected={selected} hasInput={false} > {fieldCount > 0 && (
{data.fields!.slice(0, 4).map((f) => (
{f.label || f.displayName || f.name}
))} {fieldCount > 4 && ( 외 {fieldCount - 4}개 )}
)} ); }); TableSourceNode.displayName = "TableSourceNode";