import { useEffect, useState } from "react"; import { List } from "@/components/list"; import { CustomMapContainer, MapEventListener } from "@/components/map"; import useAdmin from '@/hook/useAdmin'; import useMultipleCircleDraw from "@/hook/useMultipleCircleDraw"; import { CircleZone, Tag } from "@/components/layer"; function Drawings({ placementZones, addZone, removeZone, handleRightClick }) { const { handleLeftClick, handleRightClick: handleRightClickDrawing } = useMultipleCircleDraw(placementZones, addZone, removeZone, 30); function modifiedHandleRightClick(e) { handleRightClickDrawing(e); handleRightClick(); } return (<> { placementZones.map(placementZone => )} ); } export default function PlacementZoneSelector({ display }) { const { teams, getTeam, placementTeam } = useAdmin(); const [selectedTeamId, setSelectedTeamId] = useState(null); const [placementZones, setPlacementZones] = useState([]); useEffect(() => { setPlacementZones(teams.filter(team => team.startingArea).map(team => ({id: team.id, name: team.name, center: team.startingArea.center, radius: team.startingArea.radius}))); }, [teams]); function addPlacementZone(center, radius) { if (!selectedTeamId) return; const placementZonesFiltered = placementZones.filter(placementZone => placementZone.id !== selectedTeamId); const newZone = {id: selectedTeamId, name: getTeam(selectedTeamId).name, center: center, radius: radius}; placementTeam(selectedTeamId, newZone); setPlacementZones([...placementZonesFiltered, newZone]); } function removePlacementZone(id) { placementTeam(id, null); setPlacementZones(placementZones.filter((placementZone) => placementZone.id !== id)); } return (
setSelectedTeamId(null)} />

Équipes

setSelectedTeamId(selectedTeamId != id ? id : null)}> { (team) =>

{team.name}

}
); }