import type { Locale } from '../i18n/types';
import type { ObligationStatus, RiskClass, Role } from './types';

/** Anzeige-Labels und Textbausteine der Dokument-Generatoren je Sprache. */
export interface DocStrings {
  readonly risk: Readonly<Record<RiskClass, string>>;
  readonly role: Readonly<Record<Role, string>>;
  readonly status: Readonly<Record<ObligationStatus, string>>;
  readonly disclaimer: string;
  readonly meta: {
    readonly system: string;
    readonly purpose: string;
    readonly vendor: string;
    readonly owner: string;
    readonly role: string;
    readonly riskClass: string;
    readonly createdAt: string;
    readonly contentPack: string;
    readonly company: string;
    readonly contact: string;
    readonly contactPerson: string;
  };
  readonly report: {
    readonly title: string;
    readonly result: string;
    readonly reasons: string;
    readonly gpai: string;
    readonly gpaiText: string;
    readonly art64: string;
    readonly art64Text: string;
  };
  readonly plan: {
    readonly title: string;
    readonly none: string;
    readonly obligations: string;
    readonly details: string;
    readonly colObligation: string;
    readonly colLegal: string;
    readonly colDeadline: string;
    readonly colStatus: string;
  };
  readonly inventory: {
    readonly title: string;
    readonly asOf: string;
    readonly count: string;
    readonly colSystem: string;
    readonly colPurpose: string;
    readonly colRole: string;
    readonly colRisk: string;
    readonly colOwner: string;
  };
  readonly todo: string;
}

const DE: DocStrings = {
  risk: {
    'out-of-scope': 'Nicht anwendbar (keine KI i. S. d. Art. 3 Nr. 1)',
    prohibited: 'VERBOTEN (Art. 5)',
    high: 'Hochrisiko',
    limited: 'Begrenztes Risiko (Transparenzpflichten)',
    minimal: 'Minimales Risiko',
  },
  role: {
    provider: 'Anbieter (Provider)',
    deployer: 'Betreiber (Deployer)',
    importer: 'Einführer (Importer)',
    distributor: 'Händler (Distributor)',
  },
  status: {
    open: 'Offen',
    'in-progress': 'In Umsetzung',
    done: 'Erledigt',
    'not-applicable': 'Nicht anwendbar',
  },
  disclaimer:
    '> **Hinweis:** Dieses Dokument wurde mit dem AI-Act-Kompass erstellt und ist eine strukturierte Arbeitshilfe — **keine Rechtsberatung**. Die rechtliche Bewertung im Einzelfall obliegt dem Unternehmen bzw. seiner Rechtsberatung.',
  meta: {
    system: 'KI-System',
    purpose: 'Zweckbestimmung',
    vendor: 'Hersteller/Anbieter',
    owner: 'Verantwortlich (intern)',
    role: 'Rolle des Unternehmens',
    riskClass: 'Risikoklasse',
    createdAt: 'Erstellt am',
    contentPack: 'Content-Pack',
    company: 'Unternehmen',
    contact: 'Kontakt',
    contactPerson: 'Ansprechpartner',
  },
  report: {
    title: 'Risikoklassifizierung nach EU AI Act',
    result: 'Ergebnis',
    reasons: 'Begründung',
    gpai: 'GPAI',
    gpaiText: 'Für dieses System sind zusätzlich GPAI-Modellpflichten (Art. 53 ff.) relevant.',
    art64: 'Dokumentationspflicht Art. 6 Abs. 4',
    art64Text:
      'Die Inanspruchnahme der Ausnahme nach Art. 6 Abs. 3 wurde dokumentiert. Diese Einschätzung ist auf Verlangen der Marktüberwachung vorzulegen.',
  },
  plan: {
    title: 'Maßnahmenplan EU AI Act',
    none: 'Für dieses System bestehen keine umsetzbaren Pflichten (verboten oder außerhalb des Anwendungsbereichs).',
    obligations: 'Pflichten',
    details: 'Details',
    colObligation: 'Pflicht',
    colLegal: 'Rechtsgrundlage',
    colDeadline: 'Frist',
    colStatus: 'Status',
  },
  inventory: {
    title: 'KI-Inventar (AI Asset Register)',
    asOf: 'Stand',
    count: 'Registrierte KI-Systeme',
    colSystem: 'System',
    colPurpose: 'Zweck',
    colRole: 'Rolle',
    colRisk: 'Risikoklasse',
    colOwner: 'Verantwortlich',
  },
  todo: '_[AUSFÜLLEN]_',
};

const EN: DocStrings = {
  risk: {
    'out-of-scope': 'Not applicable (not AI within the meaning of Art. 3(1))',
    prohibited: 'PROHIBITED (Art. 5)',
    high: 'High-risk',
    limited: 'Limited risk (transparency obligations)',
    minimal: 'Minimal risk',
  },
  role: {
    provider: 'Provider',
    deployer: 'Deployer',
    importer: 'Importer',
    distributor: 'Distributor',
  },
  status: {
    open: 'Open',
    'in-progress': 'In progress',
    done: 'Done',
    'not-applicable': 'Not applicable',
  },
  disclaimer:
    '> **Note:** This document was created with AI-Act-Kompass and is a structured working aid — **not legal advice**. The legal assessment of the individual case remains with the company and its legal counsel.',
  meta: {
    system: 'AI system',
    purpose: 'Intended purpose',
    vendor: 'Manufacturer/provider',
    owner: 'Responsible (internal)',
    role: 'Company role',
    riskClass: 'Risk class',
    createdAt: 'Created on',
    contentPack: 'Content pack',
    company: 'Company',
    contact: 'Contact',
    contactPerson: 'Contact person',
  },
  report: {
    title: 'Risk classification under the EU AI Act',
    result: 'Result',
    reasons: 'Reasoning',
    gpai: 'GPAI',
    gpaiText: 'GPAI model obligations (Art. 53 et seq.) are additionally relevant for this system.',
    art64: 'Documentation duty Art. 6(4)',
    art64Text:
      'The reliance on the exception under Art. 6(3) has been documented. This assessment must be provided to market surveillance authorities upon request.',
  },
  plan: {
    title: 'EU AI Act action plan',
    none: 'There are no implementable obligations for this system (prohibited or out of scope).',
    obligations: 'Obligations',
    details: 'Details',
    colObligation: 'Obligation',
    colLegal: 'Legal basis',
    colDeadline: 'Deadline',
    colStatus: 'Status',
  },
  inventory: {
    title: 'AI inventory (AI asset register)',
    asOf: 'As of',
    count: 'Registered AI systems',
    colSystem: 'System',
    colPurpose: 'Purpose',
    colRole: 'Role',
    colRisk: 'Risk class',
    colOwner: 'Responsible',
  },
  todo: '_[TO BE COMPLETED]_',
};

const FR: DocStrings = {
  risk: {
    'out-of-scope': 'Non applicable (pas une IA au sens de l’art. 3, point 1)',
    prohibited: 'INTERDIT (art. 5)',
    high: 'Haut risque',
    limited: 'Risque limité (obligations de transparence)',
    minimal: 'Risque minimal',
  },
  role: {
    provider: 'Fournisseur',
    deployer: 'Déployeur',
    importer: 'Importateur',
    distributor: 'Distributeur',
  },
  status: {
    open: 'Ouvert',
    'in-progress': 'En cours',
    done: 'Terminé',
    'not-applicable': 'Non applicable',
  },
  disclaimer:
    '> **Remarque :** Ce document a été créé avec AI-Act-Kompass et constitue une aide de travail structurée — il **ne constitue pas un conseil juridique**. L’appréciation juridique du cas d’espèce incombe à l’entreprise et à son conseil juridique.',
  meta: {
    system: 'Système d’IA',
    purpose: 'Destination',
    vendor: 'Fabricant/fournisseur',
    owner: 'Responsable (interne)',
    role: 'Rôle de l’entreprise',
    riskClass: 'Classe de risque',
    createdAt: 'Créé le',
    contentPack: 'Pack de contenu',
    company: 'Entreprise',
    contact: 'Contact',
    contactPerson: 'Interlocuteur',
  },
  report: {
    title: 'Classification des risques selon le règlement européen sur l’IA',
    result: 'Résultat',
    reasons: 'Motifs',
    gpai: 'GPAI',
    gpaiText:
      'Les obligations relatives aux modèles GPAI (art. 53 et suivants) sont en outre pertinentes pour ce système.',
    art64: 'Obligation de documentation art. 6, par. 4',
    art64Text:
      'Le recours à l’exception prévue à l’art. 6, par. 3 a été documenté. Cette évaluation doit être présentée aux autorités de surveillance du marché sur demande.',
  },
  plan: {
    title: 'Plan d’action — règlement européen sur l’IA',
    none: 'Aucune obligation applicable n’existe pour ce système (interdit ou hors champ d’application).',
    obligations: 'Obligations',
    details: 'Détails',
    colObligation: 'Obligation',
    colLegal: 'Base juridique',
    colDeadline: 'Échéance',
    colStatus: 'Statut',
  },
  inventory: {
    title: 'Inventaire des IA (registre des actifs IA)',
    asOf: 'État au',
    count: 'Systèmes d’IA enregistrés',
    colSystem: 'Système',
    colPurpose: 'Finalité',
    colRole: 'Rôle',
    colRisk: 'Classe de risque',
    colOwner: 'Responsable',
  },
  todo: '_[À COMPLÉTER]_',
};

const IT: DocStrings = {
  risk: {
    'out-of-scope': 'Non applicabile (non è IA ai sensi dell’art. 3, punto 1)',
    prohibited: 'VIETATO (art. 5)',
    high: 'Alto rischio',
    limited: 'Rischio limitato (obblighi di trasparenza)',
    minimal: 'Rischio minimo',
  },
  role: {
    provider: 'Fornitore',
    deployer: 'Deployer',
    importer: 'Importatore',
    distributor: 'Distributore',
  },
  status: {
    open: 'Aperto',
    'in-progress': 'In corso',
    done: 'Completato',
    'not-applicable': 'Non applicabile',
  },
  disclaimer:
    '> **Nota:** Questo documento è stato creato con AI-Act-Kompass ed è uno strumento di lavoro strutturato — **non costituisce consulenza legale**. La valutazione giuridica del singolo caso spetta all’azienda e alla sua consulenza legale.',
  meta: {
    system: 'Sistema di IA',
    purpose: 'Finalità prevista',
    vendor: 'Produttore/fornitore',
    owner: 'Responsabile (interno)',
    role: 'Ruolo dell’azienda',
    riskClass: 'Classe di rischio',
    createdAt: 'Creato il',
    contentPack: 'Content pack',
    company: 'Azienda',
    contact: 'Contatto',
    contactPerson: 'Referente',
  },
  report: {
    title: 'Classificazione del rischio ai sensi del regolamento UE sull’IA',
    result: 'Risultato',
    reasons: 'Motivazione',
    gpai: 'GPAI',
    gpaiText:
      'Per questo sistema sono inoltre rilevanti gli obblighi relativi ai modelli GPAI (art. 53 e segg.).',
    art64: 'Obbligo di documentazione art. 6, par. 4',
    art64Text:
      'Il ricorso all’eccezione di cui all’art. 6, par. 3 è stato documentato. Questa valutazione deve essere presentata alle autorità di vigilanza del mercato su richiesta.',
  },
  plan: {
    title: 'Piano d’azione — regolamento UE sull’IA',
    none: 'Per questo sistema non esistono obblighi attuabili (vietato o al di fuori dell’ambito di applicazione).',
    obligations: 'Obblighi',
    details: 'Dettagli',
    colObligation: 'Obbligo',
    colLegal: 'Base giuridica',
    colDeadline: 'Scadenza',
    colStatus: 'Stato',
  },
  inventory: {
    title: 'Inventario IA (registro degli asset IA)',
    asOf: 'Aggiornato al',
    count: 'Sistemi di IA registrati',
    colSystem: 'Sistema',
    colPurpose: 'Finalità',
    colRole: 'Ruolo',
    colRisk: 'Classe di rischio',
    colOwner: 'Responsabile',
  },
  todo: '_[DA COMPLETARE]_',
};

const ES: DocStrings = {
  risk: {
    'out-of-scope': 'No aplicable (no es IA en el sentido del art. 3, punto 1)',
    prohibited: 'PROHIBIDO (art. 5)',
    high: 'Alto riesgo',
    limited: 'Riesgo limitado (obligaciones de transparencia)',
    minimal: 'Riesgo mínimo',
  },
  role: {
    provider: 'Proveedor',
    deployer: 'Responsable del despliegue',
    importer: 'Importador',
    distributor: 'Distribuidor',
  },
  status: {
    open: 'Abierto',
    'in-progress': 'En curso',
    done: 'Completado',
    'not-applicable': 'No aplicable',
  },
  disclaimer:
    '> **Nota:** Este documento se ha creado con AI-Act-Kompass y es una ayuda de trabajo estructurada — **no constituye asesoramiento jurídico**. La valoración jurídica del caso concreto corresponde a la empresa y a su asesoría jurídica.',
  meta: {
    system: 'Sistema de IA',
    purpose: 'Finalidad prevista',
    vendor: 'Fabricante/proveedor',
    owner: 'Responsable (interno)',
    role: 'Rol de la empresa',
    riskClass: 'Clase de riesgo',
    createdAt: 'Creado el',
    contentPack: 'Paquete de contenido',
    company: 'Empresa',
    contact: 'Contacto',
    contactPerson: 'Persona de contacto',
  },
  report: {
    title: 'Clasificación de riesgo según el Reglamento de IA de la UE',
    result: 'Resultado',
    reasons: 'Justificación',
    gpai: 'GPAI',
    gpaiText:
      'Para este sistema son además relevantes las obligaciones relativas a los modelos GPAI (art. 53 y ss.).',
    art64: 'Obligación de documentación art. 6, apdo. 4',
    art64Text:
      'El recurso a la excepción del art. 6, apdo. 3 ha sido documentado. Esta evaluación debe presentarse a las autoridades de vigilancia del mercado previa solicitud.',
  },
  plan: {
    title: 'Plan de medidas — Reglamento de IA de la UE',
    none: 'No existen obligaciones aplicables para este sistema (prohibido o fuera del ámbito de aplicación).',
    obligations: 'Obligaciones',
    details: 'Detalles',
    colObligation: 'Obligación',
    colLegal: 'Base jurídica',
    colDeadline: 'Plazo',
    colStatus: 'Estado',
  },
  inventory: {
    title: 'Inventario de IA (registro de activos de IA)',
    asOf: 'A fecha de',
    count: 'Sistemas de IA registrados',
    colSystem: 'Sistema',
    colPurpose: 'Finalidad',
    colRole: 'Rol',
    colRisk: 'Clase de riesgo',
    colOwner: 'Responsable',
  },
  todo: '_[POR COMPLETAR]_',
};

const PL: DocStrings = {
  risk: {
    'out-of-scope': 'Nie ma zastosowania (nie jest AI w rozumieniu art. 3 pkt 1)',
    prohibited: 'ZAKAZANE (art. 5)',
    high: 'Wysokie ryzyko',
    limited: 'Ograniczone ryzyko (obowiązki przejrzystości)',
    minimal: 'Minimalne ryzyko',
  },
  role: {
    provider: 'Dostawca',
    deployer: 'Podmiot stosujący',
    importer: 'Importer',
    distributor: 'Dystrybutor',
  },
  status: {
    open: 'Otwarte',
    'in-progress': 'W trakcie realizacji',
    done: 'Zakończone',
    'not-applicable': 'Nie dotyczy',
  },
  disclaimer:
    '> **Uwaga:** Ten dokument został utworzony za pomocą AI-Act-Kompass i stanowi ustrukturyzowaną pomoc roboczą — **nie stanowi porady prawnej**. Ocena prawna konkretnego przypadku należy do przedsiębiorstwa i jego doradców prawnych.',
  meta: {
    system: 'System AI',
    purpose: 'Przeznaczenie',
    vendor: 'Producent/dostawca',
    owner: 'Odpowiedzialny (wewnętrznie)',
    role: 'Rola przedsiębiorstwa',
    riskClass: 'Klasa ryzyka',
    createdAt: 'Utworzono dnia',
    contentPack: 'Pakiet treści',
    company: 'Przedsiębiorstwo',
    contact: 'Kontakt',
    contactPerson: 'Osoba kontaktowa',
  },
  report: {
    title: 'Klasyfikacja ryzyka zgodnie z unijnym aktem w sprawie AI',
    result: 'Wynik',
    reasons: 'Uzasadnienie',
    gpai: 'GPAI',
    gpaiText:
      'Dla tego systemu istotne są dodatkowo obowiązki dotyczące modeli GPAI (art. 53 i nast.).',
    art64: 'Obowiązek dokumentacyjny art. 6 ust. 4',
    art64Text:
      'Skorzystanie z wyjątku przewidzianego w art. 6 ust. 3 zostało udokumentowane. Ocenę tę należy przedłożyć organom nadzoru rynku na żądanie.',
  },
  plan: {
    title: 'Plan działań — unijny akt w sprawie AI',
    none: 'Dla tego systemu nie istnieją obowiązki możliwe do realizacji (zakazany lub poza zakresem stosowania).',
    obligations: 'Obowiązki',
    details: 'Szczegóły',
    colObligation: 'Obowiązek',
    colLegal: 'Podstawa prawna',
    colDeadline: 'Termin',
    colStatus: 'Status',
  },
  inventory: {
    title: 'Inwentarz AI (rejestr zasobów AI)',
    asOf: 'Stan na',
    count: 'Zarejestrowane systemy AI',
    colSystem: 'System',
    colPurpose: 'Cel',
    colRole: 'Rola',
    colRisk: 'Klasa ryzyka',
    colOwner: 'Odpowiedzialny',
  },
  todo: '_[DO UZUPEŁNIENIA]_',
};

const CS: DocStrings = {
  risk: {
    'out-of-scope': 'Nepoužije se (není AI ve smyslu čl. 3 bodu 1)',
    prohibited: 'ZAKÁZÁNO (čl. 5)',
    high: 'Vysoké riziko',
    limited: 'Omezené riziko (povinnosti transparentnosti)',
    minimal: 'Minimální riziko',
  },
  role: {
    provider: 'Poskytovatel',
    deployer: 'Zavádějící subjekt',
    importer: 'Dovozce',
    distributor: 'Distributor',
  },
  status: {
    open: 'Otevřeno',
    'in-progress': 'Probíhá',
    done: 'Dokončeno',
    'not-applicable': 'Nepoužije se',
  },
  disclaimer:
    '> **Upozornění:** Tento dokument byl vytvořen pomocí AI-Act-Kompass a je strukturovanou pracovní pomůckou — **nepředstavuje právní poradenství**. Právní posouzení konkrétního případu přísluší podniku a jeho právním poradcům.',
  meta: {
    system: 'Systém AI',
    purpose: 'Určený účel',
    vendor: 'Výrobce/poskytovatel',
    owner: 'Odpovědná osoba (interní)',
    role: 'Role podniku',
    riskClass: 'Riziková třída',
    createdAt: 'Vytvořeno dne',
    contentPack: 'Balíček obsahu',
    company: 'Podnik',
    contact: 'Kontakt',
    contactPerson: 'Kontaktní osoba',
  },
  report: {
    title: 'Klasifikace rizika podle aktu EU o AI',
    result: 'Výsledek',
    reasons: 'Odůvodnění',
    gpai: 'GPAI',
    gpaiText:
      'Pro tento systém jsou navíc relevantní povinnosti týkající se modelů GPAI (čl. 53 a násl.).',
    art64: 'Dokumentační povinnost čl. 6 odst. 4',
    art64Text:
      'Využití výjimky podle čl. 6 odst. 3 bylo zdokumentováno. Toto posouzení je nutno na žádost předložit orgánům dozoru nad trhem.',
  },
  plan: {
    title: 'Akční plán — akt EU o AI',
    none: 'Pro tento systém neexistují žádné proveditelné povinnosti (zakázán nebo mimo oblast působnosti).',
    obligations: 'Povinnosti',
    details: 'Podrobnosti',
    colObligation: 'Povinnost',
    colLegal: 'Právní základ',
    colDeadline: 'Lhůta',
    colStatus: 'Stav',
  },
  inventory: {
    title: 'Inventář AI (registr aktiv AI)',
    asOf: 'Stav ke dni',
    count: 'Registrované systémy AI',
    colSystem: 'Systém',
    colPurpose: 'Účel',
    colRole: 'Role',
    colRisk: 'Riziková třída',
    colOwner: 'Odpovědná osoba',
  },
  todo: '_[DOPLNIT]_',
};

const SK: DocStrings = {
  risk: {
    'out-of-scope': 'Neuplatňuje sa (nie je AI v zmysle čl. 3 bodu 1)',
    prohibited: 'ZAKÁZANÉ (čl. 5)',
    high: 'Vysoké riziko',
    limited: 'Obmedzené riziko (povinnosti transparentnosti)',
    minimal: 'Minimálne riziko',
  },
  role: {
    provider: 'Poskytovateľ',
    deployer: 'Nasadzujúci subjekt',
    importer: 'Dovozca',
    distributor: 'Distribútor',
  },
  status: {
    open: 'Otvorené',
    'in-progress': 'Prebieha',
    done: 'Dokončené',
    'not-applicable': 'Neuplatňuje sa',
  },
  disclaimer:
    '> **Upozornenie:** Tento dokument bol vytvorený pomocou AI-Act-Kompass a je štruktúrovanou pracovnou pomôckou — **nepredstavuje právne poradenstvo**. Právne posúdenie konkrétneho prípadu prislúcha podniku a jeho právnym poradcom.',
  meta: {
    system: 'Systém AI',
    purpose: 'Zamýšľaný účel',
    vendor: 'Výrobca/poskytovateľ',
    owner: 'Zodpovedná osoba (interná)',
    role: 'Rola podniku',
    riskClass: 'Riziková trieda',
    createdAt: 'Vytvorené dňa',
    contentPack: 'Balík obsahu',
    company: 'Podnik',
    contact: 'Kontakt',
    contactPerson: 'Kontaktná osoba',
  },
  report: {
    title: 'Klasifikácia rizika podľa aktu EÚ o AI',
    result: 'Výsledok',
    reasons: 'Odôvodnenie',
    gpai: 'GPAI',
    gpaiText:
      'Pre tento systém sú navyše relevantné povinnosti týkajúce sa modelov GPAI (čl. 53 a nasl.).',
    art64: 'Dokumentačná povinnosť čl. 6 ods. 4',
    art64Text:
      'Využitie výnimky podľa čl. 6 ods. 3 bolo zdokumentované. Toto posúdenie treba na požiadanie predložiť orgánom dohľadu nad trhom.',
  },
  plan: {
    title: 'Akčný plán — akt EÚ o AI',
    none: 'Pre tento systém neexistujú žiadne vykonateľné povinnosti (zakázaný alebo mimo rozsahu pôsobnosti).',
    obligations: 'Povinnosti',
    details: 'Podrobnosti',
    colObligation: 'Povinnosť',
    colLegal: 'Právny základ',
    colDeadline: 'Lehota',
    colStatus: 'Stav',
  },
  inventory: {
    title: 'Inventár AI (register aktív AI)',
    asOf: 'Stav k',
    count: 'Registrované systémy AI',
    colSystem: 'Systém',
    colPurpose: 'Účel',
    colRole: 'Rola',
    colRisk: 'Riziková trieda',
    colOwner: 'Zodpovedná osoba',
  },
  todo: '_[DOPLNIŤ]_',
};

const RO: DocStrings = {
  risk: {
    'out-of-scope': 'Nu se aplică (nu este IA în sensul art. 3 pct. 1)',
    prohibited: 'INTERZIS (art. 5)',
    high: 'Risc ridicat',
    limited: 'Risc limitat (obligații de transparență)',
    minimal: 'Risc minim',
  },
  role: {
    provider: 'Furnizor',
    deployer: 'Implementator',
    importer: 'Importator',
    distributor: 'Distribuitor',
  },
  status: {
    open: 'Deschis',
    'in-progress': 'În curs',
    done: 'Finalizat',
    'not-applicable': 'Nu se aplică',
  },
  disclaimer:
    '> **Notă:** Acest document a fost creat cu AI-Act-Kompass și este un instrument de lucru structurat — **nu constituie consultanță juridică**. Evaluarea juridică a cazului concret revine întreprinderii și consilierilor săi juridici.',
  meta: {
    system: 'Sistem de IA',
    purpose: 'Scop preconizat',
    vendor: 'Producător/furnizor',
    owner: 'Responsabil (intern)',
    role: 'Rolul întreprinderii',
    riskClass: 'Clasa de risc',
    createdAt: 'Creat la',
    contentPack: 'Pachet de conținut',
    company: 'Întreprindere',
    contact: 'Contact',
    contactPerson: 'Persoană de contact',
  },
  report: {
    title: 'Clasificarea riscului conform Regulamentului UE privind IA',
    result: 'Rezultat',
    reasons: 'Motivare',
    gpai: 'GPAI',
    gpaiText:
      'Pentru acest sistem sunt în plus relevante obligațiile privind modelele GPAI (art. 53 și urm.).',
    art64: 'Obligația de documentare art. 6 alin. (4)',
    art64Text:
      'Recurgerea la excepția prevăzută la art. 6 alin. (3) a fost documentată. Această evaluare trebuie prezentată autorităților de supraveghere a pieței, la cerere.',
  },
  plan: {
    title: 'Plan de măsuri — Regulamentul UE privind IA',
    none: 'Pentru acest sistem nu există obligații aplicabile (interzis sau în afara domeniului de aplicare).',
    obligations: 'Obligații',
    details: 'Detalii',
    colObligation: 'Obligație',
    colLegal: 'Temei juridic',
    colDeadline: 'Termen',
    colStatus: 'Stare',
  },
  inventory: {
    title: 'Inventar IA (registru de active IA)',
    asOf: 'La data de',
    count: 'Sisteme de IA înregistrate',
    colSystem: 'Sistem',
    colPurpose: 'Scop',
    colRole: 'Rol',
    colRisk: 'Clasa de risc',
    colOwner: 'Responsabil',
  },
  todo: '_[DE COMPLETAT]_',
};

/**
 * Liefert die Dokument-Strings für die gewünschte Sprache.
 * Vollständig lokalisiert für alle unterstützten Sprachen
 * (de/en/fr/it/es/pl/cs/sk/ro).
 */
export function docStrings(locale: Locale): DocStrings {
  const DICTS = { de: DE, en: EN, fr: FR, it: IT, es: ES, pl: PL, cs: CS, sk: SK, ro: RO } as const;
  return DICTS[locale];
}

/**
 * Formatiert ein ISO-Datum landesüblich
 * (DE/PL/CS/SK/RO: TT.MM.JJJJ, FR/IT/ES: TT/MM/JJJJ, EN: ISO).
 */
export function formatDocDate(iso: string, locale: Locale): string {
  if (locale === 'en') return iso;
  const [y, m, d] = iso.split('-');
  if (!d || !m || !y) return iso;
  const dotLocales: readonly Locale[] = ['de', 'pl', 'cs', 'sk', 'ro'];
  return dotLocales.includes(locale) ? `${d}.${m}.${y}` : `${d}/${m}/${y}`;
}
