const promptInput = document.getElementById("promptInput"); const generateBtn = document.getElementById("generateBtn"); const micBtn = document.getElementById("micBtn"); const codeOutput = document.getElementById("codeOutput"); const copyBtn = document.getElementById("copyBtn"); const clearBtn = document.getElementById("clearBtn"); function fakeGenerate(prompt) { // Remplace ça plus tard par ton API IA (OpenRouter, local, etc.) const p = (prompt || "").trim(); if (!p) return "// Écris une demande dans la barre en bas, puis clique sur Générer ✨"; return `// ✅ Demande reçue : ${p} function main() { console.log("Hello Rosalinda!"); } // (Ici, tu brancheras ton IA pour générer du vrai code) main();`; } generateBtn.addEventListener("click", () => { const prompt = promptInput.value; codeOutput.textContent = fakeGenerate(prompt); }); document.querySelectorAll(".chip").forEach((btn) => { btn.addEventListener("click", () => { const p = btn.dataset.prompt || ""; promptInput.value = p; codeOutput.textContent = fakeGenerate(p); }); }); copyBtn.addEventListener("click", async () => { try { await navigator.clipboard.writeText(codeOutput.textContent); copyBtn.textContent = "✅ Copié"; setTimeout(() => (copyBtn.textContent = "📄 Copier"), 1200); } catch { alert("Impossible de copier automatiquement. Copie manuelle nécessaire."); } }); clearBtn.addEventListener("click", () => { promptInput.value = ""; codeOutput.textContent = "// Le code généré apparaîtra ici…"; }); /* 🎤 Micro (Web Speech API) — si dispo */ let recognition = null; if ("webkitSpeechRecognition" in window || "SpeechRecognition" in window) { const SR = window.SpeechRecognition || window.webkitSpeechRecognition; recognition = new SR(); recognition.lang = "fr-FR"; recognition.interimResults = true; recognition.onresult = (event) => { let transcript = ""; for (let i = event.resultIndex; i < event.results.length; i++) { transcript += event.results[i][0].transcript; } promptInput.value = transcript.trim(); }; recognition.onerror = () => { // silencieux (évite bugs visuels) }; } micBtn.addEventListener("click", () => { if (!recognition) { alert("Micro non disponible sur ce navigateur (Web Speech API)."); return; } try { recognition.start(); } catch { // évite erreur si déjà lancé } });