Themed SubmissionUploadFilesComponent

This commit is contained in:
Alexandre Vryghem
2024-04-23 11:42:50 +02:00
committed by Nona Luypaert
parent 404ccd9b0e
commit 8b29a7189b
7 changed files with 56 additions and 4 deletions

View File

@@ -1,9 +1,9 @@
<div class="container-fluid"> <div class="container-fluid">
<div *ngIf="!(isLoading() | async)" class="submission-form-header mb-3 d-flex flex-wrap position-sticky"> <div *ngIf="!(isLoading() | async)" class="submission-form-header mb-3 d-flex flex-wrap position-sticky">
<div *ngIf="(uploadEnabled$ | async)" class="w-100"> <div *ngIf="(uploadEnabled$ | async)" class="w-100">
<ds-submission-upload-files [submissionId]="submissionId" <ds-themed-submission-upload-files [submissionId]="submissionId"
[collectionId]="collectionId" [collectionId]="collectionId"
[uploadFilesOptions]="uploadFilesOptions"></ds-submission-upload-files> [uploadFilesOptions]="uploadFilesOptions"></ds-themed-submission-upload-files>
<div class="clearfix"></div> <div class="clearfix"></div>
</div> </div>

View File

@@ -81,9 +81,9 @@ describe('SubmissionUploadFilesComponent Component', () => {
// synchronous beforeEach // synchronous beforeEach
beforeEach(() => { beforeEach(() => {
const html = ` const html = `
<ds-submission-upload-files [submissionId]="submissionId" <ds-themed-submission-upload-files [submissionId]="submissionId"
[collectionId]="collectionId" [collectionId]="collectionId"
[uploadFilesOptions]="uploadFilesOptions"></ds-submission-upload-files>`; [uploadFilesOptions]="uploadFilesOptions"></ds-themed-submission-upload-files>`;
testFixture = createTestComponent(html, TestComponent) as ComponentFixture<TestComponent>; testFixture = createTestComponent(html, TestComponent) as ComponentFixture<TestComponent>;
testComp = testFixture.componentInstance; testComp = testFixture.componentInstance;

View File

@@ -0,0 +1,38 @@
import { Component, Input } from '@angular/core';
import { ThemedComponent } from '../../../shared/theme-support/themed.component';
import { SubmissionUploadFilesComponent } from './submission-upload-files.component';
import { UploaderOptions } from '../../../shared/upload/uploader/uploader-options.model';
/**
* Themed wrapper for {@link SubmissionUploadFilesComponent}
*/
@Component({
selector: 'ds-themed-submission-upload-files',
templateUrl: '../../../shared/theme-support/themed.component.html',
})
export class ThemedSubmissionUploadFilesComponent extends ThemedComponent<SubmissionUploadFilesComponent> {
@Input() collectionId: string;
@Input() submissionId: string;
@Input() uploadFilesOptions: UploaderOptions;
protected inAndOutputNames: (keyof SubmissionUploadFilesComponent & keyof this)[] = [
'collectionId',
'submissionId',
'uploadFilesOptions'
];
protected getComponentName(): string {
return 'SubmissionUploadFilesComponent';
}
protected importThemedComponent(themeName: string): Promise<any> {
return import(`../../../../themes/${themeName}/app/submission/form/submission-upload-files/submission-upload-files.component.ts`);
}
protected importUnthemedComponent(): Promise<any> {
return import('./submission-upload-files.component');
}
}

View File

@@ -67,6 +67,7 @@ import {
} from './sections/sherpa-policies/metadata-information/metadata-information.component'; } from './sections/sherpa-policies/metadata-information/metadata-information.component';
import { SectionFormOperationsService } from './sections/form/section-form-operations.service'; import { SectionFormOperationsService } from './sections/form/section-form-operations.service';
import {SubmissionSectionIdentifiersComponent} from './sections/identifiers/section-identifiers.component'; import {SubmissionSectionIdentifiersComponent} from './sections/identifiers/section-identifiers.component';
import { ThemedSubmissionUploadFilesComponent } from './form/submission-upload-files/themed-submission-upload-files.component';
const ENTRY_COMPONENTS = [ const ENTRY_COMPONENTS = [
// put only entry components that use custom decorator // put only entry components that use custom decorator
@@ -90,6 +91,7 @@ const DECLARATIONS = [
SubmissionSubmitComponent, SubmissionSubmitComponent,
ThemedSubmissionSubmitComponent, ThemedSubmissionSubmitComponent,
SubmissionUploadFilesComponent, SubmissionUploadFilesComponent,
ThemedSubmissionUploadFilesComponent,
SubmissionSectionContainerComponent, SubmissionSectionContainerComponent,
SubmissionSectionUploadAccessConditionsComponent, SubmissionSectionUploadAccessConditionsComponent,
SubmissionSectionUploadFileComponent, SubmissionSectionUploadFileComponent,

View File

@@ -0,0 +1,10 @@
import { Component } from '@angular/core';
import { SubmissionUploadFilesComponent as BaseComponent } from '../../../../../../app/submission/form/submission-upload-files/submission-upload-files.component';
@Component({
selector: 'ds-submission-upload-files',
// templateUrl: './submission-upload-files.component.html',
templateUrl: '../../../../../../app/submission/form/submission-upload-files/submission-upload-files.component.html',
})
export class SubmissionUploadFilesComponent extends BaseComponent {
}

View File

@@ -156,6 +156,7 @@ import { ItemStatusComponent } from './app/item-page/edit-item-page/item-status/
import { EditBitstreamPageComponent } from './app/bitstream-page/edit-bitstream-page/edit-bitstream-page.component'; import { EditBitstreamPageComponent } from './app/bitstream-page/edit-bitstream-page/edit-bitstream-page.component';
import { FormModule } from '../../app/shared/form/form.module'; import { FormModule } from '../../app/shared/form/form.module';
import { RequestCopyModule } from 'src/app/request-copy/request-copy.module'; import { RequestCopyModule } from 'src/app/request-copy/request-copy.module';
import { SubmissionUploadFilesComponent } from './app/submission/form/submission-upload-files/submission-upload-files.component';
const DECLARATIONS = [ const DECLARATIONS = [
FileSectionComponent, FileSectionComponent,
@@ -239,6 +240,7 @@ const DECLARATIONS = [
SubmissionSectionUploadFileComponent, SubmissionSectionUploadFileComponent,
ItemStatusComponent, ItemStatusComponent,
EditBitstreamPageComponent, EditBitstreamPageComponent,
SubmissionUploadFilesComponent,
]; ];
@NgModule({ @NgModule({