Skip to content

Commit 241fb9c

Browse files
Revert "[DSC-2149] port fix for upload files issue"
This reverts commit 19ce014.
1 parent 19ce014 commit 241fb9c

5 files changed

Lines changed: 29 additions & 51 deletions

File tree

src/app/shared/mocks/section-upload.service.mock.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import { SubmissionFormsConfigDataService } from '../../core/config/submission-f
55
*/
66
export function getMockSectionUploadService(): SubmissionFormsConfigDataService {
77
return jasmine.createSpyObj('SectionUploadService', {
8-
getUploadedFilesData: jasmine.createSpy('getUploadedFilesData'),
98
getUploadedFileList: jasmine.createSpy('getUploadedFileList'),
109
getFileData: jasmine.createSpy('getFileData'),
1110
getDefaultPolicies: jasmine.createSpy('getDefaultPolicies'),

src/app/shared/mocks/submission.mock.ts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3674,11 +3674,6 @@ export const mockUploadFiles = [
36743674
}
36753675
];
36763676

3677-
export const mockUploadFilesData = {
3678-
primary: null,
3679-
files: JSON.parse(JSON.stringify(mockUploadFiles)),
3680-
};
3681-
36823677
export const mockFileFormData = {
36833678
metadata: {
36843679
'dc.title': [

src/app/submission/sections/upload/section-upload.component.spec.ts

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import {
2424
mockSubmissionState,
2525
mockUploadConfigResponse,
2626
mockUploadConfigResponseNotRequired,
27-
mockUploadFiles, mockUploadFilesData,
27+
mockUploadFiles,
2828
} from '../../../shared/mocks/submission.mock';
2929
import { SubmissionUploadsConfigDataService } from '../../../core/config/submission-uploads-config-data.service';
3030
import { SectionUploadService } from './section-upload.service';
@@ -162,7 +162,6 @@ describe('SubmissionSectionUploadComponent test suite', () => {
162162
);
163163

164164
bitstreamService.getUploadedFileList.and.returnValue(observableOf([]));
165-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf({ primary: null, files: [] }));
166165
};
167166

168167
TestBed.configureTestingModule({
@@ -233,7 +232,7 @@ describe('SubmissionSectionUploadComponent test suite', () => {
233232
});
234233

235234
it('should init component properly', () => {
236-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf({ primary: null, files: [] }));
235+
237236
submissionServiceStub.getSubmissionObject.and.returnValue(observableOf(submissionState));
238237

239238
collectionDataService.findById.and.returnValue(createSuccessfulRemoteDataObject$(Object.assign(new Collection(), mockCollection, {
@@ -249,6 +248,8 @@ describe('SubmissionSectionUploadComponent test suite', () => {
249248
createSuccessfulRemoteDataObject$(Object.assign(new Group(), mockGroup))
250249
);
251250

251+
bitstreamService.getUploadedFileList.and.returnValue(observableOf([]));
252+
252253
comp.onSectionInit();
253254

254255
const expectedGroupsMap = new Map([
@@ -270,7 +271,6 @@ describe('SubmissionSectionUploadComponent test suite', () => {
270271
});
271272

272273
it('should init file list properly', () => {
273-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf({ primary: null, files: [] }));
274274

275275
submissionServiceStub.getSubmissionObject.and.returnValue(observableOf(submissionState));
276276

@@ -285,7 +285,7 @@ describe('SubmissionSectionUploadComponent test suite', () => {
285285
createSuccessfulRemoteDataObject$(Object.assign(new Group(), mockGroup))
286286
);
287287

288-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf(mockUploadFilesData));
288+
bitstreamService.getUploadedFileList.and.returnValue(observableOf(mockUploadFiles));
289289

290290
comp.onSectionInit();
291291

@@ -308,8 +308,6 @@ describe('SubmissionSectionUploadComponent test suite', () => {
308308
});
309309

310310
it('should properly read the section status when required is true', () => {
311-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf({ primary: null, files: [] }));
312-
313311
submissionServiceStub.getSubmissionObject.and.returnValue(observableOf(submissionState));
314312

315313
sectionsServiceStub.getSectionErrors.and.returnValue(observableOf([]));
@@ -327,7 +325,7 @@ describe('SubmissionSectionUploadComponent test suite', () => {
327325

328326
bitstreamService.getUploadedFileList.and.returnValue(cold('-a-b', {
329327
a: [],
330-
b: mockUploadFiles,
328+
b: mockUploadFiles
331329
}));
332330

333331
comp.onSectionInit();
@@ -343,8 +341,6 @@ describe('SubmissionSectionUploadComponent test suite', () => {
343341
it('should properly read the section status when required is false', () => {
344342
submissionServiceStub.getSubmissionObject.and.returnValue(observableOf(submissionState));
345343

346-
bitstreamService.getUploadedFilesData.and.returnValue(observableOf({ primary: null, files: [] }));
347-
348344
sectionsServiceStub.getSectionErrors.and.returnValue(observableOf([]));
349345

350346
collectionDataService.findById.and.returnValue(createSuccessfulRemoteDataObject$(mockCollection));

src/app/submission/sections/upload/section-upload.component.ts

Lines changed: 21 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import { followLink } from '../../../shared/utils/follow-link-config.model';
2727
import { getFirstSucceededRemoteData } from '../../../core/shared/operators';
2828
import { DSONameService } from '../../../core/breadcrumbs/dso-name.service';
2929
import { SubmissionVisibility } from '../../utils/visibility.util';
30-
import { WorkspaceitemSectionUploadObject } from '../../../core/submission/models/workspaceitem-section-upload.model';
3130

3231
export const POLICY_DEFAULT_NO_LIST = 1; // Banner1
3332
export const POLICY_DEFAULT_WITH_LIST = 2; // Banner2
@@ -198,20 +197,28 @@ export class SubmissionSectionUploadComponent extends SectionModelComponent {
198197
}),
199198

200199
// retrieve submission's bitstreams from state
201-
observableCombineLatest([
202-
this.configMetadataForm$,
203-
this.bitstreamService.getUploadedFilesData(this.submissionId, this.sectionData.id),
204-
]).pipe(
205-
filter(([configMetadataForm, sectionUploadObject]: [SubmissionFormsModel, WorkspaceitemSectionUploadObject]) => {
206-
return isNotEmpty(configMetadataForm) && isNotEmpty(sectionUploadObject);
200+
observableCombineLatest(this.configMetadataForm$,
201+
this.bitstreamService.getUploadedFileList(this.submissionId, this.sectionData.id)).pipe(
202+
filter(([configMetadataForm, fileList]: [SubmissionFormsModel, any[]]) => {
203+
return isNotEmpty(configMetadataForm) && isNotUndefined(fileList);
207204
}),
208-
distinctUntilChanged(),
209-
).subscribe(([configMetadataForm, { files }]: [SubmissionFormsModel, WorkspaceitemSectionUploadObject]) => {
210-
this.fileList = files;
211-
this.fileIndexes = this.fileList.map(file => file.uuid);
212-
this.fileNames = Array.from(files, file => this.getFileName(configMetadataForm, file));
213-
this.changeDetectorRef.detectChanges();
214-
}),
205+
distinctUntilChanged())
206+
.subscribe(([configMetadataForm, fileList]: [SubmissionFormsModel, any[]]) => {
207+
this.fileList = [];
208+
this.fileIndexes = [];
209+
this.fileNames = [];
210+
this.changeDetectorRef.detectChanges();
211+
if (isNotUndefined(fileList) && fileList.length > 0) {
212+
fileList.forEach((file) => {
213+
this.fileList.push(file);
214+
this.fileIndexes.push(file.uuid);
215+
this.fileNames.push(this.getFileName(configMetadataForm, file));
216+
});
217+
}
218+
219+
this.changeDetectorRef.detectChanges();
220+
}
221+
)
215222
);
216223
}
217224

src/app/submission/sections/upload/section-upload.service.ts

Lines changed: 2 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,9 @@ import {
1010
EditFileDataAction,
1111
NewUploadedFileAction
1212
} from '../../objects/submission-objects.actions';
13-
import {
14-
submissionSectionDataFromIdSelector,
15-
submissionUploadedFileFromUuidSelector,
16-
submissionUploadedFilesFromIdSelector
17-
} from '../../selectors';
13+
import { submissionUploadedFileFromUuidSelector, submissionUploadedFilesFromIdSelector } from '../../selectors';
1814
import { isUndefined } from '../../../shared/empty.util';
1915
import { WorkspaceitemSectionUploadFileObject } from '../../../core/submission/models/workspaceitem-section-upload-file.model';
20-
import { WorkspaceitemSectionUploadObject } from '../../../core/submission/models/workspaceitem-section-upload.model';
2116

2217
/**
2318
* A service that provides methods to handle submission's bitstream state.
@@ -31,21 +26,7 @@ export class SectionUploadService {
3126
* @param {Store<SubmissionState>} store
3227
*/
3328
constructor(private store: Store<SubmissionState>) {}
34-
/**
35-
* Return submission's bitstream data from state
36-
*
37-
* @param submissionId
38-
* The submission id
39-
* @param sectionId
40-
* The section id
41-
* @returns {WorkspaceitemSectionUploadObject}
42-
* Returns submission's bitstream data
43-
*/
44-
public getUploadedFilesData(submissionId: string, sectionId: string): Observable<WorkspaceitemSectionUploadObject> {
45-
return this.store.select(submissionSectionDataFromIdSelector(submissionId, sectionId)).pipe(
46-
map((state) => state),
47-
distinctUntilChanged());
48-
}
29+
4930
/**
5031
* Return submission's bitstream list from state
5132
*

0 commit comments

Comments
 (0)