// Fallbacks para rodar tanto no app local (com API/TAB_H2) quanto em preview isolado const MB_API = (typeof API !== "undefined" && API) ? API : null; const MB_TAB_H = (typeof TAB_H2 !== "undefined") ? TAB_H2 : 96; // mb-home.jsx — Home tab (tela inicial do app) const GUIDE_EDITIONS = [ { n: 14, m: "Jun 2026", c: ["#1B2A6B", "#0E1330"] }, { n: 13, m: "Mar 2026", c: ["#214E7E", "#0E1B30"] }, { n: 12, m: "Dez 2025", c: ["#2A4D5E", "#0E1d24"] }, { n: 11, m: "Set 2025", c: ["#3A3370", "#15122E"] }, { n: 10, m: "Jun 2025", c: ["#6E3B4E", "#2E1722"] }, ]; function GuideCover({ ed, w = 150 }) { const h = Math.round(w * 1.4); const grad = ed.c || ["#1B2A6B", "#0E1330"]; return (
{ed.coverUrl ? {`Edição : <>
}
EDIÇÃO {ed.n}
{ed.m}
); } // ── Formulário de Lead para Parceiros ────────────────────────── function PartnerLeadScreen({ onBack }) { const [form, setForm] = React.useState({ name: "", email: "", phone: "", business: "", segment: "", city: "", message: "" }); const [loading, setLoading] = React.useState(false); const [done, setDone] = React.useState(false); const [error, setError] = React.useState(""); const up = (k) => (v) => setForm(f => ({ ...f, [k]: v })); const valid = form.name.trim() && form.phone.trim() && form.business.trim() && form.email.trim(); const submit = async () => { if (!valid) { setError("Preencha os campos obrigatórios."); return; } setError(""); setLoading(true); try { // Envia para a API de leads quando disponível await fetch(`${window.API_BASE || "http://localhost:8080"}/partner-leads`, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ name: form.name, email: form.email, phone: form.phone, business_name: form.business, segment: form.segment, city: form.city, message: form.message }), }).catch(() => {}); setDone(true); } finally { setLoading(false); } }; const inputStyle = { width: "100%", boxSizing: "border-box", border: "1.5px solid var(--line)", borderRadius: 13, padding: "14px 14px", font: "500 14.5px var(--ui)", color: "var(--text)", background: "var(--surface)", outline: "none", }; const labelStyle = { font: "700 12px var(--ui)", color: "var(--text)", marginBottom: 6, display: "block" }; return (
{/* Header */}
Seja um Parceiro
Preencha o formulário e entraremos em contato
{done ? ( /* ── Sucesso ── */
Solicitação enviada!
Recebemos seu interesse. Nossa equipe comercial vai entrar em contato em breve pelo telefone ou e-mail informados.
) : ( <> {/* ── Hero ── */}
Faça parte do Guia Morar Bem
Alcance mais clientes na sua região
{["📍 Destaque no mapa", "💰 Receba pelo app", "📊 Dashboard próprio", "✅ Suporte dedicado"].map(t => ( {t} ))}
{/* ── Formulário ── */}
up("name")(e.target.value)} />
up("email")(e.target.value)} />
up("phone")(e.target.value)} />
up("business")(e.target.value)} />