"use client"; /** * 작업지시 인포(메모) 입력 섹션 (TASK:ERP-node-095) * * 작업지시 1건당 안내사항(인포)을 한 줄씩 여러 건 추가/삭제한다. * 등록된 인포는 POP(생산현장) 화면 상단에 표시될 예정 — 등록·저장만 본 컴포넌트 담당. * 작업지시 등록 모달 / 수정 모달 양쪽에서 공용으로 사용한다. */ import { Input } from "@/components/ui/input"; import { Button } from "@/components/ui/button"; import { Plus, X } from "lucide-react"; interface WorkInstructionInfoSectionProps { /** 인포 내용 배열 (빈 문자열 행 허용 — 저장 시 호출부에서 trim/필터) */ infos: string[]; /** 변경 콜백 */ onChange: (next: string[]) => void; } export function WorkInstructionInfoSection({ infos, onChange }: WorkInstructionInfoSectionProps) { const updateAt = (idx: number, value: string) => { onChange(infos.map((v, i) => (i === idx ? value : v))); }; const removeAt = (idx: number) => { onChange(infos.filter((_, i) => i !== idx)); }; const add = () => { onChange([...infos, ""]); }; return (
작업지시별 안내사항을 입력하면 POP 화면 상단에 표시됩니다. 여러 건 등록할 수 있습니다.
등록된 인포가 없습니다. '인포 추가' 버튼으로 입력하세요.
) : ( infos.map((info, idx) => (