import { useChessActions } from "@/hooks/useChessActions"; import Board from "@/sections/analysis/board"; import ReviewPanelBody from "@/sections/analysis/reviewPanelBody"; import ReviewPanelHeader from "@/sections/analysis/reviewPanelHeader"; import ReviewPanelToolBar from "@/sections/analysis/reviewPanelToolbar"; import { boardAtom, boardOrientationAtom, gameAtom, gameEvalAtom, } from "@/sections/analysis/states"; import { Divider, Grid, useMediaQuery, useTheme } from "@mui/material"; import { Chess } from "chess.js"; import { useSetAtom } from "jotai"; import { useRouter } from "next/router"; import { useEffect } from "react"; import ClassificationPanel from "@/sections/analysis/reviewPanelBody/classificationPanel"; export default function GameReport() { const theme = useTheme(); const isLgOrGreater = useMediaQuery(theme.breakpoints.up("lg")); const { reset: resetBoard } = useChessActions(boardAtom); const { setPgn: setGamePgn } = useChessActions(gameAtom); const setGameEval = useSetAtom(gameEvalAtom); const setBoardOrientation = useSetAtom(boardOrientationAtom); const router = useRouter(); const { gameId } = router.query; useEffect(() => { if (!gameId) { resetBoard(); setGameEval(undefined); setBoardOrientation(true); setGamePgn(new Chess().pgn()); } }, [gameId, setGameEval, setBoardOrientation, resetBoard, setGamePgn]); return ( {isLgOrGreater ? : } {isLgOrGreater ? : } ); }