UNPKG

tolga-ng2

Version:

Angular 2/4 components and directives

34 lines 7.43 kB
import { Component, Input } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "@angular/router"; import * as i2 from "@angular/common"; export class NgsmSubMenuDisplayDirectiveComponent { constructor(route, router) { this.route = route; this.router = router; } navigateToRoute(tab) { if (!tab.route) return; this.router.navigate([tab.route]); } getChildlessTabs() { return this.tab.subTabs.filter(p => p.subTabs === null || p.subTabs === undefined); } getTabsWithChildren() { return this.tab.subTabs.filter(p => p.subTabs !== null && p.subTabs !== undefined); } ngOnInit() { } ngOnChanges() { } } NgsmSubMenuDisplayDirectiveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgsmSubMenuDisplayDirectiveComponent, deps: [{ token: i1.ActivatedRoute }, { token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); NgsmSubMenuDisplayDirectiveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.3.0", type: NgsmSubMenuDisplayDirectiveComponent, selector: "ngsm-sub-menu-display-directive", inputs: { tab: "tab" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"ui simple dropdown\">\r\n <span class=\"text\">{{tab.title}}</span>\r\n <i class=\"dropdown icon\"></i>\r\n <div class=\"menu\">\r\n <a *ngFor=\"let subTab of getChildlessTabs()\"\r\n (click)=\"navigateToRoute(subTab)\"\r\n class=\"item\">\r\n {{subTab.title}}\r\n </a>\r\n <div class=\"item\"\r\n *ngFor=\"let subTab of getTabsWithChildren()\">\r\n <i class=\"dropdown icon\"></i>\r\n <span class=\"text\">{{subTab.title}}</span>\r\n <div class=\"menu\">\r\n <a *ngFor=\"let subSubTab of subTab.subTabs\"\r\n (click)=\"navigateToRoute(subSubTab)\"\r\n class=\"item\">\r\n {{subSubTab.title}}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [""], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.3.0", ngImport: i0, type: NgsmSubMenuDisplayDirectiveComponent, decorators: [{ type: Component, args: [{ selector: 'ngsm-sub-menu-display-directive', template: "<div class=\"ui simple dropdown\">\r\n <span class=\"text\">{{tab.title}}</span>\r\n <i class=\"dropdown icon\"></i>\r\n <div class=\"menu\">\r\n <a *ngFor=\"let subTab of getChildlessTabs()\"\r\n (click)=\"navigateToRoute(subTab)\"\r\n class=\"item\">\r\n {{subTab.title}}\r\n </a>\r\n <div class=\"item\"\r\n *ngFor=\"let subTab of getTabsWithChildren()\">\r\n <i class=\"dropdown icon\"></i>\r\n <span class=\"text\">{{subTab.title}}</span>\r\n <div class=\"menu\">\r\n <a *ngFor=\"let subSubTab of subTab.subTabs\"\r\n (click)=\"navigateToRoute(subSubTab)\"\r\n class=\"item\">\r\n {{subSubTab.title}}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n</div>" }] }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i1.Router }]; }, propDecorators: { tab: [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmdzbS1zdWItbWVudS1kaXNwbGF5LWRpcmVjdGl2ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL25nc20vZGlyZWN0aXZlcy9uZ3NtLXN1Yi1tZW51LWRpc3BsYXktZGlyZWN0aXZlL25nc20tc3ViLW1lbnUtZGlzcGxheS1kaXJlY3RpdmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2FwcC9uZ3NtL2RpcmVjdGl2ZXMvbmdzbS1zdWItbWVudS1kaXNwbGF5LWRpcmVjdGl2ZS9uZ3NtLXN1Yi1tZW51LWRpc3BsYXktZGlyZWN0aXZlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFhLE1BQU0sZUFBZSxDQUFDOzs7O0FBUTVELE1BQU0sT0FBTyxvQ0FBb0M7SUFJL0MsWUFBb0IsS0FBcUIsRUFDL0IsTUFBYztRQURKLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQy9CLFdBQU0sR0FBTixNQUFNLENBQVE7SUFBSSxDQUFDO0lBRTdCLGVBQWUsQ0FBQyxHQUFnQjtRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELGdCQUFnQjtRQUNkLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLE9BQU8sS0FBSyxTQUFTLENBQUMsQ0FBQztJQUNyRixDQUFDO0lBRUQsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXO0lBQ1gsQ0FBQzs7aUlBeEJVLG9DQUFvQztxSEFBcEMsb0NBQW9DLG9IQ1JqRCxvdkJBc0JNOzJGRGRPLG9DQUFvQztrQkFMaEQsU0FBUzsrQkFDRSxpQ0FBaUM7MEhBTWxDLEdBQUc7c0JBQVgsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTmdzbU1lbnVUYWIgfSBmcm9tICcuLi8uLi9tb2RlbHMvbmdzbU1lbnVUYWInO1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ25nc20tc3ViLW1lbnUtZGlzcGxheS1kaXJlY3RpdmUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3NtLXN1Yi1tZW51LWRpc3BsYXktZGlyZWN0aXZlLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9uZ3NtLXN1Yi1tZW51LWRpc3BsYXktZGlyZWN0aXZlLmNvbXBvbmVudC5jc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgTmdzbVN1Yk1lbnVEaXNwbGF5RGlyZWN0aXZlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcclxuXHJcbiAgQElucHV0KCkgdGFiOiBOZ3NtTWVudVRhYjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXHJcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyKSB7IH1cclxuXHJcbiAgbmF2aWdhdGVUb1JvdXRlKHRhYjogTmdzbU1lbnVUYWIpIHtcclxuICAgIGlmICghdGFiLnJvdXRlKSByZXR1cm47XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbdGFiLnJvdXRlXSk7XHJcbiAgfVxyXG5cclxuICBnZXRDaGlsZGxlc3NUYWJzKCkge1xyXG4gICAgcmV0dXJuIHRoaXMudGFiLnN1YlRhYnMuZmlsdGVyKHAgPT4gcC5zdWJUYWJzID09PSBudWxsIHx8IHAuc3ViVGFicyA9PT0gdW5kZWZpbmVkKTtcclxuICB9XHJcblxyXG4gIGdldFRhYnNXaXRoQ2hpbGRyZW4oKSB7XHJcbiAgICByZXR1cm4gdGhpcy50YWIuc3ViVGFicy5maWx0ZXIocCA9PiBwLnN1YlRhYnMgIT09IG51bGwgJiYgcC5zdWJUYWJzICE9PSB1bmRlZmluZWQpO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuICB9XHJcblxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJ1aSBzaW1wbGUgZHJvcGRvd25cIj5cclxuICA8c3BhbiBjbGFzcz1cInRleHRcIj57e3RhYi50aXRsZX19PC9zcGFuPlxyXG4gIDxpIGNsYXNzPVwiZHJvcGRvd24gaWNvblwiPjwvaT5cclxuICA8ZGl2IGNsYXNzPVwibWVudVwiPlxyXG4gICAgPGEgKm5nRm9yPVwibGV0IHN1YlRhYiBvZiBnZXRDaGlsZGxlc3NUYWJzKClcIlxyXG4gICAgICAoY2xpY2spPVwibmF2aWdhdGVUb1JvdXRlKHN1YlRhYilcIlxyXG4gICAgICBjbGFzcz1cIml0ZW1cIj5cclxuICAgICAge3tzdWJUYWIudGl0bGV9fVxyXG4gICAgPC9hPlxyXG4gICAgPGRpdiBjbGFzcz1cIml0ZW1cIlxyXG4gICAgICAqbmdGb3I9XCJsZXQgc3ViVGFiIG9mIGdldFRhYnNXaXRoQ2hpbGRyZW4oKVwiPlxyXG4gICAgICA8aSBjbGFzcz1cImRyb3Bkb3duIGljb25cIj48L2k+XHJcbiAgICAgIDxzcGFuIGNsYXNzPVwidGV4dFwiPnt7c3ViVGFiLnRpdGxlfX08L3NwYW4+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJtZW51XCI+XHJcbiAgICAgICAgPGEgKm5nRm9yPVwibGV0IHN1YlN1YlRhYiBvZiBzdWJUYWIuc3ViVGFic1wiXHJcbiAgICAgICAgICAoY2xpY2spPVwibmF2aWdhdGVUb1JvdXRlKHN1YlN1YlRhYilcIlxyXG4gICAgICAgICAgY2xhc3M9XCJpdGVtXCI+XHJcbiAgICAgICAgICB7e3N1YlN1YlRhYi50aXRsZX19XHJcbiAgICAgICAgPC9hPlxyXG4gICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=