From 3a08bd36e810b962e934b834888b268ed92af321 Mon Sep 17 00:00:00 2001 From: Dan Percic Date: Wed, 6 Oct 2021 01:18:15 +0300 Subject: [PATCH] move to new listing service --- .eslintrc.json | 1 + .prettierrc | 2 +- apps/red-ui/jest.config.js | 8 ++-- .../downloads-list-screen.component.html | 2 +- .../downloads-list-screen.component.ts | 4 +- .../src/app/models/file/annotation.wrapper.ts | 2 +- apps/red-ui/src/app/models/file/file-type.ts | 2 +- .../src/app/models/notification-types.ts | 2 +- .../dossier-template-actions.component.ts | 2 +- ...-edit-dossier-template-dialog.component.ts | 2 +- .../active-fields-listing.component.html | 2 +- .../active-fields-listing.component.ts | 6 +-- .../dictionary-listing-screen.component.html | 2 +- .../dictionary-listing-screen.component.ts | 4 +- ...r-attributes-listing-screen.component.html | 2 +- ...ier-attributes-listing-screen.component.ts | 4 +- ...er-templates-listing-screen.component.html | 2 +- ...sier-templates-listing-screen.component.ts | 12 ++---- ...e-attributes-listing-screen.component.html | 2 +- ...ile-attributes-listing-screen.component.ts | 2 +- .../reports/reports-screen.component.ts | 7 +--- .../screens/trash/trash-screen.component.html | 2 +- .../screens/trash/trash-screen.component.ts | 8 ++-- .../user-listing-screen.component.html | 2 +- .../user-listing-screen.component.ts | 2 +- ...t-dossier-deleted-documents.component.html | 2 +- ...dit-dossier-deleted-documents.component.ts | 8 ++-- ...dossier-overview-bulk-actions.component.ts | 8 ++-- .../dossier-overview-screen.component.html | 2 +- .../dossier-overview-screen.component.ts | 2 +- .../dossiers-listing-screen.component.ts | 15 +------ .../services/dossier-templates.service.ts | 40 +++++-------------- .../dossier/services/dossiers.service.ts | 9 +---- .../services/file-attributes.service.ts | 10 +---- .../modules/dossier/services/files.service.ts | 5 +-- .../app/modules/dossier/services/injector.ts | 4 +- .../components/editor/editor.component.ts | 1 - .../shared/services/dictionary.service.ts | 3 +- .../model/download-status.wrapper.ts | 8 ++-- apps/red-ui/src/app/utils/pdf-coordinates.ts | 2 +- .../src/assets/styles/red-material-theme.scss | 18 ++++----- libs/common-ui | 2 +- 42 files changed, 83 insertions(+), 142 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 80be9ca5c..04393f649 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -178,6 +178,7 @@ "prefer-const": "error", "radix": "error", "curly": "error", + "comma-dangle": "error", "max-len": [ "error", { diff --git a/.prettierrc b/.prettierrc index 6b065a3b8..e116e8477 100644 --- a/.prettierrc +++ b/.prettierrc @@ -3,7 +3,7 @@ "printWidth": 140, "tabWidth": 4, "singleQuote": true, - "trailingComma": "none", + "trailingComma": "all", "arrowParens": "avoid", "overrides": [ { diff --git a/apps/red-ui/jest.config.js b/apps/red-ui/jest.config.js index 727479b6c..be9c75386 100644 --- a/apps/red-ui/jest.config.js +++ b/apps/red-ui/jest.config.js @@ -5,8 +5,8 @@ module.exports = { 'ts-jest': { stringifyContentPathRegex: '\\.(html|svg)$', - tsconfig: '/tsconfig.spec.json' - } + tsconfig: '/tsconfig.spec.json', + }, }, coverageDirectory: '../../coverage/apps/red-ui', @@ -14,7 +14,7 @@ module.exports = { snapshotSerializers: [ 'jest-preset-angular/build/serializers/no-ng-attributes', 'jest-preset-angular/build/serializers/ng-snapshot', - 'jest-preset-angular/build/serializers/html-comment' + 'jest-preset-angular/build/serializers/html-comment', ], - transform: { '^.+\\.(ts|js|html)$': 'jest-preset-angular' } + transform: { '^.+\\.(ts|js|html)$': 'jest-preset-angular' }, }; diff --git a/apps/red-ui/src/app/components/downloads-list-screen/downloads-list-screen.component.html b/apps/red-ui/src/app/components/downloads-list-screen/downloads-list-screen.component.html index dcf854c45..5a41656d3 100644 --- a/apps/red-ui/src/app/components/downloads-list-screen/downloads-list-screen.component.html +++ b/apps/red-ui/src/app/components/downloads-list-screen/downloads-list-screen.component.html @@ -17,7 +17,7 @@ d.storageId); + const storageIds = (downloads || this.listingService.selected).map(d => d.storageId); await this._downloadControllerService.deleteDownload({ storageIds }).toPromise(); - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); await this._loadData(); } diff --git a/apps/red-ui/src/app/models/file/annotation.wrapper.ts b/apps/red-ui/src/app/models/file/annotation.wrapper.ts index 4f066fcc7..9f14dbc4d 100644 --- a/apps/red-ui/src/app/models/file/annotation.wrapper.ts +++ b/apps/red-ui/src/app/models/file/annotation.wrapper.ts @@ -277,7 +277,7 @@ export class AnnotationWrapper { return; } - if (redactionLogEntryWrapper.type === 'manual' ) { + if (redactionLogEntryWrapper.type === 'manual') { if (redactionLogEntryWrapper.status === 'REQUESTED') { annotationWrapper.superType = 'suggestion-add'; return; diff --git a/apps/red-ui/src/app/models/file/file-type.ts b/apps/red-ui/src/app/models/file/file-type.ts index 03983b2a2..3087b0097 100644 --- a/apps/red-ui/src/app/models/file/file-type.ts +++ b/apps/red-ui/src/app/models/file/file-type.ts @@ -2,5 +2,5 @@ export enum FileType { ORIGINAL = 'ORIGINAL', ANNOTATED = 'ANNOTATED', REDACTED = 'REDACTED', - FLAT_REDACTED = 'FLAT_REDACTED' + FLAT_REDACTED = 'FLAT_REDACTED', } diff --git a/apps/red-ui/src/app/models/notification-types.ts b/apps/red-ui/src/app/models/notification-types.ts index 87f258972..a8bc30ce5 100644 --- a/apps/red-ui/src/app/models/notification-types.ts +++ b/apps/red-ui/src/app/models/notification-types.ts @@ -9,7 +9,7 @@ export enum NotificationTypeEnum { USER_REMOVED_AS_DOSSIER_MEMBER = 'USER_REMOVED_AS_DOSSIER_MEMBER', USER_PROMOTED_TO_APPROVER = 'USER_PROMOTED_TO_APPROVER', USER_DEGRADED_TO_REVIEWER = 'USER_DEGRADED_TO_REVIEWER', - DOSSIER_OWNER_DELETED = 'DOSSIER_OWNER_DELETED' + DOSSIER_OWNER_DELETED = 'DOSSIER_OWNER_DELETED', } export type NotificationType = NotificationTypeEnum; diff --git a/apps/red-ui/src/app/modules/admin/components/dossier-template-actions/dossier-template-actions.component.ts b/apps/red-ui/src/app/modules/admin/components/dossier-template-actions/dossier-template-actions.component.ts index baa6274f5..740a3d3d9 100644 --- a/apps/red-ui/src/app/modules/admin/components/dossier-template-actions/dossier-template-actions.component.ts +++ b/apps/red-ui/src/app/modules/admin/components/dossier-template-actions/dossier-template-actions.component.ts @@ -61,7 +61,7 @@ export class DossierTemplateActionsComponent implements OnInit { this._loadingService.stop(); }); await this._dossierTemplateControllerService.deleteDossierTemplates([this.dossierTemplateId]).toPromise(); - await this._dossierTemplatesService.loadAll(); + await this._dossierTemplatesService.loadAll().toPromise(); await this._appStateService.loadDictionaryData(); await this._router.navigate(['main', 'admin']); this._loadingService.stop(); diff --git a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts index e4cc1e8dc..6d4d07f16 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts +++ b/apps/red-ui/src/app/modules/admin/dialogs/add-edit-dossier-template-dialog/add-edit-dossier-template-dialog.component.ts @@ -100,7 +100,7 @@ export class AddEditDossierTemplateDialogComponent { validTo: this.hasValidTo ? this.dossierTemplateForm.get('validTo').value : null }; await this._dossierTemplateController.createOrUpdateDossierTemplate(dossierTemplate).toPromise(); - await this._dossierTemplatesService.loadAll(); + await this._dossierTemplatesService.loadAll().toPromise(); await this._appStateService.loadDictionaryData(); this.dialogRef.close(true); } diff --git a/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-csv-import-dialog/active-fields-listing/active-fields-listing.component.html b/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-csv-import-dialog/active-fields-listing/active-fields-listing.component.html index dd8dbc600..75474415d 100644 --- a/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-csv-import-dialog/active-fields-listing/active-fields-listing.component.html +++ b/apps/red-ui/src/app/modules/admin/dialogs/file-attributes-csv-import-dialog/active-fields-listing/active-fields-listing.component.html @@ -10,7 +10,7 @@ > - + implem ngOnChanges(changes: SimpleChanges): void { if (changes.entities) { this.entitiesService.setEntities(this.entities); - this.entitiesService.updateSelection(); + this.listingService.updateSelection(); } } @@ -60,11 +60,11 @@ export class ActiveFieldsListingComponent extends ListingComponent implem this.allEntities.filter(field => this.isSelected(field)).forEach(field => (field.primaryAttribute = false)); this.entitiesService.setEntities(this.allEntities.filter(field => !this.isSelected(field))); this.entitiesChange.emit(this.allEntities); - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); } setAttributeForSelection(attribute: string, value: any) { - for (const item of this.entitiesService.selected) { + for (const item of this.listingService.selected) { this.allEntities.find(f => f.csvColumn === item.csvColumn)[attribute] = value; } } diff --git a/apps/red-ui/src/app/modules/admin/screens/dictionary-listing/dictionary-listing-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/dictionary-listing/dictionary-listing-screen.component.html index 60a8fa173..558a8ffb3 100644 --- a/apps/red-ui/src/app/modules/admin/screens/dictionary-listing/dictionary-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/dictionary-listing/dictionary-listing-screen.component.html @@ -52,7 +52,7 @@ { this._loadingService.start(); await this._dictionaryService @@ -72,7 +72,7 @@ export class DictionaryListingScreenComponent extends ListingComponent { this._loadingService.start(); - const ids = dossierAttribute ? [dossierAttribute.id] : this.entitiesService.selected.map(item => item.id); + const ids = dossierAttribute ? [dossierAttribute.id] : this.listingService.selected.map(item => item.id); await this._dossierAttributesService.deleteConfigs(ids); - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); await this._loadData(); }); } diff --git a/apps/red-ui/src/app/modules/admin/screens/dossier-template-listing/dossier-templates-listing-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/dossier-template-listing/dossier-templates-listing-screen.component.html index 955f8ba3d..84aba15e9 100644 --- a/apps/red-ui/src/app/modules/admin/screens/dossier-template-listing/dossier-templates-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/dossier-template-listing/dossier-templates-listing-screen.component.html @@ -29,7 +29,7 @@ DossierTemplatesListingScreenComponent) } ] @@ -81,7 +77,7 @@ export class DossierTemplatesListingScreenComponent extends ListingComponent d.dossierTemplateId)) { + private async _deleteTemplates(templateIds = this.listingService.selected.map(d => d.dossierTemplateId)) { await this._dossierTemplateControllerService .deleteDossierTemplates(templateIds) .toPromise() @@ -92,7 +88,7 @@ export class DossierTemplatesListingScreenComponent extends ListingComponent f.id), + this.listingService.selected.map(f => f.id), dossierTemplateId ) .toPromise(); diff --git a/apps/red-ui/src/app/modules/admin/screens/reports/reports-screen.component.ts b/apps/red-ui/src/app/modules/admin/screens/reports/reports-screen.component.ts index 7f1d79212..74068c51d 100644 --- a/apps/red-ui/src/app/modules/admin/screens/reports/reports-screen.component.ts +++ b/apps/red-ui/src/app/modules/admin/screens/reports/reports-screen.component.ts @@ -43,8 +43,7 @@ export class ReportsScreenComponent implements OnInit { private readonly _toaster: Toaster, private readonly _loadingService: LoadingService, readonly permissionsService: PermissionsService - ) { - } + ) {} async ngOnInit() { this._loadingService.start(); @@ -104,9 +103,7 @@ export class ReportsScreenComponent implements OnInit { }); this._dialogService.openDialog('confirm', null, data, null, async result => { if (result) { - await this._reportTemplateService - .uploadTemplateForm(dossierTemplateId, result > 1, file) - .toPromise(); + await this._reportTemplateService.uploadTemplateForm(dossierTemplateId, result > 1, file).toPromise(); await this._loadReportTemplates(); } }); diff --git a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html index 9e4443463..f4d327ede 100644 --- a/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/trash/trash-screen.component.html @@ -33,7 +33,7 @@ impl } private get _canRestoreSelected$(): Observable { - return this.entitiesService.selectedEntities$.pipe( + return this.listingService.selectedEntities$.pipe( map(entities => entities.length && !entities.find(dossier => !dossier.canRestore)), distinctUntilChanged() ); @@ -73,7 +73,7 @@ export class TrashScreenComponent extends ListingComponent impl this._loadingService.stop(); } - hardDelete(dossiers = this.entitiesService.selected): void { + hardDelete(dossiers = this.listingService.selected): void { const data = new ConfirmationDialogInput({ title: _('confirmation-dialog.delete-dossier.title'), titleColor: TitleColors.PRIMARY, @@ -92,7 +92,7 @@ export class TrashScreenComponent extends ListingComponent impl }); } - restore(dossiers = this.entitiesService.selected): void { + restore(dossiers = this.listingService.selected): void { this._loadingService.loadWhile(this._restore(dossiers)); } @@ -142,6 +142,6 @@ export class TrashScreenComponent extends ListingComponent impl private _removeFromList(ids: string[]): void { const entities = this.entitiesService.all.filter(e => !ids.includes(e.id)); this.entitiesService.setEntities(entities); - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); } } diff --git a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html index 8dfd9464a..4a52d84ad 100644 --- a/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html +++ b/apps/red-ui/src/app/modules/admin/screens/user-listing/user-listing-screen.component.html @@ -54,7 +54,7 @@ { - return this.entitiesService.selectedEntities$.pipe( + return this.listingService.selectedEntities$.pipe( map(entities => entities.length && !entities.find(file => !file.canRestore)), distinctUntilChanged() ); } - hardDelete(files = this.entitiesService.selected) { + hardDelete(files = this.listingService.selected) { const data = new ConfirmationDialogInput({ title: _('confirmation-dialog.permanently-delete-file.title'), titleColor: TitleColors.PRIMARY, @@ -105,7 +105,7 @@ export class EditDossierDeletedDocumentsComponent extends ListingComponent !ids.includes(e.fileId)); this.entitiesService.setEntities(entities); - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); } private _toListItems(files: IFile[]): FileListItem[] { diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/bulk-actions/dossier-overview-bulk-actions.component.ts b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/bulk-actions/dossier-overview-bulk-actions.component.ts index edf5951e8..58f9fe3d2 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/bulk-actions/dossier-overview-bulk-actions.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/components/bulk-actions/dossier-overview-bulk-actions.component.ts @@ -6,7 +6,7 @@ import { File } from '@models/file/file'; import { FileActionService } from '../../../../shared/services/file-action.service'; import { Observable } from 'rxjs'; import { DossiersDialogService } from '../../../../services/dossiers-dialog.service'; -import { CircleButtonTypes, ConfirmationDialogInput, EntitiesService, LoadingService } from '@iqser/common-ui'; +import { CircleButtonTypes, ConfirmationDialogInput, ListingService, LoadingService } from '@iqser/common-ui'; import { TranslateService } from '@ngx-translate/core'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; import { Dossier } from '@state/model/dossier'; @@ -31,11 +31,11 @@ export class DossierOverviewBulkActionsComponent { private readonly _fileActionService: FileActionService, private readonly _loadingService: LoadingService, private readonly _translateService: TranslateService, - private readonly _entitiesService: EntitiesService + private readonly _listingService: ListingService ) {} get selectedFiles(): File[] { - return this._entitiesService.selected; + return this._listingService.selected; } get areAllFilesSelected() { @@ -133,7 +133,7 @@ export class DossierOverviewBulkActionsComponent { .toPromise(); await this._appStateService.reloadActiveDossierFiles(); this.reload.emit(); - this._entitiesService.setSelected([]); + this._listingService.setSelected([]); this._loadingService.stop(); } ); diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/screen/dossier-overview-screen.component.html b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/screen/dossier-overview-screen.component.html index 700f1f9c9..d8fddddee 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/screen/dossier-overview-screen.component.html +++ b/apps/red-ui/src/app/modules/dossier/screens/dossier-overview/screen/dossier-overview-screen.component.html @@ -14,7 +14,7 @@ imple } async bulkActionPerformed(): Promise { - this.entitiesService.setSelected([]); + this.listingService.setSelected([]); await this.reloadDossiers(); } diff --git a/apps/red-ui/src/app/modules/dossier/screens/dossiers-listing/screen/dossiers-listing-screen.component.ts b/apps/red-ui/src/app/modules/dossier/screens/dossiers-listing/screen/dossiers-listing-screen.component.ts index b68a6b827..0ee765c35 100644 --- a/apps/red-ui/src/app/modules/dossier/screens/dossiers-listing/screen/dossiers-listing-screen.component.ts +++ b/apps/red-ui/src/app/modules/dossier/screens/dossiers-listing/screen/dossiers-listing-screen.component.ts @@ -11,16 +11,7 @@ import { tap } from 'rxjs/operators'; import { Router } from '@angular/router'; import { DossiersDialogService } from '../../../services/dossiers-dialog.service'; import { groupBy, StatusSorter } from '@utils/index'; -import { - EntitiesService, - FilterService, - ListingComponent, - OnAttach, - OnDetach, - SearchService, - SortingService, - TableComponent -} from '@iqser/common-ui'; +import { DefaultListingServicesTmp, EntitiesService, ListingComponent, OnAttach, OnDetach, TableComponent } from '@iqser/common-ui'; import { fileStatusTranslations } from '../../../translations/file-status-translations'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; import { ConfigService } from '../config.service'; @@ -30,9 +21,7 @@ import { DossiersService } from '../../../services/dossiers.service'; templateUrl: './dossiers-listing-screen.component.html', styleUrls: ['./dossiers-listing-screen.component.scss'], providers: [ - FilterService, - SearchService, - SortingService, + ...DefaultListingServicesTmp, { provide: EntitiesService, useExisting: DossiersService }, { provide: ListingComponent, useExisting: forwardRef(() => DossiersListingScreenComponent) } ] diff --git a/apps/red-ui/src/app/modules/dossier/services/dossier-templates.service.ts b/apps/red-ui/src/app/modules/dossier/services/dossier-templates.service.ts index fec91b34d..9e7bc36df 100644 --- a/apps/red-ui/src/app/modules/dossier/services/dossier-templates.service.ts +++ b/apps/red-ui/src/app/modules/dossier/services/dossier-templates.service.ts @@ -2,11 +2,11 @@ import { EntitiesService } from '@iqser/common-ui'; import { DossierTemplate } from '@models/file/dossier-template'; import { IDossierTemplate } from '@redaction/red-ui-http'; import { Injectable, Injector } from '@angular/core'; -import { TEMPORARY_INJECTOR } from './injector'; -import { BehaviorSubject, Observable } from 'rxjs'; +import { BehaviorSubject, forkJoin, Observable } from 'rxjs'; import { FileAttributesService } from './file-attributes.service'; import { ActivationEnd, Router } from '@angular/router'; import { currentComponentRoute } from '@utils/functions'; +import { map, switchMap } from 'rxjs/operators'; @Injectable({ providedIn: 'root' @@ -20,7 +20,7 @@ export class DossierTemplatesService extends EntitiesService { @@ -52,33 +52,11 @@ export class DossierTemplatesService extends EntitiesService { - const dossierTemplates = await this.get().toPromise(); - this.setEntities(dossierTemplates.map(dossierTemplate => new DossierTemplate(dossierTemplate))); - for (const dossierTemplate of this.all) { - await this._fileAttributesService.getFileAttributesConfig(dossierTemplate.dossierTemplateId).toPromise(); - } - } - - async loadAllIfEmpty(): Promise { - if (!this.all.length) { - await this.loadAll(); - } - } - - /** - * Gets all dossier templates. - */ - get(): Observable; - /** - * Gets one dossier template by id. - */ - get(dossierTemplateId: string): Observable; - get(dossierTemplateId?: string) { - if (dossierTemplateId) { - return super._getOne([dossierTemplateId]); - } - - return super.getAll(); + loadAll(): Observable { + const getAttributes = (entities: DossierTemplate[]) => entities.map(e => this._fileAttributesService.getFileAttributesConfig(e.id)); + return super.loadAll().pipe( + switchMap(entities => forkJoin(getAttributes(entities))), + map(() => this.all) + ); } } diff --git a/apps/red-ui/src/app/modules/dossier/services/dossiers.service.ts b/apps/red-ui/src/app/modules/dossier/services/dossiers.service.ts index b17d73bfc..8c74a8c95 100644 --- a/apps/red-ui/src/app/modules/dossier/services/dossiers.service.ts +++ b/apps/red-ui/src/app/modules/dossier/services/dossiers.service.ts @@ -3,7 +3,6 @@ import { DossierRequest, IDossier } from '@redaction/red-ui-http'; import { EntitiesService, List, QueryParam, RequiredParam, Toaster, Validate } from '@iqser/common-ui'; import { Dossier } from '@state/model/dossier'; import { catchError, map, tap } from 'rxjs/operators'; -import { TEMPORARY_INJECTOR } from './injector'; import { BehaviorSubject, Observable, of } from 'rxjs'; import { ActivationEnd, Router } from '@angular/router'; import { File } from '@models/file/file'; @@ -33,7 +32,7 @@ export class DossiersService extends EntitiesService { private readonly _dictionaryService: DictionaryService, private readonly _toaster: Toaster ) { - super(TEMPORARY_INJECTOR(_injector), 'dossier'); + super(_injector, Dossier, 'dossier'); this.activeDossier$ = this._activeDossier$.asObservable(); _router.events.pipe(currentComponentRoute).subscribe((event: ActivationEnd) => { @@ -98,12 +97,6 @@ export class DossiersService extends EntitiesService { } } - get(): Observable; - get(dossierId: string): Observable; - get(dossierId?: string): Observable { - return dossierId ? super._getOne([dossierId]) : super.getAll(); - } - @Validate() createOrUpdate(@RequiredParam() dossier: DossierRequest): Observable { return this._post(dossier).pipe( diff --git a/apps/red-ui/src/app/modules/dossier/services/file-attributes.service.ts b/apps/red-ui/src/app/modules/dossier/services/file-attributes.service.ts index 6d8af537c..cd235f924 100644 --- a/apps/red-ui/src/app/modules/dossier/services/file-attributes.service.ts +++ b/apps/red-ui/src/app/modules/dossier/services/file-attributes.service.ts @@ -1,7 +1,6 @@ import { EntitiesService, List, RequiredParam, Validate } from '@iqser/common-ui'; import { FileAttributes, FileAttributesConfig, IFileAttributeConfig } from '@redaction/red-ui-http'; import { Injectable, Injector } from '@angular/core'; -import { TEMPORARY_INJECTOR } from './injector'; import { BehaviorSubject, Observable, of } from 'rxjs'; import { catchError, map, tap } from 'rxjs/operators'; import { FileAttributeConfig } from '@models/file/file-attribute-config'; @@ -15,20 +14,13 @@ export class FileAttributesService extends EntitiesService({}); constructor(protected readonly _injector: Injector) { - super(TEMPORARY_INJECTOR(_injector), 'fileAttributes'); + super(_injector, FileAttributeConfig, 'fileAttributes'); } get fileAttributesConfig(): FileAttributesConfigMap { return this._fileAttributesConfig$.value; } - fetch(): Observable { - return this.getAll().pipe( - map(entities => entities.map(entity => new FileAttributeConfig(entity))), - tap(entities => this.setEntities(entities)) - ); - } - /** * Get the file attributes that can be used at importing csv. */ diff --git a/apps/red-ui/src/app/modules/dossier/services/files.service.ts b/apps/red-ui/src/app/modules/dossier/services/files.service.ts index d3e0c3eda..308bf0d77 100644 --- a/apps/red-ui/src/app/modules/dossier/services/files.service.ts +++ b/apps/red-ui/src/app/modules/dossier/services/files.service.ts @@ -2,7 +2,6 @@ import { Injectable, Injector } from '@angular/core'; import { EntitiesService, List, RequiredParam, Validate } from '@iqser/common-ui'; import { IFile } from '@redaction/red-ui-http'; import { File } from '@models/file/file'; -import { TEMPORARY_INJECTOR } from './injector'; import { Observable } from 'rxjs'; import { map } from 'rxjs/operators'; import { UserService } from '@services/user.service'; @@ -12,7 +11,7 @@ import { UserService } from '@services/user.service'; }) export class FilesService extends EntitiesService { constructor(protected readonly _injector: Injector, private readonly _userService: UserService) { - super(TEMPORARY_INJECTOR(_injector), 'status'); + super(_injector, File, 'status'); } getExistingFilesFor(dossierId: string): List { @@ -31,7 +30,7 @@ export class FilesService extends EntitiesService { * Gets the status for a file from a dossier. */ get(dossierId: string, fileId: string): Observable; - get(dossierId?: string, fileId?: string) { + get(dossierId?: string, fileId?: string): Observable { if (dossierId && fileId) { return super._getOne([dossierId, fileId]); } diff --git a/apps/red-ui/src/app/modules/dossier/services/injector.ts b/apps/red-ui/src/app/modules/dossier/services/injector.ts index 3100fb6e4..9aae4f747 100644 --- a/apps/red-ui/src/app/modules/dossier/services/injector.ts +++ b/apps/red-ui/src/app/modules/dossier/services/injector.ts @@ -1,5 +1,5 @@ -import { Injector } from "@angular/core"; -import { FilterService, SearchService } from "@iqser/common-ui"; +import { Injector } from '@angular/core'; +import { FilterService, SearchService } from '@iqser/common-ui'; /** * This should be removed when refactoring is done diff --git a/apps/red-ui/src/app/modules/shared/components/editor/editor.component.ts b/apps/red-ui/src/app/modules/shared/components/editor/editor.component.ts index fee65d68c..edb61fca1 100644 --- a/apps/red-ui/src/app/modules/shared/components/editor/editor.component.ts +++ b/apps/red-ui/src/app/modules/shared/components/editor/editor.component.ts @@ -58,7 +58,6 @@ export class EditorComponent implements OnInit, OnChanges { } ngOnChanges(changes: SimpleChanges) { - console.log(changes); this.revert(); } diff --git a/apps/red-ui/src/app/modules/shared/services/dictionary.service.ts b/apps/red-ui/src/app/modules/shared/services/dictionary.service.ts index 6ed66324f..75bf08990 100644 --- a/apps/red-ui/src/app/modules/shared/services/dictionary.service.ts +++ b/apps/red-ui/src/app/modules/shared/services/dictionary.service.ts @@ -4,7 +4,6 @@ import { EntitiesService, List, QueryParam, RequiredParam, Toaster, Validate } f import { Colors, IDictionary, ITypeValue, UpdateTypeValue } from '@redaction/red-ui-http'; import { tap } from 'rxjs/operators'; import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker'; -import { TEMPORARY_INJECTOR } from '../../dossier/services/injector'; import { Dictionary } from '@models/dictionary'; const MIN_WORD_LENGTH = 2; @@ -14,7 +13,7 @@ const MIN_WORD_LENGTH = 2; }) export class DictionaryService extends EntitiesService { constructor(private readonly _toaster: Toaster, protected readonly _injector: Injector) { - super(TEMPORARY_INJECTOR(_injector), 'dictionary'); + super(_injector, Dictionary, 'dictionary'); } /** diff --git a/apps/red-ui/src/app/modules/upload-download/model/download-status.wrapper.ts b/apps/red-ui/src/app/modules/upload-download/model/download-status.wrapper.ts index 9b08fbd2c..d81e5f778 100644 --- a/apps/red-ui/src/app/modules/upload-download/model/download-status.wrapper.ts +++ b/apps/red-ui/src/app/modules/upload-download/model/download-status.wrapper.ts @@ -1,11 +1,10 @@ -import {DownloadStatus} from '@redaction/red-ui-http'; -import {IListable} from '@iqser/common-ui'; +import { DownloadStatus } from '@redaction/red-ui-http'; +import { IListable } from '@iqser/common-ui'; export class DownloadStatusWrapper implements IListable { inProgress: boolean; - constructor(private _downloadStatus: DownloadStatus) { - } + constructor(private _downloadStatus: DownloadStatus) {} get id() { return this.storageId; @@ -24,7 +23,6 @@ export class DownloadStatusWrapper implements IListable { return this._downloadStatus.creationDate; } - get filename() { return this._downloadStatus.filename; } diff --git a/apps/red-ui/src/app/utils/pdf-coordinates.ts b/apps/red-ui/src/app/utils/pdf-coordinates.ts index a5c16b1b4..8c76dbe5a 100644 --- a/apps/red-ui/src/app/utils/pdf-coordinates.ts +++ b/apps/red-ui/src/app/utils/pdf-coordinates.ts @@ -2,7 +2,7 @@ enum PageRotation { E_0 = 0, E_90 = 1, E_180 = 2, - E_270 = 3 + E_270 = 3, } export function translateQuads(page: number, rotation: number, quads: any) { diff --git a/apps/red-ui/src/assets/styles/red-material-theme.scss b/apps/red-ui/src/assets/styles/red-material-theme.scss index 3a7ad72c3..e00613694 100644 --- a/apps/red-ui/src/assets/styles/red-material-theme.scss +++ b/apps/red-ui/src/assets/styles/red-material-theme.scss @@ -11,8 +11,8 @@ $primary-palette: ( contrast: ( default: variables.$light, lighter: variables.$light, - darker: variables.$light - ) + darker: variables.$light, + ), ); $secondary-palette: ( @@ -23,8 +23,8 @@ $secondary-palette: ( contrast: ( default: variables.$light, lighter: variables.$light, - darker: variables.$light - ) + darker: variables.$light, + ), ); $red-palette: ( @@ -35,8 +35,8 @@ $red-palette: ( contrast: ( default: variables.$light, lighter: variables.$light, - darker: variables.$light - ) + darker: variables.$light, + ), ); $gn-next-primary: mat.define-palette($primary-palette, default, lighter, darker, text); @@ -48,15 +48,15 @@ $gn-next-mat-theme: mat.define-light-theme( color: ( primary: $gn-next-primary, accent: $gn-next-secondary, - warn: $gn-next-warning - ) + warn: $gn-next-warning, + ), ) ); @include mat.all-component-themes($gn-next-mat-theme); $custom-typography: mat.define-typography-config( - $font-family: 'Inter, sans-serif' + $font-family: 'Inter, sans-serif', ); @include mat.all-component-typographies($custom-typography); diff --git a/libs/common-ui b/libs/common-ui index 916bf9bda..61fb1a400 160000 --- a/libs/common-ui +++ b/libs/common-ui @@ -1 +1 @@ -Subproject commit 916bf9bda3aea9538fb508fb9fce9b8986645f8d +Subproject commit 61fb1a40063e27f335b0345552b8874eba2ac899