// ===================================================== // Tweaks app · panel para configurar el sitio en vivo // ===================================================== const SITE_DEFAULTS = /*EDITMODE-BEGIN*/{ "wsp_number": "56912345678", "name_full": "María Paz Vásquez", "name_short": "María Paz", "tagline": "Suele responder en menos de 1h", "instagram": "https://instagram.com/nutricionistapaz", "primary_color": "#b85c3c", "accent_color": "#d4af37", "show_tienda": true, "show_blog": true, "hero_style": "editorial" }/*EDITMODE-END*/; function ConfigApp() { const [t, setTweak] = useTweaks(SITE_DEFAULTS); // Apply config to live page React.useEffect(() => { // Color document.documentElement.style.setProperty("--terracota", t.primary_color); document.documentElement.style.setProperty("--gold", t.accent_color); // Replace global config object so wsp-chat & planner pick it up on next nav if (window.SITE_CONFIG) { window.SITE_CONFIG.wsp_number = t.wsp_number; window.SITE_CONFIG.name_full = t.name_full; window.SITE_CONFIG.name_short = t.name_short; } // Live update brand name + chat header document.querySelectorAll(".brand-name b").forEach(e => e.textContent = t.name_full); document.querySelectorAll(".wsp-head .info b").forEach(e => e.textContent = t.name_short + " V."); document.querySelectorAll(".wsp-fab .label b").forEach(e => e.textContent = "Conversa con " + t.name_short); document.querySelectorAll(".wsp-head .info span").forEach(e => e.textContent = t.tagline); // Toggle sections const tienda = document.getElementById("tienda"); if (tienda) tienda.style.display = t.show_tienda ? "" : "none"; const blog = document.getElementById("blog"); if (blog) blog.style.display = t.show_blog ? "" : "none"; }, [t]); return ( setTweak("wsp_number", v.replace(/[^\d]/g, ""))} /> setTweak("name_full", v)} /> setTweak("name_short", v)} /> setTweak("tagline", v)} /> setTweak("primary_color", v)} /> setTweak("accent_color", v)} /> setTweak("show_blog", v)} /> setTweak("show_tienda", v)} />
Tus cambios se aplican en vivo y se guardan automáticamente en el archivo de configuración del sitio.
); } const root = ReactDOM.createRoot(document.getElementById("tweaks-root")); root.render();