"use client"; import React from "react"; import { X } from "lucide-react"; import { Equipment, Process } from "./types"; interface PopProcessModalProps { isOpen: boolean; selectedEquipment: Equipment | null; selectedProcess: Process | null; processes: Process[]; onSelect: (process: Process) => void; onClose: () => void; } export function PopProcessModal({ isOpen, selectedEquipment, selectedProcess, processes, onSelect, onClose, }: PopProcessModalProps) { const [tempSelected, setTempSelected] = React.useState(selectedProcess); React.useEffect(() => { setTempSelected(selectedProcess); }, [selectedProcess, isOpen]); const handleConfirm = () => { if (tempSelected) { onSelect(tempSelected); onClose(); } }; if (!isOpen || !selectedEquipment) return null; // 선택된 설비의 공정만 필터링 const availableProcesses = selectedEquipment.processIds.map((processId, index) => { const process = processes.find((p) => p.id === processId); return { id: processId, name: selectedEquipment.processNames[index], code: process?.code || "", }; }); return (
e.target === e.currentTarget && onClose()}>

공정 선택

{availableProcesses.map((process) => (
setTempSelected(process as Process)} >
{process.name}
{process.code}
))}
); }