import { h } from 'preact'; import modalStyles from './Modal.module.css'; import styles from './GameCompletionModal.module.css'; /** * Modal shown when a game is completed. * @param {object} props * @param {boolean} props.open * @param {object} props.game * @param {Function} props.onConfirm * @param {Function} props.onClose * @returns {import('preact').VNode|null} */ const GameCompletionModal = ({ open, game, onConfirm, onClose }) => { if (!open || !game) return null; const playerNames = [game.player1, game.player2, game.player3].filter(Boolean); const scores = [game.score1, game.score2, game.score3].filter((_, i) => playerNames[i]); const maxScore = Math.max(...scores); // Find all winners (could be a tie) const winners = playerNames.filter((name, idx) => scores[idx] === maxScore); const winnerText = winners.length > 1 ? `Unentschieden zwischen ${winners.join(' und ')}` : `${winners[0]} hat gewonnen!`; return (