UNPKG

ngx-router-outlet-class

Version:

A directive to add CSS class(es) to the activated/attached component's host element (hereinafter, the `route element`) of a router-outlet.

53 lines (52 loc) 2.25 kB
import { OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { RouterOutlet } from '@angular/router'; import * as i0 from "@angular/core"; export declare class NgxRouterOutletClassDirective implements OnChanges, OnDestroy { private routerOutlet; constructor(routerOutlet: RouterOutlet); /** * The class(es) to add to the router-outlet's every component's host element. * Multiple classes can be separated by spaces. * It will be applied to the component's host element every time its value changes * or the component changes. * We recommend using this input for static classes for better performance. * @type {string} * @memberof NgxRouterOutletClassDirective */ componentClass?: string; /** * A function to get the class(es) for a specific router-outlet's component's host element. * The function is called with the component instance as the only argument every time * the component changes. * The function should return a string with the class(es) to add. * Multiple classes can be separated by spaces. * @type {function} * @memberof NgxRouterOutletClassDirective */ dynamicClassGetter: (component: any) => string; private componentClassList; private classArray; private subscription; /** * Split a string of classes into an array of classes. * @param classes A string of classes separated by spaces. * @private */ private splitClasses; /** * Set the component class(es) to the component's host element. * @param classes * @private */ private setComponentClass; /** * Unset the component class(es) from the component's host element. * @param classes * @private */ private unsetComponentClass; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration<NgxRouterOutletClassDirective, [{ self: true; }]>; static ɵdir: i0.ɵɵDirectiveDeclaration<NgxRouterOutletClassDirective, "router-outlet[componentClass], router-outlet[dynamicClassGetter]", never, { "componentClass": "componentClass"; "dynamicClassGetter": "dynamicClassGetter"; }, {}, never, never, false, never>; }