mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-10 11:33:04 +00:00
Moved the use of store to services
This commit is contained in:
@@ -1,25 +1,22 @@
|
||||
import { ChangeDetectorRef, Component, Inject, OnDestroy, ViewChild } from '@angular/core';
|
||||
import { Store } from '@ngrx/store';
|
||||
import { DynamicFormControlEvent, DynamicFormControlModel } from '@ng-dynamic-forms/core';
|
||||
|
||||
import { Subscription } from 'rxjs/Subscription';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { isEqual } from 'lodash';
|
||||
|
||||
import { FormBuilderService } from '../../../shared/form/builder/form-builder.service';
|
||||
import { FormComponent } from '../../../shared/form/form.component';
|
||||
import { FormService } from '../../../shared/form/form.service';
|
||||
import { SaveSubmissionFormAction, SectionStatusChangeAction, } from '../../objects/submission-objects.actions';
|
||||
import { SectionModelComponent } from '../models/section.model';
|
||||
import { SubmissionState } from '../../submission.reducers';
|
||||
import { SubmissionFormsConfigService } from '../../../core/config/submission-forms-config.service';
|
||||
import { hasValue, isNotEmpty, isNotUndefined, isUndefined } from '../../../shared/empty.util';
|
||||
import { ConfigData } from '../../../core/config/config-data';
|
||||
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
||||
import { submissionSectionDataFromIdSelector, submissionSectionFromIdSelector } from '../../selectors';
|
||||
import { SubmissionFormsModel } from '../../../core/shared/config/config-submission-forms.model';
|
||||
import { SubmissionSectionError, SubmissionSectionObject } from '../../objects/submission-objects.reducer';
|
||||
import { FormFieldPreviousValueObject } from '../../../shared/form/builder/models/form-field-previous-value-object';
|
||||
import { WorkspaceitemSectionDataType } from '../../../core/submission/models/workspaceitem-sections.model';
|
||||
import { Subscription } from 'rxjs/Subscription';
|
||||
import { GLOBAL_CONFIG } from '../../../../config';
|
||||
import { GlobalConfig } from '../../../../config/global-config.interface';
|
||||
import { SectionDataObject } from '../models/section-data.model';
|
||||
@@ -28,7 +25,6 @@ import { SectionsType } from '../sections-type';
|
||||
import { SubmissionService } from '../../submission.service';
|
||||
import { FormOperationsService } from './form-operations.service';
|
||||
import { NotificationsService } from '../../../shared/notifications/notifications.service';
|
||||
import { TranslateService } from '@ngx-translate/core';
|
||||
import { SectionsService } from '../sections.service';
|
||||
import { difference } from '../../../shared/object.util';
|
||||
|
||||
@@ -59,7 +55,6 @@ export class FormSectionComponent extends SectionModelComponent implements OnDes
|
||||
protected formService: FormService,
|
||||
protected formConfigService: SubmissionFormsConfigService,
|
||||
protected notificationsService: NotificationsService,
|
||||
protected store: Store<SubmissionState>,
|
||||
protected sectionService: SectionsService,
|
||||
protected submissionService: SubmissionService,
|
||||
protected translate: TranslateService,
|
||||
@@ -77,7 +72,7 @@ export class FormSectionComponent extends SectionModelComponent implements OnDes
|
||||
.subscribe((config: SubmissionFormsModel) => {
|
||||
this.formConfig = config;
|
||||
this.formId = this.formService.getUniqueId(this.sectionData.id);
|
||||
this.store.select(submissionSectionDataFromIdSelector(this.submissionId, this.sectionData.id))
|
||||
this.sectionService.getSectionData(this.submissionId, this.sectionData.id)
|
||||
.take(1)
|
||||
.subscribe((sectionData: WorkspaceitemSectionDataType) => {
|
||||
if (isUndefined(this.formModel)) {
|
||||
@@ -180,7 +175,7 @@ export class FormSectionComponent extends SectionModelComponent implements OnDes
|
||||
.filter((formValid) => formValid !== this.valid)
|
||||
.subscribe((formState) => {
|
||||
this.valid = formState;
|
||||
this.store.dispatch(new SectionStatusChangeAction(this.submissionId, this.sectionData.id, this.valid));
|
||||
this.sectionService.setSectionStatus(this.submissionId, this.sectionData.id, this.valid);
|
||||
}),
|
||||
/**
|
||||
* Subscribe to form's data
|
||||
@@ -193,7 +188,7 @@ export class FormSectionComponent extends SectionModelComponent implements OnDes
|
||||
/**
|
||||
* Subscribe to section state
|
||||
*/
|
||||
this.store.select(submissionSectionFromIdSelector(this.submissionId, this.sectionData.id))
|
||||
this.sectionService.getSectionState(this.submissionId, this.sectionData.id)
|
||||
.filter((sectionState: SubmissionSectionObject) => {
|
||||
return isNotEmpty(sectionState) && (isNotEmpty(sectionState.data) || isNotEmpty(sectionState.errors))
|
||||
})
|
||||
@@ -214,7 +209,7 @@ export class FormSectionComponent extends SectionModelComponent implements OnDes
|
||||
const value = this.formOperationsService.getFieldValueFromChangeEvent(event);
|
||||
|
||||
if (this.EnvConfig.submission.autosave.metadata.indexOf(metadata) !== -1 && isNotEmpty(value)) {
|
||||
this.store.dispatch(new SaveSubmissionFormAction(this.submissionId));
|
||||
this.submissionService.dispatchSave(this.submissionId);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user