DM-424, add component rules screen, update title for entity rule screen, adapt api flags to reflect changes
This commit is contained in:
parent
e73138a66f
commit
26dd9567fb
@ -49,7 +49,7 @@ const dossierTemplateIdRoutes: IqserRoutes = [
|
||||
],
|
||||
},
|
||||
{
|
||||
path: 'rules',
|
||||
path: 'entity-rules',
|
||||
component: BaseDossierTemplateScreenComponent,
|
||||
canActivate: [CompositeRouteGuard, IqserPermissionsGuard],
|
||||
data: {
|
||||
@ -59,7 +59,7 @@ const dossierTemplateIdRoutes: IqserRoutes = [
|
||||
redirectTo: 'info',
|
||||
},
|
||||
},
|
||||
loadChildren: () => import('./screens/rules/rules.module').then(m => m.RulesModule),
|
||||
loadChildren: () => import('./screens/rules/entity-rules.module').then(m => m.EntityRulesModule),
|
||||
},
|
||||
{
|
||||
path: 'component-rules',
|
||||
|
||||
@ -57,7 +57,6 @@ import { DossierTemplateActionsComponent } from './shared/components/dossier-tem
|
||||
import { IqserUsersModule } from '@iqser/common-ui/lib/users';
|
||||
import { TenantPipe } from '@iqser/common-ui/lib/tenants';
|
||||
import { SelectComponent } from '@shared/components/select/select.component';
|
||||
import { ComponentRulesService } from './services/component-rules.service';
|
||||
|
||||
const dialogs = [
|
||||
AddEditCloneDossierTemplateDialogComponent,
|
||||
@ -98,7 +97,7 @@ const components = [
|
||||
|
||||
@NgModule({
|
||||
declarations: [...components],
|
||||
providers: [AdminDialogService, AuditService, DigitalSignatureService, RulesService, ComponentRulesService, SmtpConfigService],
|
||||
providers: [AdminDialogService, AuditService, DigitalSignatureService, RulesService, SmtpConfigService],
|
||||
imports: [
|
||||
CommonModule,
|
||||
SharedModule,
|
||||
|
||||
@ -8,7 +8,7 @@ import { DOSSIER_TEMPLATE_ID } from '@red/domain';
|
||||
import { EditorThemeService } from '@services/editor-theme.service';
|
||||
import { ComponentCanDeactivate } from '@guards/can-deactivate.guard';
|
||||
import { Debounce, getParam } from '@iqser/common-ui/lib/utils';
|
||||
import { ComponentRulesService } from '../../../services/component-rules.service';
|
||||
import { RulesService } from '../../../services/rules.service';
|
||||
import ICodeEditor = monaco.editor.ICodeEditor;
|
||||
import IModelDeltaDecoration = monaco.editor.IModelDeltaDecoration;
|
||||
import IStandaloneEditorConstructionOptions = monaco.editor.IStandaloneEditorConstructionOptions;
|
||||
@ -46,7 +46,7 @@ export class ComponentRulesScreenComponent implements OnInit, ComponentCanDeacti
|
||||
|
||||
constructor(
|
||||
readonly permissionsService: PermissionsService,
|
||||
private readonly _componentRulesService: ComponentRulesService,
|
||||
private readonly _rulesService: RulesService,
|
||||
private readonly _changeDetectorRef: ChangeDetectorRef,
|
||||
private readonly _toaster: Toaster,
|
||||
private readonly _loadingService: LoadingService,
|
||||
@ -99,9 +99,10 @@ export class ComponentRulesScreenComponent implements OnInit, ComponentCanDeacti
|
||||
this._loadingService.start();
|
||||
this._removeErrorMarkers();
|
||||
await firstValueFrom(
|
||||
this._componentRulesService.uploadRules({
|
||||
this._rulesService.uploadRules({
|
||||
rules: this._codeEditor.getModel().getValue(),
|
||||
dossierTemplateId: this.#dossierTemplateId,
|
||||
ruleFileType: 'COMPONENT',
|
||||
}),
|
||||
).then(
|
||||
async () => {
|
||||
@ -205,7 +206,7 @@ export class ComponentRulesScreenComponent implements OnInit, ComponentCanDeacti
|
||||
|
||||
private async _initialize() {
|
||||
this._loadingService.start();
|
||||
await firstValueFrom(this._componentRulesService.download(this.#dossierTemplateId)).then(
|
||||
await firstValueFrom(this._rulesService.download(this.#dossierTemplateId, 'COMPONENT')).then(
|
||||
rules => {
|
||||
this.currentLines = this.initialLines = rules.rules.split('\n');
|
||||
this.revert();
|
||||
@ -1,7 +1,7 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { RouterModule } from '@angular/router';
|
||||
import { ComponentRulesScreenComponent } from './rules-screen/component-rules-screen.component';
|
||||
import { ComponentRulesScreenComponent } from './component-rules-screen/component-rules-screen.component';
|
||||
import { MonacoEditorModule } from '@materia-ui/ngx-monaco-editor';
|
||||
import { PendingChangesGuard } from '@guards/can-deactivate.guard';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
<div class="header-container">
|
||||
<div [translate]="'rules-screen.title'" class="heading-l"></div>
|
||||
<div [translate]="'rules-screen.warning-text'" class="error"></div>
|
||||
<div [translate]="'entity-rules-screen.title'" class="heading-l"></div>
|
||||
<div [translate]="'entity-rules-screen.warning-text'" class="error"></div>
|
||||
</div>
|
||||
|
||||
<ngx-monaco-editor (init)="onCodeEditorInit($event)" [(ngModel)]="codeEditorText" [options]="editorOptions"></ngx-monaco-editor>
|
||||
@ -9,18 +9,18 @@
|
||||
<div (click)="goToErrors()" *ngIf="numberOfErrors()" class="errors">
|
||||
<span>
|
||||
<mat-icon [svgIcon]="'iqser:alert-circle'" class="icon"></mat-icon>
|
||||
<span [translateParams]="{ errors: numberOfErrors() }" [translate]="'rules-screen.errors-found'"></span>
|
||||
<span [translateParams]="{ errors: numberOfErrors() }" [translate]="'entity-rules-screen.errors-found'"></span>
|
||||
</span>
|
||||
<mat-icon [svgIcon]="'iqser:expand'" class="icon face-up"></mat-icon>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<iqser-icon-button
|
||||
(action)="save()"
|
||||
[label]="'rules-screen.save-changes' | translate"
|
||||
[label]="'entity-rules-screen.save-changes' | translate"
|
||||
[type]="iconButtonTypes.primary"
|
||||
icon="iqser:check"
|
||||
></iqser-icon-button>
|
||||
|
||||
<div (click)="revert()" [translate]="'rules-screen.revert-changes'" class="all-caps-label cancel"></div>
|
||||
<div (click)="revert()" [translate]="'entity-rules-screen.revert-changes'" class="all-caps-label cancel"></div>
|
||||
</div>
|
||||
</div>
|
||||
@ -20,11 +20,11 @@ interface SyntaxError {
|
||||
}
|
||||
|
||||
@Component({
|
||||
templateUrl: './rules-screen.component.html',
|
||||
styleUrls: ['./rules-screen.component.scss'],
|
||||
templateUrl: './entity-rules-screen.component.html',
|
||||
styleUrls: ['./entity-rules-screen.component.scss'],
|
||||
changeDetection: ChangeDetectionStrategy.OnPush,
|
||||
})
|
||||
export class RulesScreenComponent implements OnInit, ComponentCanDeactivate {
|
||||
export class EntityRulesScreenComponent implements OnInit, ComponentCanDeactivate {
|
||||
readonly iconButtonTypes = IconButtonTypes;
|
||||
readonly editorOptions: IStandaloneEditorConstructionOptions = {
|
||||
theme: 'vs',
|
||||
@ -106,13 +106,13 @@ export class RulesScreenComponent implements OnInit, ComponentCanDeactivate {
|
||||
).then(
|
||||
async () => {
|
||||
await this._initialize();
|
||||
this._toaster.success(_('rules-screen.success.generic'));
|
||||
this._toaster.success(_('entity-rules-screen.success.generic'));
|
||||
},
|
||||
error => {
|
||||
const errors = error.error as SyntaxError[] | undefined;
|
||||
this._drawErrorMarkers(errors);
|
||||
this._loadingService.stop();
|
||||
this._toaster.error(_('rules-screen.error.generic'));
|
||||
this._toaster.error(_('entity-rules-screen.error.generic'));
|
||||
},
|
||||
);
|
||||
}
|
||||
@ -1,7 +1,7 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { RouterModule } from '@angular/router';
|
||||
import { RulesScreenComponent } from './rules-screen/rules-screen.component';
|
||||
import { EntityRulesScreenComponent } from './entity-rules-screen/entity-rules-screen.component';
|
||||
import { MonacoEditorModule } from '@materia-ui/ngx-monaco-editor';
|
||||
import { PendingChangesGuard } from '@guards/can-deactivate.guard';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
@ -9,10 +9,10 @@ import { IconButtonComponent } from '@iqser/common-ui';
|
||||
import { FormsModule } from '@angular/forms';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
|
||||
const routes = [{ path: '', component: RulesScreenComponent, canDeactivate: [PendingChangesGuard] }];
|
||||
const routes = [{ path: '', component: EntityRulesScreenComponent, canDeactivate: [PendingChangesGuard] }];
|
||||
|
||||
@NgModule({
|
||||
declarations: [RulesScreenComponent],
|
||||
declarations: [EntityRulesScreenComponent],
|
||||
imports: [
|
||||
RouterModule.forChild(routes),
|
||||
CommonModule,
|
||||
@ -23,4 +23,4 @@ const routes = [{ path: '', component: RulesScreenComponent, canDeactivate: [Pen
|
||||
MatIconModule,
|
||||
],
|
||||
})
|
||||
export class RulesModule {}
|
||||
export class EntityRulesModule {}
|
||||
@ -1,16 +0,0 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { GenericService } from '@iqser/common-ui';
|
||||
import { IComponentRules } from '@red/domain';
|
||||
|
||||
@Injectable()
|
||||
export class ComponentRulesService extends GenericService<IComponentRules> {
|
||||
protected readonly _defaultModelPath = 'rules';
|
||||
|
||||
download(dossierTemplateId: string) {
|
||||
return this._getOne([dossierTemplateId]);
|
||||
}
|
||||
|
||||
uploadRules(body: IComponentRules) {
|
||||
return this._post<unknown>(body);
|
||||
}
|
||||
}
|
||||
@ -6,11 +6,11 @@ import { IRules } from '@red/domain';
|
||||
export class RulesService extends GenericService<IRules> {
|
||||
protected readonly _defaultModelPath = 'rules';
|
||||
|
||||
download(dossierTemplateId: string) {
|
||||
return this._getOne([dossierTemplateId]);
|
||||
download(dossierTemplateId: string, ruleFileType: IRules['ruleFileType'] = 'ENTITY') {
|
||||
return this._getOne([dossierTemplateId], this._defaultModelPath, [{ key: 'ruleFileType', value: ruleFileType }]);
|
||||
}
|
||||
|
||||
uploadRules(body: IRules) {
|
||||
return this._post<unknown>(body);
|
||||
return this._post<unknown>({ ...body, ruleFileType: body.ruleFileType ?? 'ENTITY' });
|
||||
}
|
||||
}
|
||||
|
||||
@ -95,8 +95,8 @@ export class AdminSideNavComponent implements OnInit {
|
||||
show: true,
|
||||
},
|
||||
{
|
||||
screen: 'rules',
|
||||
label: _('admin-side-nav.rule-editor'),
|
||||
screen: 'entity-rules',
|
||||
label: _('admin-side-nav.entity-rule-editor'),
|
||||
show: (this.isIqserDevMode || this.canAccessRulesInDocumine) && this._permissionsService.has(Roles.rules.read),
|
||||
},
|
||||
{
|
||||
|
||||
@ -245,20 +245,17 @@
|
||||
"dossier-templates": "Dossier-Vorlage",
|
||||
"entities": "Entities",
|
||||
"entity-info": "Info",
|
||||
"entity-rule-editor": "",
|
||||
"false-positive": "False Positive",
|
||||
"false-recommendations": "False Recommendations",
|
||||
"file-attributes": "File Attributes",
|
||||
"justifications": "Justifications",
|
||||
"license-information": "License Information",
|
||||
"reports": "Reports",
|
||||
"rule-editor": "Rule Editor",
|
||||
"settings": "Einstellungen",
|
||||
"user-management": "User Management",
|
||||
"watermarks": "Watermarks"
|
||||
},
|
||||
"annotation": {
|
||||
"pending": "(Pending Analysis)"
|
||||
},
|
||||
"annotation-actions": {
|
||||
"accept-recommendation": {
|
||||
"label": "Empfehlung annehmen"
|
||||
@ -341,14 +338,14 @@
|
||||
"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-hint": {
|
||||
"error": "Failed to remove hint: {error}",
|
||||
"success": "Hint removed!"
|
||||
},
|
||||
"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."
|
||||
@ -365,14 +362,14 @@
|
||||
"error": "Fehler beim Vorschlagen der Neukategorisierung des Bilds: {error}",
|
||||
"success": "Bild-Neuklassifizierung angefordert."
|
||||
},
|
||||
"request-remove": {
|
||||
"error": "Fehler beim Erstellen des Vorschlags für das Entfernen der Schwärzung: {error}",
|
||||
"success": "Entfernen der Schwärzung wurde vorgeschlagen!"
|
||||
},
|
||||
"request-remove-hint": {
|
||||
"error": "Failed to request removal of hint: {error}",
|
||||
"success": "Requested to remove hint!"
|
||||
},
|
||||
"request-remove": {
|
||||
"error": "Fehler beim Erstellen des Vorschlags für das Entfernen der Schwärzung: {error}",
|
||||
"success": "Entfernen der Schwärzung wurde vorgeschlagen!"
|
||||
},
|
||||
"suggest": {
|
||||
"error": "Vorschlag einer Schwärzung wurde nicht gespeichert: {error}",
|
||||
"success": "Vorschlag einer Schwärzung gespeichert"
|
||||
@ -389,15 +386,15 @@
|
||||
"remove-highlights": {
|
||||
"label": "Remove Selected Earmarks"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"resize-accept": {
|
||||
"label": "Größe speichern"
|
||||
},
|
||||
"resize-cancel": {
|
||||
"label": "Größenänderung abbrechen"
|
||||
},
|
||||
"resize": {
|
||||
"label": "Größe ändern"
|
||||
},
|
||||
"see-references": {
|
||||
"label": "See References"
|
||||
},
|
||||
@ -439,6 +436,9 @@
|
||||
"suggestion-resize": "Vorgeschlagene Größenänderung",
|
||||
"text-highlight": "Earmark"
|
||||
},
|
||||
"annotation": {
|
||||
"pending": "(Pending Analysis)"
|
||||
},
|
||||
"archived-dossiers-listing": {
|
||||
"no-data": {
|
||||
"title": "No archived dossiers."
|
||||
@ -618,18 +618,14 @@
|
||||
"warning": "Achtung: Diese Aktion kann nicht rückgängig gemacht werden!"
|
||||
},
|
||||
"confirmation-dialog": {
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen. Möchten Sie es trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-file-without-analysis": {
|
||||
"confirmationText": "Approve without analysis",
|
||||
"denyText": "Cancel",
|
||||
"question": "Analysis required to detect new redactions.",
|
||||
"title": "Warning!"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen. Möchten Sie sie trotzdem genehmigen?",
|
||||
"approve-file": {
|
||||
"question": "Dieses Dokument enthält ungesehene Änderungen. Möchten Sie es trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"approve-multiple-files-without-analysis": {
|
||||
@ -638,6 +634,10 @@
|
||||
"question": "Analysis required to detect new redactions for at least one file.",
|
||||
"title": "Warning"
|
||||
},
|
||||
"approve-multiple-files": {
|
||||
"question": "Mindestens eine der ausgewählten Dateien enthält ungesehene Änderungen. Möchten Sie sie trotzdem genehmigen?",
|
||||
"title": "Warnung!"
|
||||
},
|
||||
"assign-file-to-me": {
|
||||
"question": {
|
||||
"multiple": "Dieses Dokument wird gerade von einer anderen Person geprüft. Möchten Sie Reviewer werden und sich selbst dem Dokument zuweisen?",
|
||||
@ -983,13 +983,13 @@
|
||||
"recent": "Neu ({hours} h)",
|
||||
"unassigned": "Niemandem zugewiesen"
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": "Datei analysieren"
|
||||
},
|
||||
"reanalyse-dossier": {
|
||||
"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"
|
||||
},
|
||||
"start-auto-analysis": "Enable auto-analysis",
|
||||
"stop-auto-analysis": "Stop auto-analysis",
|
||||
"table-col-names": {
|
||||
@ -1058,14 +1058,6 @@
|
||||
"total-documents": "Anzahl der Dokumente",
|
||||
"total-people": "<strong>{count}</strong> {count, plural, one{User} other {Users}}"
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Active",
|
||||
"inactive": "Inactive",
|
||||
"incomplete": "Incomplete"
|
||||
}
|
||||
},
|
||||
"dossier-templates-listing": {
|
||||
"action": {
|
||||
"clone": "Clone Template",
|
||||
@ -1101,6 +1093,14 @@
|
||||
"title": "{length} {length, plural, one{Dossier-Vorlage} other{Dossier-Vorlagen}}"
|
||||
}
|
||||
},
|
||||
"dossier-templates": {
|
||||
"label": "Dossier-Vorlagen",
|
||||
"status": {
|
||||
"active": "Active",
|
||||
"inactive": "Inactive",
|
||||
"incomplete": "Incomplete"
|
||||
}
|
||||
},
|
||||
"dossier-watermark-selector": {
|
||||
"heading": "Watermarks on documents",
|
||||
"no-watermark": "There is no watermark defined for the dossier template.<br>Contact your app admin to define one.",
|
||||
@ -1284,6 +1284,19 @@
|
||||
"title": "{length} {length, plural, one{Wörterbuch} other{Wörterbücher}}"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": ""
|
||||
},
|
||||
"errors-found": "",
|
||||
"revert-changes": "",
|
||||
"save-changes": "",
|
||||
"success": {
|
||||
"generic": ""
|
||||
},
|
||||
"title": "",
|
||||
"warning-text": ""
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
@ -1299,13 +1312,13 @@
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Dieses Dossier wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
},
|
||||
"file-dossier": {
|
||||
"action": "Zurück zur Übersicht",
|
||||
"label": "Das Dossier dieser Datei wurde gelöscht!"
|
||||
},
|
||||
"file": {
|
||||
"action": "Zurück zum Dossier",
|
||||
"label": "Diese Datei wurde gelöscht!"
|
||||
}
|
||||
},
|
||||
"file-preview": {
|
||||
@ -1323,12 +1336,6 @@
|
||||
},
|
||||
"exact-date": "{day} {month} {year} um {hour}:{minute} Uhr",
|
||||
"file": "Datei",
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Failed to update file attribute value!",
|
||||
"success": "File attribute value has been updated successfully!"
|
||||
}
|
||||
},
|
||||
"file-attribute-encoding-types": {
|
||||
"ascii": "ASCII",
|
||||
"iso": "ISO-8859-1",
|
||||
@ -1339,6 +1346,12 @@
|
||||
"number": "Nummer",
|
||||
"text": "Freier Text"
|
||||
},
|
||||
"file-attribute": {
|
||||
"update": {
|
||||
"error": "Failed to update file attribute value!",
|
||||
"success": "File attribute value has been updated successfully!"
|
||||
}
|
||||
},
|
||||
"file-attributes-configurations": {
|
||||
"cancel": "Cancel",
|
||||
"form": {
|
||||
@ -1552,6 +1565,15 @@
|
||||
"csv": "File attributes were imported successfully from uploaded CSV file."
|
||||
}
|
||||
},
|
||||
"filter-menu": {
|
||||
"filter-options": "Filteroptionen",
|
||||
"filter-types": "Filter",
|
||||
"label": "Filter",
|
||||
"pages-without-annotations": "Only pages without annotations",
|
||||
"redaction-changes": "Nur Anmerkungen mit Schwärzungsänderungen",
|
||||
"unseen-pages": "Nur Anmerkungen auf unsichtbaren Seiten",
|
||||
"with-comments": "Nur Anmerkungen mit Kommentaren"
|
||||
},
|
||||
"filter": {
|
||||
"analysis": "Analyse erforderlich",
|
||||
"comment": "Kommentare",
|
||||
@ -1562,15 +1584,6 @@
|
||||
"suggestion": "Vorgeschlagene Schwärzung",
|
||||
"updated": "Aktualisiert"
|
||||
},
|
||||
"filter-menu": {
|
||||
"filter-options": "Filteroptionen",
|
||||
"filter-types": "Filter",
|
||||
"label": "Filter",
|
||||
"pages-without-annotations": "Only pages without annotations",
|
||||
"redaction-changes": "Nur Anmerkungen mit Schwärzungsänderungen",
|
||||
"unseen-pages": "Nur Anmerkungen auf unsichtbaren Seiten",
|
||||
"with-comments": "Nur Anmerkungen mit Kommentaren"
|
||||
},
|
||||
"filters": {
|
||||
"assigned-people": "Beauftragt",
|
||||
"documents-status": "Documents State",
|
||||
@ -1737,6 +1750,7 @@
|
||||
},
|
||||
"license-info-screen": {
|
||||
"backend-version": "Backend-Version der Anwendung",
|
||||
"capacity-details": "Capacity Details",
|
||||
"capacity": {
|
||||
"active-documents": "Active Documents",
|
||||
"all-documents": "Retention Capacity Used",
|
||||
@ -1746,12 +1760,12 @@
|
||||
"trash-documents": "Documents in Trash",
|
||||
"unused": "Unused Storage"
|
||||
},
|
||||
"capacity-details": "Capacity Details",
|
||||
"copyright-claim-text": "Copyright © 2020 - {currentYear} knecon",
|
||||
"copyright-claim-title": "Copyright",
|
||||
"current-analyzed-pages": "In aktuellem Lizenzzeitraum analysierte Seiten",
|
||||
"current-volume-analyzed": "Data Volume Analyzed in Licensing Period",
|
||||
"custom-app-title": "Name der Anwendung",
|
||||
"email-report": "E-Mail-Bericht",
|
||||
"email": {
|
||||
"body": {
|
||||
"analyzed": "Im aktuellen Lizenzzeitraum insgesamt analysierte Seiten: {pages}.",
|
||||
@ -1759,7 +1773,6 @@
|
||||
},
|
||||
"title": "Lizenzbericht {licenseCustomer}"
|
||||
},
|
||||
"email-report": "E-Mail-Bericht",
|
||||
"end-user-license-text": "Die Nutzung dieses Produkts unterliegt den Bedingungen der Endbenutzer-Lizenzvereinbarung für den RedactManager, sofern darin nichts anderweitig festgelegt.",
|
||||
"end-user-license-title": "Endbenutzer-Lizenzvereinbarung",
|
||||
"license-title": "License Title",
|
||||
@ -1844,13 +1857,6 @@
|
||||
"user-promoted-to-approver": "<b>{user}</b> wurde im Dossier <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> zum Genehmiger ernannt!",
|
||||
"user-removed-as-dossier-member": "<b>{user}</b> wurde als Mitglied von: <b>{dossierHref, select, null{{dossierName}} other{<a href=\"{dossierHref}\" target=\"_blank\">{dossierName}</a>}}</b> entfernt!"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Notifications",
|
||||
"deleted-dossier": "Deleted Dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Mark as {type, select, read{read} unread{unread} other{}}"
|
||||
},
|
||||
"notifications-screen": {
|
||||
"category": {
|
||||
"email-notifications": "E-Mail Benachrichtigungen",
|
||||
@ -1864,6 +1870,7 @@
|
||||
"dossier": "Dossierbezogene Benachrichtigungen",
|
||||
"other": "Andere Benachrichtigungen"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, in welcher Kategorie Sie benachrichtigt werden möchten",
|
||||
"options": {
|
||||
"ASSIGN_APPROVER": "Wenn ich einem Dokument als Genehmiger zugewiesen bin",
|
||||
"ASSIGN_REVIEWER": "Wenn ich einem Dokument als Überprüfer zugewiesen bin",
|
||||
@ -1881,7 +1888,6 @@
|
||||
"USER_PROMOTED_TO_APPROVER": "Wenn ich Genehmiger in einem Dossier werde",
|
||||
"USER_REMOVED_AS_DOSSIER_MEMBER": "Wenn ich die Dossier-Mitgliedschaft verliere"
|
||||
},
|
||||
"options-title": "Wählen Sie aus, in welcher Kategorie Sie benachrichtigt werden möchten",
|
||||
"schedule": {
|
||||
"daily": "Tägliche Zusammenfassung",
|
||||
"instant": "Sofortig",
|
||||
@ -1889,6 +1895,13 @@
|
||||
},
|
||||
"title": "Benachrichtigungseinstellungen"
|
||||
},
|
||||
"notifications": {
|
||||
"button-text": "Notifications",
|
||||
"deleted-dossier": "Deleted Dossier",
|
||||
"label": "Benachrichtigungen",
|
||||
"mark-all-as-read": "Alle als gelesen markieren",
|
||||
"mark-as": "Mark as {type, select, read{read} unread{unread} other{}}"
|
||||
},
|
||||
"ocr": {
|
||||
"confirmation-dialog": {
|
||||
"cancel": "Cancel",
|
||||
@ -1980,16 +1993,16 @@
|
||||
"warnings-subtitle": "Do not show again options",
|
||||
"warnings-title": "Prompts and Dialogs Settings"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Processing",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"processing-status": {
|
||||
"ocr": "OCR",
|
||||
"pending": "Pending",
|
||||
"processed": "Processed",
|
||||
"processing": "Processing"
|
||||
},
|
||||
"processing": {
|
||||
"basic": "Processing",
|
||||
"ocr": "OCR"
|
||||
},
|
||||
"readonly": "Lesemodus",
|
||||
"readonly-archived": "Read only (archived)",
|
||||
"redact-text": {
|
||||
@ -2239,25 +2252,6 @@
|
||||
},
|
||||
"title": "Structured Component Management"
|
||||
},
|
||||
"rules-screen": {
|
||||
"error": {
|
||||
"generic": "Es ist ein Fehler aufgetreten ... Die Regeln konnten nicht aktualisiert werden!"
|
||||
},
|
||||
"errors-found": "{errors, plural, one{An error} other{{errors} errors}} found in rules",
|
||||
"revert-changes": "Anmeldedaten speichern",
|
||||
"save-changes": "Änderungen speichern",
|
||||
"success": {
|
||||
"generic": "Die Regeln wurden aktualisiert!"
|
||||
},
|
||||
"title": "Rule Editor",
|
||||
"warning-text": "Warning: experimental feature!"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "ganze Plattform",
|
||||
"all-dossiers": "all documents",
|
||||
"placeholder": "Nach Dokumenten oder Dokumenteninhalt suchen",
|
||||
"this-dossier": "in diesem Dossier"
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Bevollmächtigter",
|
||||
@ -2281,6 +2275,12 @@
|
||||
"no-match": "Keine Dokumente entsprechen Ihren aktuellen Filtern.",
|
||||
"table-header": "{length} {length, plural, one{Suchergebnis} other{Suchergebnisse}}"
|
||||
},
|
||||
"search": {
|
||||
"active-dossiers": "ganze Plattform",
|
||||
"all-dossiers": "all documents",
|
||||
"placeholder": "Nach Dokumenten oder Dokumenteninhalt suchen",
|
||||
"this-dossier": "in diesem Dossier"
|
||||
},
|
||||
"seconds": "seconds",
|
||||
"size": "Size",
|
||||
"smtp-auth-config": {
|
||||
@ -2541,4 +2541,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Gestern"
|
||||
}
|
||||
}
|
||||
|
||||
@ -245,13 +245,13 @@
|
||||
"dossier-templates": "Dossier Templates",
|
||||
"entities": "Entities",
|
||||
"entity-info": "Info",
|
||||
"entity-rule-editor": "Entity Rule Editor",
|
||||
"false-positive": "False Positive",
|
||||
"false-recommendations": "False Recommendations",
|
||||
"file-attributes": "File Attributes",
|
||||
"justifications": "Justifications",
|
||||
"license-information": "License Information",
|
||||
"reports": "Reports",
|
||||
"rule-editor": "Rule Editor",
|
||||
"settings": "Settings",
|
||||
"user-management": "User Management",
|
||||
"watermarks": "Watermarks"
|
||||
@ -1284,6 +1284,19 @@
|
||||
"title": "{length} {length, plural, one{entity} other{entities}}"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": "Something went wrong... Entity rules update failed!"
|
||||
},
|
||||
"errors-found": "{errors, plural, one{An error} other{{errors} errors}} found in rules",
|
||||
"revert-changes": "Revert",
|
||||
"save-changes": "Save Changes",
|
||||
"success": {
|
||||
"generic": "Entity rules updated!"
|
||||
},
|
||||
"title": "Entity Rule Editor",
|
||||
"warning-text": "Warning: experimental feature!"
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
@ -2239,19 +2252,6 @@
|
||||
},
|
||||
"title": "Structured Component Management"
|
||||
},
|
||||
"rules-screen": {
|
||||
"error": {
|
||||
"generic": "Something went wrong... Rules update failed!"
|
||||
},
|
||||
"errors-found": "{errors, plural, one{An error} other{{errors} errors}} found in rules",
|
||||
"revert-changes": "Revert",
|
||||
"save-changes": "Save Changes",
|
||||
"success": {
|
||||
"generic": "Rules updated!"
|
||||
},
|
||||
"title": "Rule Editor",
|
||||
"warning-text": "Warning: experimental feature!"
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Assignee",
|
||||
@ -2541,4 +2541,4 @@
|
||||
}
|
||||
},
|
||||
"yesterday": "Yesterday"
|
||||
}
|
||||
}
|
||||
|
||||
@ -245,13 +245,13 @@
|
||||
"dossier-templates": "Dossier-Vorlage",
|
||||
"entities": "",
|
||||
"entity-info": "",
|
||||
"entity-rule-editor": "",
|
||||
"false-positive": "",
|
||||
"false-recommendations": "",
|
||||
"file-attributes": "",
|
||||
"justifications": "",
|
||||
"license-information": "",
|
||||
"reports": "",
|
||||
"rule-editor": "",
|
||||
"settings": "Einstellungen",
|
||||
"user-management": "",
|
||||
"watermarks": ""
|
||||
@ -1284,6 +1284,19 @@
|
||||
"title": "{length} {length, plural, one{Wörterbuch} other{Wörterbücher}}"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": ""
|
||||
},
|
||||
"errors-found": "",
|
||||
"revert-changes": "",
|
||||
"save-changes": "",
|
||||
"success": {
|
||||
"generic": ""
|
||||
},
|
||||
"title": "",
|
||||
"warning-text": ""
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
@ -2239,19 +2252,6 @@
|
||||
},
|
||||
"title": ""
|
||||
},
|
||||
"rules-screen": {
|
||||
"error": {
|
||||
"generic": "Es ist ein Fehler aufgetreten ... Die Regeln konnten nicht aktualisiert werden!"
|
||||
},
|
||||
"errors-found": "",
|
||||
"revert-changes": "Anmeldedaten speichern",
|
||||
"save-changes": "Änderungen speichern",
|
||||
"success": {
|
||||
"generic": "Die Regeln wurden aktualisiert!"
|
||||
},
|
||||
"title": "",
|
||||
"warning-text": ""
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Bevollmächtigter",
|
||||
|
||||
@ -245,13 +245,13 @@
|
||||
"dossier-templates": "Dossier Templates",
|
||||
"entities": "Entities",
|
||||
"entity-info": "Info",
|
||||
"entity-rule-editor": "Entity Rule Editor",
|
||||
"false-positive": "False Positive",
|
||||
"false-recommendations": "False Recommendations",
|
||||
"file-attributes": "File Attributes",
|
||||
"justifications": "Justifications",
|
||||
"license-information": "License Information",
|
||||
"reports": "Reports",
|
||||
"rule-editor": "Rule Editor",
|
||||
"settings": "Settings",
|
||||
"user-management": "User Management",
|
||||
"watermarks": "Watermarks"
|
||||
@ -1284,6 +1284,19 @@
|
||||
"title": "{length} {length, plural, one{entity} other{entities}}"
|
||||
}
|
||||
},
|
||||
"entity-rules-screen": {
|
||||
"error": {
|
||||
"generic": "Something went wrong... Entity rules update failed!"
|
||||
},
|
||||
"errors-found": "{errors, plural, one{An error} other{{errors} errors}} found in rules",
|
||||
"revert-changes": "Revert",
|
||||
"save-changes": "Save Changes",
|
||||
"success": {
|
||||
"generic": "Entity rules updated!"
|
||||
},
|
||||
"title": "Entity Rule Editor",
|
||||
"warning-text": "Warning: experimental feature!"
|
||||
},
|
||||
"entity": {
|
||||
"info": {
|
||||
"actions": {
|
||||
@ -2239,19 +2252,6 @@
|
||||
},
|
||||
"title": "Component View"
|
||||
},
|
||||
"rules-screen": {
|
||||
"error": {
|
||||
"generic": "Something went wrong... Rules update failed!"
|
||||
},
|
||||
"errors-found": "{errors, plural, one{An error} other{{errors} errors}} found in rules",
|
||||
"revert-changes": "Revert",
|
||||
"save-changes": "Save Changes",
|
||||
"success": {
|
||||
"generic": "Rules updated!"
|
||||
},
|
||||
"title": "Rule Editor",
|
||||
"warning-text": "Warning: experimental feature!"
|
||||
},
|
||||
"search-screen": {
|
||||
"cols": {
|
||||
"assignee": "Assignee",
|
||||
|
||||
@ -3,9 +3,13 @@
|
||||
*/
|
||||
export interface IRules {
|
||||
/**
|
||||
* The DossierTemplate Id for these rules
|
||||
* The DossierTemplate ID for these rules
|
||||
*/
|
||||
dossierTemplateId?: string;
|
||||
/**
|
||||
* The file type to be retrieved/saved under, defaults to ENTITY
|
||||
*/
|
||||
ruleFileType?: 'ENTITY' | 'COMPONENT';
|
||||
/**
|
||||
* The actual string of rules.
|
||||
*/
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user