diff --git a/src/app/submission/form/submission-form.component.html b/src/app/submission/form/submission-form.component.html index 461c91db7a..4acd0f78f0 100644 --- a/src/app/submission/form/submission-form.component.html +++ b/src/app/submission/form/submission-form.component.html @@ -1,9 +1,9 @@
- + [uploadFilesOptions]="uploadFilesOptions">
diff --git a/src/app/submission/form/submission-form.component.spec.ts b/src/app/submission/form/submission-form.component.spec.ts index 58e3dd5c05..f097a1e7ea 100644 --- a/src/app/submission/form/submission-form.component.spec.ts +++ b/src/app/submission/form/submission-form.component.spec.ts @@ -45,7 +45,7 @@ import { SubmissionFormCollectionComponent } from './collection/submission-form- import { SubmissionFormFooterComponent } from './footer/submission-form-footer.component'; import { SubmissionFormSectionAddComponent } from './section-add/submission-form-section-add.component'; import { SubmissionFormComponent } from './submission-form.component'; -import { SubmissionUploadFilesComponent } from './submission-upload-files/submission-upload-files.component'; +import { ThemedSubmissionUploadFilesComponent } from './submission-upload-files/themed-submission-upload-files.component'; describe('SubmissionFormComponent Component', () => { @@ -86,7 +86,7 @@ describe('SubmissionFormComponent Component', () => { ThemedLoadingComponent, SubmissionSectionContainerComponent, SubmissionFormFooterComponent, - SubmissionUploadFilesComponent, + ThemedSubmissionUploadFilesComponent, SubmissionFormCollectionComponent, SubmissionFormSectionAddComponent, ] }, diff --git a/src/app/submission/form/submission-form.component.ts b/src/app/submission/form/submission-form.component.ts index d81435cef6..2e97c2df63 100644 --- a/src/app/submission/form/submission-form.component.ts +++ b/src/app/submission/form/submission-form.component.ts @@ -22,6 +22,10 @@ import { import { AuthService } from '../../core/auth/auth.service'; import { SubmissionDefinitionsModel } from '../../core/config/models/config-submission-definitions.model'; +import { + SubmissionSectionModel, + SubmissionSectionVisibility, +} from '../../core/config/models/config-submission-section.model'; import { Collection } from '../../core/shared/collection.model'; import { HALEndpointService } from '../../core/shared/hal-endpoint.service'; import { Item } from '../../core/shared/item.model'; @@ -42,14 +46,10 @@ import { SectionsService } from '../sections/sections.service'; import { SectionsType } from '../sections/sections-type'; import { VisibilityType } from '../sections/visibility-type'; import { SubmissionService } from '../submission.service'; -import { - SubmissionSectionModel, - SubmissionSectionVisibility, -} from './../../core/config/models/config-submission-section.model'; import { SubmissionFormCollectionComponent } from './collection/submission-form-collection.component'; import { SubmissionFormFooterComponent } from './footer/submission-form-footer.component'; import { SubmissionFormSectionAddComponent } from './section-add/submission-form-section-add.component'; -import { SubmissionUploadFilesComponent } from './submission-upload-files/submission-upload-files.component'; +import { ThemedSubmissionUploadFilesComponent } from './submission-upload-files/themed-submission-upload-files.component'; /** * This component represents the submission form. @@ -63,7 +63,7 @@ import { SubmissionUploadFilesComponent } from './submission-upload-files/submis ThemedLoadingComponent, SubmissionSectionContainerComponent, SubmissionFormFooterComponent, - SubmissionUploadFilesComponent, + ThemedSubmissionUploadFilesComponent, SubmissionFormCollectionComponent, SubmissionFormSectionAddComponent, ], @@ -81,7 +81,7 @@ export class SubmissionFormComponent implements OnChanges, OnDestroy { /** * Checks if the collection can be modifiable by the user - * @type {booelan} + * @type {boolean} */ @Input() collectionModifiable: boolean | null = null; diff --git a/src/app/submission/form/submission-upload-files/themed-submission-upload-files.component.ts b/src/app/submission/form/submission-upload-files/themed-submission-upload-files.component.ts new file mode 100644 index 0000000000..ab15cfbc91 --- /dev/null +++ b/src/app/submission/form/submission-upload-files/themed-submission-upload-files.component.ts @@ -0,0 +1,43 @@ +import { + Component, + Input, +} from '@angular/core'; + +import { ThemedComponent } from '../../../shared/theme-support/themed.component'; +import { UploaderOptions } from '../../../shared/upload/uploader/uploader-options.model'; +import { SubmissionUploadFilesComponent } from './submission-upload-files.component'; + +/** + * Themed wrapper for {@link SubmissionUploadFilesComponent} + */ +@Component({ + selector: 'ds-themed-submission-upload-files', + templateUrl: '../../../shared/theme-support/themed.component.html', + standalone: true, +}) +export class ThemedSubmissionUploadFilesComponent extends ThemedComponent { + + @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 { + return import(`../../../../themes/${themeName}/app/submission/form/submission-upload-files/submission-upload-files.component.ts`); + } + + protected importUnthemedComponent(): Promise { + return import('./submission-upload-files.component'); + } +} diff --git a/src/themes/custom/app/submission/form/submission-upload-files/submission-upload-files.component.html b/src/themes/custom/app/submission/form/submission-upload-files/submission-upload-files.component.html new file mode 100644 index 0000000000..e69de29bb2 diff --git a/src/themes/custom/app/submission/form/submission-upload-files/submission-upload-files.component.ts b/src/themes/custom/app/submission/form/submission-upload-files/submission-upload-files.component.ts new file mode 100644 index 0000000000..ec2a6b6257 --- /dev/null +++ b/src/themes/custom/app/submission/form/submission-upload-files/submission-upload-files.component.ts @@ -0,0 +1,18 @@ +import { NgIf } from '@angular/common'; +import { Component } from '@angular/core'; + +import { UploaderComponent } from '../../../../../../app/shared/upload/uploader/uploader.component'; +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', + imports: [ + UploaderComponent, + NgIf, + ], + standalone: true, +}) +export class SubmissionUploadFilesComponent extends BaseComponent { +} diff --git a/src/themes/custom/lazy-theme.module.ts b/src/themes/custom/lazy-theme.module.ts index 6ac0d83d88..42da1c8c96 100644 --- a/src/themes/custom/lazy-theme.module.ts +++ b/src/themes/custom/lazy-theme.module.ts @@ -93,6 +93,7 @@ import { CommunityStatisticsPageComponent } from './app/statistics-page/communit import { ItemStatisticsPageComponent } from './app/statistics-page/item-statistics-page/item-statistics-page.component'; import { SiteStatisticsPageComponent } from './app/statistics-page/site-statistics-page/site-statistics-page.component'; import { SubmissionEditComponent } from './app/submission/edit/submission-edit.component'; +import { SubmissionUploadFilesComponent } from './app/submission/form/submission-upload-files/submission-upload-files.component'; import { SubmissionImportExternalComponent } from './app/submission/import-external/submission-import-external.component'; import { SubmissionSectionUploadFileComponent } from './app/submission/sections/upload/file/section-upload-file.component'; import { SubmissionSubmitComponent } from './app/submission/submit/submission-submit.component'; @@ -190,6 +191,7 @@ const DECLARATIONS = [ MetadataImportPageComponent, ItemDetailPreviewFieldComponent, ProfilePageMetadataFormComponent, + SubmissionUploadFilesComponent, ]; @NgModule({