rename DossierTemplateModelWrapper, rename dossierWrapper
This commit is contained in:
parent
07123ef70b
commit
38d406ec85
@ -1,57 +0,0 @@
|
|||||||
import { DossierTemplateModel, FileAttributesConfig } from '@redaction/red-ui-http';
|
|
||||||
import { IListable } from '@iqser/common-ui';
|
|
||||||
|
|
||||||
export class DossierTemplateModelWrapper implements IListable {
|
|
||||||
dictionariesCount = 0;
|
|
||||||
totalDictionaryEntries = 0;
|
|
||||||
|
|
||||||
constructor(public dossierTemplateModel: DossierTemplateModel, public fileAttributesConfig: FileAttributesConfig) {}
|
|
||||||
|
|
||||||
get id() {
|
|
||||||
return this.dossierTemplateModel.dossierTemplateId;
|
|
||||||
}
|
|
||||||
|
|
||||||
get createdBy() {
|
|
||||||
return this.dossierTemplateModel.createdBy;
|
|
||||||
}
|
|
||||||
|
|
||||||
get dateAdded() {
|
|
||||||
return this.dossierTemplateModel.dateAdded;
|
|
||||||
}
|
|
||||||
|
|
||||||
get dateModified() {
|
|
||||||
return this.dossierTemplateModel.dateModified;
|
|
||||||
}
|
|
||||||
|
|
||||||
get description() {
|
|
||||||
return this.dossierTemplateModel.description;
|
|
||||||
}
|
|
||||||
|
|
||||||
get dossierTemplateId() {
|
|
||||||
return this.dossierTemplateModel.dossierTemplateId;
|
|
||||||
}
|
|
||||||
|
|
||||||
get downloadFileTypes() {
|
|
||||||
return this.dossierTemplateModel.downloadFileTypes;
|
|
||||||
}
|
|
||||||
|
|
||||||
get modifiedBy() {
|
|
||||||
return this.dossierTemplateModel.modifiedBy;
|
|
||||||
}
|
|
||||||
|
|
||||||
get name() {
|
|
||||||
return this.dossierTemplateModel.name;
|
|
||||||
}
|
|
||||||
|
|
||||||
get reportTemplateIds() {
|
|
||||||
return this.dossierTemplateModel.reportTemplateIds;
|
|
||||||
}
|
|
||||||
|
|
||||||
get validFrom() {
|
|
||||||
return this.dossierTemplateModel.validFrom;
|
|
||||||
}
|
|
||||||
|
|
||||||
get validTo() {
|
|
||||||
return this.dossierTemplateModel.validTo;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
36
apps/red-ui/src/app/models/file/dossier-template.ts
Normal file
36
apps/red-ui/src/app/models/file/dossier-template.ts
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
import { DownloadFileType, FileAttributesConfig, IDossierTemplate, List } from '@redaction/red-ui-http';
|
||||||
|
import { IListable } from '@iqser/common-ui';
|
||||||
|
|
||||||
|
export class DossierTemplate implements IDossierTemplate, IListable {
|
||||||
|
readonly createdBy?: string;
|
||||||
|
readonly dateAdded?: string;
|
||||||
|
readonly dateModified?: string;
|
||||||
|
readonly description?: string;
|
||||||
|
readonly dossierTemplateId?: string;
|
||||||
|
readonly downloadFileTypes?: List<DownloadFileType>;
|
||||||
|
readonly modifiedBy?: string;
|
||||||
|
readonly name?: string;
|
||||||
|
readonly reportTemplateIds?: List;
|
||||||
|
readonly validFrom?: string;
|
||||||
|
readonly validTo?: string;
|
||||||
|
dictionariesCount = 0;
|
||||||
|
totalDictionaryEntries = 0;
|
||||||
|
|
||||||
|
constructor(dossierTemplateModel: IDossierTemplate, public fileAttributesConfig: FileAttributesConfig) {
|
||||||
|
this.createdBy = dossierTemplateModel.createdBy;
|
||||||
|
this.dateAdded = dossierTemplateModel.dateAdded;
|
||||||
|
this.dateModified = dossierTemplateModel.dateModified;
|
||||||
|
this.description = dossierTemplateModel.description;
|
||||||
|
this.dossierTemplateId = dossierTemplateModel.dossierTemplateId;
|
||||||
|
this.downloadFileTypes = dossierTemplateModel.downloadFileTypes;
|
||||||
|
this.modifiedBy = dossierTemplateModel.modifiedBy;
|
||||||
|
this.name = dossierTemplateModel.name;
|
||||||
|
this.reportTemplateIds = dossierTemplateModel.reportTemplateIds;
|
||||||
|
this.validFrom = dossierTemplateModel.validFrom;
|
||||||
|
this.validTo = dossierTemplateModel.validTo;
|
||||||
|
}
|
||||||
|
|
||||||
|
get id(): string {
|
||||||
|
return this.dossierTemplateId;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -6,8 +6,8 @@ import * as moment from 'moment';
|
|||||||
import { Moment } from 'moment';
|
import { Moment } from 'moment';
|
||||||
import {
|
import {
|
||||||
DossierTemplateControllerService,
|
DossierTemplateControllerService,
|
||||||
DossierTemplateModel,
|
|
||||||
DownloadFileType,
|
DownloadFileType,
|
||||||
|
IDossierTemplate,
|
||||||
ReportTemplate,
|
ReportTemplate,
|
||||||
ReportTemplateControllerService
|
ReportTemplateControllerService
|
||||||
} from '@redaction/red-ui-http';
|
} from '@redaction/red-ui-http';
|
||||||
@ -39,7 +39,7 @@ export class AddEditDossierTemplateDialogComponent implements OnInit {
|
|||||||
private readonly _dossierTemplateController: DossierTemplateControllerService,
|
private readonly _dossierTemplateController: DossierTemplateControllerService,
|
||||||
private readonly _reportTemplateController: ReportTemplateControllerService,
|
private readonly _reportTemplateController: ReportTemplateControllerService,
|
||||||
public dialogRef: MatDialogRef<AddEditDossierTemplateDialogComponent>,
|
public dialogRef: MatDialogRef<AddEditDossierTemplateDialogComponent>,
|
||||||
@Inject(MAT_DIALOG_DATA) public dossierTemplate: DossierTemplateModel
|
@Inject(MAT_DIALOG_DATA) readonly dossierTemplate: IDossierTemplate
|
||||||
) {
|
) {
|
||||||
this.dossierTemplateForm = this._formBuilder.group({
|
this.dossierTemplateForm = this._formBuilder.group({
|
||||||
name: [this.dossierTemplate?.name, Validators.required],
|
name: [this.dossierTemplate?.name, Validators.required],
|
||||||
|
|||||||
@ -2,7 +2,7 @@ import { ChangeDetectionStrategy, Component, forwardRef, Injector, OnInit, Templ
|
|||||||
import { AppStateService } from '@state/app-state.service';
|
import { AppStateService } from '@state/app-state.service';
|
||||||
import { UserPreferenceService } from '@services/user-preference.service';
|
import { UserPreferenceService } from '@services/user-preference.service';
|
||||||
import { AdminDialogService } from '../../services/admin-dialog.service';
|
import { AdminDialogService } from '../../services/admin-dialog.service';
|
||||||
import { DossierTemplateModelWrapper } from '@models/file/dossier-template-model.wrapper';
|
import { DossierTemplate } from '@models/file/dossier-template';
|
||||||
import {
|
import {
|
||||||
CircleButtonTypes,
|
CircleButtonTypes,
|
||||||
DefaultListingServices,
|
DefaultListingServices,
|
||||||
@ -26,12 +26,12 @@ import { RouterHistoryService } from '@services/router-history.service';
|
|||||||
{ provide: ListingComponent, useExisting: forwardRef(() => DossierTemplatesListingScreenComponent) }
|
{ provide: ListingComponent, useExisting: forwardRef(() => DossierTemplatesListingScreenComponent) }
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class DossierTemplatesListingScreenComponent extends ListingComponent<DossierTemplateModelWrapper> implements OnInit {
|
export class DossierTemplatesListingScreenComponent extends ListingComponent<DossierTemplate> implements OnInit {
|
||||||
readonly iconButtonTypes = IconButtonTypes;
|
readonly iconButtonTypes = IconButtonTypes;
|
||||||
readonly circleButtonTypes = CircleButtonTypes;
|
readonly circleButtonTypes = CircleButtonTypes;
|
||||||
readonly currentUser = this._userService.currentUser;
|
readonly currentUser = this._userService.currentUser;
|
||||||
readonly tableHeaderLabel = _('dossier-templates-listing.table-header.title');
|
readonly tableHeaderLabel = _('dossier-templates-listing.table-header.title');
|
||||||
tableColumnConfigs: TableColumnConfig<DossierTemplateModelWrapper>[];
|
tableColumnConfigs: TableColumnConfig<DossierTemplate>[];
|
||||||
@ViewChild('nameTemplate', { static: true }) nameTemplate: TemplateRef<never>;
|
@ViewChild('nameTemplate', { static: true }) nameTemplate: TemplateRef<never>;
|
||||||
@ViewChild('userTemplate', { static: true }) userTemplate: TemplateRef<never>;
|
@ViewChild('userTemplate', { static: true }) userTemplate: TemplateRef<never>;
|
||||||
@ViewChild('dateAddedTemplate', { static: true }) dateAddedTemplate: TemplateRef<never>;
|
@ViewChild('dateAddedTemplate', { static: true }) dateAddedTemplate: TemplateRef<never>;
|
||||||
@ -52,7 +52,7 @@ export class DossierTemplatesListingScreenComponent extends ListingComponent<Dos
|
|||||||
super(_injector);
|
super(_injector);
|
||||||
}
|
}
|
||||||
|
|
||||||
routerLinkFn = (dossierTemplate: DossierTemplateModelWrapper) => [dossierTemplate.dossierTemplateId, 'dictionaries'];
|
routerLinkFn = (dossierTemplate: DossierTemplate) => [dossierTemplate.dossierTemplateId, 'dictionaries'];
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
this._configureTableColumns();
|
this._configureTableColumns();
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
||||||
import { DossierAttributeWithValue } from '@models/dossier-attributes.model';
|
import { DossierAttributeWithValue } from '@models/dossier-attributes.model';
|
||||||
import { AppStateService } from '@state/app-state.service';
|
import { AppStateService } from '@state/app-state.service';
|
||||||
import { Dossier } from '../../../../state/model/dossier';
|
import { Dossier } from '@state/model/dossier';
|
||||||
import { DossierTemplateModel } from '@redaction/red-ui-http';
|
import { IDossierTemplate } from '@redaction/red-ui-http';
|
||||||
import { DossiersDialogService } from '../../services/dossiers-dialog.service';
|
import { DossiersDialogService } from '../../services/dossiers-dialog.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
@ -13,7 +13,7 @@ import { DossiersDialogService } from '../../services/dossiers-dialog.service';
|
|||||||
export class DossierDetailsStatsComponent {
|
export class DossierDetailsStatsComponent {
|
||||||
attributesExpanded = false;
|
attributesExpanded = false;
|
||||||
@Input() dossierAttributes: DossierAttributeWithValue[];
|
@Input() dossierAttributes: DossierAttributeWithValue[];
|
||||||
@Output() openDossierDictionaryDialog = new EventEmitter();
|
@Output() readonly openDossierDictionaryDialog = new EventEmitter();
|
||||||
|
|
||||||
constructor(private readonly _appStateService: AppStateService, private readonly _dialogService: DossiersDialogService) {}
|
constructor(private readonly _appStateService: AppStateService, private readonly _dialogService: DossiersDialogService) {}
|
||||||
|
|
||||||
@ -21,13 +21,13 @@ export class DossierDetailsStatsComponent {
|
|||||||
return this._appStateService.activeDossier;
|
return this._appStateService.activeDossier;
|
||||||
}
|
}
|
||||||
|
|
||||||
get dossierTemplate(): DossierTemplateModel {
|
get dossierTemplate(): IDossierTemplate {
|
||||||
return this._appStateService.getDossierTemplateById(this.activeDossier.dossierTemplateId);
|
return this._appStateService.getDossierTemplateById(this.activeDossier.dossierTemplateId);
|
||||||
}
|
}
|
||||||
|
|
||||||
openEditDossierAttributesDialog() {
|
openEditDossierAttributesDialog() {
|
||||||
this._dialogService.openDialog('editDossier', null, {
|
this._dialogService.openDialog('editDossier', null, {
|
||||||
dossierWrapper: this.activeDossier,
|
dossier: this.activeDossier,
|
||||||
section: 'dossierAttributes'
|
section: 'dossierAttributes'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -18,7 +18,7 @@ export class DossierListingActionsComponent {
|
|||||||
readonly currentUser = this._userService.currentUser;
|
readonly currentUser = this._userService.currentUser;
|
||||||
|
|
||||||
@Input() dossier: Dossier;
|
@Input() dossier: Dossier;
|
||||||
@Output() actionPerformed = new EventEmitter<Dossier | undefined>();
|
@Output() readonly actionPerformed = new EventEmitter<Dossier | undefined>();
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
readonly permissionsService: PermissionsService,
|
readonly permissionsService: PermissionsService,
|
||||||
@ -27,9 +27,9 @@ export class DossierListingActionsComponent {
|
|||||||
private readonly _userService: UserService
|
private readonly _userService: UserService
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
openEditDossierDialog($event: MouseEvent, dossierWrapper: Dossier): void {
|
openEditDossierDialog($event: MouseEvent, dossier: Dossier): void {
|
||||||
this._dialogService.openDialog('editDossier', $event, {
|
this._dialogService.openDialog('editDossier', $event, {
|
||||||
dossierWrapper,
|
dossier,
|
||||||
afterSave: () => this.actionPerformed.emit()
|
afterSave: () => this.actionPerformed.emit()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,9 +16,9 @@ export class TeamMembersManagerComponent implements OnInit {
|
|||||||
teamForm: FormGroup;
|
teamForm: FormGroup;
|
||||||
searchQuery = '';
|
searchQuery = '';
|
||||||
|
|
||||||
@Input() dossierWrapper: Dossier;
|
@Input() dossier: Dossier;
|
||||||
|
|
||||||
@Output() readonly save = new EventEmitter<IDossier>();
|
@Output() readonly save = new EventEmitter<IDossier>();
|
||||||
|
|
||||||
readonly ownersSelectOptions = this.userService.managerUsers.map(m => m.id);
|
readonly ownersSelectOptions = this.userService.managerUsers.map(m => m.id);
|
||||||
selectedReviewersList: string[] = [];
|
selectedReviewersList: string[] = [];
|
||||||
membersSelectOptions: string[] = [];
|
membersSelectOptions: string[] = [];
|
||||||
@ -58,7 +58,7 @@ export class TeamMembersManagerComponent implements OnInit {
|
|||||||
const memberIds = this.selectedMembersList;
|
const memberIds = this.selectedMembersList;
|
||||||
const approverIds = this.selectedApproversList;
|
const approverIds = this.selectedApproversList;
|
||||||
const dw = {
|
const dw = {
|
||||||
...this.dossierWrapper,
|
...this.dossier,
|
||||||
memberIds,
|
memberIds,
|
||||||
approverIds,
|
approverIds,
|
||||||
ownerId
|
ownerId
|
||||||
@ -120,15 +120,15 @@ export class TeamMembersManagerComponent implements OnInit {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private _updateChanged() {
|
private _updateChanged() {
|
||||||
if (this.dossierWrapper.ownerId !== this.selectedOwnerId) {
|
if (this.dossier.ownerId !== this.selectedOwnerId) {
|
||||||
this.changed = true;
|
this.changed = true;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const initialMembers = [...this.dossierWrapper.memberIds].sort();
|
const initialMembers = [...this.dossier.memberIds].sort();
|
||||||
const currentMembers = this.selectedMembersList.sort();
|
const currentMembers = this.selectedMembersList.sort();
|
||||||
|
|
||||||
const initialApprovers = [...this.dossierWrapper.approverIds].sort();
|
const initialApprovers = [...this.dossier.approverIds].sort();
|
||||||
const currentApprovers = this.selectedApproversList.sort();
|
const currentApprovers = this.selectedApproversList.sort();
|
||||||
|
|
||||||
this.changed = this._compareLists(initialMembers, currentMembers) || this._compareLists(initialApprovers, currentApprovers);
|
this.changed = this._compareLists(initialMembers, currentMembers) || this._compareLists(initialApprovers, currentApprovers);
|
||||||
@ -147,9 +147,9 @@ export class TeamMembersManagerComponent implements OnInit {
|
|||||||
|
|
||||||
private _loadData() {
|
private _loadData() {
|
||||||
this.teamForm = this._formBuilder.group({
|
this.teamForm = this._formBuilder.group({
|
||||||
owner: [this.dossierWrapper?.ownerId, Validators.required],
|
owner: [this.dossier?.ownerId, Validators.required],
|
||||||
approvers: [[...this.dossierWrapper?.approverIds]],
|
approvers: [[...this.dossier?.approverIds]],
|
||||||
members: [[...this.dossierWrapper?.memberIds]]
|
members: [[...this.dossier?.memberIds]]
|
||||||
});
|
});
|
||||||
this.teamForm.get('owner').valueChanges.subscribe(owner => {
|
this.teamForm.get('owner').valueChanges.subscribe(owner => {
|
||||||
if (!this.isApprover(owner)) {
|
if (!this.isApprover(owner)) {
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { MatDialogRef } from '@angular/material/dialog';
|
import { MatDialogRef } from '@angular/material/dialog';
|
||||||
import { DossierTemplateModel, DownloadFileType, IDossier, ReportTemplate, ReportTemplateControllerService } from '@redaction/red-ui-http';
|
import { DownloadFileType, IDossier, IDossierTemplate, ReportTemplate, ReportTemplateControllerService } from '@redaction/red-ui-http';
|
||||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||||
import { AppStateService } from '@state/app-state.service';
|
import { AppStateService } from '@state/app-state.service';
|
||||||
import * as moment from 'moment';
|
import * as moment from 'moment';
|
||||||
@ -16,12 +16,11 @@ export class AddDossierDialogComponent {
|
|||||||
|
|
||||||
dossierForm: FormGroup;
|
dossierForm: FormGroup;
|
||||||
hasDueDate = false;
|
hasDueDate = false;
|
||||||
downloadTypesEnum: DownloadFileType[] = ['ORIGINAL', 'PREVIEW', 'REDACTED'];
|
downloadTypes: { key: DownloadFileType; label: string }[] = ['ORIGINAL', 'PREVIEW', 'REDACTED'].map((type: DownloadFileType) => ({
|
||||||
downloadTypes: { key: DownloadFileType; label: string }[] = this.downloadTypesEnum.map(type => ({
|
|
||||||
key: type,
|
key: type,
|
||||||
label: downloadTypesTranslations[type]
|
label: downloadTypesTranslations[type]
|
||||||
}));
|
}));
|
||||||
dossierTemplates: DossierTemplateModel[];
|
dossierTemplates: IDossierTemplate[];
|
||||||
availableReportTypes = [];
|
availableReportTypes = [];
|
||||||
reportTemplateValueMapper = (reportTemplate: ReportTemplate) => reportTemplate.templateId;
|
reportTemplateValueMapper = (reportTemplate: ReportTemplate) => reportTemplate.templateId;
|
||||||
|
|
||||||
@ -29,7 +28,7 @@ export class AddDossierDialogComponent {
|
|||||||
private readonly _appStateService: AppStateService,
|
private readonly _appStateService: AppStateService,
|
||||||
private readonly _formBuilder: FormBuilder,
|
private readonly _formBuilder: FormBuilder,
|
||||||
private readonly _reportTemplateController: ReportTemplateControllerService,
|
private readonly _reportTemplateController: ReportTemplateControllerService,
|
||||||
public dialogRef: MatDialogRef<AddDossierDialogComponent>
|
readonly dialogRef: MatDialogRef<AddDossierDialogComponent>
|
||||||
) {
|
) {
|
||||||
this._filterInvalidDossierTemplates();
|
this._filterInvalidDossierTemplates();
|
||||||
this.dossierForm = this._formBuilder.group(
|
this.dossierForm = this._formBuilder.group(
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
import { Component, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, ViewChildren } from '@angular/core';
|
import { Component, ElementRef, EventEmitter, Input, OnInit, Output, QueryList, ViewChildren } from '@angular/core';
|
||||||
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
||||||
import { Dossier } from '../../../../../state/model/dossier';
|
import { Dossier } from '../../../../../state/model/dossier';
|
||||||
import { AppStateService } from '@state/app-state.service';
|
|
||||||
import { PermissionsService } from '@services/permissions.service';
|
import { PermissionsService } from '@services/permissions.service';
|
||||||
import { CircleButtonTypes, IconButtonTypes, LoadingService } from '@iqser/common-ui';
|
import { CircleButtonTypes, IconButtonTypes, LoadingService } from '@iqser/common-ui';
|
||||||
import { FormBuilder, FormGroup } from '@angular/forms';
|
import { FormBuilder, FormGroup } from '@angular/forms';
|
||||||
@ -18,8 +17,8 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
|
|||||||
readonly iconButtonTypes = IconButtonTypes;
|
readonly iconButtonTypes = IconButtonTypes;
|
||||||
readonly circleButtonTypes = CircleButtonTypes;
|
readonly circleButtonTypes = CircleButtonTypes;
|
||||||
|
|
||||||
@Input() dossierWrapper: Dossier;
|
@Input() dossier: Dossier;
|
||||||
@Output() updateDossier = new EventEmitter<any>();
|
@Output() readonly updateDossier = new EventEmitter();
|
||||||
customAttributes: DossierAttributeWithValue[] = [];
|
customAttributes: DossierAttributeWithValue[] = [];
|
||||||
imageAttributes: DossierAttributeWithValue[] = [];
|
imageAttributes: DossierAttributeWithValue[] = [];
|
||||||
attributes: DossierAttributeWithValue[] = [];
|
attributes: DossierAttributeWithValue[] = [];
|
||||||
@ -28,7 +27,6 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
|
|||||||
@ViewChildren('fileInput') private _fileInputs: QueryList<ElementRef>;
|
@ViewChildren('fileInput') private _fileInputs: QueryList<ElementRef>;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private readonly _appStateService: AppStateService,
|
|
||||||
private readonly _permissionsService: PermissionsService,
|
private readonly _permissionsService: PermissionsService,
|
||||||
private readonly _dossierAttributesService: DossierAttributesService,
|
private readonly _dossierAttributesService: DossierAttributesService,
|
||||||
private readonly _loadingService: LoadingService,
|
private readonly _loadingService: LoadingService,
|
||||||
@ -50,11 +48,11 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
|
|||||||
}
|
}
|
||||||
|
|
||||||
get disabled() {
|
get disabled() {
|
||||||
return !this._permissionsService.isOwner(this.dossierWrapper);
|
return !this._permissionsService.isOwner(this.dossier);
|
||||||
}
|
}
|
||||||
|
|
||||||
get canEdit(): boolean {
|
get canEdit(): boolean {
|
||||||
return this._permissionsService.isOwner(this.dossierWrapper);
|
return this._permissionsService.isOwner(this.dossier);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
@ -70,7 +68,7 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
|
|||||||
dossierAttributeId: attr.id,
|
dossierAttributeId: attr.id,
|
||||||
value: this.currentAttrValue(attr)
|
value: this.currentAttrValue(attr)
|
||||||
}));
|
}));
|
||||||
await this._dossierAttributesService.setValues(this.dossierWrapper, dossierAttributeList);
|
await this._dossierAttributesService.setValues(this.dossier, dossierAttributeList);
|
||||||
await this._loadAttributes();
|
await this._loadAttributes();
|
||||||
this.updateDossier.emit();
|
this.updateDossier.emit();
|
||||||
this._loadingService.stop();
|
this._loadingService.stop();
|
||||||
@ -136,7 +134,7 @@ export class EditDossierAttributesComponent implements EditDossierSectionInterfa
|
|||||||
}
|
}
|
||||||
|
|
||||||
private async _loadAttributes() {
|
private async _loadAttributes() {
|
||||||
this.attributes = await this._dossierAttributesService.getValues(this.dossierWrapper);
|
this.attributes = await this._dossierAttributesService.getValues(this.dossier);
|
||||||
this.customAttributes = this.attributes.filter(attr => !this.isImage(attr));
|
this.customAttributes = this.attributes.filter(attr => !this.isImage(attr));
|
||||||
this.imageAttributes = this.attributes.filter(attr => this.isImage(attr));
|
this.imageAttributes = this.attributes.filter(attr => this.isImage(attr));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
||||||
import { DossierTemplateModel, DownloadFileType, ReportTemplate, ReportTemplateControllerService } from '@redaction/red-ui-http';
|
import { DownloadFileType, ReportTemplate, ReportTemplateControllerService } from '@redaction/red-ui-http';
|
||||||
import { FormBuilder, FormGroup } from '@angular/forms';
|
import { FormBuilder, FormGroup } from '@angular/forms';
|
||||||
import { AppStateService } from '@state/app-state.service';
|
import { AppStateService } from '@state/app-state.service';
|
||||||
import { Dossier } from '../../../../../state/model/dossier';
|
import { Dossier } from '@state/model/dossier';
|
||||||
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
||||||
import { downloadTypesTranslations } from '../../../../../translations/download-types-translations';
|
import { downloadTypesTranslations } from '../../../../../translations/download-types-translations';
|
||||||
|
|
||||||
@ -13,16 +13,14 @@ import { downloadTypesTranslations } from '../../../../../translations/download-
|
|||||||
})
|
})
|
||||||
export class EditDossierDownloadPackageComponent implements OnInit, EditDossierSectionInterface {
|
export class EditDossierDownloadPackageComponent implements OnInit, EditDossierSectionInterface {
|
||||||
dossierForm: FormGroup;
|
dossierForm: FormGroup;
|
||||||
downloadTypesEnum: DownloadFileType[] = ['ORIGINAL', 'PREVIEW', 'REDACTED'];
|
downloadTypes: { key: DownloadFileType; label: string }[] = ['ORIGINAL', 'PREVIEW', 'REDACTED'].map((type: DownloadFileType) => ({
|
||||||
downloadTypes: { key: DownloadFileType; label: string }[] = this.downloadTypesEnum.map(type => ({
|
|
||||||
key: type,
|
key: type,
|
||||||
label: downloadTypesTranslations[type]
|
label: downloadTypesTranslations[type]
|
||||||
}));
|
}));
|
||||||
dossierTemplates: DossierTemplateModel[];
|
|
||||||
availableReportTypes: ReportTemplate[] = [];
|
availableReportTypes: ReportTemplate[] = [];
|
||||||
|
|
||||||
@Input() dossierWrapper: Dossier;
|
@Input() dossier: Dossier;
|
||||||
@Output() updateDossier = new EventEmitter<any>();
|
@Output() readonly updateDossier = new EventEmitter();
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
private readonly _appStateService: AppStateService,
|
private readonly _appStateService: AppStateService,
|
||||||
@ -41,11 +39,11 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
|
|||||||
get changed() {
|
get changed() {
|
||||||
if (this.dossierForm) {
|
if (this.dossierForm) {
|
||||||
for (const key of Object.keys(this.dossierForm.getRawValue())) {
|
for (const key of Object.keys(this.dossierForm.getRawValue())) {
|
||||||
if (this.dossierWrapper[key].length !== this.dossierForm.get(key).value.length) {
|
if (this.dossier[key].length !== this.dossierForm.get(key).value.length) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
const originalItems = [...this.dossierWrapper[key]].sort();
|
const originalItems = [...this.dossier[key]].sort();
|
||||||
const newItems = [...this.dossierForm.get(key).value].sort();
|
const newItems = [...this.dossierForm.get(key).value].sort();
|
||||||
|
|
||||||
for (let idx = 0; idx < originalItems.length; ++idx) {
|
for (let idx = 0; idx < originalItems.length; ++idx) {
|
||||||
@ -67,12 +65,12 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
|
|||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
this.availableReportTypes =
|
this.availableReportTypes =
|
||||||
(await this._reportTemplateController.getAvailableReportTemplates(this.dossierWrapper.dossierTemplateId).toPromise()) || [];
|
(await this._reportTemplateController.getAvailableReportTemplates(this.dossier.dossierTemplateId).toPromise()) || [];
|
||||||
|
|
||||||
this.dossierForm = this._formBuilder.group(
|
this.dossierForm = this._formBuilder.group(
|
||||||
{
|
{
|
||||||
reportTemplateIds: [this.dossierWrapper.reportTemplateIds],
|
reportTemplateIds: [this.dossier.reportTemplateIds],
|
||||||
downloadFileTypes: [this.dossierWrapper.downloadFileTypes]
|
downloadFileTypes: [this.dossier.downloadFileTypes]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
validators: control =>
|
validators: control =>
|
||||||
@ -85,7 +83,7 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
|
|||||||
|
|
||||||
async save() {
|
async save() {
|
||||||
const dossier = {
|
const dossier = {
|
||||||
...this.dossierWrapper,
|
...this.dossier,
|
||||||
downloadFileTypes: this.dossierForm.get('downloadFileTypes').value,
|
downloadFileTypes: this.dossierForm.get('downloadFileTypes').value,
|
||||||
reportTemplateIds: this.dossierForm.get('reportTemplateIds').value
|
reportTemplateIds: this.dossierForm.get('reportTemplateIds').value
|
||||||
};
|
};
|
||||||
@ -95,8 +93,8 @@ export class EditDossierDownloadPackageComponent implements OnInit, EditDossierS
|
|||||||
|
|
||||||
revert() {
|
revert() {
|
||||||
this.dossierForm.reset({
|
this.dossierForm.reset({
|
||||||
downloadFileTypes: this.dossierWrapper.downloadFileTypes,
|
downloadFileTypes: this.dossier.downloadFileTypes,
|
||||||
reportTemplateIds: this.dossierWrapper.reportTemplateIds
|
reportTemplateIds: this.dossier.reportTemplateIds
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -22,13 +22,13 @@
|
|||||||
<redaction-edit-dossier-general-info
|
<redaction-edit-dossier-general-info
|
||||||
(updateDossier)="updatedDossier()"
|
(updateDossier)="updatedDossier()"
|
||||||
*ngIf="activeNav === 'dossierInfo'"
|
*ngIf="activeNav === 'dossierInfo'"
|
||||||
[dossierWrapper]="dossier"
|
[dossier]="dossier"
|
||||||
></redaction-edit-dossier-general-info>
|
></redaction-edit-dossier-general-info>
|
||||||
|
|
||||||
<redaction-edit-dossier-download-package
|
<redaction-edit-dossier-download-package
|
||||||
(updateDossier)="updatedDossier()"
|
(updateDossier)="updatedDossier()"
|
||||||
*ngIf="activeNav === 'downloadPackage'"
|
*ngIf="activeNav === 'downloadPackage'"
|
||||||
[dossierWrapper]="dossier"
|
[dossier]="dossier"
|
||||||
></redaction-edit-dossier-download-package>
|
></redaction-edit-dossier-download-package>
|
||||||
|
|
||||||
<redaction-edit-dossier-dictionary
|
<redaction-edit-dossier-dictionary
|
||||||
@ -40,13 +40,13 @@
|
|||||||
<redaction-edit-dossier-team-members
|
<redaction-edit-dossier-team-members
|
||||||
(updateDossier)="updatedDossier()"
|
(updateDossier)="updatedDossier()"
|
||||||
*ngIf="activeNav === 'members'"
|
*ngIf="activeNav === 'members'"
|
||||||
[dossierWrapper]="dossier"
|
[dossier]="dossier"
|
||||||
></redaction-edit-dossier-team-members>
|
></redaction-edit-dossier-team-members>
|
||||||
|
|
||||||
<redaction-edit-dossier-attributes
|
<redaction-edit-dossier-attributes
|
||||||
(updateDossier)="updatedDossier()"
|
(updateDossier)="updatedDossier()"
|
||||||
*ngIf="activeNav === 'dossierAttributes'"
|
*ngIf="activeNav === 'dossierAttributes'"
|
||||||
[dossierWrapper]="dossier"
|
[dossier]="dossier"
|
||||||
></redaction-edit-dossier-attributes>
|
></redaction-edit-dossier-attributes>
|
||||||
|
|
||||||
<redaction-edit-dossier-deleted-documents
|
<redaction-edit-dossier-deleted-documents
|
||||||
|
|||||||
@ -37,7 +37,7 @@ export class EditDossierDialogComponent {
|
|||||||
private readonly _changeRef: ChangeDetectorRef,
|
private readonly _changeRef: ChangeDetectorRef,
|
||||||
@Inject(MAT_DIALOG_DATA)
|
@Inject(MAT_DIALOG_DATA)
|
||||||
private readonly _data: {
|
private readonly _data: {
|
||||||
dossierWrapper: Dossier;
|
dossier: Dossier;
|
||||||
afterSave: Function;
|
afterSave: Function;
|
||||||
section?: Section;
|
section?: Section;
|
||||||
}
|
}
|
||||||
@ -73,7 +73,7 @@ export class EditDossierDialogComponent {
|
|||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
this.dossier = _data.dossierWrapper;
|
this.dossier = _data.dossier;
|
||||||
this.activeNav = _data.section || 'dossierInfo';
|
this.activeNav = _data.section || 'dossierInfo';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -58,7 +58,7 @@
|
|||||||
<div class="dialog-actions">
|
<div class="dialog-actions">
|
||||||
<iqser-icon-button
|
<iqser-icon-button
|
||||||
(action)="deleteDossier()"
|
(action)="deleteDossier()"
|
||||||
*ngIf="permissionsService.canDeleteDossier(dossierWrapper)"
|
*ngIf="permissionsService.canDeleteDossier(dossier)"
|
||||||
[label]="'dossier-listing.delete.action' | translate"
|
[label]="'dossier-listing.delete.action' | translate"
|
||||||
[type]="iconButtonTypes.dark"
|
[type]="iconButtonTypes.dark"
|
||||||
icon="red:trash"
|
icon="red:trash"
|
||||||
|
|||||||
@ -1,19 +1,18 @@
|
|||||||
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';
|
||||||
import { DossierTemplateModel } from '@redaction/red-ui-http';
|
import { IDossierTemplate } from '@redaction/red-ui-http';
|
||||||
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
import { FormBuilder, FormGroup, Validators } from '@angular/forms';
|
||||||
import { AppStateService } from '../../../../../state/app-state.service';
|
import { AppStateService } from '@state/app-state.service';
|
||||||
import * as moment from 'moment';
|
import * as moment from 'moment';
|
||||||
import { Dossier } from '../../../../../state/model/dossier';
|
import { Dossier } from '@state/model/dossier';
|
||||||
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
||||||
import { DossiersDialogService } from '../../../services/dossiers-dialog.service';
|
import { DossiersDialogService } from '../../../services/dossiers-dialog.service';
|
||||||
import { PermissionsService } from '@services/permissions.service';
|
import { PermissionsService } from '@services/permissions.service';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
import { MatDialogRef } from '@angular/material/dialog';
|
import { MatDialogRef } from '@angular/material/dialog';
|
||||||
import { EditDossierDialogComponent } from '../edit-dossier-dialog.component';
|
import { EditDossierDialogComponent } from '../edit-dossier-dialog.component';
|
||||||
import { Toaster } from '@iqser/common-ui';
|
import { IconButtonTypes, Toaster } from '@iqser/common-ui';
|
||||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||||
import { IconButtonTypes } from '@iqser/common-ui';
|
import { ConfirmationDialogInput, TitleColors } from '@shared/dialogs/confirmation-dialog/confirmation-dialog.component';
|
||||||
import { ConfirmationDialogInput, TitleColors } from '../../../../shared/dialogs/confirmation-dialog/confirmation-dialog.component';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'redaction-edit-dossier-general-info',
|
selector: 'redaction-edit-dossier-general-info',
|
||||||
@ -25,10 +24,10 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
|
|||||||
|
|
||||||
dossierForm: FormGroup;
|
dossierForm: FormGroup;
|
||||||
hasDueDate: boolean;
|
hasDueDate: boolean;
|
||||||
dossierTemplates: DossierTemplateModel[];
|
dossierTemplates: IDossierTemplate[];
|
||||||
|
|
||||||
@Input() dossierWrapper: Dossier;
|
@Input() dossier: Dossier;
|
||||||
@Output() updateDossier = new EventEmitter<any>();
|
@Output() readonly updateDossier = new EventEmitter();
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
readonly permissionsService: PermissionsService,
|
readonly permissionsService: PermissionsService,
|
||||||
@ -43,13 +42,13 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
|
|||||||
get changed() {
|
get changed() {
|
||||||
for (const key of Object.keys(this.dossierForm.getRawValue())) {
|
for (const key of Object.keys(this.dossierForm.getRawValue())) {
|
||||||
if (key === 'dueDate') {
|
if (key === 'dueDate') {
|
||||||
if (this.hasDueDate !== !!this.dossierWrapper.dueDate) {
|
if (this.hasDueDate !== !!this.dossier.dueDate) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
if (this.hasDueDate && !moment(this.dossierWrapper.dueDate).isSame(moment(this.dossierForm.get(key).value))) {
|
if (this.hasDueDate && !moment(this.dossier.dueDate).isSame(moment(this.dossierForm.get(key).value))) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} else if (this.dossierWrapper[key] !== this.dossierForm.get(key).value) {
|
} else if (this.dossier[key] !== this.dossierForm.get(key).value) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -68,34 +67,34 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
|
|||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this._filterInvalidDossierTemplates();
|
this._filterInvalidDossierTemplates();
|
||||||
this.dossierForm = this._formBuilder.group({
|
this.dossierForm = this._formBuilder.group({
|
||||||
dossierName: [this.dossierWrapper.dossierName, Validators.required],
|
dossierName: [this.dossier.dossierName, Validators.required],
|
||||||
dossierTemplateId: [
|
dossierTemplateId: [
|
||||||
{
|
{
|
||||||
value: this.dossierWrapper.dossierTemplateId,
|
value: this.dossier.dossierTemplateId,
|
||||||
disabled: this.dossierWrapper.hasFiles
|
disabled: this.dossier.hasFiles
|
||||||
},
|
},
|
||||||
Validators.required
|
Validators.required
|
||||||
],
|
],
|
||||||
description: [this.dossierWrapper.description],
|
description: [this.dossier.description],
|
||||||
dueDate: [this.dossierWrapper.dueDate],
|
dueDate: [this.dossier.dueDate],
|
||||||
watermarkEnabled: [this.dossierWrapper.watermarkEnabled]
|
watermarkEnabled: [this.dossier.watermarkEnabled]
|
||||||
});
|
});
|
||||||
this.hasDueDate = !!this.dossierWrapper.dueDate;
|
this.hasDueDate = !!this.dossier.dueDate;
|
||||||
}
|
}
|
||||||
|
|
||||||
revert() {
|
revert() {
|
||||||
this.dossierForm.reset({
|
this.dossierForm.reset({
|
||||||
dossierName: this.dossierWrapper.dossierName,
|
dossierName: this.dossier.dossierName,
|
||||||
dossierTemplateId: this.dossierWrapper.dossierTemplateId,
|
dossierTemplateId: this.dossier.dossierTemplateId,
|
||||||
description: this.dossierWrapper.description,
|
description: this.dossier.description,
|
||||||
watermarkEnabled: this.dossierWrapper.watermarkEnabled,
|
watermarkEnabled: this.dossier.watermarkEnabled,
|
||||||
dueDate: this.dossierWrapper.dueDate
|
dueDate: this.dossier.dueDate
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
async save() {
|
async save() {
|
||||||
const dossier = {
|
const dossier = {
|
||||||
...this.dossierWrapper,
|
...this.dossier,
|
||||||
dossierName: this.dossierForm.get('dossierName').value,
|
dossierName: this.dossierForm.get('dossierName').value,
|
||||||
description: this.dossierForm.get('description').value,
|
description: this.dossierForm.get('description').value,
|
||||||
watermarkEnabled: this.dossierForm.get('watermarkEnabled').value,
|
watermarkEnabled: this.dossierForm.get('watermarkEnabled').value,
|
||||||
@ -116,12 +115,12 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
|
|||||||
requireInput: true,
|
requireInput: true,
|
||||||
denyText: _('confirmation-dialog.delete-dossier.deny-text'),
|
denyText: _('confirmation-dialog.delete-dossier.deny-text'),
|
||||||
translateParams: {
|
translateParams: {
|
||||||
dossierName: this.dossierWrapper.dossierName,
|
dossierName: this.dossier.dossierName,
|
||||||
dossiersCount: 1
|
dossiersCount: 1
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
this._dialogService.openDialog('confirm', null, data, async () => {
|
this._dialogService.openDialog('confirm', null, data, async () => {
|
||||||
await this._appStateService.deleteDossier(this.dossierWrapper);
|
await this._appStateService.deleteDossier(this.dossier);
|
||||||
this._editDossierDialogRef.componentInstance.afterSave();
|
this._editDossierDialogRef.componentInstance.afterSave();
|
||||||
this._editDossierDialogRef.close();
|
this._editDossierDialogRef.close();
|
||||||
this._router.navigate(['main', 'dossiers']).then(() => this._notifyDossierDeleted());
|
this._router.navigate(['main', 'dossiers']).then(() => this._notifyDossierDeleted());
|
||||||
@ -129,12 +128,12 @@ export class EditDossierGeneralInfoComponent implements OnInit, EditDossierSecti
|
|||||||
}
|
}
|
||||||
|
|
||||||
private _notifyDossierDeleted() {
|
private _notifyDossierDeleted() {
|
||||||
this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: { dossierName: this.dossierWrapper.dossierName } });
|
this._toaster.success(_('edit-dossier-dialog.delete-successful'), { params: { dossierName: this.dossier.dossierName } });
|
||||||
}
|
}
|
||||||
|
|
||||||
private _filterInvalidDossierTemplates() {
|
private _filterInvalidDossierTemplates() {
|
||||||
this.dossierTemplates = this._appStateService.dossierTemplates.filter(r => {
|
this.dossierTemplates = this._appStateService.dossierTemplates.filter(r => {
|
||||||
if (this.dossierWrapper?.dossierTemplateId === r.dossierTemplateId) {
|
if (this.dossier?.dossierTemplateId === r.dossierTemplateId) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
const notYetValid = !!r.validFrom && moment(r.validFrom).isAfter(moment());
|
const notYetValid = !!r.validFrom && moment(r.validFrom).isAfter(moment());
|
||||||
|
|||||||
@ -1 +1 @@
|
|||||||
<redaction-team-members-manager (save)="updateDossier.emit()" [dossierWrapper]="dossierWrapper"></redaction-team-members-manager>
|
<redaction-team-members-manager (save)="updateDossier.emit()" [dossier]="dossier"></redaction-team-members-manager>
|
||||||
|
|||||||
@ -1,6 +1,5 @@
|
|||||||
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
||||||
import { AppStateService } from '@state/app-state.service';
|
import { Dossier } from '@state/model/dossier';
|
||||||
import { Dossier } from '../../../../../state/model/dossier';
|
|
||||||
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
import { EditDossierSectionInterface } from '../edit-dossier-section.interface';
|
||||||
import { TeamMembersManagerComponent } from '../../../components/team-members-manager/team-members-manager.component';
|
import { TeamMembersManagerComponent } from '../../../components/team-members-manager/team-members-manager.component';
|
||||||
import { UserService } from '@services/user.service';
|
import { UserService } from '@services/user.service';
|
||||||
@ -13,12 +12,12 @@ import { UserService } from '@services/user.service';
|
|||||||
export class EditDossierTeamMembersComponent implements EditDossierSectionInterface {
|
export class EditDossierTeamMembersComponent implements EditDossierSectionInterface {
|
||||||
readonly currentUser = this._userService.currentUser;
|
readonly currentUser = this._userService.currentUser;
|
||||||
|
|
||||||
@Input() dossierWrapper: Dossier;
|
@Input() dossier: Dossier;
|
||||||
@Output() updateDossier = new EventEmitter<any>();
|
@Output() readonly updateDossier = new EventEmitter();
|
||||||
|
|
||||||
@ViewChild(TeamMembersManagerComponent) managerComponent: TeamMembersManagerComponent;
|
@ViewChild(TeamMembersManagerComponent) managerComponent: TeamMembersManagerComponent;
|
||||||
|
|
||||||
constructor(private readonly _appStateService: AppStateService, private readonly _userService: UserService) {}
|
constructor(private readonly _userService: UserService) {}
|
||||||
|
|
||||||
get changed() {
|
get changed() {
|
||||||
return this.managerComponent.changed;
|
return this.managerComponent.changed;
|
||||||
|
|||||||
@ -134,7 +134,7 @@ export class DossierListingScreenComponent
|
|||||||
await this._router.navigate([`/main/dossiers/${addResponse.dossier.id}`]);
|
await this._router.navigate([`/main/dossiers/${addResponse.dossier.id}`]);
|
||||||
if (addResponse.addMembers) {
|
if (addResponse.addMembers) {
|
||||||
this._dialogService.openDialog('editDossier', null, {
|
this._dialogService.openDialog('editDossier', null, {
|
||||||
dossierWrapper: addResponse.dossier,
|
dossier: addResponse.dossier,
|
||||||
section: 'members'
|
section: 'members'
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@ -314,17 +314,17 @@ export class DossierOverviewScreenComponent extends ListingComponent<FileStatusW
|
|||||||
|
|
||||||
openEditDossierDialog($event: MouseEvent) {
|
openEditDossierDialog($event: MouseEvent) {
|
||||||
this._dialogService.openDialog('editDossier', $event, {
|
this._dialogService.openDialog('editDossier', $event, {
|
||||||
dossierWrapper: this.currentDossier
|
dossier: this.currentDossier
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
openAssignDossierMembersDialog(): void {
|
openAssignDossierMembersDialog(): void {
|
||||||
const data = { dossierWrapper: this.currentDossier, section: 'members' };
|
const data = { dossier: this.currentDossier, section: 'members' };
|
||||||
this._dialogService.openDialog('editDossier', null, data, async () => await this.reloadDossiers());
|
this._dialogService.openDialog('editDossier', null, data, async () => await this.reloadDossiers());
|
||||||
}
|
}
|
||||||
|
|
||||||
openDossierDictionaryDialog() {
|
openDossierDictionaryDialog() {
|
||||||
const data = { dossierWrapper: this.currentDossier, section: 'dossierDictionary' };
|
const data = { dossier: this.currentDossier, section: 'dossierDictionary' };
|
||||||
this._dialogService.openDialog('editDossier', null, data, async () => {
|
this._dialogService.openDialog('editDossier', null, data, async () => {
|
||||||
await this.reloadDossiers();
|
await this.reloadDossiers();
|
||||||
});
|
});
|
||||||
|
|||||||
@ -19,14 +19,14 @@ import { FALLBACK_COLOR, hexToRgb } from '@utils/functions';
|
|||||||
import { FileStatusWrapper } from '@models/file/file-status.wrapper';
|
import { FileStatusWrapper } from '@models/file/file-status.wrapper';
|
||||||
import { Dossier } from './model/dossier';
|
import { Dossier } from './model/dossier';
|
||||||
import { TypeValue } from '@models/file/type-value';
|
import { TypeValue } from '@models/file/type-value';
|
||||||
import { DossierTemplateModelWrapper } from '@models/file/dossier-template-model.wrapper';
|
import { DossierTemplate } from '@models/file/dossier-template';
|
||||||
import { DossiersService } from '../modules/dossier/services/dossiers.service';
|
import { DossiersService } from '../modules/dossier/services/dossiers.service';
|
||||||
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
|
||||||
import { UserPreferenceService } from '@services/user-preference.service';
|
import { UserPreferenceService } from '@services/user-preference.service';
|
||||||
|
|
||||||
export interface AppState {
|
export interface AppState {
|
||||||
dossiers: Dossier[];
|
dossiers: Dossier[];
|
||||||
dossierTemplates: DossierTemplateModelWrapper[];
|
dossierTemplates: DossierTemplate[];
|
||||||
activeDossierId: string;
|
activeDossierId: string;
|
||||||
activeFileId: string;
|
activeFileId: string;
|
||||||
activeDossierTemplateId: string;
|
activeDossierTemplateId: string;
|
||||||
@ -43,7 +43,7 @@ export class AppStateService {
|
|||||||
readonly fileChanged$ = new Subject<FileStatusWrapper>();
|
readonly fileChanged$ = new Subject<FileStatusWrapper>();
|
||||||
readonly fileReanalysed$ = new Subject<FileStatusWrapper>();
|
readonly fileReanalysed$ = new Subject<FileStatusWrapper>();
|
||||||
readonly dossierChanged$ = new Subject<Dossier>();
|
readonly dossierChanged$ = new Subject<Dossier>();
|
||||||
readonly dossierTemplateChanged$ = new Subject<DossierTemplateModelWrapper>();
|
readonly dossierTemplateChanged$ = new Subject<DossierTemplate>();
|
||||||
|
|
||||||
private _appState: AppState;
|
private _appState: AppState;
|
||||||
|
|
||||||
@ -99,11 +99,11 @@ export class AppStateService {
|
|||||||
return this._appState.activeDossierTemplateId;
|
return this._appState.activeDossierTemplateId;
|
||||||
}
|
}
|
||||||
|
|
||||||
get activeDossierTemplate(): DossierTemplateModelWrapper {
|
get activeDossierTemplate(): DossierTemplate {
|
||||||
return this.getDossierTemplateById(this.activeDossierTemplateId);
|
return this.getDossierTemplateById(this.activeDossierTemplateId);
|
||||||
}
|
}
|
||||||
|
|
||||||
get dossierTemplates(): DossierTemplateModelWrapper[] {
|
get dossierTemplates(): DossierTemplate[] {
|
||||||
return this._appState.dossierTemplates;
|
return this._appState.dossierTemplates;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -187,7 +187,7 @@ export class AppStateService {
|
|||||||
return color ?? this._dictionaryData[dossierTemplateId]['default'].hexColor;
|
return color ?? this._dictionaryData[dossierTemplateId]['default'].hexColor;
|
||||||
}
|
}
|
||||||
|
|
||||||
getDossierTemplateById(id: string): DossierTemplateModelWrapper {
|
getDossierTemplateById(id: string): DossierTemplate {
|
||||||
return this.dossierTemplates.find(rs => rs.dossierTemplateId === id);
|
return this.dossierTemplates.find(rs => rs.dossierTemplateId === id);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -374,7 +374,7 @@ export class AppStateService {
|
|||||||
|
|
||||||
async loadAllDossierTemplates() {
|
async loadAllDossierTemplates() {
|
||||||
const dossierTemplates = await this._dossierTemplateControllerService.getAllDossierTemplates().toPromise();
|
const dossierTemplates = await this._dossierTemplateControllerService.getAllDossierTemplates().toPromise();
|
||||||
this._appState.dossierTemplates = dossierTemplates.map(dossierTemplate => new DossierTemplateModelWrapper(dossierTemplate, null));
|
this._appState.dossierTemplates = dossierTemplates.map(dossierTemplate => new DossierTemplate(dossierTemplate, null));
|
||||||
for (const dossierTemplate of this._appState.dossierTemplates) {
|
for (const dossierTemplate of this._appState.dossierTemplates) {
|
||||||
dossierTemplate.fileAttributesConfig = await this._fileAttributesService
|
dossierTemplate.fileAttributesConfig = await this._fileAttributesService
|
||||||
.getFileAttributesConfiguration(dossierTemplate.dossierTemplateId)
|
.getFileAttributesConfiguration(dossierTemplate.dossierTemplateId)
|
||||||
@ -393,7 +393,7 @@ export class AppStateService {
|
|||||||
|
|
||||||
Object.assign(
|
Object.assign(
|
||||||
this._appState.dossierTemplates.find(d => d.dossierTemplateId === dossierTemplateId),
|
this._appState.dossierTemplates.find(d => d.dossierTemplateId === dossierTemplateId),
|
||||||
new DossierTemplateModelWrapper(dossierTemplate, fileAttributesConfigs)
|
new DossierTemplate(dossierTemplate, fileAttributesConfigs)
|
||||||
);
|
);
|
||||||
|
|
||||||
await this.refreshDossierTemplateDictionaryData(dossierTemplateId);
|
await this.refreshDossierTemplateDictionaryData(dossierTemplateId);
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import { IListable } from '@iqser/common-ui';
|
|||||||
|
|
||||||
export class Dossier implements IDossier, IListable {
|
export class Dossier implements IDossier, IListable {
|
||||||
readonly id: string;
|
readonly id: string;
|
||||||
|
readonly dossierId: string;
|
||||||
readonly ownerId: string;
|
readonly ownerId: string;
|
||||||
readonly memberIds: List;
|
readonly memberIds: List;
|
||||||
readonly approverIds: List;
|
readonly approverIds: List;
|
||||||
@ -37,6 +38,7 @@ export class Dossier implements IDossier, IListable {
|
|||||||
|
|
||||||
constructor(dossier: IDossier, private _files: FileStatusWrapper[] = []) {
|
constructor(dossier: IDossier, private _files: FileStatusWrapper[] = []) {
|
||||||
this.id = dossier.dossierId;
|
this.id = dossier.dossierId;
|
||||||
|
this.dossierId = dossier.dossierId;
|
||||||
this.approverIds = dossier.approverIds;
|
this.approverIds = dossier.approverIds;
|
||||||
this.date = dossier.date;
|
this.date = dossier.date;
|
||||||
this.description = dossier.description;
|
this.description = dossier.description;
|
||||||
|
|||||||
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"ADMIN_CONTACT_NAME": null,
|
"ADMIN_CONTACT_NAME": null,
|
||||||
"ADMIN_CONTACT_URL": null,
|
"ADMIN_CONTACT_URL": null,
|
||||||
"API_URL": "https://demo.redactmanager.com/redaction-gateway-v1",
|
"API_URL": "https://red-staging.iqser.cloud/redaction-gateway-v1",
|
||||||
"APP_NAME": "RedactManager",
|
"APP_NAME": "RedactManager",
|
||||||
"AUTO_READ_TIME": 1.5,
|
"AUTO_READ_TIME": 1.5,
|
||||||
"BACKEND_APP_VERSION": "4.4.40",
|
"BACKEND_APP_VERSION": "4.4.40",
|
||||||
@ -17,7 +17,7 @@
|
|||||||
"MAX_RETRIES_ON_SERVER_ERROR": 3,
|
"MAX_RETRIES_ON_SERVER_ERROR": 3,
|
||||||
"OAUTH_CLIENT_ID": "redaction",
|
"OAUTH_CLIENT_ID": "redaction",
|
||||||
"OAUTH_IDP_HINT": null,
|
"OAUTH_IDP_HINT": null,
|
||||||
"OAUTH_URL": "https://demo.redactmanager.com/auth/realms/redaction",
|
"OAUTH_URL": "https://red-staging.iqser.cloud/auth/realms/redaction",
|
||||||
"RECENT_PERIOD_IN_HOURS": 24,
|
"RECENT_PERIOD_IN_HOURS": 24,
|
||||||
"SELECTION_MODE": "structural"
|
"SELECTION_MODE": "structural"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -10,15 +10,15 @@
|
|||||||
* Do not edit the class manually.
|
* Do not edit the class manually.
|
||||||
*/ /* tslint:disable:no-unused-variable member-ordering */
|
*/ /* tslint:disable:no-unused-variable member-ordering */
|
||||||
|
|
||||||
import { Inject, Injectable, Optional } from '@angular/core';
|
import { Inject, Injectable, Optional } from "@angular/core";
|
||||||
import { HttpClient, HttpEvent, HttpHeaders, HttpResponse } from '@angular/common/http';
|
import { HttpClient, HttpEvent, HttpHeaders, HttpResponse } from "@angular/common/http";
|
||||||
|
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from "rxjs";
|
||||||
|
|
||||||
import { DossierTemplateModel } from '../model/dossierTemplateModel';
|
import { IDossierTemplate } from "../model/dossierTemplate";
|
||||||
|
|
||||||
import { BASE_PATH } from '../variables';
|
import { BASE_PATH } from "../variables";
|
||||||
import { Configuration } from '../configuration';
|
import { Configuration } from "../configuration";
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class DossierTemplateControllerService {
|
export class DossierTemplateControllerService {
|
||||||
@ -47,29 +47,21 @@ export class DossierTemplateControllerService {
|
|||||||
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
||||||
* @param reportProgress flag to report request and response progress.
|
* @param reportProgress flag to report request and response progress.
|
||||||
*/
|
*/
|
||||||
public createOrUpdateDossierTemplate(
|
public createOrUpdateDossierTemplate(body: IDossierTemplate, observe?: 'body', reportProgress?: boolean): Observable<IDossierTemplate>;
|
||||||
body: DossierTemplateModel,
|
|
||||||
observe?: 'body',
|
|
||||||
reportProgress?: boolean
|
|
||||||
): Observable<DossierTemplateModel>;
|
|
||||||
|
|
||||||
public createOrUpdateDossierTemplate(
|
public createOrUpdateDossierTemplate(
|
||||||
body: DossierTemplateModel,
|
body: IDossierTemplate,
|
||||||
observe?: 'response',
|
observe?: 'response',
|
||||||
reportProgress?: boolean
|
reportProgress?: boolean
|
||||||
): Observable<HttpResponse<DossierTemplateModel>>;
|
): Observable<HttpResponse<IDossierTemplate>>;
|
||||||
|
|
||||||
public createOrUpdateDossierTemplate(
|
public createOrUpdateDossierTemplate(
|
||||||
body: DossierTemplateModel,
|
body: IDossierTemplate,
|
||||||
observe?: 'events',
|
observe?: 'events',
|
||||||
reportProgress?: boolean
|
reportProgress?: boolean
|
||||||
): Observable<HttpEvent<DossierTemplateModel>>;
|
): Observable<HttpEvent<IDossierTemplate>>;
|
||||||
|
|
||||||
public createOrUpdateDossierTemplate(
|
public createOrUpdateDossierTemplate(body: IDossierTemplate, observe: any = 'body', reportProgress: boolean = false): Observable<any> {
|
||||||
body: DossierTemplateModel,
|
|
||||||
observe: any = 'body',
|
|
||||||
reportProgress: boolean = false
|
|
||||||
): Observable<any> {
|
|
||||||
if (body === null || body === undefined) {
|
if (body === null || body === undefined) {
|
||||||
throw new Error('Required parameter body was null or undefined when calling createOrUpdateDossierTemplate.');
|
throw new Error('Required parameter body was null or undefined when calling createOrUpdateDossierTemplate.');
|
||||||
}
|
}
|
||||||
@ -97,7 +89,7 @@ export class DossierTemplateControllerService {
|
|||||||
headers = headers.set('Content-Type', httpContentTypeSelected);
|
headers = headers.set('Content-Type', httpContentTypeSelected);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.httpClient.request<DossierTemplateModel>('post', `${this.basePath}/dossier-template`, {
|
return this.httpClient.request<IDossierTemplate>('post', `${this.basePath}/dossier-template`, {
|
||||||
body: body,
|
body: body,
|
||||||
withCredentials: this.configuration.withCredentials,
|
withCredentials: this.configuration.withCredentials,
|
||||||
headers: headers,
|
headers: headers,
|
||||||
@ -205,11 +197,11 @@ export class DossierTemplateControllerService {
|
|||||||
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
||||||
* @param reportProgress flag to report request and response progress.
|
* @param reportProgress flag to report request and response progress.
|
||||||
*/
|
*/
|
||||||
public getAllDossierTemplates(observe?: 'body', reportProgress?: boolean): Observable<Array<DossierTemplateModel>>;
|
public getAllDossierTemplates(observe?: 'body', reportProgress?: boolean): Observable<Array<IDossierTemplate>>;
|
||||||
|
|
||||||
public getAllDossierTemplates(observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<Array<DossierTemplateModel>>>;
|
public getAllDossierTemplates(observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<Array<IDossierTemplate>>>;
|
||||||
|
|
||||||
public getAllDossierTemplates(observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<Array<DossierTemplateModel>>>;
|
public getAllDossierTemplates(observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<Array<IDossierTemplate>>>;
|
||||||
|
|
||||||
public getAllDossierTemplates(observe: any = 'body', reportProgress: boolean = false): Observable<any> {
|
public getAllDossierTemplates(observe: any = 'body', reportProgress: boolean = false): Observable<any> {
|
||||||
let headers = this.defaultHeaders;
|
let headers = this.defaultHeaders;
|
||||||
@ -228,7 +220,7 @@ export class DossierTemplateControllerService {
|
|||||||
headers = headers.set('Accept', httpHeaderAcceptSelected);
|
headers = headers.set('Accept', httpHeaderAcceptSelected);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.httpClient.request<Array<DossierTemplateModel>>('get', `${this.basePath}/dossier-template`, {
|
return this.httpClient.request<Array<IDossierTemplate>>('get', `${this.basePath}/dossier-template`, {
|
||||||
withCredentials: this.configuration.withCredentials,
|
withCredentials: this.configuration.withCredentials,
|
||||||
headers: headers,
|
headers: headers,
|
||||||
observe: observe,
|
observe: observe,
|
||||||
@ -243,19 +235,19 @@ export class DossierTemplateControllerService {
|
|||||||
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
* @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
|
||||||
* @param reportProgress flag to report request and response progress.
|
* @param reportProgress flag to report request and response progress.
|
||||||
*/
|
*/
|
||||||
public getDossierTemplate(dossierTemplateId: string, observe?: 'body', reportProgress?: boolean): Observable<DossierTemplateModel>;
|
public getDossierTemplate(dossierTemplateId: string, observe?: 'body', reportProgress?: boolean): Observable<IDossierTemplate>;
|
||||||
|
|
||||||
public getDossierTemplate(
|
public getDossierTemplate(
|
||||||
dossierTemplateId: string,
|
dossierTemplateId: string,
|
||||||
observe?: 'response',
|
observe?: 'response',
|
||||||
reportProgress?: boolean
|
reportProgress?: boolean
|
||||||
): Observable<HttpResponse<DossierTemplateModel>>;
|
): Observable<HttpResponse<IDossierTemplate>>;
|
||||||
|
|
||||||
public getDossierTemplate(
|
public getDossierTemplate(
|
||||||
dossierTemplateId: string,
|
dossierTemplateId: string,
|
||||||
observe?: 'events',
|
observe?: 'events',
|
||||||
reportProgress?: boolean
|
reportProgress?: boolean
|
||||||
): Observable<HttpEvent<DossierTemplateModel>>;
|
): Observable<HttpEvent<IDossierTemplate>>;
|
||||||
|
|
||||||
public getDossierTemplate(dossierTemplateId: string, observe: any = 'body', reportProgress: boolean = false): Observable<any> {
|
public getDossierTemplate(dossierTemplateId: string, observe: any = 'body', reportProgress: boolean = false): Observable<any> {
|
||||||
if (dossierTemplateId === null || dossierTemplateId === undefined) {
|
if (dossierTemplateId === null || dossierTemplateId === undefined) {
|
||||||
@ -278,7 +270,7 @@ export class DossierTemplateControllerService {
|
|||||||
headers = headers.set('Accept', httpHeaderAcceptSelected);
|
headers = headers.set('Accept', httpHeaderAcceptSelected);
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.httpClient.request<DossierTemplateModel>(
|
return this.httpClient.request<IDossierTemplate>(
|
||||||
'get',
|
'get',
|
||||||
`${this.basePath}/dossier-template/${encodeURIComponent(String(dossierTemplateId))}`,
|
`${this.basePath}/dossier-template/${encodeURIComponent(String(dossierTemplateId))}`,
|
||||||
{
|
{
|
||||||
|
|||||||
@ -9,61 +9,52 @@
|
|||||||
* https://github.com/swagger-api/swagger-codegen.git
|
* https://github.com/swagger-api/swagger-codegen.git
|
||||||
* Do not edit the class manually.
|
* Do not edit the class manually.
|
||||||
*/
|
*/
|
||||||
|
import { DownloadFileType } from './dossier';
|
||||||
|
import { List } from '../red-types';
|
||||||
|
|
||||||
export interface DossierTemplateModel {
|
export interface IDossierTemplate {
|
||||||
/**
|
/**
|
||||||
* The userId of the user who created this DossierTemplate. Set by the system.
|
* The userId of the user who created this DossierTemplate. Set by the system.
|
||||||
*/
|
*/
|
||||||
createdBy?: string;
|
readonly createdBy?: string;
|
||||||
/**
|
/**
|
||||||
* The date when this dossierTemplate was created. Set by System on create.
|
* The date when this dossierTemplate was created. Set by System on create.
|
||||||
*/
|
*/
|
||||||
dateAdded?: string;
|
readonly dateAdded?: string;
|
||||||
/**
|
/**
|
||||||
* The date when this dossierTemplate was last modified. Set by System on create.
|
* The date when this dossierTemplate was last modified. Set by System on create.
|
||||||
*/
|
*/
|
||||||
dateModified?: string;
|
readonly dateModified?: string;
|
||||||
/**
|
/**
|
||||||
* The description of this dossierTemplate
|
* The description of this dossierTemplate
|
||||||
*/
|
*/
|
||||||
description?: string;
|
readonly description?: string;
|
||||||
/**
|
/**
|
||||||
* The Rule Set Id. Generated by the system on create.
|
* The Rule Set Id. Generated by the system on create.
|
||||||
*/
|
*/
|
||||||
dossierTemplateId?: string;
|
readonly dossierTemplateId?: string;
|
||||||
/**
|
/**
|
||||||
* Download File Types for this dossierTemplate's dossiers submission package.
|
* Download File Types for this dossierTemplate's dossiers submission package.
|
||||||
*/
|
*/
|
||||||
downloadFileTypes?: Array<DossierTemplateModel.DownloadFileTypesEnum>;
|
readonly downloadFileTypes?: List<DownloadFileType>;
|
||||||
/**
|
/**
|
||||||
* The userId of the user who last modified this DossierTemplate. Set by the system.
|
* The userId of the user who last modified this DossierTemplate. Set by the system.
|
||||||
*/
|
*/
|
||||||
modifiedBy?: string;
|
readonly modifiedBy?: string;
|
||||||
/**
|
/**
|
||||||
* The name of this dossierTemplate. Must be set on create / update requests
|
* The name of this dossierTemplate. Must be set on create / update requests
|
||||||
*/
|
*/
|
||||||
name?: string;
|
readonly name?: string;
|
||||||
/**
|
/**
|
||||||
* Report File Types for this dossierTemplate's dossiers submission package.
|
* Report File Types for this dossierTemplate's dossiers submission package.
|
||||||
*/
|
*/
|
||||||
reportTemplateIds?: string[];
|
readonly reportTemplateIds?: List;
|
||||||
/**
|
/**
|
||||||
* Validity of start this dossierTemplate.
|
* Validity of start this dossierTemplate.
|
||||||
*/
|
*/
|
||||||
validFrom?: string;
|
readonly validFrom?: string;
|
||||||
/**
|
/**
|
||||||
* Validity of end this dossierTemplate.
|
* Validity of end this dossierTemplate.
|
||||||
*/
|
*/
|
||||||
validTo?: string;
|
readonly validTo?: string;
|
||||||
}
|
|
||||||
|
|
||||||
export namespace DossierTemplateModel {
|
|
||||||
export type DownloadFileTypesEnum = 'ANNOTATED' | 'FLATTEN' | 'ORIGINAL' | 'PREVIEW' | 'REDACTED';
|
|
||||||
export const DownloadFileTypesEnum = {
|
|
||||||
ANNOTATED: 'ANNOTATED' as DownloadFileTypesEnum,
|
|
||||||
FLATTEN: 'FLATTEN' as DownloadFileTypesEnum,
|
|
||||||
ORIGINAL: 'ORIGINAL' as DownloadFileTypesEnum,
|
|
||||||
PREVIEW: 'PREVIEW' as DownloadFileTypesEnum,
|
|
||||||
REDACTED: 'REDACTED' as DownloadFileTypesEnum
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
@ -23,7 +23,7 @@ export * from './dossierAttributesConfig';
|
|||||||
export * from './dossierAttributesReq';
|
export * from './dossierAttributesReq';
|
||||||
export * from './dossierAttributesRes';
|
export * from './dossierAttributesRes';
|
||||||
export * from './dossierRequest';
|
export * from './dossierRequest';
|
||||||
export * from './dossierTemplateModel';
|
export * from './dossierTemplate';
|
||||||
export * from './downloadDetails';
|
export * from './downloadDetails';
|
||||||
export * from './downloadResponse';
|
export * from './downloadResponse';
|
||||||
export * from './downloadStatus';
|
export * from './downloadStatus';
|
||||||
|
|||||||
@ -1 +1,5 @@
|
|||||||
|
/**
|
||||||
|
* Custom list type to hold readonly arrays.
|
||||||
|
* Defaults to readonly string list
|
||||||
|
*/
|
||||||
export type List<T = string> = readonly T[];
|
export type List<T = string> = readonly T[];
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user