/**
 * French domain keywords. Generated from the English reference by the
 * `gen-domain-lexicons` workflow, then validated/deduped (see scripts).
 * Hand-edit with care; keep tier semantics (veryStrong→weak) intact.
 */

import type { DomainLexicon } from '../types';

export const FR_LEXICON: DomainLexicon = {
  locale: 'fr',
  boundaryMode: 'word',
  keywords: {
    code: {
      veryStrong: [
        'async',
        'await',
        'import',
        'def',
        'npm',
        'docker',
        'pytest',
        'compiler',
        'trace de la pile',
        'segfault',
        'pointeur null',
        'regex',
      ],
      strong: [
        'fonction',
        'python',
        'javascript',
        'typescript',
        'point de terminaison api',
        'déboguer',
        'refactoriser',
        'algorithme',
        'requête de base de données',
        'sql',
        'variable',
        'classe',
        'méthode',
        'exception',
      ],
      moderate: [
        'build',
        'script',
        'déployer',
        'git',
        'test',
        'syntaxe',
        'bug',
      ],
    },
    data: {
      veryStrong: [
        'dataframe',
        'tableau croisé dynamique',
        'group by',
        'agréger',
        'csv',
        'tableur',
        'etl',
      ],
      strong: [
        'jeu de données',
        'analytique',
        'visualisation',
        'graphique',
        'corrélation',
        'régression',
        'métriques',
        'interroger les données',
      ],
      moderate: [
        'analyser',
        'rapport',
        'tendance',
        'colonne',
        'ligne',
        'filtrer',
      ],
    },
    math: {
      veryStrong: [
        'théorème',
        'dérivée',
        'intégrale',
        'équation',
        'démonstration',
        'matrice',
        'valeur propre',
        'probabilité',
      ],
      strong: [
        'calculer',
        'résoudre pour',
        'algèbre',
        'calcul différentiel',
        'géométrie',
        'statistiques',
        'formule',
        'calcul',
      ],
      moderate: ['somme', 'moyenne', 'pourcentage', 'ratio', 'évaluer'],
      weak: ['nombre', 'maths'],
    },
    creative: {
      strong: [
        'écris une histoire',
        'poème',
        'créatif',
        'remue-méninges',
        'imagine',
        'fiction',
        'scénario',
        'paroles de chanson',
        'slogan',
      ],
      moderate: ['brouillon', 'rédiger', 'récit', 'personnage', 'intrigue'],
      weak: ['créer', 'faire', 'nouveau'],
    },
    translation: {
      strong: [
        'traduire',
        'traduction',
        'en espagnol',
        'en français',
        'en allemand',
        "vers l'anglais",
        'localiser',
      ],
      moderate: ['langue', 'courant', 'idiomatique', 'expression'],
      weak: ['changer de langue', 'basculer la langue'],
    },
    summary: {
      strong: ['résumer', 'résumé', 'tldr', 'points clés', 'récapitulatif'],
      moderate: ['synthèse', 'abrégé', 'distiller', 'condenser', 'raccourcir'],
      weak: ['court', 'rapide'],
    },
    factual: {
      veryStrong: [
        'quelle est la capitale',
        'qui a inventé',
        'quand a eu lieu',
        'vérification des faits',
      ],
      strong: [
        'définir',
        'définition',
        'expliquer ce que',
        'histoire de',
        'différence entre',
      ],
      moderate: ['qui est', 'où se trouve', 'combien de', 'liste de'],
    },
    legal: {
      veryStrong: [
        'contrat',
        'responsabilité civile',
        'demandeur',
        'défendeur',
        'juridiction',
      ],
      strong: [
        'juridique',
        'poursuite judiciaire',
        'clause',
        'conformité',
        'réglementation',
        "conditions d'utilisation",
        'propriété intellectuelle',
        'rgpd',
      ],
      moderate: ['accord', 'politique', 'droits', 'obligation'],
      weak: ['règle', 'exigence'],
    },
    medical: {
      veryStrong: [
        'diagnostic',
        'symptôme',
        'ordonnance',
        'posologie',
        'pathologie',
      ],
      strong: [
        'médical',
        'maladie',
        'traitement',
        'patient',
        'clinique',
        'médicament',
        'thérapie',
      ],
      moderate: ['santé', 'médecin', 'douleur', 'affection'],
      weak: ['ressentir', 'malade', 'souffrant'],
    },
    financial: {
      veryStrong: [
        'portefeuille',
        'valorisation',
        'ebitda',
        'flux de trésorerie',
        'bilan comptable',
      ],
      strong: [
        'investissement',
        'action en bourse',
        "chiffre d'affaires",
        'marge bénéficiaire',
        "taux d'intérêt",
        'impôt',
        'prévisions budgétaires',
        'roi',
      ],
      moderate: ['finance', 'marché', 'dépense', 'revenu'],
      weak: ['argent', 'coût', 'prix'],
    },
    conversation: {
      veryStrong: [
        "comme je l'ai dit",
        'tu as mentionné',
        'plus tôt tu',
        'pour faire suite à',
      ],
      strong: ['suivi', 'au fait', 'aussi', 'encore une chose'],
      moderate: ['merci', 'compris'],
    },
  },
};
