// ClearDDI — front-end logic // Prototype académique d'aide à la décision — non destiné à un usage clinique réel. const API = ""; const $ = (sel) => document.querySelector(sel); const drugAInput = $("#drugA"); const drugBInput = $("#drugB"); const analyzeBtn = $("#analyzeBtn"); const swapBtn = $("#swapBtn"); const errorBanner = $("#errorBanner"); const resultsEl = $("#results"); const suggestionsA = $("#suggestionsA"); const suggestionsB = $("#suggestionsB"); // ── Autocomplétion légère (suggestion uniquement, ne bloque rien) ─────── function setupAutocomplete(input, box) { let debounceTimer = null; let activeIndex = -1; input.addEventListener("input", () => { const q = input.value.trim(); clearTimeout(debounceTimer); if (q.length < 2) { box.classList.remove("open"); box.innerHTML = ""; return; } debounceTimer = setTimeout(async () => { try { const res = await fetch(`${API}/api/search?q=${encodeURIComponent(q)}`); if (!res.ok) return; const data = await res.json(); renderSuggestions(data.matches || []); } catch (e) { /* silencieux : l'autocomplétion est un confort, pas une dépendance */ } }, 180); }); function renderSuggestions(matches) { activeIndex = -1; if (!matches.length) { box.classList.remove("open"); box.innerHTML = ""; return; } box.innerHTML = matches .map((m, i) => `