@ux-aspects/ux-aspects
Version:
Open source user interface framework for building modern, responsive, mobile big data applications
46 lines (45 loc) • 2.13 kB
TypeScript
import { OnChanges, OnDestroy, OnInit } from '@angular/core';
import { NavigationItem } from '../navigation-item.interface';
import * as i0 from "@angular/core";
export declare class NavigationLinkDirective implements OnInit, OnChanges, OnDestroy {
private readonly _router;
private readonly _locationStrategy;
private readonly _navigationService;
private readonly _changeDetector;
private readonly _route;
private readonly _options;
/** The NavigationItem this element represents */
navigationItem: NavigationItem;
/** The expaned state of this item */
set expanded(value: boolean);
/** Determine if this item can be expanded */
canExpand: boolean;
/** Determine if this item should be indented */
indent: boolean;
/** Determine the href of this element */
href: string;
/** Determine the role of this element */
role: string;
/** Update the aria-expanded attribute of this element */
ariaExpanded: boolean;
/** Store the active state of the item */
isActive: boolean;
/** Store the indendation state of the children */
indentChildren: boolean;
/** Emit with the current expaned state */
private readonly _expanded$;
/** Unsubscribe from all observables when this directive is destroyed */
private readonly _onDestroy;
ngOnInit(): void;
ngOnChanges(): void;
ngOnDestroy(): void;
activated(event: Event): boolean;
private updateNavigationState;
private updateAttributes;
private getHref;
private isActiveItem;
/** Get the router options with defaults for missing properties */
private getRouterOptions;
static ɵfac: i0.ɵɵFactoryDeclaration<NavigationLinkDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<NavigationLinkDirective, "[uxNavigationLink]", ["uxNavigationLink"], { "navigationItem": { "alias": "navigationItem"; "required": false; }; "expanded": { "alias": "expanded"; "required": false; }; "canExpand": { "alias": "canExpand"; "required": false; }; "indent": { "alias": "indent"; "required": false; }; }, {}, never, never, false, never>;
}