Merge branch 'created-themeable-ProfilePageMetadataFormComponent_contribute-7.6' into minor-themed-component-fixes_contribute-main

# Conflicts:
#	src/app/profile-page/profile-page.module.ts
#	src/themes/custom/lazy-theme.module.ts
This commit is contained in:
Alexandre Vryghem
2024-04-14 14:56:02 +02:00
8 changed files with 65 additions and 6 deletions

View File

@@ -0,0 +1,38 @@
import {
Component,
Input,
} from '@angular/core';
import { EPerson } from '../../core/eperson/models/eperson.model';
import { ThemedComponent } from '../../shared/theme-support/themed.component';
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form.component';
/**
* Themed wrapper for {@link ProfilePageMetadataFormComponent}
*/
@Component({
selector: 'ds-themed-profile-page-metadata-form',
templateUrl: '../../shared/theme-support/themed.component.html',
standalone: true,
})
export class ThemedProfilePageMetadataFormComponent extends ThemedComponent<ProfilePageMetadataFormComponent> {
@Input() user: EPerson;
protected inAndOutputNames: (keyof ProfilePageMetadataFormComponent & keyof this)[] = [
'user',
];
protected getComponentName(): string {
return 'ProfilePageMetadataFormComponent';
}
protected importThemedComponent(themeName: string): Promise<any> {
return import(`../../../themes/${themeName}/app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component`);
}
protected importUnthemedComponent(): Promise<any> {
return import('./profile-page-metadata-form.component');
}
}

View File

@@ -15,7 +15,7 @@
<div class="card mb-4">
<div class="card-header">{{'profile.card.identify' | translate}}</div>
<div class="card-body">
<ds-profile-page-metadata-form [user]="user"></ds-profile-page-metadata-form>
<ds-themed-profile-page-metadata-form [user]="user"></ds-themed-profile-page-metadata-form>
</div>
</div>
<div *ngIf="canChangePassword$ | async" class="card mb-4 security-section">

View File

@@ -41,7 +41,7 @@ import {
import { createPaginatedList } from '../shared/testing/utils.test';
import { VarDirective } from '../shared/utils/var.directive';
import { ProfilePageComponent } from './profile-page.component';
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form/profile-page-metadata-form.component';
import { ThemedProfilePageMetadataFormComponent } from './profile-page-metadata-form/themed-profile-page-metadata-form.component';
import { ProfilePageResearcherFormComponent } from './profile-page-researcher-form/profile-page-researcher-form.component';
import { ProfilePageSecurityFormComponent } from './profile-page-security-form/profile-page-security-form.component';
@@ -129,7 +129,7 @@ describe('ProfilePageComponent', () => {
.overrideComponent(ProfilePageComponent, {
remove: {
imports: [
ProfilePageMetadataFormComponent,
ThemedProfilePageMetadataFormComponent,
ProfilePageSecurityFormComponent,
ProfilePageResearcherFormComponent,
SuggestionsNotificationComponent,

View File

@@ -48,6 +48,7 @@ import { NotificationsService } from '../shared/notifications/notifications.serv
import { followLink } from '../shared/utils/follow-link-config.model';
import { VarDirective } from '../shared/utils/var.directive';
import { ProfilePageMetadataFormComponent } from './profile-page-metadata-form/profile-page-metadata-form.component';
import { ThemedProfilePageMetadataFormComponent } from './profile-page-metadata-form/themed-profile-page-metadata-form.component';
import { ProfilePageResearcherFormComponent } from './profile-page-researcher-form/profile-page-researcher-form.component';
import { ProfilePageSecurityFormComponent } from './profile-page-security-form/profile-page-security-form.component';
@@ -56,7 +57,7 @@ import { ProfilePageSecurityFormComponent } from './profile-page-security-form/p
styleUrls: ['./profile-page.component.scss'],
templateUrl: './profile-page.component.html',
imports: [
ProfilePageMetadataFormComponent,
ThemedProfilePageMetadataFormComponent,
ProfilePageSecurityFormComponent,
AsyncPipe,
TranslateModule,

View File

@@ -0,0 +1,18 @@
import { NgIf } from '@angular/common';
import { Component } from '@angular/core';
import { ProfilePageMetadataFormComponent as BaseComponent } from '../../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
import { FormComponent } from '../../../../../app/shared/form/form.component';
@Component({
selector: 'ds-profile-page-metadata-form',
templateUrl: '../../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component.html',
// templateUrl: './profile-page-metadata-form.component.html',
imports: [
FormComponent,
NgIf,
],
standalone: true,
})
export class ProfilePageMetadataFormComponent extends BaseComponent {
}

View File

@@ -8,7 +8,7 @@ import { TranslateModule } from '@ngx-translate/core';
import { SuggestionsNotificationComponent } from '../../../../app/notifications/suggestions-notification/suggestions-notification.component';
import { ProfilePageComponent as BaseComponent } from '../../../../app/profile-page/profile-page.component';
import { ProfilePageMetadataFormComponent } from '../../../../app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
import { ThemedProfilePageMetadataFormComponent } from '../../../../app/profile-page/profile-page-metadata-form/themed-profile-page-metadata-form.component';
import { ProfilePageResearcherFormComponent } from '../../../../app/profile-page/profile-page-researcher-form/profile-page-researcher-form.component';
import { ProfilePageSecurityFormComponent } from '../../../../app/profile-page/profile-page-security-form/profile-page-security-form.component';
import { VarDirective } from '../../../../app/shared/utils/var.directive';
@@ -21,7 +21,7 @@ import { VarDirective } from '../../../../app/shared/utils/var.directive';
templateUrl: '../../../../app/profile-page/profile-page.component.html',
standalone: true,
imports: [
ProfilePageMetadataFormComponent,
ThemedProfilePageMetadataFormComponent,
ProfilePageSecurityFormComponent,
SuggestionsNotificationComponent,
AsyncPipe,

View File

@@ -54,6 +54,7 @@ import { MyDSpacePageComponent } from './app/my-dspace-page/my-dspace-page.compo
import { ExpandableNavbarSectionComponent } from './app/navbar/expandable-navbar-section/expandable-navbar-section.component';
import { PageNotFoundComponent } from './app/pagenotfound/pagenotfound.component';
import { ProfilePageComponent } from './app/profile-page/profile-page.component';
import { ProfilePageMetadataFormComponent } from './app/profile-page/profile-page-metadata-form/profile-page-metadata-form.component';
import { RegisterEmailFormComponent } from './app/register-email-form/register-email-form.component';
import { CreateProfileComponent } from './app/register-page/create-profile/create-profile.component';
import { RegisterEmailComponent } from './app/register-page/register-email/register-email.component';
@@ -188,6 +189,7 @@ const DECLARATIONS = [
ItemListPreviewComponent,
MetadataImportPageComponent,
ItemDetailPreviewFieldComponent,
ProfilePageMetadataFormComponent,
];
@NgModule({