Translation rework: delete file attributes, dossier attributes, audit categories
This commit is contained in:
parent
74a82a4745
commit
99b6676641
@ -27,7 +27,7 @@
|
||||
<label translate="add-edit-dossier-attribute.form.type"></label>
|
||||
<mat-select formControlName="type">
|
||||
<mat-option *ngFor="let type of typeOptions" [value]="type">
|
||||
{{ 'dossier-attribute-types.' + type | translate }}
|
||||
{{ translations[type] | translate }}
|
||||
</mat-option>
|
||||
</mat-select>
|
||||
</div>
|
||||
|
||||
@ -3,11 +3,12 @@ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { DossierAttributeConfig, FileAttributeConfig } from '@redaction/red-ui-http';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { HttpErrorResponse } from '@angular/common/http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { AutoUnsubscribeComponent } from '../../../shared/base/auto-unsubscribe.component';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { AutoUnsubscribeComponent } from '@shared/base/auto-unsubscribe.component';
|
||||
import { DossierAttributesService } from '@shared/services/controller-wrappers/dossier-attributes.service';
|
||||
import dossierAttributeTypesTranslations from '../../translations/dossier-attribute-types-translations';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-add-edit-dossier-attribute-dialog',
|
||||
@ -17,6 +18,7 @@ import { DossierAttributesService } from '@shared/services/controller-wrappers/d
|
||||
export class AddEditDossierAttributeDialogComponent extends AutoUnsubscribeComponent implements OnDestroy {
|
||||
dossierAttributeForm: FormGroup;
|
||||
dossierAttribute: DossierAttributeConfig;
|
||||
translations = dossierAttributeTypesTranslations;
|
||||
dossierTemplateId: string;
|
||||
readonly typeOptions = [
|
||||
DossierAttributeConfig.TypeEnum.TEXT,
|
||||
|
||||
@ -1,6 +1,13 @@
|
||||
<section class="dialog">
|
||||
<div class="dialog-header heading-l">
|
||||
{{ 'confirm-delete-file-attribute.title.' + type | translate: { name: fileAttribute?.label } }}
|
||||
{{
|
||||
'confirm-delete-file-attribute.title'
|
||||
| translate
|
||||
: {
|
||||
type: type,
|
||||
name: fileAttribute?.label
|
||||
}
|
||||
}}
|
||||
</div>
|
||||
|
||||
<div *ngIf="showToast" class="inline-dialog-toast toast-error">
|
||||
@ -19,15 +26,20 @@
|
||||
[class.error]="!checkbox.value && showToast"
|
||||
color="primary"
|
||||
>
|
||||
{{ 'confirm-delete-file-attribute.' + checkbox.label | translate }}
|
||||
{{ checkbox.label | translate: { type: type } }}
|
||||
</mat-checkbox>
|
||||
</div>
|
||||
|
||||
<div class="dialog-actions">
|
||||
<button (click)="deleteFileAttribute()" color="primary" mat-flat-button>
|
||||
{{ 'confirm-delete-file-attribute.delete.' + type | translate }}
|
||||
{{ 'confirm-delete-file-attribute.delete' | translate: { type: type } }}
|
||||
</button>
|
||||
<div (click)="cancel()" [translate]="'confirm-delete-file-attribute.cancel.' + type" class="all-caps-label cancel"></div>
|
||||
<div
|
||||
(click)="cancel()"
|
||||
[translateParams]="{ type: type }"
|
||||
[translate]="'confirm-delete-file-attribute.cancel'"
|
||||
class="all-caps-label cancel"
|
||||
></div>
|
||||
</div>
|
||||
<redaction-circle-button class="dialog-close" icon="red:close" mat-dialog-close></redaction-circle-button>
|
||||
</section>
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
import { Component, Inject } from '@angular/core';
|
||||
import { FileAttributeConfig } from '@redaction/red-ui-http';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-confirm-delete-file-attribute-dialog',
|
||||
@ -10,8 +11,8 @@ import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
export class ConfirmDeleteFileAttributeDialogComponent {
|
||||
fileAttribute: FileAttributeConfig;
|
||||
checkboxes = [
|
||||
{ value: false, label: 'impacted-documents.' + this.type },
|
||||
{ value: false, label: 'lost-details' }
|
||||
{ value: false, label: _('confirm-delete-file-attribute.impacted-documents') },
|
||||
{ value: false, label: _('confirm-delete-file-attribute.lost-details') }
|
||||
];
|
||||
showToast = false;
|
||||
|
||||
@ -27,7 +28,7 @@ export class ConfirmDeleteFileAttributeDialogComponent {
|
||||
}
|
||||
|
||||
get type(): 'bulk' | 'single' {
|
||||
return !this.fileAttribute ? 'bulk' : 'single';
|
||||
return this.fileAttribute ? 'single' : 'bulk';
|
||||
}
|
||||
|
||||
deleteFileAttribute() {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<section class="dialog">
|
||||
<div [translateParams]="{ userCount: users.length }" [translate]="'confirm-delete-users.title'" class="dialog-header heading-l"></div>
|
||||
<div [translateParams]="{ usersCount: users.length }" [translate]="'confirm-delete-users.title'" class="dialog-header heading-l"></div>
|
||||
|
||||
<div *ngIf="showToast" class="inline-dialog-toast toast-error">
|
||||
<div translate="confirm-delete-users.toast-error"></div>
|
||||
@ -22,7 +22,7 @@
|
||||
| translate
|
||||
: {
|
||||
dossiersCount: dossiersCount,
|
||||
userCount: users.length
|
||||
usersCount: users.length
|
||||
}
|
||||
}}
|
||||
</mat-checkbox>
|
||||
@ -30,11 +30,11 @@
|
||||
|
||||
<div class="dialog-actions">
|
||||
<button (click)="deleteUser()" color="primary" mat-flat-button>
|
||||
{{ 'confirm-delete-users.delete' | translate: { userCount: users.length } }}
|
||||
{{ 'confirm-delete-users.delete' | translate: { usersCount: users.length } }}
|
||||
</button>
|
||||
<div
|
||||
(click)="cancel()"
|
||||
[translateParams]="{ userCount: users.length }"
|
||||
[translateParams]="{ usersCount: users.length }"
|
||||
[translate]="'confirm-delete-users.cancel'"
|
||||
class="all-caps-label cancel"
|
||||
></div>
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
<section class="dialog">
|
||||
<div [translate]="'default-colors-screen.types.' + this.colorKey" class="dialog-header heading-l"></div>
|
||||
<div [translate]="translations[colorKey]" class="dialog-header heading-l"></div>
|
||||
|
||||
<form (submit)="saveColors()" [formGroup]="colorForm">
|
||||
<div class="dialog-content">
|
||||
|
||||
@ -1,10 +1,11 @@
|
||||
import { Component, Inject } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { Colors, DictionaryControllerService } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { DefaultColorType } from '@models/default-color-key.model';
|
||||
import defaultColorsTranslations from '../../translations/default-colors-translations';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-edit-color-dialog',
|
||||
@ -15,6 +16,7 @@ export class EditColorDialogComponent {
|
||||
readonly colors: Colors;
|
||||
readonly colorKey: DefaultColorType;
|
||||
colorForm: FormGroup;
|
||||
translations = defaultColorsTranslations;
|
||||
private readonly _initialColor: string;
|
||||
private readonly _dossierTemplateId: string;
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ import * as Papa from 'papaparse';
|
||||
import { FileAttributeConfig, FileAttributesConfig, FileAttributesControllerService } from '@redaction/red-ui-http';
|
||||
import { Observable } from 'rxjs';
|
||||
import { map, startWith } from 'rxjs/operators';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
|
||||
@ -35,7 +35,7 @@
|
||||
<mat-form-field class="no-label">
|
||||
<mat-select formControlName="category">
|
||||
<mat-option *ngFor="let category of categories" [value]="category">
|
||||
{{ 'audit-screen.categories.' + category | translate }}
|
||||
{{ translations[category] | translate }}
|
||||
</mat-option>
|
||||
</mat-select>
|
||||
</mat-form-field>
|
||||
@ -124,7 +124,7 @@
|
||||
<div class="user-column">
|
||||
<redaction-initials-avatar [userId]="log.userId" [withName]="true" size="small"></redaction-initials-avatar>
|
||||
</div>
|
||||
<div [translate]="'audit-screen.categories.' + log.category"></div>
|
||||
<div [translate]="translations[log.category]"></div>
|
||||
<div class="scrollbar-placeholder"></div>
|
||||
</div>
|
||||
</cdk-virtual-scroll-viewport>
|
||||
|
||||
@ -4,8 +4,9 @@ import { FormBuilder, FormGroup } from '@angular/forms';
|
||||
import { AuditControllerService, AuditResponse, AuditSearchRequest } from '@redaction/red-ui-http';
|
||||
import { Moment } from 'moment';
|
||||
import { applyIntervalConstraints } from '@utils/date-inputs-utils';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { AutoUnsubscribeComponent } from '../../../shared/base/auto-unsubscribe.component';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { AutoUnsubscribeComponent } from '@shared/base/auto-unsubscribe.component';
|
||||
import auditCategoriesTranslations from '../../translations/audit-categories-translations';
|
||||
|
||||
const PAGE_SIZE = 50;
|
||||
|
||||
@ -15,8 +16,9 @@ const PAGE_SIZE = 50;
|
||||
styleUrls: ['./audit-screen.component.scss']
|
||||
})
|
||||
export class AuditScreenComponent extends AutoUnsubscribeComponent implements OnDestroy {
|
||||
readonly ALL_CATEGORIES = 'all-categories';
|
||||
readonly ALL_CATEGORIES = 'allCategories';
|
||||
readonly ALL_USERS = 'audit-screen.all-users';
|
||||
translations = auditCategoriesTranslations;
|
||||
|
||||
filterForm: FormGroup;
|
||||
categories: string[] = [];
|
||||
|
||||
@ -46,7 +46,7 @@
|
||||
<!-- Table lines -->
|
||||
<div *cdkVirtualFor="let color of sortedDisplayedEntities$ | async; trackBy: trackByPrimaryKey" class="table-item">
|
||||
<div>
|
||||
<div [translate]="'default-colors-screen.types.' + color.key" class="table-item-title heading"></div>
|
||||
<div [translate]="translations[color.key]" class="table-item-title heading"></div>
|
||||
</div>
|
||||
|
||||
<div class="color-wrapper">
|
||||
|
||||
@ -10,7 +10,8 @@ import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { DefaultColorType } from '@models/default-color-key.model';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import defaultColorsTranslations from '../../translations/default-colors-translations';
|
||||
|
||||
@Component({
|
||||
templateUrl: './default-colors-screen.component.html',
|
||||
@ -25,6 +26,7 @@ export class DefaultColorsScreenComponent
|
||||
}>
|
||||
implements OnInit
|
||||
{
|
||||
translations = defaultColorsTranslations;
|
||||
protected readonly _primaryKey = 'key';
|
||||
private _colorsObj: Colors;
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@ import { LoadingService } from '@services/loading.service';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { AdminDialogService } from '../../services/admin-dialog.service';
|
||||
|
||||
|
||||
@ -1,11 +1,11 @@
|
||||
import { Component, OnDestroy } from '@angular/core';
|
||||
import { DigitalSignature, DigitalSignatureControllerService } from '@redaction/red-ui-http';
|
||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { PermissionsService } from '@services/permissions.service';
|
||||
import { lastIndexOfEnd } from '@utils/functions';
|
||||
import { AutoUnsubscribeComponent } from '../../../shared/base/auto-unsubscribe.component';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { AutoUnsubscribeComponent } from '@shared/base/auto-unsubscribe.component';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-digital-signature-screen',
|
||||
|
||||
@ -116,7 +116,7 @@
|
||||
</div>
|
||||
|
||||
<div class="small-label">
|
||||
{{ 'dossier-attribute-types.' + attribute.type | translate }}
|
||||
{{ translations[attribute.type] | translate }}
|
||||
</div>
|
||||
<div class="actions-container">
|
||||
<div *ngIf="permissionsService.isAdmin()" class="action-buttons">
|
||||
|
||||
@ -5,12 +5,13 @@ import { AppStateService } from '@state/app-state.service';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { AdminDialogService } from '../../services/admin-dialog.service';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { PermissionsService } from '@services/permissions.service';
|
||||
import { DossierAttributesService } from '@shared/services/controller-wrappers/dossier-attributes.service';
|
||||
import dossierAttributeTypesTranslations from '../../translations/dossier-attribute-types-translations';
|
||||
|
||||
@Component({
|
||||
templateUrl: './dossier-attributes-listing-screen.component.html',
|
||||
@ -18,6 +19,7 @@ import { DossierAttributesService } from '@shared/services/controller-wrappers/d
|
||||
providers: [FilterService, SearchService, ScreenStateService, SortingService]
|
||||
})
|
||||
export class DossierAttributesListingScreenComponent extends BaseListingComponent<DossierAttributeConfig> implements OnInit {
|
||||
translations = dossierAttributeTypesTranslations;
|
||||
protected readonly _primaryKey = 'label';
|
||||
|
||||
constructor(
|
||||
|
||||
@ -10,7 +10,7 @@ import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
|
||||
@Component({
|
||||
templateUrl: './dossier-templates-listing-screen.component.html',
|
||||
|
||||
@ -8,7 +8,7 @@ import { LoadingService } from '@services/loading.service';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
|
||||
@Component({
|
||||
|
||||
@ -4,9 +4,9 @@ import { LicenseReport, LicenseReportControllerService } from '@redaction/red-ui
|
||||
import { AppConfigService } from '@app-config/app-config.service';
|
||||
import * as moment from 'moment';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { ButtonConfig } from '../../../shared/components/page-header/models/button-config.model';
|
||||
import { IconButtonTypes } from '../../../shared/components/buttons/icon-button/icon-button.component';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { ButtonConfig } from '@shared/components/page-header/models/button-config.model';
|
||||
import { IconButtonTypes } from '@shared/components/buttons/icon-button/icon-button.component';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-license-information-screen',
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
import { Component, ElementRef, OnInit, ViewChild } from '@angular/core';
|
||||
import { PermissionsService } from '@services/permissions.service';
|
||||
import { RulesControllerService } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { saveAs } from 'file-saver';
|
||||
import { ComponentHasChanges } from '@guards/can-deactivate.guard';
|
||||
|
||||
@ -8,8 +8,8 @@ import {
|
||||
SmtpConfigurationControllerService,
|
||||
SMTPConfigurationModel
|
||||
} from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { AutoUnsubscribeComponent } from '../../../shared/base/auto-unsubscribe.component';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { AutoUnsubscribeComponent } from '@shared/base/auto-unsubscribe.component';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-smtp-config-screen',
|
||||
|
||||
@ -8,7 +8,7 @@ import * as moment from 'moment';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { DossiersService } from '../../../dossier/services/dossiers.service';
|
||||
|
||||
|
||||
@ -7,7 +7,7 @@ import { HttpClient } from '@angular/common/http';
|
||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { debounce } from '@utils/debounce';
|
||||
import { WatermarkControllerService, WatermarkModelRes } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { BASE_HREF } from '../../../../tokens';
|
||||
import { stampPDFPage } from '../../../../utils/page-stamper';
|
||||
|
||||
@ -0,0 +1,18 @@
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
|
||||
const auditCategoriesTranslations: { [key: string]: string } = {
|
||||
allCategories: _('audit-screen.categories.all-categories'),
|
||||
LICENSE: _('audit-screen.categories.license'),
|
||||
DOWNLOAD: _('audit-screen.categories.download'),
|
||||
AUDIT_LOG: _('audit-screen.categories.audit-log'),
|
||||
PROJECT: _('audit-screen.categories.project'),
|
||||
DOSSIER: _('audit-screen.categories.dossier'),
|
||||
DICTIONARY: _('audit-screen.categories.dictionary'),
|
||||
PROJECT_TEMPLATE: _('audit-screen.categories.project-template'),
|
||||
USER: _('audit-screen.categories.user'),
|
||||
DOCUMENT: _('audit-screen.categories.document'),
|
||||
AUDIT: _('audit-screen.categories.audit'),
|
||||
DOSSIER_TEMPLATE: _('audit-screen.categories.dossier-template')
|
||||
};
|
||||
|
||||
export default auditCategoriesTranslations;
|
||||
@ -1,7 +1,7 @@
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
import { DefaultColorType } from '@models/default-color-key.model';
|
||||
|
||||
const translations: { [key in DefaultColorType]: string } = {
|
||||
const defaultColorsTranslations: { [key in DefaultColorType]: string } = {
|
||||
analysisColor: _('default-colors-screen.types.analysisColor'),
|
||||
defaultColor: _('default-colors-screen.types.defaultColor'),
|
||||
dictionaryRequestColor: _('default-colors-screen.types.dictionaryRequestColor'),
|
||||
@ -13,4 +13,4 @@ const translations: { [key in DefaultColorType]: string } = {
|
||||
updatedColor: _('default-colors-screen.types.updatedColor')
|
||||
};
|
||||
|
||||
export default translations;
|
||||
export default defaultColorsTranslations;
|
||||
@ -0,0 +1,11 @@
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
import { DossierAttributeConfig } from '@redaction/red-ui-http';
|
||||
|
||||
const dossierAttributeTypesTranslations: { [key in DossierAttributeConfig.TypeEnum]: string } = {
|
||||
TEXT: _('dossier-attribute-types.text'),
|
||||
NUMBER: _('dossier-attribute-types.number'),
|
||||
DATE: _('dossier-attribute-types.date'),
|
||||
IMAGE: _('dossier-attribute-types.image')
|
||||
};
|
||||
|
||||
export default dossierAttributeTypesTranslations;
|
||||
@ -6,9 +6,9 @@ import { FileStatusWrapper } from '@models/file/file-status.wrapper';
|
||||
import { FileActionService } from '../../services/file-action.service';
|
||||
import { from, Observable } from 'rxjs';
|
||||
import { DossiersDialogService } from '../../services/dossiers-dialog.service';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { ConfirmationDialogInput } from '../../../shared/dialogs/confirmation-dialog/confirmation-dialog.component';
|
||||
import { ScreenStateService } from '../../../shared/services/screen-state.service';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { ConfirmationDialogInput } from '@shared/dialogs/confirmation-dialog/confirmation-dialog.component';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||
|
||||
|
||||
@ -7,8 +7,8 @@ import { TranslateChartService } from '@services/translate-chart.service';
|
||||
import { StatusSorter } from '@utils/sorters/status-sorter';
|
||||
import { UserService } from '@services/user.service';
|
||||
import { User } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { FilterService } from '../../../shared/services/filter.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { DossierAttributeWithValue } from '@models/dossier-attributes.model';
|
||||
|
||||
@Component({
|
||||
|
||||
@ -3,8 +3,8 @@ import { PermissionsService } from '@services/permissions.service';
|
||||
import { FormBuilder, FormGroup } from '@angular/forms';
|
||||
import { PageRange, ReanalysisControllerService } from '@redaction/red-ui-http';
|
||||
import { FileDataModel } from '../../../../models/file/file-data.model';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-page-exclusion',
|
||||
|
||||
@ -2,7 +2,7 @@ import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
||||
import { Dossier } from '@redaction/red-ui-http';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { UserService } from '@services/user.service';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { DossierWrapper } from '@state/model/dossier.wrapper';
|
||||
|
||||
|
||||
@ -3,7 +3,7 @@ import { StatusControllerService } from '@redaction/red-ui-http';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { UserService } from '@services/user.service';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { FileStatusWrapper } from '@models/file/file-status.wrapper';
|
||||
import { DossierWrapper } from '@state/model/dossier.wrapper';
|
||||
|
||||
@ -4,7 +4,7 @@ import { DossierWrapper } from '@state/model/dossier.wrapper';
|
||||
import { EditDossierGeneralInfoComponent } from './general-info/edit-dossier-general-info.component';
|
||||
import { EditDossierDownloadPackageComponent } from './download-package/edit-dossier-download-package.component';
|
||||
import { EditDossierSectionInterface } from './edit-dossier-section.interface';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { EditDossierDictionaryComponent } from './dictionary/edit-dossier-dictionary.component';
|
||||
import { EditDossierTeamMembersComponent } from './team-members/edit-dossier-team-members.component';
|
||||
import { EditDossierAttributesComponent } from './attributes/edit-dossier-attributes.component';
|
||||
|
||||
@ -10,7 +10,7 @@ import { PermissionsService } from '@services/permissions.service';
|
||||
import { Router } from '@angular/router';
|
||||
import { MatDialogRef } from '@angular/material/dialog';
|
||||
import { EditDossierDialogComponent } from '../edit-dossier-dialog.component';
|
||||
import { Toaster } from '../../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
|
||||
@Component({
|
||||
selector: 'redaction-edit-dossier-general-info',
|
||||
|
||||
@ -3,7 +3,7 @@ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { MatDialogRef } from '@angular/material/dialog';
|
||||
import { ForceRedactionRequest, LegalBasisMappingControllerService } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { UserService } from '@services/user.service';
|
||||
import { ManualAnnotationService } from '../../services/manual-annotation.service';
|
||||
|
||||
@ -3,7 +3,7 @@ import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { AddRedactionRequest, LegalBasisMappingControllerService } from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { UserService } from '@services/user.service';
|
||||
import { ManualRedactionEntryWrapper } from '@models/file/manual-redaction-entry.wrapper';
|
||||
|
||||
@ -28,7 +28,7 @@ import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { TableColConfig } from '../../../shared/components/table-col-name/table-col-name.component';
|
||||
import { TableColConfig } from '@shared/components/table-col-name/table-col-name.component';
|
||||
|
||||
const isLeavingScreen = event => event instanceof NavigationStart && event.url !== '/main/dossiers';
|
||||
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { ChangeDetectorRef, Component, ElementRef, HostListener, Injector, OnDestroy, OnInit, TemplateRef, ViewChild } from '@angular/core';
|
||||
import { NavigationStart, Router } from '@angular/router';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { AppStateService } from '@state/app-state.service';
|
||||
import { FileDropOverlayService } from '@upload-download/services/file-drop-overlay.service';
|
||||
import { FileUploadModel } from '@upload-download/model/file-upload.model';
|
||||
@ -26,12 +26,12 @@ import { ActionConfig } from '@shared/components/page-header/models/action-confi
|
||||
import { FilterService } from '@shared/services/filter.service';
|
||||
import { SearchService } from '@shared/services/search.service';
|
||||
import { ScreenStateService } from '@shared/services/screen-state.service';
|
||||
import { SortingService } from '../../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
import { BaseListingComponent } from '@shared/base/base-listing.component';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { DossierAttributesService } from '@shared/services/controller-wrappers/dossier-attributes.service';
|
||||
import { DossierAttributeWithValue } from '@models/dossier-attributes.model';
|
||||
import { UserPreferenceService } from '../../../../services/user-preference.service';
|
||||
import { UserPreferenceService } from '@services/user-preference.service';
|
||||
|
||||
@Component({
|
||||
templateUrl: './dossier-overview-screen.component.html',
|
||||
|
||||
@ -12,7 +12,7 @@ import { AnnotationData, FileDataModel } from '@models/file/file-data.model';
|
||||
import { FileActionService } from '../../services/file-action.service';
|
||||
import { AnnotationDrawService } from '../../services/annotation-draw.service';
|
||||
import { AnnotationProcessingService } from '../../services/annotation-processing.service';
|
||||
import { Toaster } from '../../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { FileStatusWrapper } from '@models/file/file-status.wrapper';
|
||||
import { PermissionsService } from '@services/permissions.service';
|
||||
import { Subscription, timer } from 'rxjs';
|
||||
@ -33,10 +33,10 @@ import { DossiersDialogService } from '../../services/dossiers-dialog.service';
|
||||
import { OnAttach, OnDetach } from '@utils/custom-route-reuse.strategy';
|
||||
import { FilterModel } from '@shared/components/filters/popup-filter/model/filter.model';
|
||||
import { handleFilterDelta, processFilters } from '@shared/components/filters/popup-filter/utils/filter-utils';
|
||||
import { LoadingService } from '../../../../services/loading.service';
|
||||
import { LoadingService } from '@services/loading.service';
|
||||
import { stampPDFPage } from '../../../../utils/page-stamper';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { AutoUnsubscribeComponent } from '../../../shared/base/auto-unsubscribe.component';
|
||||
import { AutoUnsubscribeComponent } from '@shared/base/auto-unsubscribe.component';
|
||||
|
||||
const ALL_HOTKEY_ARRAY = ['Escape', 'F', 'f'];
|
||||
|
||||
|
||||
@ -7,7 +7,7 @@ import {
|
||||
ManualRedactionControllerService
|
||||
} from '@redaction/red-ui-http';
|
||||
import { AnnotationWrapper } from '@models/file/annotation.wrapper';
|
||||
import { Toaster } from '../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { tap } from 'rxjs/operators';
|
||||
import { UserService } from '@services/user.service';
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
import { Component, Injector, OnDestroy, ViewChild } from '@angular/core';
|
||||
import { SortingOrders, SortingService } from '@services/sorting.service';
|
||||
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
|
||||
import { FilterService } from '../services/filter.service';
|
||||
import { SearchService } from '../services/search.service';
|
||||
import { ScreenStateService } from '../services/screen-state.service';
|
||||
import { combineLatest, Observable } from 'rxjs';
|
||||
import { AutoUnsubscribeComponent } from './auto-unsubscribe.component';
|
||||
import { distinctUntilChanged, map } from 'rxjs/operators';
|
||||
import { PermissionsService } from '../../../services/permissions.service';
|
||||
import { PermissionsService } from '@services/permissions.service';
|
||||
import { FilterService } from '../services/filter.service';
|
||||
|
||||
@Component({ template: '' })
|
||||
export abstract class BaseListingComponent<T> extends AutoUnsubscribeComponent implements OnDestroy {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
import { Pipe, PipeTransform } from '@angular/core';
|
||||
import { SortingService } from '../../../services/sorting.service';
|
||||
import { SortingService } from '@services/sorting.service';
|
||||
|
||||
@Pipe({ name: 'sortBy' })
|
||||
export class SortByPipe implements PipeTransform {
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
import { Injectable } from '@angular/core';
|
||||
import { Observable, throwError } from 'rxjs';
|
||||
import { Toaster } from '../../../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { DictionaryControllerService } from '@redaction/red-ui-http';
|
||||
import { tap } from 'rxjs/operators';
|
||||
|
||||
|
||||
@ -9,7 +9,7 @@ import {
|
||||
ReanalysisControllerService,
|
||||
StatusControllerService
|
||||
} from '@redaction/red-ui-http';
|
||||
import { Toaster } from '../services/toaster.service';
|
||||
import { Toaster } from '@services/toaster.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { Event, NavigationEnd, ResolveStart, Router } from '@angular/router';
|
||||
import { UserService } from '@services/user.service';
|
||||
|
||||
@ -300,17 +300,17 @@
|
||||
"all-users": "All Users",
|
||||
"categories": {
|
||||
"all-categories": "All Categories",
|
||||
"LICENSE": "License",
|
||||
"DOWNLOAD": "Download",
|
||||
"AUDIT_LOG": "Audit Log",
|
||||
"PROJECT": "Project",
|
||||
"DOSSIER": "Dossier",
|
||||
"DICTIONARY": "Dictionary",
|
||||
"PROJECT_TEMPLATE": "Project Template",
|
||||
"USER": "User",
|
||||
"DOCUMENT": "Document",
|
||||
"AUDIT": "Audit",
|
||||
"DOSSIER_TEMPLATE": "Dossier Template"
|
||||
"license": "License",
|
||||
"download": "Download",
|
||||
"audit-log": "Audit Log",
|
||||
"project": "Project",
|
||||
"dossier": "Dossier",
|
||||
"dictionary": "Dictionary",
|
||||
"project-template": "Project Template",
|
||||
"user": "User",
|
||||
"document": "Document",
|
||||
"audit": "Audit",
|
||||
"dossier-template": "Dossier Template"
|
||||
},
|
||||
"no-data": {
|
||||
"title": "No available logs."
|
||||
@ -367,32 +367,20 @@
|
||||
},
|
||||
"configurations": "Configurations",
|
||||
"confirm-delete-file-attribute": {
|
||||
"cancel": {
|
||||
"bulk": "Keep Attributes",
|
||||
"single": "Keep Attribute"
|
||||
},
|
||||
"delete": {
|
||||
"bulk": "Delete Attributes",
|
||||
"single": "Delete Attribute"
|
||||
},
|
||||
"impacted-documents": {
|
||||
"bulk": "All documents they are used on will be impacted",
|
||||
"single": "All documents it is used on will be impacted"
|
||||
},
|
||||
"cancel": "Keep {type, select, single{Attribute} bulk{Attributes} other{}}",
|
||||
"delete": "Delete {type, select, single{Attribute} bulk{Attributes} other{}}",
|
||||
"impacted-documents": "All documents {type, select, single{it is} bulk{they are} other{}} used on will be impacted",
|
||||
"lost-details": "All inputted details on the documents will be lost",
|
||||
"title": {
|
||||
"bulk": "Delete File Attributes",
|
||||
"single": "Delete {name}"
|
||||
},
|
||||
"title": "Delete {type, select, single{{name}} bulk{File Attributes} other{}}",
|
||||
"toast-error": "Please confirm that you understand the ramifications of your action!",
|
||||
"warning": "Warning: this cannot be undone!"
|
||||
},
|
||||
"confirm-delete-users": {
|
||||
"cancel": "Keep {userCount, plural, =0{} one{User} other{Users}}",
|
||||
"delete": "Delete {userCount, plural, =0{} one{User} other{Users}}",
|
||||
"impacted-documents": "All documents pending review from the {userCount, plural, =0{} one{user} other{users}} will be impacted",
|
||||
"cancel": "Keep {usersCount, plural, =0{} one{User} other{Users}}",
|
||||
"delete": "Delete {usersCount, plural, =0{} one{User} other{Users}}",
|
||||
"impacted-documents": "All documents pending review from the {usersCount, plural, =0{} one{user} other{users}} will be impacted",
|
||||
"impacted-dossiers": "{dossiersCount} {dossiersCount, plural, =0{dossiers} one{dossier} other{dossiers}} will be impacted",
|
||||
"title": "Delete {userCount, plural, =0{} one{User} other{Users}} from Workspace",
|
||||
"title": "Delete {usersCount, plural, =0{} one{User} other{Users}} from Workspace",
|
||||
"toast-error": "Please confirm that you understand the ramifications of your action!",
|
||||
"warning": "Warning: this cannot be undone!"
|
||||
},
|
||||
@ -548,10 +536,10 @@
|
||||
"title": "Introduce File Attributes"
|
||||
},
|
||||
"dossier-attribute-types": {
|
||||
"DATE": "Date",
|
||||
"NUMBER": "Number",
|
||||
"TEXT": "Free Text",
|
||||
"IMAGE": "Image"
|
||||
"date": "Date",
|
||||
"number": "Number",
|
||||
"text": "Free Text",
|
||||
"image": "Image"
|
||||
},
|
||||
"dossier-attributes": "Dossier Attributes",
|
||||
"dossier-attributes-listing": {
|
||||
|
||||
@ -16,10 +16,6 @@
|
||||
"save": "",
|
||||
"save-and-add-members": ""
|
||||
},
|
||||
"errors": {
|
||||
"dossier-already-exists": "",
|
||||
"generic": ""
|
||||
},
|
||||
"form": {
|
||||
"description": {
|
||||
"label": "",
|
||||
@ -161,7 +157,18 @@
|
||||
"audit": "",
|
||||
"audit-screen": {
|
||||
"categories": {
|
||||
"": ""
|
||||
"all-categories": "",
|
||||
"audit": "",
|
||||
"audit-log": "",
|
||||
"dictionary": "",
|
||||
"document": "",
|
||||
"dossier": "",
|
||||
"dossier-template": "",
|
||||
"download": "",
|
||||
"license": "",
|
||||
"project": "",
|
||||
"project-template": "",
|
||||
"user": ""
|
||||
},
|
||||
"no-data": {
|
||||
"title": ""
|
||||
@ -213,9 +220,11 @@
|
||||
},
|
||||
"configurations": "",
|
||||
"confirm-delete-file-attribute": {
|
||||
"cancel": {
|
||||
"": ""
|
||||
},
|
||||
"cancel": "",
|
||||
"delete": "",
|
||||
"impacted-documents": "",
|
||||
"lost-details": "",
|
||||
"title": "",
|
||||
"toast-error": "",
|
||||
"warning": ""
|
||||
},
|
||||
@ -261,7 +270,6 @@
|
||||
"title": ""
|
||||
},
|
||||
"types": {
|
||||
"": "",
|
||||
"analysisColor": "",
|
||||
"defaultColor": "",
|
||||
"dictionaryRequestColor": "",
|
||||
@ -319,29 +327,17 @@
|
||||
"dictionary-details": {
|
||||
"description": ""
|
||||
},
|
||||
"error": {
|
||||
"entries-too-short": "",
|
||||
"generic": ""
|
||||
},
|
||||
"revert-changes": "",
|
||||
"save-changes": "",
|
||||
"search": "",
|
||||
"select-dictionary": "",
|
||||
"success": {
|
||||
"generic": ""
|
||||
}
|
||||
"select-dictionary": ""
|
||||
},
|
||||
"digital-signature": "",
|
||||
"digital-signature-screen": {
|
||||
"action": {
|
||||
"certificate-not-valid-error": "",
|
||||
"delete": "",
|
||||
"delete-error": "",
|
||||
"delete-success": "",
|
||||
"reset": "",
|
||||
"save": "",
|
||||
"save-error": "",
|
||||
"save-success": ""
|
||||
"save": ""
|
||||
},
|
||||
"certificate-name": {
|
||||
"label": "",
|
||||
@ -372,6 +368,12 @@
|
||||
"save": "",
|
||||
"title": ""
|
||||
},
|
||||
"dossier-attribute-types": {
|
||||
"date": "",
|
||||
"image": "",
|
||||
"number": "",
|
||||
"text": ""
|
||||
},
|
||||
"dossier-attributes-listing": {
|
||||
"action": {
|
||||
"edit": ""
|
||||
@ -390,6 +392,7 @@
|
||||
"search": "",
|
||||
"table-col-names": {
|
||||
"label": "",
|
||||
"placeholder": "",
|
||||
"type": ""
|
||||
},
|
||||
"table-header": {
|
||||
@ -443,9 +446,6 @@
|
||||
"needs-work": "",
|
||||
"owner": "",
|
||||
"status": ""
|
||||
},
|
||||
"table-header": {
|
||||
"title": ""
|
||||
}
|
||||
},
|
||||
"dossier-overview": {
|
||||
@ -512,10 +512,6 @@
|
||||
"recent": "",
|
||||
"unassigned": ""
|
||||
},
|
||||
"reanalyse-dossier": {
|
||||
"error": "",
|
||||
"success": ""
|
||||
},
|
||||
"reanalyse": {
|
||||
"action": ""
|
||||
},
|
||||
@ -563,15 +559,7 @@
|
||||
"title": ""
|
||||
}
|
||||
},
|
||||
"dossiers": {
|
||||
"delete": {
|
||||
"delete-failed": ""
|
||||
}
|
||||
},
|
||||
"download-includes": "",
|
||||
"download-status": {
|
||||
"queued": ""
|
||||
},
|
||||
"download-type": {
|
||||
"label": ""
|
||||
},
|
||||
@ -594,13 +582,11 @@
|
||||
}
|
||||
},
|
||||
"edit-color-dialog": {
|
||||
"error": "",
|
||||
"form": {
|
||||
"color": "",
|
||||
"color-placeholder": ""
|
||||
},
|
||||
"save": "",
|
||||
"success": ""
|
||||
"save": ""
|
||||
},
|
||||
"edit-dossier-dialog": {
|
||||
"actions": {
|
||||
@ -613,8 +599,6 @@
|
||||
"image-attributes": "",
|
||||
"upload-image": ""
|
||||
},
|
||||
"change-successful": "",
|
||||
"delete-successful": "",
|
||||
"dictionary": {
|
||||
"entries": ""
|
||||
},
|
||||
@ -643,8 +627,7 @@
|
||||
"general-info": "",
|
||||
"members": "",
|
||||
"team-members": ""
|
||||
},
|
||||
"unsaved-changes": ""
|
||||
}
|
||||
},
|
||||
"file-attribute-types": {
|
||||
"": ""
|
||||
@ -676,9 +659,7 @@
|
||||
"none": ""
|
||||
},
|
||||
"save": {
|
||||
"error": "",
|
||||
"label": "",
|
||||
"success": ""
|
||||
"label": ""
|
||||
},
|
||||
"search": {
|
||||
"placeholder": ""
|
||||
@ -780,7 +761,6 @@
|
||||
},
|
||||
"exclude-pages": {
|
||||
"close": "",
|
||||
"error": "",
|
||||
"hint": "",
|
||||
"input-placeholder": "",
|
||||
"label": "",
|
||||
@ -946,14 +926,8 @@
|
||||
"NO_ROLE": ""
|
||||
},
|
||||
"rules-screen": {
|
||||
"error": {
|
||||
"generic": ""
|
||||
},
|
||||
"revert-changes": "",
|
||||
"save-changes": "",
|
||||
"success": {
|
||||
"generic": ""
|
||||
}
|
||||
"save-changes": ""
|
||||
},
|
||||
"smtp-auth-config": {
|
||||
"actions": {
|
||||
@ -1001,10 +975,6 @@
|
||||
"title": ""
|
||||
},
|
||||
"subtitle": "",
|
||||
"test": {
|
||||
"error": "",
|
||||
"success": ""
|
||||
},
|
||||
"title": ""
|
||||
},
|
||||
"top-bar": {
|
||||
@ -1104,9 +1074,6 @@
|
||||
},
|
||||
"watermark-screen": {
|
||||
"action": {
|
||||
"change-success": "",
|
||||
"delete-success": "",
|
||||
"error": "",
|
||||
"revert": "",
|
||||
"save": ""
|
||||
},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user