Files
office_translator/frontend/src/lib/i18n/messages/es/reviews.json
sepehr 2abd0c0b26
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 2m29s
fix(relecture): un travail vide ou oublie restait affiche et impossible a retirer
Un travail echoue ou expire cote serveur restait dans « Traductions
recentes » : sa page de relecture n'affichait rien (0 segments) avec une
erreur brute non traduite, et aucune suppression n'existait.

- serveur : nouvelle route DELETE /api/v1/translations/{job_id} —
  retire le travail de la memoire et de Redis, supprime ses segments de
  relecture ; idempotente (200 meme si le serveur avait deja oublie le
  travail) ; refuse les travaux en cours (annuler d'abord) ; proprietaire
  seul (404 pour le travail d'autrui, sans reveler son existence)
- interface : bouton corbeille sur chaque ligne des traductions recentes
  (deux clics pour confirmer) qui nettoie la liste locale ET le serveur ;
  l'historique serveur ne liste plus les travaux non termines
- page de relecture : message d'erreur traduit (fini le message brut) et
  etat « rien a relire » explicite avec explication
- libelles ajoutes dans les 13 langues de l'interface
- 5 tests backend nouveaux (tests/test_delete_translation_history.py)
2026-09-01 21:22:05 +02:00

54 lines
2.6 KiB
JSON

{
"reviews.title": "Review",
"reviews.subtitle": "{file} — {total} segments ({pending} to review, {approved} approved, {edited} edited)",
"reviews.approveAll": "Approve all",
"reviews.importXliff": "Import XLIFF",
"reviews.rebuild": "Rebuild & download",
"reviews.col.source": "Source",
"reviews.col.target": "Translation",
"reviews.col.status": "Status",
"reviews.status.approved": "Approved",
"reviews.status.edited": "Edited",
"reviews.status.pending": "To review",
"reviews.save": "Save",
"reviews.cancel": "Cancel",
"reviews.emptyCell": "— empty —",
"reviews.action.edit": "Edit translation",
"reviews.action.approve": "Approve as-is",
"reviews.action.reset": "Reset to pending",
"reviews.approvedTitle": "Segments approved",
"reviews.approvedDesc": "{count} segment(s) approved.",
"reviews.rebuiltTitle": "Document rebuilt",
"reviews.rebuiltDesc": "{count} reviewed segment(s) applied.",
"reviews.rebuildFailed": "Rebuild failed",
"reviews.xliffExportFailed": "XLIFF export failed",
"reviews.xliffImported": "XLIFF imported",
"reviews.xliffImportedDesc": "{count} segment(s) updated.",
"reviews.xliffImportFailed": "XLIFF import failed",
"reviews.error.title": "Error",
"reviews.error.load": "Load error",
"reviews.error.update": "Update failed",
"reviews.error.download": "Download failed (HTTP {status})",
"reviews.pill": "Quality control",
"reviews.titleBase": "Translation",
"reviews.titleAccent": "review",
"reviews.approveAllConfirm": "Confirm ({count})",
"reviews.action.approveShort": "OK",
"reviews.action.resetShort": "To review",
"reviews.xliffHint": "XLIFF is the standard exchange format for translation reviews — export segments, edit in your CAT tool, then reimport.",
"reviews.error.sessionExpired": "Session expired. Sign in again and refresh.",
"reviews.error.notFound": "Job not found.",
"reviews.error.rateLimited": "Rate limited. Wait a few seconds.",
"reviews.error.server": "Server error. Try again shortly.",
"reviews.filter.all": "All",
"reviews.filter.pending": "To review",
"reviews.filter.approved": "Approved",
"reviews.filter.edited": "Edited",
"reviews.searchPlaceholder": "Search in segments...",
"reviews.shortcutHint": "Ctrl + Enter to save",
"reviews.approvingProgress": "Approving ({current}/{total})…",
"reviews.noMatchingSegments": "No segments match your filter.",
"reviews.empty.title": "Nada que revisar en este trabajo",
"reviews.empty.desc": "Esta traducción no tiene segmentos guardados: o falló antes de traducir el texto, o el servidor ya no la conserva. Puede quitarla de la lista de traducciones recientes."
}