"use client"; /** * 콤팩트 노드 공통 쉘 * 다크 캔버스에서 사용하는 공통 노드 래퍼 */ import { memo, ReactNode } from "react"; import { Handle, Position } from "reactflow"; interface CompactNodeShellProps { color: string; label: string; summary?: string; icon: ReactNode; selected?: boolean; children?: ReactNode; hasInput?: boolean; hasOutput?: boolean; inputHandleId?: string; outputHandleId?: string; /** 커스텀 출력 핸들(ConditionNode 등)을 사용할 경우 true */ customOutputHandles?: boolean; /** 커스텀 입력 핸들을 사용할 경우 true */ customInputHandles?: boolean; minWidth?: string; } export const CompactNodeShell = memo( ({ color, label, summary, icon, selected = false, children, hasInput = true, hasOutput = true, inputHandleId, outputHandleId, customOutputHandles = false, customInputHandles = false, minWidth = "260px", }: CompactNodeShellProps) => { return (