UNPKG

ngx-contentful-rich-text

Version:

Angular renderer for the Contentful rich text field type

28 lines 3.52 kB
import { Directive, Input, ViewContainerRef, } from '@angular/core'; import { ComponentRendererService } from '../services/component-renderer.service'; import { RendererProviderService } from '../services/renderer-provider.service'; export class NodeRendererHostDirective { constructor(viewContainerRef, componentRenderer, rendererProvider) { this.viewContainerRef = viewContainerRef; this.componentRenderer = componentRenderer; this.rendererProvider = rendererProvider; } ngOnInit() { const component = this.rendererProvider.getNodeRenderer(this.node); this.componentRenderer.render(this.viewContainerRef, component, this.node); } } NodeRendererHostDirective.decorators = [ { type: Directive, args: [{ selector: '[ngxNodeRendererHost]', },] } ]; NodeRendererHostDirective.ctorParameters = () => [ { type: ViewContainerRef }, { type: ComponentRendererService }, { type: RendererProviderService } ]; NodeRendererHostDirective.propDecorators = { node: [{ type: Input }] }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9kZS1yZW5kZXJlci1ob3N0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1jb250ZW50ZnVsLXJpY2gtdGV4dC9zcmMvbGliL2RpcmVjdGl2ZXMvbm9kZS1yZW5kZXJlci1ob3N0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFJdkIsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDbEYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFLaEYsTUFBTSxPQUFPLHlCQUF5QjtJQUdwQyxZQUNVLGdCQUFrQyxFQUNsQyxpQkFBMkMsRUFDM0MsZ0JBQXlDO1FBRnpDLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBa0I7UUFDbEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUEwQjtRQUMzQyxxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXlCO0lBQ2hELENBQUM7SUFFSixRQUFRO1FBQ04sTUFBTSxTQUFTLEdBQXVCLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQ3pFLElBQUksQ0FBQyxJQUFJLENBQ1YsQ0FBQztRQUNGLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0UsQ0FBQzs7O1lBakJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7WUFWQyxnQkFBZ0I7WUFLVCx3QkFBd0I7WUFDeEIsdUJBQXVCOzs7bUJBTTdCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaXJlY3RpdmUsXG4gIElucHV0LFxuICBPbkluaXQsXG4gIFR5cGUsXG4gIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmxvY2ssIElubGluZSB9IGZyb20gJ0Bjb250ZW50ZnVsL3JpY2gtdGV4dC10eXBlcyc7XG5cbmltcG9ydCB7IE5vZGVSZW5kZXJlciB9IGZyb20gJy4uL2NsYXNzZXMvbm9kZS1yZW5kZXJlci5jbGFzcyc7XG5pbXBvcnQgeyBDb21wb25lbnRSZW5kZXJlclNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9jb21wb25lbnQtcmVuZGVyZXIuc2VydmljZSc7XG5pbXBvcnQgeyBSZW5kZXJlclByb3ZpZGVyU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3JlbmRlcmVyLXByb3ZpZGVyLnNlcnZpY2UnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbbmd4Tm9kZVJlbmRlcmVySG9zdF0nLFxufSlcbmV4cG9ydCBjbGFzcyBOb2RlUmVuZGVyZXJIb3N0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgbm9kZTogQmxvY2sgfCBJbmxpbmU7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgIHByaXZhdGUgY29tcG9uZW50UmVuZGVyZXI6IENvbXBvbmVudFJlbmRlcmVyU2VydmljZSxcbiAgICBwcml2YXRlIHJlbmRlcmVyUHJvdmlkZXI6IFJlbmRlcmVyUHJvdmlkZXJTZXJ2aWNlXG4gICkge31cblxuICBuZ09uSW5pdCgpIHtcbiAgICBjb25zdCBjb21wb25lbnQ6IFR5cGU8Tm9kZVJlbmRlcmVyPiA9IHRoaXMucmVuZGVyZXJQcm92aWRlci5nZXROb2RlUmVuZGVyZXIoXG4gICAgICB0aGlzLm5vZGVcbiAgICApO1xuICAgIHRoaXMuY29tcG9uZW50UmVuZGVyZXIucmVuZGVyKHRoaXMudmlld0NvbnRhaW5lclJlZiwgY29tcG9uZW50LCB0aGlzLm5vZGUpO1xuICB9XG59XG4iXX0=