import { useEffect, useState } from "react"; import { JobCategory } from "./GroupCreator"; type Props = { availableJobs: JobCategory[]; selectJob: (id: number) => void; removeJob: (id: number) => void; updateGroup: (id: number[]) => void; }; export default function Grouping({ availableJobs, selectJob, removeJob, updateGroup, }: Props) { const [selectedJob, setSelectedJob] = useState([]); function addJob(id: string) { const _id = parseInt(id); const job = availableJobs.find((j) => j.id == _id); if (job == undefined) return; setSelectedJob((old) => [...old, job]); selectJob(_id); } function removeJobFromGroup(id: number) { setSelectedJob((old) => old.filter((j) => j.id != id)); removeJob(id); } useEffect(() => { updateGroup(selectedJob.map((j) => j.id)); }, [selectedJob, updateGroup]); return (
{selectedJob.map((j) => (

{j.name}

))} {selectedJob.length < 5 && ( )}
); }