import React, { useEffect, useState } from 'react'; import { Problem, TutorResponse } from '../types'; import { getTutorExplanation } from '../services/geminiService'; import { Bot, Loader2, X } from 'lucide-react'; import { Button } from './Button'; interface TutorModalProps { problem: Problem; onClose: () => void; isOpen: boolean; } export const TutorModal: React.FC = ({ problem, onClose, isOpen }) => { const [loading, setLoading] = useState(false); const [data, setData] = useState(null); useEffect(() => { if (isOpen && problem) { setLoading(true); getTutorExplanation(problem) .then(setData) .finally(() => setLoading(false)); } }, [isOpen, problem]); if (!isOpen) return null; return (
Math Coach

The problem was

{problem.a} {problem.operator} {problem.b} = {problem.answer}
{loading ? (

Thinking...

) : data ? (

{data.explanation}

"{data.encouragement}"

) : (

Could not load explanation.

)}
); };