diff --git a/apps/red-ui/src/app/dialogs/confirm-delete-file-attribute-dialog/confirm-delete-file-attribute-dialog.component.ts b/apps/red-ui/src/app/dialogs/confirm-delete-file-attribute-dialog/confirm-delete-file-attribute-dialog.component.ts
index 62b3509a0..041d25ea5 100644
--- a/apps/red-ui/src/app/dialogs/confirm-delete-file-attribute-dialog/confirm-delete-file-attribute-dialog.component.ts
+++ b/apps/red-ui/src/app/dialogs/confirm-delete-file-attribute-dialog/confirm-delete-file-attribute-dialog.component.ts
@@ -1,6 +1,6 @@
import { Component, Inject } from '@angular/core';
import { AppStateService } from '../../state/app-state.service';
-import { FileAttribute, FileAttributesControllerService } from '@redaction/red-ui-http';
+import { FileAttributeConfig, FileAttributesControllerService } from '@redaction/red-ui-http';
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
@Component({
@@ -9,7 +9,7 @@ import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
styleUrls: ['./confirm-delete-file-attribute-dialog.component.scss']
})
export class ConfirmDeleteFileAttributeDialogComponent {
- public fileAttribute: FileAttribute;
+ public fileAttribute: FileAttributeConfig;
public ruleSetId: string;
public checkboxes = [{ value: false }, { value: false }];
@@ -17,7 +17,7 @@ export class ConfirmDeleteFileAttributeDialogComponent {
private readonly _appStateService: AppStateService,
private readonly _fileAttributesService: FileAttributesControllerService,
public dialogRef: MatDialogRef
,
- @Inject(MAT_DIALOG_DATA) public data: { fileAttribute: FileAttribute; ruleSetId: string }
+ @Inject(MAT_DIALOG_DATA) public data: { fileAttribute: FileAttributeConfig; ruleSetId: string }
) {
this.fileAttribute = data.fileAttribute;
this.ruleSetId = data.ruleSetId;
diff --git a/apps/red-ui/src/app/dialogs/dialog.service.ts b/apps/red-ui/src/app/dialogs/dialog.service.ts
index 263d5215c..d35edbca1 100644
--- a/apps/red-ui/src/app/dialogs/dialog.service.ts
+++ b/apps/red-ui/src/app/dialogs/dialog.service.ts
@@ -3,7 +3,7 @@ import { MatDialog, MatDialogRef } from '@angular/material/dialog';
import {
Colors,
DictionaryControllerService,
- FileAttribute,
+ FileAttributeConfig,
FileManagementControllerService,
FileStatus,
ManualRedactionControllerService,
@@ -30,6 +30,7 @@ import { RemoveAnnotationsDialogComponent } from './remove-annotations-dialog/re
import { ForceRedactionDialogComponent } from './force-redaction-dialog/force-redaction-dialog.component';
import { AddEditFileAttributeDialogComponent } from './add-edit-file-attribute-dialog/add-edit-file-attribute-dialog.component';
import { ConfirmDeleteFileAttributeDialogComponent } from './confirm-delete-file-attribute-dialog/confirm-delete-file-attribute-dialog.component';
+import { DocumentInfoDialogComponent } from './document-info-dialog/document-info-dialog.component';
const dialogConfig = {
width: '662px',
@@ -339,7 +340,11 @@ export class DialogService {
return ref;
}
- public openAddEditFileAttributeDialog(fileAttribute: FileAttribute, ruleSetId: string, cb?: Function): MatDialogRef {
+ public openAddEditFileAttributeDialog(
+ fileAttribute: FileAttributeConfig,
+ ruleSetId: string,
+ cb?: Function
+ ): MatDialogRef {
const ref = this._dialog.open(AddEditFileAttributeDialogComponent, {
...dialogConfig,
data: { fileAttribute, ruleSetId },
@@ -356,7 +361,7 @@ export class DialogService {
}
public openConfirmDeleteFileAttributeDialog(
- fileAttribute: FileAttribute,
+ fileAttribute: FileAttributeConfig,
ruleSetId: string,
cb?: Function
): MatDialogRef {
@@ -375,6 +380,22 @@ export class DialogService {
return ref;
}
+ public openDocumentInfoDialog(file: FileStatus, cb?: Function): MatDialogRef {
+ const ref = this._dialog.open(DocumentInfoDialogComponent, {
+ ...dialogConfig,
+ data: file,
+ autoFocus: true
+ });
+
+ ref.afterClosed().subscribe((result) => {
+ if (result && cb) {
+ cb(result);
+ }
+ });
+
+ return ref;
+ }
+
openRemoveAnnotationModal($event: MouseEvent, annotation: AnnotationWrapper, callback: () => void) {
$event?.stopPropagation();
diff --git a/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.html b/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.html
new file mode 100644
index 000000000..631db7764
--- /dev/null
+++ b/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.html
@@ -0,0 +1,24 @@
+
diff --git a/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.scss b/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.scss
new file mode 100644
index 000000000..e69de29bb
diff --git a/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.ts b/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.ts
new file mode 100644
index 000000000..1e8ea59ec
--- /dev/null
+++ b/apps/red-ui/src/app/dialogs/document-info-dialog/document-info-dialog.component.ts
@@ -0,0 +1,36 @@
+import { Component, Inject, OnInit } from '@angular/core';
+import { FormBuilder, FormGroup } from '@angular/forms';
+import { FileAttributesControllerService, FileStatus } from '@redaction/red-ui-http';
+import { AppStateService } from '../../state/app-state.service';
+import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
+
+@Component({
+ selector: 'redaction-document-info-dialog',
+ templateUrl: './document-info-dialog.component.html',
+ styleUrls: ['./document-info-dialog.component.scss']
+})
+export class DocumentInfoDialogComponent implements OnInit {
+ public documentInfoForm: FormGroup;
+ public file: FileStatus;
+
+ constructor(
+ private readonly _appStateService: AppStateService,
+ private readonly _formBuilder: FormBuilder,
+ private readonly _fileAttributesService: FileAttributesControllerService,
+ public dialogRef: MatDialogRef,
+ @Inject(MAT_DIALOG_DATA) public data: FileStatus
+ ) {
+ this.file = this.data;
+ console.log(this.data);
+
+ this.documentInfoForm = this._formBuilder.group({
+ // name: [this.fileAttribute?.name, Validators.required],
+ // readonly: [this.fileAttribute ? !this.fileAttribute.editable : false],
+ // visible: [this.fileAttribute?.visible]
+ });
+ }
+
+ ngOnInit(): void {}
+
+ public saveDocumentInfo() {}
+}
diff --git a/apps/red-ui/src/app/icons/icons.module.ts b/apps/red-ui/src/app/icons/icons.module.ts
index a4f14eae0..164c8c62a 100644
--- a/apps/red-ui/src/app/icons/icons.module.ts
+++ b/apps/red-ui/src/app/icons/icons.module.ts
@@ -64,8 +64,9 @@ export class IconsModule {
'sort-asc',
'sort-desc',
'status',
- 'status-expand',
'status-collapse',
+ 'status-expand',
+ 'status-info',
'template',
'thumb-down',
'thumb-up',
diff --git a/apps/red-ui/src/app/screens/admin/file-attributes-listing-screen/file-attributes-listing-screen.component.html b/apps/red-ui/src/app/screens/admin/file-attributes-listing-screen/file-attributes-listing-screen.component.html
index 633bf9e2a..b4feb342a 100644
--- a/apps/red-ui/src/app/screens/admin/file-attributes-listing-screen/file-attributes-listing-screen.component.html
+++ b/apps/red-ui/src/app/screens/admin/file-attributes-listing-screen/file-attributes-listing-screen.component.html
@@ -50,7 +50,7 @@