diff --git a/lib/content-services/src/lib/directives/node-counter.directive.ts b/lib/content-services/src/lib/directives/node-counter.directive.ts
index 7eb08a0b07..0a14975479 100644
--- a/lib/content-services/src/lib/directives/node-counter.directive.ts
+++ b/lib/content-services/src/lib/directives/node-counter.directive.ts
@@ -15,27 +15,22 @@
* limitations under the License.
*/
-import { Directive, Input, Component, OnInit, OnChanges, ComponentFactoryResolver, ViewContainerRef } from '@angular/core';
+import { Directive, Input, Component, OnInit, OnChanges, ViewContainerRef } from '@angular/core';
@Directive({
selector: '[adf-node-counter]'
})
export class NodeCounterDirective implements OnInit, OnChanges {
-
/** Number to display in the counter badge */
@Input('adf-node-counter')
counter: number;
componentRef: NodeCounterComponent;
- constructor(
- private resolver: ComponentFactoryResolver,
- public viewContainerRef: ViewContainerRef
- ) {}
+ constructor(private viewContainerRef: ViewContainerRef) {}
ngOnInit() {
- const componentFactory = this.resolver.resolveComponentFactory(NodeCounterComponent);
- this.componentRef = this.viewContainerRef.createComponent(componentFactory).instance;
+ this.componentRef = this.viewContainerRef.createComponent(NodeCounterComponent).instance;
this.componentRef.counter = this.counter;
}
@@ -48,9 +43,7 @@ export class NodeCounterDirective implements OnInit, OnChanges {
@Component({
selector: 'adf-node-counter',
- template: `
-
{{ 'NODE_COUNTER.SELECTED_COUNT' | translate: { count: counter } }}
- `
+ template: ` {{ 'NODE_COUNTER.SELECTED_COUNT' | translate : { count: counter } }}
`
})
export class NodeCounterComponent {
counter: number;
diff --git a/lib/content-services/src/lib/search/components/search-widget-container/search-widget-container.component.ts b/lib/content-services/src/lib/search/components/search-widget-container/search-widget-container.component.ts
index 33e92d9b69..842489ea67 100644
--- a/lib/content-services/src/lib/search/components/search-widget-container/search-widget-container.component.ts
+++ b/lib/content-services/src/lib/search/components/search-widget-container/search-widget-container.component.ts
@@ -15,18 +15,7 @@
* limitations under the License.
*/
-import {
- Component,
- Input,
- ViewChild,
- ViewContainerRef,
- OnInit,
- OnDestroy,
- ComponentRef,
- ComponentFactoryResolver,
- SimpleChanges,
- OnChanges
-} from '@angular/core';
+import { Component, Input, ViewChild, ViewContainerRef, OnInit, OnDestroy, ComponentRef, SimpleChanges, OnChanges } from '@angular/core';
import { SearchFilterService } from '../../services/search-filter.service';
import { Observable } from 'rxjs';
import { SearchQueryBuilderService } from '../../services';
@@ -56,21 +45,14 @@ export class SearchWidgetContainerComponent implements OnInit, OnDestroy, OnChan
componentRef: ComponentRef;
- constructor(
- private searchFilterService: SearchFilterService,
- private queryBuilder: SearchQueryBuilderService,
- private componentFactoryResolver: ComponentFactoryResolver
- ) {}
+ constructor(private searchFilterService: SearchFilterService, private queryBuilder: SearchQueryBuilderService) {}
ngOnInit() {
const componentType = this.searchFilterService.widgets[this.selector];
if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(componentType);
- if (factory) {
- this.content.clear();
- this.componentRef = this.content.createComponent(factory, 0);
- this.setupWidget(this.componentRef);
- }
+ this.content.clear();
+ this.componentRef = this.content.createComponent(componentType, { index: 0 });
+ this.setupWidget(this.componentRef);
}
}
diff --git a/lib/core/src/lib/card-view/card-view.module.ts b/lib/core/src/lib/card-view/card-view.module.ts
index af328e99fd..e38602ffe1 100644
--- a/lib/core/src/lib/card-view/card-view.module.ts
+++ b/lib/core/src/lib/card-view/card-view.module.ts
@@ -34,7 +34,6 @@ import { MatTooltipModule } from '@angular/material/tooltip';
import { MatDatetimepickerModule, MatNativeDatetimeModule } from '@mat-datetimepicker/core';
import { TranslateModule } from '@ngx-translate/core';
-import { CardViewContentProxyDirective } from './directives/card-view-content-proxy.directive';
import { CardViewComponent } from './components/card-view/card-view.component';
import { CardViewBoolItemComponent } from './components/card-view-boolitem/card-view-boolitem.component';
import { CardViewDateItemComponent } from './components/card-view-dateitem/card-view-dateitem.component';
@@ -77,7 +76,6 @@ import { SelectFilterInputComponent } from './components/card-view-selectitem/se
CardViewKeyValuePairsItemComponent,
CardViewSelectItemComponent,
CardViewItemDispatcherComponent,
- CardViewContentProxyDirective,
CardViewArrayItemComponent,
SelectFilterInputComponent
],
diff --git a/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.spec.ts b/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.spec.ts
index bb001e0e9c..801e75b1cb 100644
--- a/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.spec.ts
+++ b/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.spec.ts
@@ -22,7 +22,6 @@ import { ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { CardViewItem } from '../../interfaces/card-view-item.interface';
import { CardItemTypeService } from '../../services/card-item-types.service';
-import { CardViewContentProxyDirective } from '../../directives/card-view-content-proxy.directive';
import { CardViewItemDispatcherComponent } from './card-view-item-dispatcher.component';
@Component({
@@ -35,7 +34,6 @@ export class CardViewShinyCustomElementItemComponent {
}
describe('CardViewItemDispatcherComponent', () => {
-
let fixture: ComponentFixture;
let cardItemTypeService: CardItemTypeService;
let component: CardViewItemDispatcherComponent;
@@ -45,12 +43,8 @@ describe('CardViewItemDispatcherComponent', () => {
cardItemTypeService.setComponentTypeResolver('shiny-custom-element', () => CardViewShinyCustomElementItemComponent);
TestBed.configureTestingModule({
- declarations: [
- CardViewItemDispatcherComponent,
- CardViewShinyCustomElementItemComponent,
- CardViewContentProxyDirective
- ],
- providers: [ { provide: CardItemTypeService, useValue: cardItemTypeService } ]
+ declarations: [CardViewItemDispatcherComponent, CardViewShinyCustomElementItemComponent],
+ providers: [{ provide: CardItemTypeService, useValue: cardItemTypeService }]
});
TestBed.compileComponents();
@@ -83,7 +77,6 @@ describe('CardViewItemDispatcherComponent', () => {
});
describe('Sub-component creation', () => {
-
it('should load the CardViewShinyCustomElementItemComponent', () => {
const innerElement = fixture.debugElement.query(By.css('[data-automation-id="found-me"]'));
expect(innerElement).not.toBeNull();
@@ -108,7 +101,7 @@ describe('CardViewItemDispatcherComponent', () => {
expect(shinyCustomElementItemComponent.displayEmpty).toBe(component.displayEmpty);
});
- it('should update the subcomponent\'s input parameters', () => {
+ it('should update the subcomponent input parameters', () => {
const expectedEditable = false;
const expectedDisplayEmpty = true;
const expectedProperty = {};
@@ -139,8 +132,7 @@ describe('CardViewItemDispatcherComponent', () => {
});
describe('Angular life-cycle methods', () => {
-
- let shinyCustomElementItemComponent;
+ let shinyCustomElementItemComponent: any;
const lifeCycleMethods = [
'ngOnChanges',
diff --git a/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.ts b/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.ts
index c121fa9b89..3d9dd4e4d2 100644
--- a/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.ts
+++ b/lib/core/src/lib/card-view/components/card-view-item-dispatcher/card-view-item-dispatcher.component.ts
@@ -15,22 +15,14 @@
* limitations under the License.
*/
-import {
- Component,
- Input,
- OnChanges,
- SimpleChange,
- SimpleChanges,
- ViewChild
-} from '@angular/core';
+import { Component, Input, OnChanges, SimpleChange, SimpleChanges, ViewChild, ViewContainerRef } from '@angular/core';
import { CardViewItem } from '../../interfaces/card-view-item.interface';
import { CardItemTypeService } from '../../services/card-item-types.service';
-import { CardViewContentProxyDirective } from '../../directives/card-view-content-proxy.directive';
import { DEFAULT_SEPARATOR } from '../card-view-textitem/card-view-textitem.component';
@Component({
selector: 'adf-card-view-item-dispatcher',
- template: ''
+ template: ''
})
export class CardViewItemDispatcherComponent implements OnChanges {
@Input()
@@ -60,15 +52,15 @@ export class CardViewItemDispatcherComponent implements OnChanges {
@Input()
displayLabelForChips: boolean = false;
- @ViewChild(CardViewContentProxyDirective, { static: true })
- private content: CardViewContentProxyDirective;
-
private loaded: boolean = false;
private componentReference: any = null;
public ngOnInit;
public ngDoCheck;
+ @ViewChild('content', { read: ViewContainerRef, static: true })
+ content!: ViewContainerRef;
+
constructor(private cardItemTypeService: CardItemTypeService) {
const dynamicLifeCycleMethods = [
'ngOnInit',
@@ -91,10 +83,9 @@ export class CardViewItemDispatcherComponent implements OnChanges {
this.loaded = true;
}
- Object.entries(changes)
- .forEach(([changeName, change]: [string, SimpleChange]) => {
- this.componentReference.instance[changeName] = change.currentValue;
- });
+ Object.entries(changes).forEach(([changeName, change]: [string, SimpleChange]) => {
+ this.componentReference.instance[changeName] = change.currentValue;
+ });
this.proxy('ngOnChanges', changes);
}
@@ -102,7 +93,7 @@ export class CardViewItemDispatcherComponent implements OnChanges {
private loadComponent() {
const factoryClass = this.cardItemTypeService.resolveComponentType(this.property);
- this.componentReference = this.content.viewContainerRef.createComponent(factoryClass);
+ this.componentReference = this.content.createComponent(factoryClass);
this.componentReference.instance.editable = this.editable;
this.componentReference.instance.property = this.property;
diff --git a/lib/core/src/lib/card-view/directives/card-view-content-proxy.directive.ts b/lib/core/src/lib/card-view/directives/card-view-content-proxy.directive.ts
deleted file mode 100644
index d8192c10c3..0000000000
--- a/lib/core/src/lib/card-view/directives/card-view-content-proxy.directive.ts
+++ /dev/null
@@ -1,25 +0,0 @@
-/*!
- * @license
- * Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { Directive, ViewContainerRef } from '@angular/core';
-
-@Directive({
- selector: '[adf-card-view-content-proxy]'
-})
-export class CardViewContentProxyDirective {
- constructor(public viewContainerRef: ViewContainerRef) { }
-}
diff --git a/lib/core/src/lib/card-view/public-api.ts b/lib/core/src/lib/card-view/public-api.ts
index c506680da4..6f6f6514cc 100644
--- a/lib/core/src/lib/card-view/public-api.ts
+++ b/lib/core/src/lib/card-view/public-api.ts
@@ -32,6 +32,4 @@ export * from './interfaces/card-view.interfaces';
export * from './validators/card-view.validators';
export * from './models/card-view.models';
export * from './services/card-view.services';
-export * from './directives/card-view-content-proxy.directive';
-
export * from './card-view.module';
diff --git a/lib/core/src/lib/clipboard/clipboard.directive.ts b/lib/core/src/lib/clipboard/clipboard.directive.ts
index 9abdb46345..64cdc59d77 100644
--- a/lib/core/src/lib/clipboard/clipboard.directive.ts
+++ b/lib/core/src/lib/clipboard/clipboard.directive.ts
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-import { Directive, Input, HostListener, Component, ViewContainerRef, ComponentFactoryResolver, ViewEncapsulation, OnInit } from '@angular/core';
+import { Directive, Input, HostListener, Component, ViewContainerRef, ViewEncapsulation, OnInit } from '@angular/core';
import { ClipboardService } from './clipboard.service';
@Directive({
@@ -36,16 +36,12 @@ export class ClipboardDirective {
// eslint-disable-next-line @angular-eslint/no-input-rename
@Input('clipboard-notification') message: string;
- constructor(private clipboardService: ClipboardService,
- public viewContainerRef: ViewContainerRef,
- private resolver: ComponentFactoryResolver) {}
-
+ constructor(private clipboardService: ClipboardService, public viewContainerRef: ViewContainerRef) {}
@HostListener('mouseenter')
showTooltip() {
if (this.placeholder) {
- const componentFactory = this.resolver.resolveComponentFactory(ClipboardComponent);
- const componentRef = this.viewContainerRef.createComponent(componentFactory).instance;
+ const componentRef = this.viewContainerRef.createComponent(ClipboardComponent).instance;
componentRef.placeholder = this.placeholder;
}
}
@@ -70,14 +66,14 @@ export class ClipboardDirective {
}
}
- private copyContentToClipboard(content) {
+ private copyContentToClipboard(content: string) {
this.clipboardService.copyContentToClipboard(content, this.message);
}
}
@Component({
selector: 'adf-copy-content-tooltip',
- template: `{{ placeholder | translate }} `,
+ template: `{{ placeholder | translate }} `,
encapsulation: ViewEncapsulation.None
})
export class ClipboardComponent implements OnInit {
diff --git a/lib/core/src/lib/form/components/form-field/form-field.component.ts b/lib/core/src/lib/form/components/form-field/form-field.component.ts
index f52d275a08..9f6cf9187c 100644
--- a/lib/core/src/lib/form/components/form-field/form-field.component.ts
+++ b/lib/core/src/lib/form/components/form-field/form-field.component.ts
@@ -19,10 +19,8 @@ import {
Compiler,
Component,
ComponentFactory,
- ComponentFactoryResolver,
ComponentRef,
Input,
- ModuleWithComponentFactories,
NgModule,
OnDestroy,
OnInit,
@@ -70,12 +68,7 @@ export class FormFieldComponent implements OnInit, OnDestroy {
focus: boolean = false;
- constructor(
- private formRenderingService: FormRenderingService,
- private componentFactoryResolver: ComponentFactoryResolver,
- private visibilityService: WidgetVisibilityService,
- private compiler: Compiler
- ) {}
+ constructor(private formRenderingService: FormRenderingService, private visibilityService: WidgetVisibilityService, private compiler: Compiler) {}
ngOnInit() {
const w: any = window;
@@ -95,8 +88,7 @@ export class FormFieldComponent implements OnInit, OnDestroy {
} else {
const componentType = this.formRenderingService.resolveComponentType(originalField);
if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(componentType);
- this.componentRef = this.container.createComponent(factory);
+ this.componentRef = this.container.createComponent(componentType);
const instance = this.componentRef.instance;
instance.field = this.field;
instance.fieldChanged.subscribe((field) => {
@@ -153,7 +145,7 @@ export class FormFieldComponent implements OnInit, OnDestroy {
const decoratedCmp = Component(metadata)(cmpClass);
const moduleClass = class RuntimeComponentModule {};
const decoratedNgModule = NgModule({ imports: [], declarations: [decoratedCmp] })(moduleClass);
- const module: ModuleWithComponentFactories = compiler.compileModuleAndAllComponentsSync(decoratedNgModule);
+ const module = compiler.compileModuleAndAllComponentsSync(decoratedNgModule);
return module.componentFactories.find((x) => x.componentType === decoratedCmp);
}
diff --git a/lib/extensions/src/lib/components/dynamic-column/dynamic-column.component.ts b/lib/extensions/src/lib/components/dynamic-column/dynamic-column.component.ts
index a22a3e9b4c..0461632665 100644
--- a/lib/extensions/src/lib/components/dynamic-column/dynamic-column.component.ts
+++ b/lib/extensions/src/lib/components/dynamic-column/dynamic-column.component.ts
@@ -16,86 +16,75 @@
*/
import {
- Component,
- Input,
- OnInit,
- OnDestroy,
- ViewChild,
- ViewContainerRef,
- ComponentRef,
- ComponentFactoryResolver,
- OnChanges,
- SimpleChanges,
- ViewEncapsulation,
- ChangeDetectionStrategy
+ Component,
+ Input,
+ OnInit,
+ OnDestroy,
+ ViewChild,
+ ViewContainerRef,
+ ComponentRef,
+ OnChanges,
+ SimpleChanges,
+ ViewEncapsulation,
+ ChangeDetectionStrategy
} from '@angular/core';
import { ExtensionService } from '../../services/extension.service';
@Component({
- selector: 'adf-dynamic-column',
- template: `
-
- `,
- encapsulation: ViewEncapsulation.None,
- changeDetection: ChangeDetectionStrategy.OnPush,
- host: { class: 'adf-dynamic-column' },
- styles: [
- `
- .adf-dynamic-column {
- display: flex;
- align-items: center;
- width: inherit;
- }
- `
- ]
+ selector: 'adf-dynamic-column',
+ template: ` `,
+ encapsulation: ViewEncapsulation.None,
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ host: { class: 'adf-dynamic-column' },
+ styles: [
+ `
+ .adf-dynamic-column {
+ display: flex;
+ align-items: center;
+ width: inherit;
+ }
+ `
+ ]
})
export class DynamicColumnComponent implements OnInit, OnChanges, OnDestroy {
- @ViewChild('content', { read: ViewContainerRef, static: true })
- content: ViewContainerRef;
+ @ViewChild('content', { read: ViewContainerRef, static: true })
+ content: ViewContainerRef;
- @Input()
- id: string;
+ @Input()
+ id: string;
- @Input()
- context: any;
+ @Input()
+ context: any;
- private componentRef: ComponentRef;
+ private componentRef: ComponentRef;
- constructor(
- private extensions: ExtensionService,
- private componentFactoryResolver: ComponentFactoryResolver
- ) {}
+ constructor(private extensions: ExtensionService) {}
- ngOnInit() {
- const componentType = this.extensions.getComponentById(this.id);
- if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(
- componentType
- );
- if (factory) {
- this.content.clear();
- this.componentRef = this.content.createComponent(factory, 0);
- this.updateInstance();
- }
+ ngOnInit() {
+ const componentType = this.extensions.getComponentById(this.id);
+ if (componentType) {
+ this.content.clear();
+ this.componentRef = this.content.createComponent(componentType, { index: 0 });
+ this.updateInstance();
+ }
}
- }
- ngOnChanges(changes: SimpleChanges) {
- if (changes.node) {
- this.updateInstance();
+ ngOnChanges(changes: SimpleChanges) {
+ if (changes.node) {
+ this.updateInstance();
+ }
}
- }
- ngOnDestroy() {
- if (this.componentRef) {
- this.componentRef.destroy();
- this.componentRef = null;
+ ngOnDestroy() {
+ if (this.componentRef) {
+ this.componentRef.destroy();
+ this.componentRef = null;
+ }
}
- }
- private updateInstance() {
- if (this.componentRef?.instance) {
- this.componentRef.instance.context = this.context;
+ private updateInstance() {
+ if (this.componentRef?.instance) {
+ this.componentRef.instance.context = this.context;
+ }
}
- }
}
diff --git a/lib/extensions/src/lib/components/dynamic-component/dynamic.component.spec.ts b/lib/extensions/src/lib/components/dynamic-component/dynamic.component.spec.ts
index 3d99617343..672e600da7 100644
--- a/lib/extensions/src/lib/components/dynamic-component/dynamic.component.spec.ts
+++ b/lib/extensions/src/lib/components/dynamic-component/dynamic.component.spec.ts
@@ -17,13 +17,7 @@
/* eslint-disable @angular-eslint/component-selector */
-import {
- Component,
- Input,
- OnChanges,
- SimpleChange,
- ComponentFactoryResolver
-} from '@angular/core';
+import { Component, Input, OnChanges, SimpleChange } from '@angular/core';
import { ComponentFixture, TestBed } from '@angular/core/testing';
import { By } from '@angular/platform-browser';
import { DynamicExtensionComponent } from './dynamic.component';
@@ -44,11 +38,9 @@ export class TestComponent implements OnChanges {
}
describe('DynamicExtensionComponent', () => {
-
let fixture: ComponentFixture;
let componentRegister: ComponentRegisterService;
let component: DynamicExtensionComponent;
- let componentFactoryResolver: ComponentFactoryResolver;
beforeEach(() => {
componentRegister = new ComponentRegisterService();
@@ -64,11 +56,8 @@ describe('DynamicExtensionComponent', () => {
});
describe('Sub-component creation', () => {
-
beforeEach(() => {
fixture = TestBed.createComponent(DynamicExtensionComponent);
- componentFactoryResolver = TestBed.inject(ComponentFactoryResolver);
- spyOn(componentFactoryResolver, 'resolveComponentFactory').and.callThrough();
component = fixture.componentInstance;
component.id = 'test-component';
component.data = { foo: 'bar' };
@@ -87,22 +76,13 @@ describe('DynamicExtensionComponent', () => {
expect(innerElement).not.toBeNull();
});
- it('should load the TestComponent only ONCE', () => {
- component.ngOnChanges({});
- fixture.detectChanges();
- component.ngOnChanges({});
- fixture.detectChanges();
-
- expect((componentFactoryResolver.resolveComponentFactory as any).calls.count()).toBe(1);
- });
-
it('should pass through the data', () => {
const testComponent = fixture.debugElement.query(By.css('test-component')).componentInstance;
expect(testComponent.data).toBe(component.data);
});
- it('should update the subcomponent\'s input parameters', () => {
+ it('should update the subcomponent input parameters', () => {
const data = { foo: 'baz' };
component.ngOnChanges({ data: new SimpleChange(component.data, data, false) });
@@ -113,7 +93,6 @@ describe('DynamicExtensionComponent', () => {
});
describe('Angular life-cycle methods in sub-component', () => {
-
let testComponent;
beforeEach(() => {
diff --git a/lib/extensions/src/lib/components/dynamic-component/dynamic.component.ts b/lib/extensions/src/lib/components/dynamic-component/dynamic.component.ts
index f32ffa740e..a7f31c28dd 100644
--- a/lib/extensions/src/lib/components/dynamic-component/dynamic.component.ts
+++ b/lib/extensions/src/lib/components/dynamic-component/dynamic.component.ts
@@ -15,17 +15,7 @@
* limitations under the License.
*/
-import {
- Component,
- Input,
- ComponentRef,
- ComponentFactoryResolver,
- ViewChild,
- ViewContainerRef,
- OnDestroy,
- OnChanges,
- SimpleChanges
-} from '@angular/core';
+import { Component, Input, ComponentRef, ViewChild, ViewContainerRef, OnDestroy, OnChanges, SimpleChanges } from '@angular/core';
import { ExtensionService } from '../../services/extension.service';
import { ExtensionComponent } from '../../services/component-register.service';
@@ -47,7 +37,7 @@ export class DynamicExtensionComponent implements OnChanges, OnDestroy {
private componentRef: ComponentRef;
private loaded: boolean = false;
- constructor(private extensions: ExtensionService, private componentFactoryResolver: ComponentFactoryResolver) {}
+ constructor(private extensions: ExtensionService) {}
ngOnChanges(changes: SimpleChanges) {
if (!this.loaded) {
@@ -73,13 +63,8 @@ export class DynamicExtensionComponent implements OnChanges, OnDestroy {
private loadComponent() {
const componentType = this.extensions.getComponentById(this.id);
if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(
- componentType
- );
- if (factory) {
- this.content.clear();
- this.componentRef = this.content.createComponent(factory, 0);
- }
+ this.content.clear();
+ this.componentRef = this.content.createComponent(componentType, { index: 0 });
}
}
@@ -97,7 +82,7 @@ export class DynamicExtensionComponent implements OnChanges, OnDestroy {
}
private componentCreated(): boolean {
- return !!this.componentRef && !!this.componentRef.instance;
+ return !!this.componentRef && !!this.componentRef.instance;
}
private lifecycleHookIsImplemented(lifecycleMethod: string): boolean {
diff --git a/lib/extensions/src/lib/components/dynamic-tab/dynamic-tab.component.ts b/lib/extensions/src/lib/components/dynamic-tab/dynamic-tab.component.ts
index e83ab6dbd2..d29f2f47f6 100644
--- a/lib/extensions/src/lib/components/dynamic-tab/dynamic-tab.component.ts
+++ b/lib/extensions/src/lib/components/dynamic-tab/dynamic-tab.component.ts
@@ -15,18 +15,7 @@
* limitations under the License.
*/
-import {
- Component,
- Input,
- OnInit,
- OnDestroy,
- ViewChild,
- ViewContainerRef,
- ComponentRef,
- ComponentFactoryResolver,
- OnChanges,
- SimpleChanges
-} from '@angular/core';
+import { Component, Input, OnInit, OnDestroy, ViewChild, ViewContainerRef, ComponentRef, OnChanges, SimpleChanges } from '@angular/core';
import { Node } from '@alfresco/js-api';
import { ExtensionService } from '../../services/extension.service';
@@ -47,22 +36,14 @@ export class DynamicTabComponent implements OnInit, OnChanges, OnDestroy {
private componentRef: ComponentRef;
- constructor(
- private extensions: ExtensionService,
- private componentFactoryResolver: ComponentFactoryResolver
- ) {}
+ constructor(private extensions: ExtensionService) {}
ngOnInit() {
const componentType = this.extensions.getComponentById(this.id);
if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(
- componentType
- );
- if (factory) {
- this.content.clear();
- this.componentRef = this.content.createComponent(factory, 0);
- this.updateInstance();
- }
+ this.content.clear();
+ this.componentRef = this.content.createComponent(componentType, { index: 0 });
+ this.updateInstance();
}
}
diff --git a/lib/extensions/src/lib/components/viewer/preview-extension.component.ts b/lib/extensions/src/lib/components/viewer/preview-extension.component.ts
index fcb059c38a..c418c386e8 100644
--- a/lib/extensions/src/lib/components/viewer/preview-extension.component.ts
+++ b/lib/extensions/src/lib/components/viewer/preview-extension.component.ts
@@ -15,24 +15,12 @@
* limitations under the License.
*/
-import {
- Component,
- Input,
- ComponentRef,
- OnInit,
- ComponentFactoryResolver,
- ViewChild,
- ViewContainerRef,
- OnDestroy,
- OnChanges
-} from '@angular/core';
+import { Component, Input, ComponentRef, OnInit, ViewChild, ViewContainerRef, OnDestroy, OnChanges } from '@angular/core';
import { ExtensionService } from '../../services/extension.service';
@Component({
selector: 'adf-preview-extension',
- template: `
-
- `
+ template: ` `
})
export class PreviewExtensionComponent implements OnInit, OnChanges, OnDestroy {
@ViewChild('content', { read: ViewContainerRef, static: true })
@@ -52,10 +40,7 @@ export class PreviewExtensionComponent implements OnInit, OnChanges, OnDestroy {
private componentRef: ComponentRef;
- constructor(
- private extensionService: ExtensionService,
- private componentFactoryResolver: ComponentFactoryResolver
- ) {}
+ constructor(private extensionService: ExtensionService) {}
ngOnInit() {
if (!this.id) {
@@ -64,14 +49,9 @@ export class PreviewExtensionComponent implements OnInit, OnChanges, OnDestroy {
const componentType = this.extensionService.getComponentById(this.id);
if (componentType) {
- const factory = this.componentFactoryResolver.resolveComponentFactory(
- componentType
- );
- if (factory) {
- this.content.clear();
- this.componentRef = this.content.createComponent(factory, 0);
- this.updateInstance();
- }
+ this.content.clear();
+ this.componentRef = this.content.createComponent(componentType, { index: 0 });
+ this.updateInstance();
}
}