'use client'; import { Info } from 'lucide-react'; import { t } from '@/i18n'; import { formatDate } from '@/lib/format'; import type { Provenance } from '@/lib/types'; import { useProvenance, type ProvenancePayload } from '@/components/data/provenance-context'; /** * "Source: World Bank — WDI · NY.GDP.PCAP.CD · retrieved 11 Sep 2026". Click → provenance sheet * (when `payload` is given) — otherwise a plain text line. */ export function SourceLine({ provenance, payload, className }: { provenance: Provenance | null | undefined; payload?: ProvenancePayload | null; className?: string }) { const { open } = useProvenance(); if (!provenance) return null; const parts = [provenance.source_name, provenance.dataset].filter(Boolean).join(' — '); const text = [parts, provenance.series_code, provenance.retrieved_at ? t('common.retrieved', { date: formatDate(provenance.retrieved_at) }) : null] .filter(Boolean) .join(' · '); const inner = ( <> {t('common.source')}: {text} ); if (!payload) return

{inner}

; return ( ); }