import React, { useState } from "react" import { motion, AnimatePresence } from "framer-motion" /** * JokerApprovalModal - Gamemaster felület a Joker kártya feladatok jóváhagyására * * @param {Object} props * @param {boolean} props.isOpen - Modal megjelenítése * @param {Function} props.onClose - Modal bezárása * @param {Object} props.jokerRequest - Joker kártya adatok * @param {Function} props.onApprove - Jóváhagyás callback * @param {Function} props.onReject - Elutasítás callback * @param {string} props.playerName - Játékos neve * @param {string} props.playerEmoji - Játékos emoji */ const JokerApprovalModal = ({ isOpen, onClose, jokerRequest, onApprove, onReject, playerName, playerEmoji = "🎭" }) => { const [isProcessing, setIsProcessing] = useState(false) const handleApprove = async () => { setIsProcessing(true) try { await onApprove(jokerRequest) onClose() } catch (error) { console.error("Jóváhagyási hiba:", error) } finally { setIsProcessing(false) } } const handleReject = async () => { setIsProcessing(true) try { await onReject(jokerRequest) onClose() } catch (error) { console.error("Elutasítási hiba:", error) } finally { setIsProcessing(false) } } if (!isOpen) return null return ( {isOpen && (
{/* Backdrop */} {/* Modal Content */} {/* Header with Joker theme */}
🃏

Joker Kártya Feladat

Gamemaster jóváhagyás szükséges

{/* Content */}
{/* Player Info */}
{playerEmoji}

Játékos

{playerName}

{/* Joker Card Details */}
🎯

Feladat címe

{jokerRequest?.cardTitle || "Joker Kártya Feladat"}

📝

Feladat leírása

{jokerRequest?.cardDescription || "A játékosnak teljesítenie kell a Joker kártya feladatát."}

{/* Points Info */} {jokerRequest?.points && (
{jokerRequest.points} pont járható érte
)}
{/* Player's Claim (Optional - ha később hozzáadod) */} {jokerRequest?.playerMessage && (
💬

Játékos üzenete

"{jokerRequest.playerMessage}"

)} {/* Instructions */}
ℹ️

Gamemaster döntés: Nézd meg, hogy a játékos teljesítette-e a feladatot, majd hagyd jóvá vagy utasítsd el.

{/* Action Buttons */}
{/* Processing indicator */} {isProcessing && (
⚙️
Feldolgozás...
)}
)} ) } export default JokerApprovalModal