import { shouldServeAds } from '@/lib/ads' import { MonetagScript } from './MonetagScript' /** * Script de anuncios de Monetag (MultiTag: popunder + push + in-page push + vignette). * * TRES interruptores: * * 1. `MONETAG_SRC` y `MONETAG_ZONE` en el .env. Si falta cualquiera de los dos no se * carga nada: ese es el interruptor de encendido/apagado. Los dos valores salen * del panel de Monetag (Sites → tu canal → Get Tag) y son propios de cada zona, * por eso el `src` también es variable y no está fijado en el código. * Sin prefijo NEXT_PUBLIC_: se leen en el servidor y se pasan como props, así que * activar o desactivar es tocar el .env + reinicio, SIN rebuild. * 2. El filtro común de publicidad (`shouldServeAds`, ver lib/ads.ts): fuera para * admins y para quien sea rango 2+ o haya pagado alguna vez. * 3. El consentimiento «Marketing» del visitante, en (cliente). * * OJO con el push de MultiTag: además de esto necesita un `sw.js` servido desde la * RAÍZ del dominio (https://www.nightspire.gg/sw.js). Se descarga del panel de * Monetag y se deja en `public/sw.js`, que Next sirve tal cual en la raíz. Sin ese * fichero el resto de formatos funcionan, pero las notificaciones push no. */ export async function Monetag() { const src = process.env.MONETAG_SRC const zone = process.env.MONETAG_ZONE if (!src || !zone) return null if (!(await shouldServeAds())) return null return }