import { Button } from '@repo/shadcn/button'; import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, DialogTrigger, } from '@repo/shadcn/components/ui/dialog'; import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow, } from '@repo/shadcn/components/ui/table'; import { Input } from '@repo/shadcn/input'; import { Label } from '@repo/shadcn/label'; import { Trash2 } from 'lucide-react'; import { useState } from 'react'; import { useFieldArray, useFormContext } from 'react-hook-form'; import { TrainingSchema } from '../schemas/training'; interface EquipmentItem { machine: string; quantity: string | number; } export function EquipmentList() { const { control, register } = useFormContext(); const { fields, append, remove } = useFieldArray({ control, name: 'equipmentList', }); const [isOpen, setIsOpen] = useState(false); const [newItem, setNewItem] = useState({ machine: '', quantity: '', }); const handleAdd = (e: React.MouseEvent) => { e.preventDefault(); e.stopPropagation(); if (newItem.machine.trim()) { append({ machine: newItem.machine, quantity: newItem.quantity ? Number(newItem.quantity) : 0, }); setNewItem({ machine: '', quantity: '' }); setIsOpen(false); } }; return (

Datos del Equipamiento

e.preventDefault()}> Agregar Maquinaria/Equipo Datos de equipamiento
setNewItem({ ...newItem, machine: e.target.value }) } placeholder="Nombre de la maquinaria" />
setNewItem({ ...newItem, quantity: e.target.value }) } placeholder="0" />
Maquinaria Cantidad {fields.map((field, index) => ( {field.machine} {field.quantity} ))} {fields.length === 0 && ( No hay equipamiento registrado )}
); }