Fix circular dependency

This commit is contained in:
Enea Jahollari
2023-05-23 16:05:38 +02:00
parent d7fe120245
commit 7f450320b6
4 changed files with 32 additions and 31 deletions

View File

@@ -70,7 +70,7 @@ export class AccessControlArrayFormComponent implements OnInit, OnDestroy {
* @return The form value * @return The form value
*/ */
getValue() { getValue() {
return this.form.value.accessControl return (this.form.value.accessControl as any[])
.filter(x => x.itemName !== null && x.itemName !== '') .filter(x => x.itemName !== null && x.itemName !== '')
.map(x => ({ .map(x => ({
name: x.itemName, name: x.itemName,

View File

@@ -0,0 +1,27 @@
import {ListableObject} from '../object-collection/shared/listable-object.model';
export const accessControlInitialFormState: AccessControlFormState = {
item: {
toggleStatus: false,
accessMode: 'replace',
},
bitstream: {
toggleStatus: false,
accessMode: 'replace',
changesLimit: 'all', // 'all' | 'selected'
selectedBitstreams: [] as ListableObject[],
},
};
export interface AccessControlFormState {
item: {
toggleStatus: boolean,
accessMode: 'add' | 'replace',
},
bitstream: {
toggleStatus: boolean,
accessMode: 'add' | 'replace',
changesLimit: string,
selectedBitstreams: ListableObject[],
}
}

View File

@@ -7,7 +7,6 @@ import { BulkAccessControlService } from './bulk-access-control.service';
import { SelectableListService } from '../object-list/selectable-list/selectable-list.service'; import { SelectableListService } from '../object-list/selectable-list/selectable-list.service';
import { NgbModal } from '@ng-bootstrap/ng-bootstrap'; import { NgbModal } from '@ng-bootstrap/ng-bootstrap';
import { map, take } from 'rxjs/operators'; import { map, take } from 'rxjs/operators';
import { ListableObject } from '../object-collection/shared/listable-object.model';
import { DSpaceObject } from '../../core/shared/dspace-object.model'; import { DSpaceObject } from '../../core/shared/dspace-object.model';
import { import {
ITEM_ACCESS_CONTROL_SELECT_BITSTREAMS_LIST_ID, ITEM_ACCESS_CONTROL_SELECT_BITSTREAMS_LIST_ID,
@@ -17,6 +16,7 @@ import { BulkAccessConfigDataService } from '../../core/config/bulk-access-confi
import { getFirstCompletedRemoteData } from '../../core/shared/operators'; import { getFirstCompletedRemoteData } from '../../core/shared/operators';
import { BulkAccessConditionOptions } from '../../core/config/models/bulk-access-condition-options.model'; import { BulkAccessConditionOptions } from '../../core/config/models/bulk-access-condition-options.model';
import { AlertType } from '../alert/aletr-type'; import { AlertType } from '../alert/aletr-type';
import { accessControlInitialFormState } from './access-control-form-container-intial-state';
@Component({ @Component({
selector: 'ds-access-control-form-container', selector: 'ds-access-control-form-container',
@@ -61,7 +61,7 @@ export class AccessControlFormContainerComponent<T extends DSpaceObject> impleme
private cdr: ChangeDetectorRef private cdr: ChangeDetectorRef
) {} ) {}
state = initialState; state = accessControlInitialFormState;
dropdownData$: Observable<BulkAccessConditionOptions> = this.bulkAccessConfigService.findByName('default').pipe( dropdownData$: Observable<BulkAccessConditionOptions> = this.bulkAccessConfigService.findByName('default').pipe(
getFirstCompletedRemoteData(), getFirstCompletedRemoteData(),
@@ -92,7 +92,7 @@ export class AccessControlFormContainerComponent<T extends DSpaceObject> impleme
reset() { reset() {
this.bitstreamAccessCmp.reset(); this.bitstreamAccessCmp.reset();
this.itemAccessCmp.reset(); this.itemAccessCmp.reset();
this.state = initialState; this.state = accessControlInitialFormState;
} }
/** /**
@@ -156,29 +156,3 @@ export class AccessControlFormContainerComponent<T extends DSpaceObject> impleme
} }
const initialState: AccessControlFormState = {
item: {
toggleStatus: false,
accessMode: 'replace',
},
bitstream: {
toggleStatus: false,
accessMode: 'replace',
changesLimit: 'all', // 'all' | 'selected'
selectedBitstreams: [] as ListableObject[],
},
};
export interface AccessControlFormState {
item: {
toggleStatus: boolean,
accessMode: 'add' | 'replace',
},
bitstream: {
toggleStatus: boolean,
accessMode: 'add' | 'replace',
changesLimit: string,
selectedBitstreams: ListableObject[],
}
}

View File

@@ -7,7 +7,7 @@ import { TranslateService } from '@ngx-translate/core';
import { ScriptDataService } from '../../core/data/processes/script-data.service'; import { ScriptDataService } from '../../core/data/processes/script-data.service';
import { ProcessParameter } from '../../process-page/processes/process-parameter.model'; import { ProcessParameter } from '../../process-page/processes/process-parameter.model';
import { AccessControlFormState } from './access-control-form-container.component'; import { AccessControlFormState } from './access-control-form-container-intial-state';
import { getFirstCompletedRemoteData } from '../../core/shared/operators'; import { getFirstCompletedRemoteData } from '../../core/shared/operators';
import { RemoteData } from '../../core/data/remote-data'; import { RemoteData } from '../../core/data/remote-data';
import { Process } from '../../process-page/processes/process.model'; import { Process } from '../../process-page/processes/process.model';