--- import { localePath, useT, type Locale } from '../i18n/config' import Ext from './Ext.astro' interface Props { locale: Locale } const { locale } = Astro.props const t = useT(locale) const resources = [ { href: 'https://www.privacyguides.org', label: 'Privacy Guides' }, { href: 'https://ssd.eff.org', label: 'EFF · Surveillance Self-Defense' }, { href: 'https://freedom.press', label: 'Freedom of the Press Foundation' }, { href: 'https://fightchatcontrol.eu', label: 'Fight Chat Control' }, ] // Legislative sources — verified primary sources first (see docs/RESEARCH // notes in the repo history: EP press release + official roll-calls replace // the secondary blog sources the old version leaned on). const sources = [ { href: 'https://www.europarl.europa.eu/news/en/press-room/20260706IPR46318/', key: 'ep0907', }, { href: 'https://howtheyvote.eu/votes/195775', key: 'rollcalls' }, { href: 'https://www.consilium.europa.eu/en/press/press-releases/2026/07/02/council-moves-to-reinstate-interim-measure-to-combat-child-sexual-abuse-online/', key: 'council0207', }, { href: 'https://www.europarl.europa.eu/news/en/press-room/20260325IPR39207/child-sexual-abuse-online-voluntary-detection-measures-will-not-be-extended', key: 'ep2603', }, { href: 'https://www.edps.europa.eu/system/files/2026-02/26-02-16_opinion-extending-application-regulation-2021-1232_en.pdf', key: 'edps', }, { href: 'https://eur-lex.europa.eu/eli/reg/2021/1232/oj', key: 'reg1232' }, { href: 'https://fightchatcontrol.eu/chat-control-overview', key: 'ccOverview' }, { href: 'https://proton.me/blog/why-client-side-scanning-isnt-the-answer', key: 'protonCss' }, { href: 'https://values.snap.com/news/joint-statement-eu-eprivacy-derogation', key: 'jointAppeal', }, { href: 'https://therecord.media/big-tech-vows-to-continue-csam-scanning', key: 'bigTechScan' }, ] const act = [ { href: 'https://edri.org', label: 'European Digital Rights (EDRi)' }, { href: 'https://stopscanningme.eu', label: 'Stop Scanning Me (EDRi)' }, { href: 'https://fightchatcontrol.eu', label: 'Fight Chat Control' }, { href: 'https://signal.org/blog/', label: 'Signal · blog' }, ] const offlineHref = `/exitchatcontrol-offline${locale === 'en' ? '' : `.${locale}`}.html` const localeRoot = `${localePath(locale)}/`.replace('//', '/') ---