126853: ThemedSubmissionFormComponent

This commit is contained in:
Kristof De Langhe
2025-03-03 10:30:16 +01:00
parent 858ec87f2f
commit 261af2a2f5
7 changed files with 65 additions and 2 deletions

View File

@@ -1,10 +1,10 @@
<div class="submission-submit-container" >
<ds-submission-form [collectionId]="collectionId"
<ds-themed-submission-form [collectionId]="collectionId"
[sections]="sections"
[selfUrl]="selfUrl"
[submissionDefinition]="submissionDefinition"
[submissionErrors]="submissionErrors"
[item]="item"
[collectionModifiable]="collectionModifiable"
[submissionId]="submissionId"></ds-submission-form>
[submissionId]="submissionId"></ds-themed-submission-form>
</div>

View File

@@ -0,0 +1,44 @@
import { ThemedComponent } from '../../shared/theme-support/themed.component';
import { SubmissionFormComponent } from './submission-form.component';
import { Component, Input } from '@angular/core';
import { Item } from '../../core/shared/item.model';
import { WorkspaceitemSectionsObject } from '../../core/submission/models/workspaceitem-sections.model';
import { SubmissionError } from '../objects/submission-error.model';
import { SubmissionDefinitionsModel } from '../../core/config/models/config-submission-definitions.model';
@Component({
selector: 'ds-themed-submission-form',
styleUrls: [],
templateUrl: '../../shared/theme-support/themed.component.html',
})
export class ThemedSubmissionFormComponent extends ThemedComponent<SubmissionFormComponent> {
@Input() collectionId: string;
@Input() item: Item;
@Input() collectionModifiable: boolean | null = null;
@Input() sections: WorkspaceitemSectionsObject;
@Input() submissionErrors: SubmissionError;
@Input() selfUrl: string;
@Input() submissionDefinition: SubmissionDefinitionsModel;
@Input() submissionId: string;
protected inAndOutputNames: (keyof SubmissionFormComponent & keyof this)[] = ['collectionId', 'item', 'collectionModifiable', 'sections', 'submissionErrors', 'selfUrl', 'submissionDefinition', 'submissionId'];
protected getComponentName(): string {
return 'SubmissionFormComponent';
}
protected importThemedComponent(themeName: string): Promise<any> {
return import(`../../../themes/${themeName}/app/submission/form/submission-form.component`);
}
protected importUnthemedComponent(): Promise<any> {
return import(`./submission-form.component`);
}
}

View File

@@ -69,6 +69,7 @@ import { SectionFormOperationsService } from './sections/form/section-form-opera
import {SubmissionSectionIdentifiersComponent} from './sections/identifiers/section-identifiers.component';
import { ThemedSubmissionSectionContainerComponent } from './sections/container/themed-section-container.component';
import { ThemedSubmissionFormFooterComponent } from './form/footer/themed-submission-form-footer.component';
import { ThemedSubmissionFormComponent } from './form/themed-submission-form.component';
const ENTRY_COMPONENTS = [
// put only entry components that use custom decorator
@@ -110,6 +111,7 @@ const DECLARATIONS = [
ThemedSubmissionSectionUploadFileComponent,
ThemedSubmissionSectionContainerComponent,
ThemedSubmissionFormFooterComponent,
ThemedSubmissionFormComponent,
];
@NgModule({

View File

@@ -0,0 +1,15 @@
import {
SubmissionFormComponent as BaseComponent
} from '../../../../../app/submission/form/submission-form.component';
import { Component } from '@angular/core';
@Component({
selector: 'ds-submission-form',
// styleUrls: ['./submission-form.component.scss'],
styleUrls: ['../../../../../app/submission/form/submission-form.component.scss'],
// templateUrl: './submission-form.component.html'
templateUrl: '../../../../../app/submission/form/submission-form.component.html'
})
export class SubmissionFormComponent extends BaseComponent {
}

View File

@@ -158,6 +158,7 @@ import { FormModule } from '../../app/shared/form/form.module';
import { RequestCopyModule } from 'src/app/request-copy/request-copy.module';
import { SubmissionSectionContainerComponent } from './app/submission/sections/container/section-container.component';
import { SubmissionFormFooterComponent } from './app/submission/form/footer/submission-form-footer.component';
import { SubmissionFormComponent } from './app/submission/form/submission-form.component';
const DECLARATIONS = [
FileSectionComponent,
@@ -243,6 +244,7 @@ const DECLARATIONS = [
EditBitstreamPageComponent,
SubmissionSectionContainerComponent,
SubmissionFormFooterComponent,
SubmissionFormComponent,
];
@NgModule({