"use client"; import { useState } from 'react'; import dynamic from "next/dynamic"; import Link from "next/link"; import { Section } from "@/components/section"; import { useAdminConnexion } from "@/context/adminConnexionContext"; import useAdmin from "@/hook/useAdmin"; import { GameState } from "@/util/types"; import { mapStyles } from '@/util/configurations'; import TeamSidePanel from "./components/teamSidePanel"; import TeamViewer from './components/teamViewer'; import { MapButton, ControlButton } from './components/buttons'; // Imported at runtime and not at compile time const LiveMap = dynamic(() => import('./components/liveMap'), { ssr: false }); export default function AdminPage() { const { useProtect } = useAdminConnexion(); const [selectedTeamId, setSelectedTeamId] = useState(null); const { changeState, getTeam } = useAdmin(); const [mapStyle, setMapStyle] = useState(mapStyles.default); const [showZones, setShowZones] = useState(true); const [showNames, setShowNames] = useState(true); const [showArrows, setShowArrows] = useState(false); const [isFocusing, setIsFocusing] = useState(true); useProtect(); function onSelected(id) { if (selectedTeamId == id && (!getTeam(id)?.currentLocation || isFocusing)) { setSelectedTeamId(null); setIsFocusing(false); } else { setSelectedTeamId(id); setIsFocusing(true); } } function switchMapStyle() { setMapStyle(mapStyle == mapStyles.default ? mapStyles.satellite : mapStyles.default); } function switchZones() { setShowZones(!showZones); } function switchNames() { setShowNames(!showNames); } function switchArrows() { setShowArrows(!showArrows); } return (

Page principale

{false && {}} />} changeState(GameState.SETUP)} /> changeState(GameState.PLACEMENT)} /> changeState(GameState.PLAYING)} />
{selectedTeamId &&
setSelectedTeamId(null)}/>
}
{false && } {false && } {false && }
) }