'use client'

import Script from 'next/script'
import { useConsent } from './CookieConsent'

/**
 * Parte de cliente de AdSense: el script que de verdad pinta los anuncios
 * (adsbygoogle.js, «Auto ads»). Existe separado de <AdSense/> solo para mirar el
 * consentimiento, que vive en el navegador (cookie `ns_cookie_consent` + evento
 * `ns:consentchange`).
 *
 * A diferencia de la etiqueta <meta> de verificación, esto SÍ pasa por el banner:
 * adsbygoogle.js escribe cookies de personalización y perfila al visitante, así que
 * cargarlo sin mirar la categoría «Marketing» convertiría el banner en mentira y, con
 * visitantes en la UE, en un problema legal. Mismo criterio que <MonetagScript/>.
 *
 * `useConsent` reacciona en caliente: entra en cuanto se acepta y deja de renderizarse
 * si se revoca, sin recargar. Arranca en `false`, así que hasta confirmar el
 * consentimiento no se carga nada.
 */
export function AdSenseScript({ client }: { client: string }) {
  const consent = useConsent('marketing')
  if (!consent) return null

  return (
    <Script
      src={`https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=${client}`}
      crossOrigin="anonymous"
      strategy="afterInteractive"
    />
  )
}
