// GetContent — landingspagina ná het klikken op de bevestig-link in de mail.
// Supabase heeft het e-mailadres dan geverifieerd en een sessie gezet; hier
// bevestigen we dat visueel én triggeren we (eenmalig) de welkomstmail.
function EmailConfirmed({ onNav }) {
  const s = window.useStore();
  const triggered = React.useRef(false);

  // Zodra de sessie bekend is en de gebruiker is ingelogd: welkomstmail sturen.
  // De Edge Function is idempotent, dus dit kan nooit een dubbele mail geven.
  React.useEffect(function () {
    if (s.authReady && s.auth && !triggered.current) {
      triggered.current = true;
      window.GC_STORE.sendWelcome();
    }
  }, [s.authReady, s.auth]);

  if (!s.authReady) {
    return (
      <main style={{ minHeight: '70vh', display: 'flex', alignItems: 'center', justifyContent: 'center', background: 'var(--surface-page)' }}>
        <span style={{ fontSize: 14, color: 'var(--text-muted)' }}>Even laden…</span>
      </main>
    );
  }

  if (s.auth) {
    return (
      <main>
        <PageHero
          eyebrow="Account"
          title="Je e-mailadres is bevestigd"
          lead="Welkom bij GetContent. Je account is nu actief en je bent klaar om te beginnen."
          primary={{ label: 'Naar je dashboard', to: 'dashboard' }}
          onNav={onNav}
        />
      </main>
    );
  }

  // Randgeval: bevestigd, maar (nog) geen sessie op dit apparaat.
  return (
    <main>
      <PageHero
        eyebrow="Account"
        title="Je e-mailadres is bevestigd"
        lead="Je account is geactiveerd. Log in om te beginnen."
        primary={{ label: 'Inloggen', to: 'login' }}
        onNav={onNav}
      />
    </main>
  );
}
window.EmailConfirmed = EmailConfirmed;
