From 19f806caf24ece83f5c5b0124ad0fe7dda573ee2 Mon Sep 17 00:00:00 2001
From: Andrea Barbasso <´andrea.barbasso@4science.com´>
Date: Thu, 7 Mar 2024 15:41:37 +0100
Subject: [PATCH] [DURACOM-191] fix dynamicComponentLoader
---
.../abstract-component-loader.component.html | 2 +-
.../abstract-component-loader.component.ts | 8 ++++++--
src/themes/dspace/app/header/header.component.ts | 4 ++--
3 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/src/app/shared/abstract-component-loader/abstract-component-loader.component.html b/src/app/shared/abstract-component-loader/abstract-component-loader.component.html
index 2035dbadd0..281c46b7be 100644
--- a/src/app/shared/abstract-component-loader/abstract-component-loader.component.html
+++ b/src/app/shared/abstract-component-loader/abstract-component-loader.component.html
@@ -1 +1 @@
-
+
diff --git a/src/app/shared/abstract-component-loader/abstract-component-loader.component.ts b/src/app/shared/abstract-component-loader/abstract-component-loader.component.ts
index 76b30fa10b..7a9d82c37c 100644
--- a/src/app/shared/abstract-component-loader/abstract-component-loader.component.ts
+++ b/src/app/shared/abstract-component-loader/abstract-component-loader.component.ts
@@ -19,13 +19,17 @@ import { DynamicComponentLoaderDirective } from './dynamic-component-loader.dire
@Component({
selector: 'ds-abstract-component-loader',
templateUrl: './abstract-component-loader.component.html',
+ standalone: true,
+ imports: [
+ DynamicComponentLoaderDirective,
+ ]
})
export abstract class AbstractComponentLoaderComponent implements OnInit, OnChanges, OnDestroy {
/**
* Directive to determine where the dynamic child component is located
*/
- @ViewChild(DynamicComponentLoaderDirective, { static: true }) componentDirective: DynamicComponentLoaderDirective;
+ @ViewChild('DynamicComponentLoader', { static: true, read: ViewContainerRef }) componentViewContainerRef: ViewContainerRef;
/**
* The reference to the dynamic component
@@ -94,7 +98,7 @@ export abstract class AbstractComponentLoaderComponent implements OnInit, OnC
public instantiateComponent(): void {
const component: GenericConstructor = this.getComponent();
- const viewContainerRef: ViewContainerRef = this.componentDirective.viewContainerRef;
+ const viewContainerRef: ViewContainerRef = this.componentViewContainerRef;
viewContainerRef.clear();
this.compRef = viewContainerRef.createComponent(
diff --git a/src/themes/dspace/app/header/header.component.ts b/src/themes/dspace/app/header/header.component.ts
index b6c6e60a6c..2b0f636efc 100644
--- a/src/themes/dspace/app/header/header.component.ts
+++ b/src/themes/dspace/app/header/header.component.ts
@@ -11,7 +11,7 @@ import { RouterLink } from '@angular/router';
import { NgbDropdownModule } from '@ng-bootstrap/ng-bootstrap';
import { ThemedLangSwitchComponent } from 'src/app/shared/lang-switch/themed-lang-switch.component';
import { Observable } from 'rxjs';
-import { AsyncPipe } from '@angular/common';
+import { AsyncPipe, NgIf } from '@angular/common';
/**
* Represents the header with the logo and simple navigation
@@ -21,7 +21,7 @@ import { AsyncPipe } from '@angular/common';
styleUrls: ['header.component.scss'],
templateUrl: 'header.component.html',
standalone: true,
- imports: [NgbDropdownModule, ThemedLangSwitchComponent, RouterLink, ThemedSearchNavbarComponent, LangSwitchComponent, ContextHelpToggleComponent, ThemedAuthNavMenuComponent, ImpersonateNavbarComponent, ThemedNavbarComponent, TranslateModule, AsyncPipe]
+ imports: [NgbDropdownModule, ThemedLangSwitchComponent, RouterLink, ThemedSearchNavbarComponent, LangSwitchComponent, ContextHelpToggleComponent, ThemedAuthNavMenuComponent, ImpersonateNavbarComponent, ThemedNavbarComponent, TranslateModule, AsyncPipe, NgIf]
})
export class HeaderComponent extends BaseComponent implements OnInit {
public isNavBarCollapsed$: Observable;