core-hn_pseudobsidian-ization/src/ui
Axelle Abbadie eb62c50373 feat: noScribe import, scan modal candidats, exceptions surlignées
Intégration noScribe (Phase 10)
- VttParser : WebVTT standard avec word timestamps (Whisper)
- NoScribeHtmlParser : HTML Qt Rich Text noScribe, extraction locuteurs S00/S01, audio source
- NoScribeVttParser : VTT noScribe v0.7 (cues splitées, labels SXX:, entités HTML)
- TranscriptConverter : format Markdown noScribe (**S00** [HH:MM:SS] : texte), extractWordData → .words.json
- Import audio automatique depuis meta tag HTML ou dossier source VTT
- Re-export VTT pseudonymisé depuis .md + .words.json (commande "Exporter en VTT")
- Redaction.ts : caviardage par syllabes (🀫)

Scan modal avec candidats
- MappingScanReviewModal : colonne occurrences cliquable → OccurrencesContextModal
- OccurrencesContextModal : cartes ✓/✗/⚠ par occurrence, callback sans application immédiate
- Bouton "Enregistrer les exceptions" séparé d'Appliquer

Exceptions
- IgnoredOccurrence dans types.ts + ignoredOccurrences sur MappingRule
- Persistance dans mapping.json, chargement au démarrage
- Surlignage rouge (pseudobs-exception, sensible à la casse via collectExact)
- Section "Exceptions" dans l'onglet Mappings avec cartes contextuelles et suppression
- Priorité 0 dans le highlighter (gagne sur orange/bleu/vert)

Corrections
- getValidatedFor() : inclut 'partial' comme état actif
- Labels de statut clarifiés : "Actif", "Ignoré", "Partiel", "Suggéré"
- Scan button corrigé dans PseudonymizationView (occurrences manquantes dans MappingRuleResult)
- PseudonymHighlighter : collectExact définie, exceptionRanges orphelin supprimé

Tests : 149 tests, 10 suites
2026-05-17 01:25:20 +02:00
..
CorpusModal.ts feat: i18n, corpus organization, settings redesign, scope warning (Phase 10) 2026-05-16 01:06:01 +02:00
DictScanReviewModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
EditRuleModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
MappingScanReviewModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
OccurrencesContextModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
OccurrencesModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
OnboardingModal.ts fix: remove fs/path — use vault.adapter for WASM file access 2026-05-16 01:19:49 +02:00
PseudonymHighlighter.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
PseudonymizationView.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
QuickPseudonymizeModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00
RuleModal.ts feat: noScribe import, scan modal candidats, exceptions surlignées 2026-05-17 01:25:20 +02:00