"use client" import { useState } from "react" import { motion, AnimatePresence } from "framer-motion" import { speak } from "@/lib/speech" import { GatoMascota } from "@/components/child/gato-mascota" import type { Exercise } from "@/curriculum/types" interface Props { exercise: Exercise onComplete: (correct: boolean) => void } export default function EjercicioPalabra({ exercise, onComplete }: Props) { const { content } = exercise const options = content.options || [] const handleChoose = async (opt: (typeof options)[0]) => { if (opt.id === "escuchar") { if (content.audioText) await speak(content.audioText) return } onComplete(opt.correct) } return (
{content.imageEmoji && ( {content.imageEmoji} )}
{options.map((opt, i) => ( handleChoose(opt)} className={`touch-target-lg rounded-2xl px-8 py-6 text-xl font-display font-bold shadow-md active:scale-95 transition-transform ${ opt.id === "escuchar" ? "bg-accent text-accent-foreground" : "bg-white" }`} > {opt.label} ))}
) }