diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/dossier-details-stats/dossier-details-stats.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/dossier-details-stats/dossier-details-stats.component.html index e39670382..0dd0c8949 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/dossier-details-stats/dossier-details-stats.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/dossier-details-stats/dossier-details-stats.component.html @@ -4,6 +4,11 @@ {{ 'dossier-overview.dossier-details.stats.documents' | translate: { count: stats.numberOfFiles } }} +
+ + {{ 'dossier-overview.dossier-details.stats.processing-documents' | translate: { count: stats.numberOfProcessingFiles } }} +
+
{{ 'dossier-overview.dossier-details.stats.people' | translate: { count: dossier.memberIds.length } }} diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/table-item.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/table-item.component.html index a12cb71f3..9bf026261 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/table-item.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/table-item/table-item.component.html @@ -49,16 +49,22 @@
- +
+ +
+ + - + >
+
*:not(:last-child) { + margin-right: 16px; + } + + .spinning > mat-icon { + height: 10px; + width: 10px; + opacity: 0.5; + } + } } } diff --git a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.html b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.html index 7136bddfd..006ee2e4e 100644 --- a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.html +++ b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.html @@ -1,5 +1,9 @@
+
+ +
diff --git a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.scss b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.scss index 33de08c15..63fd94118 100644 --- a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.scss +++ b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.scss @@ -31,9 +31,16 @@ mat-slide-toggle { height: 34px; width: 34px; line-height: 33px; -} - -mat-slide-toggle { margin-left: 8px; margin-right: 5px; } + +.spinning { + margin: 0 12px 0 11px; + + > mat-icon { + height: 10px; + width: 10px; + opacity: 0.5; + } +} diff --git a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.ts b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.ts index dcfc25cbd..8afd422d6 100644 --- a/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.ts +++ b/apps/red-ui/src/app/modules/dossier/shared/components/file-actions/file-actions.component.ts @@ -251,7 +251,7 @@ export class FileActionsComponent extends AutoUnsubscribe implements OnInit, OnD this.showOCR = this.file.canBeOCRed; this.canReanalyse = this.permissionsService.canReanalyseFile(this.file, dossier); - this.showStatusBar = this.file.isWorkable && this.isDossierOverviewList; + this.showStatusBar = !this.file.isError && !this.file.isPending && this.isDossierOverviewList; this.showAssignToSelf = this.permissionsService.canAssignToSelf(this.file) && this.isDossierOverview; this.showAssign = diff --git a/apps/red-ui/src/app/modules/icons/icons.module.ts b/apps/red-ui/src/app/modules/icons/icons.module.ts index 94a522966..2448bfd6a 100644 --- a/apps/red-ui/src/app/modules/icons/icons.module.ts +++ b/apps/red-ui/src/app/modules/icons/icons.module.ts @@ -12,7 +12,6 @@ export class IconsModule { constructor(private readonly _iconRegistry: MatIconRegistry, private readonly _sanitizer: DomSanitizer) { const icons = [ 'ai', - 'analyse', 'approved', 'arrow-up', 'assign', @@ -49,6 +48,7 @@ export class IconsModule { 'put-back', 'read-only', 'ready-for-approval', + 'reanalyse', 'reason', 'remove-from-dict', 'report', diff --git a/apps/red-ui/src/assets/i18n/de.json b/apps/red-ui/src/assets/i18n/de.json index 276ba5c73..63c709d9d 100644 --- a/apps/red-ui/src/assets/i18n/de.json +++ b/apps/red-ui/src/assets/i18n/de.json @@ -1,17 +1,29 @@ { "account-settings": "Account Einstellungen", - "actions": { "all": "Alle", "none": "Keine" }, + "actions": { + "all": "Alle", + "none": "Keine" + }, "active": "Aktiv", "add-dossier-dialog": { - "actions": { "save": "Speichern", "save-and-add-members": "Speichern und Team zusammenstellen" }, + "actions": { + "save": "Speichern", + "save-and-add-members": "Speichern und Team zusammenstellen" + }, "errors": { "dossier-already-exists": "Dieser Dossier-Name ist bereits vergeben!", "generic": "Dossier konnte nicht gespeichert werden." }, "form": { - "description": { "label": "Beschreibung", "placeholder": "Bitte geben Sie eine Beschreibung ein." }, + "description": { + "label": "Beschreibung", + "placeholder": "Bitte geben Sie eine Beschreibung ein." + }, "due-date": "Termin", - "name": { "label": "Dossier-Name", "placeholder": "Geben Sie einen Namen ein." }, + "name": { + "label": "Dossier-Name", + "placeholder": "Geben Sie einen Namen ein." + }, "template": "Dossier-Vorlage", "watermark": "Geschwärzte Dokumente mit Wasserzeichen versehen" }, @@ -43,7 +55,9 @@ "title": "{type, select, edit{Wörterbuch {name} bearbeiten} create{Wörterbuch erstellen} other{}}" }, "add-edit-dossier-attribute": { - "error": { "generic": "Attribut konnte nicht gespeichert werden!" }, + "error": { + "generic": "Attribut konnte nicht gespeichert werden!" + }, "form": { "label": "Name des Attributs", "label-placeholder": "Namen eingeben", @@ -85,7 +99,10 @@ "title": "{type, select, edit{Edit {name}} create{Add New} other{}} Datei-Attribut" }, "add-edit-justification": { - "actions": { "cancel": "Abbrechen", "save": "Begründung speichern" }, + "actions": { + "cancel": "Abbrechen", + "save": "Begründung speichern" + }, "form": { "description": "Beschreibung", "description-placeholder": "Beschreibung eingeben", @@ -116,16 +133,33 @@ }, "title": "{type, select, edit{Benutzer bearbeiten} create{Neuen Benutzer hinzufügen} other{}}" }, - "admin-side-nav": { "dossier-templates": "Dossier-Vorlage", "settings": "Einstellungen" }, + "admin-side-nav": { + "dossier-templates": "Dossier-Vorlage", + "settings": "Einstellungen" + }, "annotation": "Anmerkung", "annotation-actions": { - "resize": { "label": "Größe ändern" }, - "resize-accept": { "label": "Größe speichern" }, - "resize-cancel": { "label": "Größenänderung abbrechen" }, - "accept-recommendation": { "label": "Empfehlung annehmen" }, - "accept-suggestion": { "label": "Genehmigen und zum Wörterbuch hinzufügen" }, - "edit-reason": { "label": "Begründung bearbeiten" }, - "force-redaction": { "label": "Schwärzung erzwingen" }, + "resize": { + "label": "Größe ändern" + }, + "resize-accept": { + "label": "Größe speichern" + }, + "resize-cancel": { + "label": "Größenänderung abbrechen" + }, + "accept-recommendation": { + "label": "Empfehlung annehmen" + }, + "accept-suggestion": { + "label": "Genehmigen und zum Wörterbuch hinzufügen" + }, + "edit-reason": { + "label": "Begründung bearbeiten" + }, + "force-redaction": { + "label": "Schwärzung erzwingen" + }, "hide": "Ausblenden", "message": { "dictionary": { @@ -142,28 +176,52 @@ "error": "Fehler beim Ablehnen des neuen Wörterbucheintrags: {error}", "success": "Vorschlag für das Wörterbuch abgelehnt." }, - "remove": { "error": "Fehler beim Entfernen des Wörterbucheintrags: {error}", "success": "Wörterbucheintrag wurde gelöscht!" }, - "request-remove": { "error": "Dossier-Vorlage", "success": "Löschung des Wörterbucheintrags wurde vorgeschlagen!" }, + "remove": { + "error": "Fehler beim Entfernen des Wörterbucheintrags: {error}", + "success": "Wörterbucheintrag wurde gelöscht!" + }, + "request-remove": { + "error": "Dossier-Vorlage", + "success": "Löschung des Wörterbucheintrags wurde vorgeschlagen!" + }, "suggest": { "error": "Vorschlag für Änderung des Wörterbuchs konnte nicht gespeichert werden: {error}", "success": "Vorschlag für die Änderung des Wörterbuchs gespeichert!" }, - "undo": { "error": "Die Aktion konnte nicht rückgängig gemacht werden. Fehler: {error}", "success": "Rückgängigmachen erfolgreich" } + "undo": { + "error": "Die Aktion konnte nicht rückgängig gemacht werden. Fehler: {error}", + "success": "Rückgängigmachen erfolgreich" + } }, "manual-redaction": { - "add": { "error": "Fehler beim Speichern der Schwärzung: {error}", "success": "Schwärzung hinzugefügt!" }, - "approve": { "error": "Fehler beim Genehmigen des Vorschlags: {error}", "success": "Vorschlag genehmigt" }, + "add": { + "error": "Fehler beim Speichern der Schwärzung: {error}", + "success": "Schwärzung hinzugefügt!" + }, + "approve": { + "error": "Fehler beim Genehmigen des Vorschlags: {error}", + "success": "Vorschlag genehmigt" + }, "change-legal-basis": { "error": "Fehler beim Bearbeiten der in der Anmerkung genannten Begründung: {error}", "success": "In der Anmerkung genannte Begründung wurde bearbeitet." }, - "decline": { "error": "Fehler beim Ablehnen des Vorschlags: {error}", "success": "Vorschlag abgelehnt" }, - "force-redaction": { "error": "Die Schwärzung konnte nicht gespeichert werden!", "success": "Schwärzung eingefügt!" }, + "decline": { + "error": "Fehler beim Ablehnen des Vorschlags: {error}", + "success": "Vorschlag abgelehnt" + }, + "force-redaction": { + "error": "Die Schwärzung konnte nicht gespeichert werden!", + "success": "Schwärzung eingefügt!" + }, "recategorize-image": { "error": "Rekategorisierung des Bildes gescheitert: {error}", "success": "Bild wurde einer neuen Kategorie zugeordnet." }, - "remove": { "error": "Fehler beim Entfernen der Schwärzung: {error}", "success": "Schwärzung entfernt!" }, + "remove": { + "error": "Fehler beim Entfernen der Schwärzung: {error}", + "success": "Schwärzung entfernt!" + }, "request-change-legal-basis": { "error": "Fehler beim Vorschlagen der Änderung der Begründung:", "success": "Die Änderung der in der Anmerkung genannten Begründung wurde beantragt." @@ -243,7 +301,10 @@ "title": "Datei verwalten: {type, select, approver{Genehmiger} reviewer{Reviewer} other{}}" } }, - "assign-user": { "cancel": "Abbrechen", "save": "Speichern" }, + "assign-user": { + "cancel": "Abbrechen", + "save": "Speichern" + }, "assignment": { "owner": "{ownerName} wurde erfolgreich zum Dossier {dossierName} hinzugefügt.", "reviewer": "{reviewerName} wurde erfolgreich zum Dokument {filename} hinzugefügt." @@ -265,9 +326,18 @@ "project-template": "Projekt-Vorlage", "user": "Nutzer" }, - "no-data": { "title": "Keine Protokolle verfügbar." }, - "table-col-names": { "category": "Kategorie", "date": "Datum", "message": "Nachricht", "user": "Nutzer" }, - "table-header": { "title": "{length} {length, plural, one{Log} other{Logs}}" }, + "no-data": { + "title": "Keine Protokolle verfügbar." + }, + "table-col-names": { + "category": "Kategorie", + "date": "Datum", + "message": "Nachricht", + "user": "Nutzer" + }, + "table-header": { + "title": "{length} {length, plural, one{Log} other{Logs}}" + }, "to": "bis" }, "auth-error": { @@ -279,12 +349,20 @@ }, "by": "von", "resize-annotation-dialog": { - "actions": { "cancel": "Abbrechen", "save": "Änderungen speichern" }, - "content": { "comment": "Kommentar" }, + "actions": { + "cancel": "Abbrechen", + "save": "Änderungen speichern" + }, + "content": { + "comment": "Kommentar" + }, "header": "Schwärzung ändern" }, "change-legal-basis-dialog": { - "actions": { "cancel": "Abbrechen", "save": "Änderungen speichern" }, + "actions": { + "cancel": "Abbrechen", + "save": "Änderungen speichern" + }, "content": { "comment": "Kommentar", "legalBasis": "Rechtsgrundlage", @@ -349,7 +427,10 @@ "question": "Möchten Sie dieses Dokument wirklich löschen?", "title": "{dossierName} löschen" }, - "delete-file": { "question": "Möchten Sie fortfahren?", "title": "Dokument löschen" }, + "delete-file": { + "question": "Möchten Sie fortfahren?", + "title": "Dokument löschen" + }, "delete-justification": { "question": "Möchten Sie {count, plural, one{diese Begründung} other{diese Begründung}} wirklich löschen?", "title": "{count, plural, one{{justificationName}} other{ausgewählte Begründungen}} löschen" @@ -372,9 +453,16 @@ "content": "Begründung", "default-colors": "Farbeinstellungen", "default-colors-screen": { - "action": { "edit": "Farbe bearbeiten" }, - "table-col-names": { "color": "Farbe", "key": "Typ" }, - "table-header": { "title": "{length} Standard{length, plural, one{farbe} other{farben}}" }, + "action": { + "edit": "Farbe bearbeiten" + }, + "table-col-names": { + "color": "Farbe", + "key": "Typ" + }, + "table-header": { + "title": "{length} Standard{length, plural, one{farbe} other{farben}}" + }, "types": { "analysisColor": "Analyse", "defaultColor": "Standardfarbe", @@ -391,16 +479,37 @@ "dictionaries": "Wörterbücher", "dictionary": "Wörterbuch", "dictionary-listing": { - "action": { "delete": "Wörterbuch löschen", "edit": "Wörterbuch bearbeiten" }, + "action": { + "delete": "Wörterbuch löschen", + "edit": "Wörterbuch bearbeiten" + }, "add-new": "Neues Wörterbuch", - "bulk": { "delete": "Ausgewählte Wörterbücher löschen" }, + "bulk": { + "delete": "Ausgewählte Wörterbücher löschen" + }, "case-sensitive": "Klein-/Großschreibung berücksichtigen", - "no-data": { "action": "Neues Wörterbuch", "title": "Es gibt noch keine Wörterbücher." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf kein Wörterbuch zu." }, + "no-data": { + "action": "Neues Wörterbuch", + "title": "Es gibt noch keine Wörterbücher." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf kein Wörterbuch zu." + }, "search": "Suche ...", - "stats": { "charts": { "entries": "Einträge", "types": "Typen" } }, - "table-col-names": { "hint-redaction": "Hinweis/Schwärzung", "rank": "Rang", "type": "Typ" }, - "table-header": { "title": "{length} {length, plural, one{Wörterbuch} other{Wörterbücher}}" } + "stats": { + "charts": { + "entries": "Einträge", + "types": "Typen" + } + }, + "table-col-names": { + "hint-redaction": "Hinweis/Schwärzung", + "rank": "Rang", + "type": "Typ" + }, + "table-header": { + "title": "{length} {length, plural, one{Wörterbuch} other{Wörterbücher}}" + } }, "dictionary-overview": { "action": { @@ -415,7 +524,9 @@ "select-dossier": "Dossier auswählen", "select-dossier-template": "Dossiervorlage auswählen" }, - "dictionary-details": { "description": "Beschreibung" }, + "dictionary-details": { + "description": "Beschreibung" + }, "error": { "entries-too-short": "Einige Einträge im Wörterbuch unterschreiten die Mindestlänge von 2 Zeichen. Diese sind rot markiert.", "generic": "Es ist ein Fehler aufgetreten ... Das Wörterbuch konnte nicht aktualisiert werden!" @@ -424,7 +535,9 @@ "save-changes": "Änderungen speichern", "search": "Suche ...", "select-dictionary": "Wählen Sie oben das Wörterbuch aus, das Sie mit dem aktuellen Wörterbuch vergleichen möchten.", - "success": { "generic": "Wörterbuch aktualisiert!" } + "success": { + "generic": "Wörterbuch aktualisiert!" + } }, "digital-signature": "Digitale Signatur", "digital-signature-screen": { @@ -438,29 +551,68 @@ "save-error": "Fehler beim Speichern der digitalen Signatur", "save-success": "Digitale Signatur erfolgreich gespeichert" }, - "certificate-name": { "label": "Name des Zertifikats", "placeholder": "Name des Zertifikats" }, - "contact-info": { "label": "Kontaktdaten", "placeholder": "Kontaktdaten" }, - "location": { "label": "Ort", "placeholder": "Ort" }, + "certificate-name": { + "label": "Name des Zertifikats", + "placeholder": "Name des Zertifikats" + }, + "contact-info": { + "label": "Kontaktdaten", + "placeholder": "Kontaktdaten" + }, + "location": { + "label": "Ort", + "placeholder": "Ort" + }, "no-data": { "action": "Zertifikat hochladen", "title": "Es ist kein Zertifikat für die digitale Signatur konfiguriert. Laden Sie ein PCKS#12-Zertifikat hoch, um Ihre geschwärzten Dokumente zu signieren." }, - "password": { "label": "Zertifikatspasswort/-schlüssel", "placeholder": "Passwort" }, - "reason": { "label": "Begründung", "placeholder": "Begründung" } + "password": { + "label": "Zertifikatspasswort/-schlüssel", + "placeholder": "Passwort" + }, + "reason": { + "label": "Begründung", + "placeholder": "Begründung" + } + }, + "document-info": { + "save": "Dokumenteninformation speichern", + "title": "Datei-Attribute anlegen" }, - "document-info": { "save": "Dokumenteninformation speichern", "title": "Datei-Attribute anlegen" }, "dossier": "Dossier", - "dossier-attribute-types": { "date": "Datum", "image": "Bild", "number": "Nummer", "text": "Text" }, + "dossier-attribute-types": { + "date": "Datum", + "image": "Bild", + "number": "Nummer", + "text": "Text" + }, "dossier-attributes": "Dossier-Attribut", "dossier-attributes-listing": { - "action": { "delete": "Attribut löschen", "edit": "Attribut bearbeiten" }, + "action": { + "delete": "Attribut löschen", + "edit": "Attribut bearbeiten" + }, "add-new": "Neues Attribut", - "bulk": { "delete": "Ausgewähltes Attribut löschen" }, - "no-data": { "action": "Neues Attribut", "title": "Es sind keine Dossier-Attribute vorhanden" }, - "no-match": { "title": "Die ausgewählten Filter treffen auf kein Attribut zu." }, + "bulk": { + "delete": "Ausgewähltes Attribut löschen" + }, + "no-data": { + "action": "Neues Attribut", + "title": "Es sind keine Dossier-Attribute vorhanden" + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf kein Attribut zu." + }, "search": "Suche ...", - "table-col-names": { "label": "Label", "placeholder": "Platzhalter", "type": "Typ" }, - "table-header": { "title": "{length} {length, plural, one{Dossier-Attribut} other{Dossier-Attribute}}" } + "table-col-names": { + "label": "Label", + "placeholder": "Platzhalter", + "type": "Typ" + }, + "table-header": { + "title": "{length} {length, plural, one{Dossier-Attribut} other{Dossier-Attribute}}" + } }, "dossier-details": { "assign-members": "Mitglieder zuweisen", @@ -474,20 +626,50 @@ }, "dossier-listing": { "add-new": "Neues Dossier", - "delete": { "action": "Dossier löschen", "delete-failed": "Das Dossier {dossierName} konnte nicht gelöscht werden" }, - "edit": { "action": "Dossier bearbeiten" }, - "filters": { "label": "Dossiername", "search": "Dossiername..." }, - "no-data": { "action": "Neues Dossier", "title": "Sie haben momentan keine Dossiers." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf kein Dossier zu." }, - "quick-filters": { "my-dossiers": "Meine Dossiers", "other": "Sonstige", "to-approve": "Zu Genehmigen", "to-review": "Zu Überprüfen" }, - "reanalyse": { "action": "Gesamtes Dossier analysieren" }, + "delete": { + "action": "Dossier löschen", + "delete-failed": "Das Dossier {dossierName} konnte nicht gelöscht werden" + }, + "edit": { + "action": "Dossier bearbeiten" + }, + "filters": { + "label": "Dossiername", + "search": "Dossiername..." + }, + "no-data": { + "action": "Neues Dossier", + "title": "Sie haben momentan keine Dossiers." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf kein Dossier zu." + }, + "quick-filters": { + "my-dossiers": "Meine Dossiers", + "other": "Sonstige", + "to-approve": "Zu Genehmigen", + "to-review": "Zu Überprüfen" + }, + "reanalyse": { + "action": "Gesamtes Dossier analysieren" + }, "stats": { "analyzed-pages": "Seiten", - "charts": { "dossiers": "Dossiers", "total-documents": "Anzahl der Dokumente" }, + "charts": { + "dossiers": "Dossiers", + "total-documents": "Anzahl der Dokumente" + }, "total-people": "Anzahl der Benutzer" }, - "table-col-names": { "name": "Name", "needs-work": "Arbeitsvorrat", "owner": "Besitzer", "status": "Status" }, - "table-header": { "title": "{length} {length, plural, one{aktives Dossier} other{aktive Dossiers}}" } + "table-col-names": { + "name": "Name", + "needs-work": "Arbeitsvorrat", + "owner": "Besitzer", + "status": "Status" + }, + "table-header": { + "title": "{length} {length, plural, one{aktives Dossier} other{aktive Dossiers}}" + } }, "dossier-overview": { "approve": "Genehmigen", @@ -495,15 +677,22 @@ "assign-approver": "Genehmiger zuordnen", "assign-me": "Mir zuteilen", "assign-reviewer": "Überprüfer zuordnen", - "bulk": { "delete": "Dokumente löschen", "reanalyse": "Dokumente analysieren" }, - "delete": { "action": "Datei löschen" }, + "bulk": { + "delete": "Dokumente löschen", + "reanalyse": "Dokumente analysieren" + }, + "delete": { + "action": "Datei löschen" + }, "dossier-details": { "attributes": { "expand": "{count} {count, plural, one{benutzerdefiniertes Attribut} other{benutzerdefinierte Attribute}}", "image-uploaded": "Bild hochgeladen", "show-less": "weniger anzeigen" }, - "charts": { "documents-in-dossier": "Dokumente im Dossier" }, + "charts": { + "documents-in-dossier": "Dokumente im Dossier" + }, "description": "Beschreibung", "dictionary": "Dossier-Wörterbuch", "stats": { @@ -518,17 +707,35 @@ "download-file": "Herunterladen", "download-file-disabled": "Nur genehmigte Dateien können heruntergeladen werden", "file-listing": { - "file-entry": { "file-error": "Reanalyse erforderlich", "file-pending": "Ausstehend ...", "file-processing": "Wird analysiert" } + "file-entry": { + "file-error": "Reanalyse erforderlich", + "file-pending": "Ausstehend ...", + "file-processing": "Wird analysiert" + } + }, + "filters": { + "label": "Dokumentname", + "search": "Dokumentname..." }, - "filters": { "label": "Dokumentname", "search": "Dokumentname..." }, "header-actions": { "download-csv": "CSV-Dateibericht herunterladen", "edit": "Dossier bearbeiten", "upload-document": "Dokument hochgeladen" }, - "new-rule": { "toast": { "actions": { "reanalyse-all": "Alle analysieren" } } }, - "no-data": { "action": "Dokument hochladen", "title": "Noch gibt es keine Dokumente." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf kein Dokument zu." }, + "new-rule": { + "toast": { + "actions": { + "reanalyse-all": "Alle analysieren" + } + } + }, + "no-data": { + "action": "Dokument hochladen", + "title": "Noch gibt es keine Dokumente." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf kein Dokument zu." + }, "ocr-file": "OCR-Dokument", "ocr-performed": "Diese Datei wurde mithilfe von OCR konvertiert.", "open-document": "Dokument öffnen", @@ -542,7 +749,9 @@ "error": "Die Dateien konnten nicht für eine Reanalyse eingeplant werden. Bitte versuchen Sie es erneut.", "success": "Dateien für Reanalyse vorgesehen." }, - "reanalyse": { "action": "Datei analysieren" }, + "reanalyse": { + "action": "Datei analysieren" + }, "table-col-names": { "added-on": "Hinzugefügt", "assigned-to": "Zugewiesen an", @@ -551,26 +760,44 @@ "pages": "Seiten", "status": "Status" }, - "table-header": { "title": "{length} {length, plural, one{document} other{documents}}" }, + "table-header": { + "title": "{length} {length, plural, one{document} other{documents}}" + }, "under-approval": "Zur Genehmigung", "under-review": "In Review", "upload-files": "Sie können Dateien überall per Drag and Drop platzieren..." }, "dossier-templates": "Dossier-Vorlagen", "dossier-templates-listing": { - "action": { "delete": "Dossier-Vorlage", "edit": "Vorlage bearbeiten" }, + "action": { + "delete": "Dossier-Vorlage", + "edit": "Vorlage bearbeiten" + }, "add-new": "Neue Dossier-Vorlage", - "bulk": { "delete": "Ausgewählte Dossier-Vorlagen löschen" }, + "bulk": { + "delete": "Ausgewählte Dossier-Vorlagen löschen" + }, "dictionaries": "{length} {length, plural, one{dictionary} other{dictionaries}}", "error": { "conflict": "Dieses DossierTemplate kann nicht gelöscht werden! Zumindest auf Dossier wird diese Vorlage verwendet!", "generic": "Dieses DossierTemplate kann nicht gelöscht werden!" }, - "no-data": { "title": "Es gibt noch keine Dossier-Vorlagen." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf keine Dossier-Vorlage zu." }, + "no-data": { + "title": "Es gibt noch keine Dossier-Vorlagen." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf keine Dossier-Vorlage zu." + }, "search": "Suchen ...", - "table-col-names": { "created-by": "Erstellt von", "created-on": "Erstellt am", "modified-on": "Geändert am", "name": "Name" }, - "table-header": { "title": "{length} {length, plural, one{Dossier-Vorlage} other{Dossier-Vorlagen}}" } + "table-col-names": { + "created-by": "Erstellt von", + "created-on": "Erstellt am", + "modified-on": "Geändert am", + "name": "Name" + }, + "table-header": { + "title": "{length} {length, plural, one{Dossier-Vorlage} other{Dossier-Vorlagen}}" + } }, "download-includes": "Wählen Sie die Dokumente für Ihr Download-Paket aus", "download-status": { @@ -585,20 +812,41 @@ "redacted": "geschwärztes PDF" }, "downloads-list": { - "actions": { "delete": "Löschen", "download": "Herunterladen" }, - "bulk": { "delete": "Ausgewählte Downloads löschen" }, - "no-data": { "title": "Keine aktiven Downloads." }, - "table-col-names": { "date": "Datum", "name": "Name", "size": "Größe", "status": "Status" }, - "table-header": { "title": "{length} {length, plural, one{download} other{downloads}}" } + "actions": { + "delete": "Löschen", + "download": "Herunterladen" + }, + "bulk": { + "delete": "Ausgewählte Downloads löschen" + }, + "no-data": { + "title": "Keine aktiven Downloads." + }, + "table-col-names": { + "date": "Datum", + "name": "Name", + "size": "Größe", + "status": "Status" + }, + "table-header": { + "title": "{length} {length, plural, one{download} other{downloads}}" + } }, "edit-color-dialog": { "error": "Fehler beim Aktualisieren der Farben.", - "form": { "color": "Farbe", "color-placeholder": "Farbe" }, + "form": { + "color": "Farbe", + "color-placeholder": "Farbe" + }, "save": "Speichern", "success": "Farbe erfolgreich aktualisiert auf {color}." }, "edit-dossier-dialog": { - "actions": { "revert": "Rückgängig machen", "save": "Änderungen speichern", "save-and-close": "Speichern" }, + "actions": { + "revert": "Rückgängig machen", + "save": "Änderungen speichern", + "save-and-close": "Speichern" + }, "attributes": { "custom-attributes": "Benutzerdefinierte Dossier-Attribute", "delete-image": "Bild löschen", @@ -610,17 +858,27 @@ "change-successful": "Dossier wurde aktualisiert.", "delete-successful": "Dossier wurde gelöscht.", "deleted-documents": { - "action": { "delete": "Endgültig löschen", "restore": "Wiederherstellen" }, - "bulk": { "delete": "Ausgewählte Dokumente endgültig löschen", "restore": "Ausgewählte Dokumente wiederherstellen" }, + "action": { + "delete": "Endgültig löschen", + "restore": "Wiederherstellen" + }, + "bulk": { + "delete": "Ausgewählte Dokumente endgültig löschen", + "restore": "Ausgewählte Dokumente wiederherstellen" + }, "instructions": "Gelöschte Objekte können bis zu {hours} Stunden nach ihrer Löschung wiederhergestellt werden", - "no-data": { "title": "Es sind keine gelöschten Dokumente vorhanden." }, + "no-data": { + "title": "Es sind keine gelöschten Dokumente vorhanden." + }, "table-col-names": { "deleted-on": "Gelöscht am", "name": "Name", "pages": "Seiten", "time-to-restore": "Verbleibende Zeit für Wiederherstellung" }, - "table-header": { "label": "{length} {length, plural, one{gelöschtes Dokument} other{gelöschte Dokumente}}" } + "table-header": { + "label": "{length} {length, plural, one{gelöschtes Dokument} other{gelöschte Dokumente}}" + } }, "dictionary": { "display-name": { @@ -633,9 +891,15 @@ }, "general-info": { "form": { - "description": { "label": "Beschreibung", "placeholder": "Beschreibung eingeben" }, + "description": { + "label": "Beschreibung", + "placeholder": "Beschreibung eingeben" + }, "due-date": "Termin", - "name": { "label": "Dossier-Name", "placeholder": "Namen eingeben" }, + "name": { + "label": "Dossier-Name", + "placeholder": "Namen eingeben" + }, "template": "Dossier-Vorlage", "watermark": "Geschwärzte Dokumente mit Wasserzeichen versehen" } @@ -658,7 +922,9 @@ }, "error": { "close": "Nah dran", - "http": { "generic": "Aktion mit Code {status} fehlgeschlagen" }, + "http": { + "generic": "Aktion mit Code {status} fehlgeschlagen" + }, "offline": "Du bist offline", "online": "Du bist online", "reload": "Neu laden", @@ -666,10 +932,19 @@ }, "exact-date": "{day} {month} {year} um {hour}:{minute} Uhr", "file": "Datei", - "file-attribute-types": { "date": "Datum", "number": "Nummer", "text": "Freier Text" }, + "file-attribute-types": { + "date": "Datum", + "number": "Nummer", + "text": "Freier Text" + }, "file-attributes": "Datei-Attribute", "file-attributes-csv-import": { - "action": { "cancel-edit-name": "Abbrechen", "edit-name": "Namen bearbeiten", "remove": "Entfernen", "save-name": "Speichern" }, + "action": { + "cancel-edit-name": "Abbrechen", + "edit-name": "Namen bearbeiten", + "remove": "Entfernen", + "save-name": "Speichern" + }, "available": "{value} verfügbar", "cancel": "Abbrechen", "csv-column": "CSV-Spalte", @@ -680,17 +955,24 @@ "file": "Datei:", "key-column": "Schlüsselspalte", "key-column-placeholder": "Spalte auswählen ...", - "no-data": { "title": "Keine Datei-Attribute definiert. Wählen Sie links eine Spalte aus, um Datei-Attribute zu definieren." }, + "no-data": { + "title": "Keine Datei-Attribute definiert. Wählen Sie links eine Spalte aus, um Datei-Attribute zu definieren." + }, "no-hovered-column": "Fahren Sie mit der Maus über den Eintrag, um eine Vorschau der CSV-Spalte zu sehen.", "no-sample-data-for": "Keine Beispieldaten für {column}.", "parse-csv": "CSV-Datei mit neuen Optionen parsen", - "quick-activation": { "all": "Alle", "none": "Keine" }, + "quick-activation": { + "all": "Alle", + "none": "Keine" + }, "save": { "error": "Fehler beim Erstellen der Datei-Attribute!", "label": "Attribute speichern", "success": "{count} Datei-{count, plural, one{Attribut} other{Attribute}} erfolgreich erstellt!" }, - "search": { "placeholder": "Nach Spaltennamen suchen ..." }, + "search": { + "placeholder": "Nach Spaltennamen suchen ..." + }, "selected": "{value} ausgewählt", "table-col-names": { "name": "Name", @@ -713,11 +995,20 @@ "total-rows": "{rows} Zeilen insgesamt" }, "file-attributes-listing": { - "action": { "delete": "Attribut löschen", "edit": "Attribute bearbeiten" }, + "action": { + "delete": "Attribut löschen", + "edit": "Attribute bearbeiten" + }, "add-new": "Neue Attribute", - "bulk-actions": { "delete": "Ausgewählte Attribute löschen" }, - "no-data": { "title": "Es sind noch keine Datei-Attribute vorhanden." }, - "no-match": { "title": "Die aktuell ausgewählten Filter treffen auf kein Datei-Attribut zu." }, + "bulk-actions": { + "delete": "Ausgewählte Attribute löschen" + }, + "no-data": { + "title": "Es sind noch keine Datei-Attribute vorhanden." + }, + "no-match": { + "title": "Die aktuell ausgewählten Filter treffen auf kein Datei-Attribut zu." + }, "read-only": "Schreibgeschützt", "search": "Nach Attribut-Namen suchen ...", "table-col-names": { @@ -730,7 +1021,9 @@ "read-only": "Schreibgeschützt", "type": "Eingabetyp" }, - "table-header": { "title": "{length} {length, plural, one{Datei-Attribut} other{Datei-Attribute}}" }, + "table-header": { + "title": "{length} {length, plural, one{Datei-Attribut} other{Datei-Attribute}}" + }, "upload-csv": "Datei-Attribute hochladen" }, "file-preview": { @@ -745,8 +1038,13 @@ "excluded-from-redaction": "Von Schwärzung ausgeschlossen", "fullscreen": "Vollbildmodus", "last-reviewer": "Zuletzt überprüft von:", - "no-data": { "title": "Auf dieser Seite gibt es keine Anmerkungen." }, - "quick-nav": { "jump-first": "Zur ersten Seite springen", "jump-last": "Zur letzten Seite springen" }, + "no-data": { + "title": "Auf dieser Seite gibt es keine Anmerkungen." + }, + "quick-nav": { + "jump-first": "Zur ersten Seite springen", + "jump-last": "Zur letzten Seite springen" + }, "reanalyse-notification": "Dieses Dokument wurde nicht auf Basis des neuesten Regel-/Wörterbuchsatzes bearbeitet. Analysieren Sie es jetzt, um die Anmerkungen zu analysieren.", "redacted": "Vorschau", "redacted-tooltip": "In der Schwärzungsvorschau sehen Sie nur die Schwärzungen. Es handelt sich also um eine Vorschau der endgültigen geschwärzten Version. Diese Ansicht ist nur verfügbar, wenn für die Datei keine Änderungen ausstehen und keine Reanalyse erforderlich ist", @@ -799,7 +1097,7 @@ "full-reprocess": "Wird analysiert", "indexing": "Wird analysiert", "ocr-processing": "OCR-Analyse", - "processing": "Wird analysiert", + "processing": "Wird analysiert...", "reprocess": "Wird analysiert", "unassigned": "Nicht zugewiesen", "under-approval": "In Genehmigung", @@ -833,8 +1131,14 @@ "status": "Status" }, "general-config-screen": { - "actions": { "save": "Einstellungen speichern", "test-connection": "Verbindung testen" }, - "app-name": { "label": "Name der Applikation", "placeholder": "RedactManager" }, + "actions": { + "save": "Einstellungen speichern", + "test-connection": "Verbindung testen" + }, + "app-name": { + "label": "Name der Applikation", + "placeholder": "RedactManager" + }, "form": { "auth": "Authentifizierung aktivieren", "change-credentials": "Zugangsdaten ändern", @@ -857,7 +1161,9 @@ "starttls": "StartTLS aktivieren" }, "general": { - "form": { "forgot-password": "„Passwort vergessen?“-Link auf der Login-Seite anzeigen" }, + "form": { + "forgot-password": "„Passwort vergessen?“-Link auf der Login-Seite anzeigen" + }, "subtitle": "", "title": "Allgemeine Einstellungen" }, @@ -876,15 +1182,34 @@ "welcome-to-help-mode": " Willkommen im Hilfe-Modus!
Klicken Sie auf interaktive Elemente, um in einem neuen Tab Infos dazu zu erhalten.
" }, "hint": "Hinweis", - "image-category": { "formula": "Formel", "image": "Bild", "logo": "Logo", "signature": "Signatur" }, - "initials-avatar": { "unassigned": "Unbekannt", "you": "Sie" }, + "image-category": { + "formula": "Formel", + "image": "Bild", + "logo": "Logo", + "signature": "Signatur" + }, + "initials-avatar": { + "unassigned": "Unbekannt", + "you": "Sie" + }, "justifications": "Begründungen", "justifications-listing": { - "actions": { "delete": "Begründung löschen", "edit": "Begründung bearbeiten" }, + "actions": { + "delete": "Begründung löschen", + "edit": "Begründung bearbeiten" + }, "add-new": "Neue Begründung hinzufügen", - "bulk": { "delete": "Ausgewählte Begründungen löschen" }, - "no-data": { "title": "Es gibt noch keine Begründungen." }, - "table-col-names": { "description": "Beschreibung", "name": "Name", "reason": "Rechtliche Grundlage" }, + "bulk": { + "delete": "Ausgewählte Begründungen löschen" + }, + "no-data": { + "title": "Es gibt noch keine Begründungen." + }, + "table-col-names": { + "description": "Beschreibung", + "name": "Name", + "reason": "Rechtliche Grundlage" + }, "table-header": "{length} {length, plural, one{Begründung} other{Begründung}}" }, "license-info-screen": { @@ -923,7 +1248,9 @@ "license-information": "Lizenzinformationen", "manual-annotation": { "dialog": { - "actions": { "save": "Speichern" }, + "actions": { + "save": "Speichern" + }, "content": { "comment": "Kommentar", "dictionary": "Wörterbuch", @@ -974,8 +1301,13 @@ }, "notifications": "Benachrichtigungen", "notifications-screen": { - "category": { "email-notifications": "E-Mail Benachrichtigungen", "in-app-notifications": "In-App-Benachrichtigungen" }, - "error": { "generic": "Ein Fehler ist aufgetreten... Aktualisierung der Einstellungen fehlgeschlagen!" }, + "category": { + "email-notifications": "E-Mail Benachrichtigungen", + "in-app-notifications": "In-App-Benachrichtigungen" + }, + "error": { + "generic": "Ein Fehler ist aufgetreten... Aktualisierung der Einstellungen fehlgeschlagen!" + }, "groups": { "approver": "Dossiers, für die Sie genehmigend sind", "own": "Dossiers, die Sie besitzen", @@ -994,7 +1326,11 @@ "when-i-am-assigned-on-a-document": "Wenn ich einem Dokument zugewiesen bin", "when-i-am-unassigned-from-a-document": "Wenn ich einem Dokument nicht zugewiesen bin" }, - "schedule": { "daily": "Tägliche Zusammenfassung", "instant": "Sofortig", "weekly": "Wöchentliche Zusammenfassung" }, + "schedule": { + "daily": "Tägliche Zusammenfassung", + "instant": "Sofortig", + "weekly": "Wöchentliche Zusammenfassung" + }, "title": "Benachrichtigungseinstellungen" }, "overwrite-files-dialog": { @@ -1008,13 +1344,29 @@ "title": "Das Dokument existiert bereits!" }, "page": "Seite", - "pagination": { "next": "Nächste", "previous": "Vorherige" }, - "pdf-viewer": { "text-popup": { "actions": { "search": "Nach Auswahl suchen" } } }, + "pagination": { + "next": "Nächste", + "previous": "Vorherige" + }, + "pdf-viewer": { + "text-popup": { + "actions": { + "search": "Nach Auswahl suchen" + } + } + }, "pending-changes-guard": "ACHTUNG: Sie haben ungespeicherte Änderungen. Klicken Sie auf „Abbrechen“, wenn Sie zurückkehren und die Änderungen speichern möchten. Klicken Sie auf „OK“, um die Änderungen zu speichern.", "readonly": "Lesemodus", "recategorize-image-dialog": { - "actions": { "cancel": "Abbrechen", "save": "Änderungen speichern" }, - "content": { "comment": "Kommentar", "type": "Ausgewählter Bildtyp", "type-placeholder": "Einen Typ auswählen ..." }, + "actions": { + "cancel": "Abbrechen", + "save": "Änderungen speichern" + }, + "content": { + "comment": "Kommentar", + "type": "Ausgewählter Bildtyp", + "type-placeholder": "Einen Typ auswählen ..." + }, "header": "Bildtypen bearbeiten" }, "redaction": "Schwärzung", @@ -1027,10 +1379,15 @@ "question": "Folgende Einträge werden aus den jeweiligen Wörterbüchern gelöscht:", "title": "Aus dem Wörterbuch löschen" }, - "remove-only-here": { "question": "Folgende Schwärzungen werden nur hier entfernt:", "title": "Schwärzung entfernen" }, + "remove-only-here": { + "question": "Folgende Schwärzungen werden nur hier entfernt:", + "title": "Schwärzung entfernen" + }, "value": "Wert" }, - "report-type": { "label": "{length} {length, plural, one{Berichtstyp} other{Berichtstypen}}" }, + "report-type": { + "label": "{length} {length, plural, one{Berichtstyp} other{Berichtstypen}}" + }, "reports": "Berichte", "reports-screen": { "description": "Ein kurzer Text, der erläutert, was Platzhalter sind und wie Sie sie in Ihrer Berichtsvorlage einsetzen können. Es ist bekannt, dass ein Leser vom lesbaren Inhalt einer Seite abgelenkt wird, wenn er sich das Layout ansieht.", @@ -1046,7 +1403,9 @@ "dossier": { "name": "Dieser Platzhalter wird durch den Namen des Dossiers ersetzt, in dem die geschwärzten Dateien gespeichert sind." }, - "file": { "name": "Dieser Platzhalter wird durch den Dateinamen ersetzt." }, + "file": { + "name": "Dieser Platzhalter wird durch den Dateinamen ersetzt." + }, "redaction": { "excerpt": "Dieser Platzhalter wird durch einen Textausschnitt ersetzt, der die Schwärzung enthält.", "justification": "Dieser Platzhalter wird durch die Begründung der Schwärzung ersetzt. Es ist eine Kombination aus dem Rechtsverweis (justificationParagraph) und dem Begründungstext (justificationReason).", @@ -1055,7 +1414,9 @@ "page": "Dieser Platzhalter wird durch die Seitenzahl der Redaktion ersetzt.", "paragraph": "Dieser Platzhalter wird durch den Absatz ersetzt, der die Schwärzung enthält." }, - "time": { "h-m": "Dieser Platzhalter wird durch den Zeitpunkt ersetzt, zu dem der Bericht erstellt wurde." } + "time": { + "h-m": "Dieser Platzhalter wird durch den Zeitpunkt ersetzt, zu dem der Bericht erstellt wurde." + } } }, "document-setup-description": "Ein kurzer Text, der erläutert, was Platzhalter sind und wie Sie sie in Ihrer Berichtsvorlage einsetzen können. Es ist bekannt, dass ein Leser vom lesbaren Inhalt einer Seite abgelenkt wird, wenn er sich das Layout ansieht.", @@ -1063,14 +1424,22 @@ "invalid-upload": "Ungültiges Upload-Format ausgewählt! Unterstützt werden Dokumente im .xlsx- und im .docx-Format", "multi-file-report": "(Mehrere Dateien)", "report-documents": "Dokumente für den Bericht", - "table-header": { "description": "Beschreibung", "placeholders": "Platzhalter" }, + "table-header": { + "description": "Beschreibung", + "placeholders": "Platzhalter" + }, "title": "Berichte", "upload-document": "Ein Dokument hochladen" }, "reset-filters": "Zurücksetzen", "reset-password-dialog": { - "actions": { "cancel": "Abbrechen", "save": "Speichern" }, - "form": { "password": "Temporäres Passwort" }, + "actions": { + "cancel": "Abbrechen", + "save": "Speichern" + }, + "form": { + "password": "Temporäres Passwort" + }, "header": "Temporäres Passwort für {userName} festlegen" }, "roles": { @@ -1085,14 +1454,26 @@ }, "rule-editor": "Regel-Editor", "rules-screen": { - "error": { "generic": "Es ist ein Fehler aufgetreten ... Die Regeln konnten nicht aktualisiert werden!" }, + "error": { + "generic": "Es ist ein Fehler aufgetreten ... Die Regeln konnten nicht aktualisiert werden!" + }, "revert-changes": "Anmeldedaten speichern", "save-changes": "Änderungen speichern", - "success": { "generic": "Die Regeln wurden aktualisiert!" } + "success": { + "generic": "Die Regeln wurden aktualisiert!" + } }, "search-screen": { - "cols": { "document": "Dokument", "dossier": "Dossier", "pages": "Seiten", "status": "Status" }, - "filters": { "by-dossier": "Nach Dossier filtern", "search-placeholder": "Dossiername..." }, + "cols": { + "document": "Dokument", + "dossier": "Dossier", + "pages": "Seiten", + "status": "Status" + }, + "filters": { + "by-dossier": "Nach Dossier filtern", + "search-placeholder": "Dossiername..." + }, "missing": "Fehlt", "must-contain": "Muss enthalten", "no-data": "Geben Sie einen Suchbegriff in die Suchleiste, um nach Dokumenten oder Inhalten von Dokumenten zu suchen.", @@ -1104,8 +1485,15 @@ "this-dossier": "in diesem Dossier" }, "smtp-auth-config": { - "actions": { "cancel": "Abbrechen", "save": "Anmeldedaten speichern" }, - "form": { "password": "Passwort", "username": "Benutzername", "username-placeholder": "Login-Benutzername" }, + "actions": { + "cancel": "Abbrechen", + "save": "Anmeldedaten speichern" + }, + "form": { + "password": "Passwort", + "username": "Benutzername", + "username-placeholder": "Login-Benutzername" + }, "title": "Authentifizierung aktivieren" }, "time": { @@ -1123,7 +1511,11 @@ "account": "Konto", "admin": "Einstellungen", "downloads": "Meine Downloads", - "language": { "de": "Deutsch", "en": "Englisch", "label": "Sprache" }, + "language": { + "de": "Deutsch", + "en": "Englisch", + "label": "Sprache" + }, "logout": "Abmelden", "trash": "Papierkorb" } @@ -1131,51 +1523,97 @@ } }, "trash": { - "action": { "delete": "Endgültig löschen", "restore": "Wiederherstellen" }, - "bulk": { "delete": "Ausgewählte Dossiert endgültig löschen", "restore": "Ausgewählte Dossiers wiederherstellen" }, + "action": { + "delete": "Endgültig löschen", + "restore": "Wiederherstellen" + }, + "bulk": { + "delete": "Ausgewählte Dossiert endgültig löschen", + "restore": "Ausgewählte Dossiers wiederherstellen" + }, "label": "Papierkorb", - "no-data": { "title": "Es wurde noch kein Dossier angelegt." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf kein Dossier zu." }, + "no-data": { + "title": "Es wurde noch kein Dossier angelegt." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf kein Dossier zu." + }, "table-col-names": { "deleted-on": "Gelöscht am", "name": "Name", "owner": "Eigentümer", "time-to-restore": "Verbleibende Zeit für Wiederherstellung" }, - "table-header": { "title": "{length} {length, plural, one{gelöschtes Dossier} other{gelöschte Dossiers}}" } + "table-header": { + "title": "{length} {length, plural, one{gelöschtes Dossier} other{gelöschte Dossiers}}" + } }, "type": "Typ", "unknown": "Unbekannt", "upload-status": { - "dialog": { "actions": { "cancel": "Upload abbrechen", "re-upload": "Upload erneut versuchen" }, "title": "Datei-Uploads ({len})" }, + "dialog": { + "actions": { + "cancel": "Upload abbrechen", + "re-upload": "Upload erneut versuchen" + }, + "title": "Datei-Uploads ({len})" + }, "error": { "file-size": "Datei zu groß. Die maximal zulässige Größe beträgt {size} MB.", "generic": "Fehler beim Hochladen des Dokuments" } }, "user-listing": { - "action": { "delete": "Benutzer löschen", "edit": "Benutzer bearbeiten" }, + "action": { + "delete": "Benutzer löschen", + "edit": "Benutzer bearbeiten" + }, "add-new": "Neuer Benutzer", - "bulk": { "delete": "Benutzer löschen", "delete-disabled": "Sie können Ihr eigenes Konto nicht löschen." }, - "no-match": { "title": "Die ausgewählten Filter treffen auf keinen Benutzer zu." }, + "bulk": { + "delete": "Benutzer löschen", + "delete-disabled": "Sie können Ihr eigenes Konto nicht löschen." + }, + "no-match": { + "title": "Die ausgewählten Filter treffen auf keinen Benutzer zu." + }, "search": "Suche ...", - "table-col-names": { "active": "Aktiv", "email": "E-Mail-Adresse", "name": "Name", "roles": "Rollen" }, - "table-header": { "title": "{length} {length, plural, one{user} other{users}}" } + "table-col-names": { + "active": "Aktiv", + "email": "E-Mail-Adresse", + "name": "Name", + "roles": "Rollen" + }, + "table-header": { + "title": "{length} {length, plural, one{user} other{users}}" + } }, "user-management": "Benutzerverwaltung", "user-profile": "Mein Profil", "user-profile-screen": { - "actions": { "change-password": "Passwort ändern", "save": "Änderungen speichern" }, - "form": { "email": "Email", "first-name": "Vorname", "last-name": "Nachname" }, + "actions": { + "change-password": "Passwort ändern", + "save": "Änderungen speichern" + }, + "form": { + "email": "Email", + "first-name": "Vorname", + "last-name": "Nachname" + }, "title": "Profil bearbeiten" }, "user-stats": { - "chart": { "users": "Benutzer im Arbeitsbereich" }, + "chart": { + "users": "Benutzer im Arbeitsbereich" + }, "collapse": "Details ausblenden", "expand": "Details anzeigen", "title": "Benutzer" }, - "view-mode": { "list": "Liste", "view-as": "Ansicht als:", "workflow": "Arbeitsablauf" }, + "view-mode": { + "list": "Liste", + "view-as": "Ansicht als:", + "workflow": "Arbeitsablauf" + }, "watermark": "Wasserzeichen", "watermark-screen": { "action": { diff --git a/apps/red-ui/src/assets/i18n/en.json b/apps/red-ui/src/assets/i18n/en.json index 303452bd9..7e6a312a6 100644 --- a/apps/red-ui/src/assets/i18n/en.json +++ b/apps/red-ui/src/assets/i18n/en.json @@ -690,7 +690,8 @@ "deleted": "{count} deleted files", "documents": "{count} {count, plural, one{document} other{documents}}", "due-date": "Due {date}", - "people": "{count} {count, plural, one{user} other{users}}" + "people": "{count} {count, plural, one{user} other{users}}", + "processing-documents": "{count} processing {count, plural, one{document} other{documents}}" } }, "download-file": "Download", @@ -1084,7 +1085,7 @@ "indexing": "Processing", "ocr-processing": "OCR Processing", "processed": "Processed", - "processing": "Processing", + "processing": "Processing...", "reprocess": "Processing", "unassigned": "Unassigned", "under-approval": "Under Approval", diff --git a/apps/red-ui/src/assets/icons/general/analyse.svg b/apps/red-ui/src/assets/icons/general/analyse.svg deleted file mode 100644 index 9f087414c..000000000 --- a/apps/red-ui/src/assets/icons/general/analyse.svg +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - diff --git a/apps/red-ui/src/assets/icons/general/reanalyse.svg b/apps/red-ui/src/assets/icons/general/reanalyse.svg new file mode 100644 index 000000000..e1a919b1a --- /dev/null +++ b/apps/red-ui/src/assets/icons/general/reanalyse.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + diff --git a/apps/red-ui/src/assets/icons/general/resize.svg b/apps/red-ui/src/assets/icons/general/resize.svg index 6f425dfc7..d0bd1e4c2 100644 --- a/apps/red-ui/src/assets/icons/general/resize.svg +++ b/apps/red-ui/src/assets/icons/general/resize.svg @@ -1,25 +1,24 @@ - - status - - + + + - - - - - - - - + fill-rule="nonzero" id="OCR"> + + + + + + + + diff --git a/libs/red-domain/src/lib/dossier-stats/dossier-stats.model.ts b/libs/red-domain/src/lib/dossier-stats/dossier-stats.model.ts index a1cbcf188..b872f4709 100644 --- a/libs/red-domain/src/lib/dossier-stats/dossier-stats.model.ts +++ b/libs/red-domain/src/lib/dossier-stats/dossier-stats.model.ts @@ -1,5 +1,6 @@ import { IDossierStats } from './dossier-stats'; import { FileCountPerProcessingStatus, FileCountPerWorkflowStatus } from './types'; +import { isProcessingStatuses, ProcessingFileStatus } from '../files'; export class DossierStats implements IDossierStats { readonly dossierId: string; @@ -12,6 +13,7 @@ export class DossierStats implements IDossierStats { readonly hasUpdatesFilePresent: boolean; readonly numberOfPages: number; readonly numberOfFiles: number; + readonly numberOfProcessingFiles: number; readonly hasFiles: boolean; @@ -26,6 +28,9 @@ export class DossierStats implements IDossierStats { this.hasUpdatesFilePresent = stats.hasUpdatesFilePresent; this.numberOfPages = stats.numberOfPages; this.numberOfFiles = stats.numberOfFiles; + this.numberOfProcessingFiles = Object.entries(this.fileCountPerProcessingStatus) + .filter(([key, _]) => isProcessingStatuses.includes(key as ProcessingFileStatus)) + .reduce((count, [_, value]) => count + value, 0); this.hasFiles = this.numberOfFiles > 0; } diff --git a/libs/red-domain/src/lib/files/file.model.ts b/libs/red-domain/src/lib/files/file.model.ts index c84931493..e2b29c1a6 100644 --- a/libs/red-domain/src/lib/files/file.model.ts +++ b/libs/red-domain/src/lib/files/file.model.ts @@ -1,17 +1,9 @@ -import { Entity, List } from '@iqser/common-ui'; +import { Entity } from '@iqser/common-ui'; import { StatusSorter } from '../shared'; -import { ProcessingFileStatus, ProcessingFileStatuses, WorkflowFileStatus, WorkflowFileStatuses } from './types'; +import { isProcessingStatuses, ProcessingFileStatus, ProcessingFileStatuses, WorkflowFileStatus, WorkflowFileStatuses } from './types'; import { IFile } from './file'; import { FileAttributes, IFileAttributesConfig } from '../file-attributes'; -const processingStatuses: List = [ - ProcessingFileStatuses.REPROCESS, - ProcessingFileStatuses.FULLREPROCESS, - ProcessingFileStatuses.OCR_PROCESSING, - ProcessingFileStatuses.INDEXING, - ProcessingFileStatuses.PROCESSING, -] as const; - export class File extends Entity implements IFile { readonly added?: string; readonly allManualRedactionsApplied: boolean; @@ -61,7 +53,6 @@ export class File extends Entity implements IFile { readonly isUnderApproval: boolean; readonly canBeApproved: boolean; readonly canBeOpened: boolean; - readonly isWorkable: boolean; readonly canBeOCRed: boolean; constructor(file: IFile, readonly reviewerName: string, fileAttributesConfig?: IFileAttributesConfig) { @@ -107,14 +98,13 @@ export class File extends Entity implements IFile { this.hintsOnly = this.hasHints && !this.hasRedactions; this.hasNone = !this.hasRedactions && !this.hasHints && !this.hasSuggestions; this.isPending = this.processingStatus === ProcessingFileStatuses.UNPROCESSED; - this.isProcessing = processingStatuses.includes(this.processingStatus); + this.isProcessing = isProcessingStatuses.includes(this.processingStatus); this.isApproved = this.workflowStatus === WorkflowFileStatuses.APPROVED; this.isUnassigned = this.workflowStatus === WorkflowFileStatuses.UNASSIGNED; this.isUnderReview = this.workflowStatus === WorkflowFileStatuses.UNDER_REVIEW; this.isUnderApproval = this.workflowStatus === WorkflowFileStatuses.UNDER_APPROVAL; this.canBeApproved = !this.analysisRequired && !this.hasSuggestions; this.canBeOpened = !this.isError && !this.isPending && this.numberOfAnalyses > 0; - this.isWorkable = !this.isProcessing && this.canBeOpened; this.canBeOCRed = !this.excluded && !this.lastOCRTime && (this.isUnassigned || this.isUnderReview || this.isUnderApproval); if (fileAttributesConfig) { diff --git a/libs/red-domain/src/lib/files/types.ts b/libs/red-domain/src/lib/files/types.ts index cc5e23930..9cc7eb301 100644 --- a/libs/red-domain/src/lib/files/types.ts +++ b/libs/red-domain/src/lib/files/types.ts @@ -1,3 +1,5 @@ +import { List } from '@iqser/common-ui'; + export const WorkflowFileStatuses = { APPROVED: 'APPROVED', UNASSIGNED: 'UNASSIGNED', @@ -20,3 +22,11 @@ export const ProcessingFileStatuses = { } as const; export type ProcessingFileStatus = keyof typeof ProcessingFileStatuses; + +export const isProcessingStatuses: List = [ + ProcessingFileStatuses.REPROCESS, + ProcessingFileStatuses.FULLREPROCESS, + ProcessingFileStatuses.OCR_PROCESSING, + ProcessingFileStatuses.INDEXING, + ProcessingFileStatuses.PROCESSING, +] as const;