UNPKG

@bespunky/angular-zen

Version:

The Angular tools you always wished were there.

31 lines 4.01 kB
import { Directive, TemplateRef, ViewContainerRef } from '@angular/core'; import { UniversalService } from '../services/universal.service'; import * as i0 from "@angular/core"; import * as i1 from "../services/universal.service"; /** * Provides the base functionality for platform directives to render elements only on certain platforms. * * @export * @abstract * @class PlatformDirective * @implements {OnInit} */ export class PlatformDirective { constructor(template, viewContainer, universal) { this.template = template; this.viewContainer = viewContainer; this.universal = universal; } /** * Checks whether the element should be rendered on the current platform and renders it. */ ngOnInit() { this.shouldRender() ? this.viewContainer.createEmbeddedView(this.template) : this.viewContainer.clear(); } } PlatformDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PlatformDirective, deps: [{ token: i0.TemplateRef }, { token: i0.ViewContainerRef }, { token: i1.UniversalService }], target: i0.ɵɵFactoryTarget.Directive }); PlatformDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.2.12", type: PlatformDirective, ngImport: i0 }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: PlatformDirective, decorators: [{ type: Directive }], ctorParameters: function () { return [{ type: i0.TemplateRef }, { type: i0.ViewContainerRef }, { type: i1.UniversalService }]; } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhdGZvcm0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXplbi91bml2ZXJzYWwvc3JjL2RpcmVjdGl2ZXMvcGxhdGZvcm0uZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFzQixNQUFNLGVBQWUsQ0FBQztBQUU3RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7O0FBRWpFOzs7Ozs7O0dBT0c7QUFFSCxNQUFNLE9BQWdCLGlCQUFpQjtJQUVuQyxZQUFvQixRQUFpQyxFQUFVLGFBQStCLEVBQVksU0FBMkI7UUFBakgsYUFBUSxHQUFSLFFBQVEsQ0FBeUI7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFBWSxjQUFTLEdBQVQsU0FBUyxDQUFrQjtJQUFJLENBQUM7SUFFMUk7O09BRUc7SUFDSCxRQUFRO1FBRUosSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1RyxDQUFDOzsrR0FWaUIsaUJBQWlCO21HQUFqQixpQkFBaUI7NEZBQWpCLGlCQUFpQjtrQkFEdEMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYsIEVsZW1lbnRSZWYsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBVbml2ZXJzYWxTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvdW5pdmVyc2FsLnNlcnZpY2UnO1xuXG4vKipcbiAqIFByb3ZpZGVzIHRoZSBiYXNlIGZ1bmN0aW9uYWxpdHkgZm9yIHBsYXRmb3JtIGRpcmVjdGl2ZXMgdG8gcmVuZGVyIGVsZW1lbnRzIG9ubHkgb24gY2VydGFpbiBwbGF0Zm9ybXMuXG4gKlxuICogQGV4cG9ydFxuICogQGFic3RyYWN0XG4gKiBAY2xhc3MgUGxhdGZvcm1EaXJlY3RpdmVcbiAqIEBpbXBsZW1lbnRzIHtPbkluaXR9XG4gKi9cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFBsYXRmb3JtRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0XG57XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8RWxlbWVudFJlZj4sIHByaXZhdGUgdmlld0NvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZiwgcHJvdGVjdGVkIHVuaXZlcnNhbDogVW5pdmVyc2FsU2VydmljZSkgeyB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3Mgd2hldGhlciB0aGUgZWxlbWVudCBzaG91bGQgYmUgcmVuZGVyZWQgb24gdGhlIGN1cnJlbnQgcGxhdGZvcm0gYW5kIHJlbmRlcnMgaXQuXG4gICAgICovXG4gICAgbmdPbkluaXQoKVxuICAgIHtcbiAgICAgICAgdGhpcy5zaG91bGRSZW5kZXIoKSA/IHRoaXMudmlld0NvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZSkgOiB0aGlzLnZpZXdDb250YWluZXIuY2xlYXIoKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3Mgd2hldGhlciB0aGUgZWxlbWVudCBzaG91bGQgYmUgcmVuZGVyZWQgb24gdGhlIGN1cnJlbnQgcGxhdGZvcm0uXG4gICAgICpcbiAgICAgKiBAcHJvdGVjdGVkXG4gICAgICogQGFic3RyYWN0XG4gICAgICogQHJldHVybnMge2Jvb2xlYW59XG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHNob3VsZFJlbmRlcigpOiBib29sZWFuO1xufSJdfQ==