@vismaux/ngx-nordic-cool
Version:
Common Nordic-Cool components for Angular.
33 lines • 8.49 kB
JavaScript
import { Component, ChangeDetectionStrategy, Host, } from '@angular/core';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
import * as i0 from "@angular/core";
import * as i1 from "../navbar.component";
import * as i2 from "../../dropdown/dropdown.directive";
import * as i3 from "../../dropdown/dropdown-toggle.directive";
import * as i4 from "../../dropdown/dropdown-menu.directive";
import * as i5 from "@angular/common";
export class NcNavbarBrandComponent {
constructor(navbar, cdRef) {
this.navbar = navbar;
this.cdRef = cdRef;
this.destroyed$ = new Subject();
}
ngAfterContentInit() {
this.navbar.brandOptions.changes
.pipe(takeUntil(this.destroyed$))
.subscribe(() => this.cdRef.markForCheck());
}
ngOnDestroy() {
this.destroyed$.next();
}
}
NcNavbarBrandComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NcNavbarBrandComponent, deps: [{ token: i1.NcNavbarComponent, host: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
NcNavbarBrandComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.1.3", type: NcNavbarBrandComponent, selector: "nc-navbar-brand", ngImport: i0, template: "<div class=\"navbar-header\">\n <div\n ncDropdown\n #dropdown=\"ncDropdown\"\n class=\"navbar-brand dropdown\"\n [class.open]=\"dropdown.isOpen$ | async\"\n >\n <a\n ncDropdownToggle\n id=\"nc-navbar-brand-menu\"\n (click)=\"navbar.brandOptions.length > 0 && dropdown.toggle()\"\n [class.dropdown-toggle]=\"navbar.brandOptions.length > 0\"\n [attr.aria-expanded]=\"dropdown.isOpen$ | async\"\n [attr.aria-haspopup]=\"navbar.brandOptions.length > 0\"\n role=\"button\"\n href=\"javascript: void(0)\"\n >\n <ng-content></ng-content>\n <span class=\"caret\"></span>\n </a>\n <ul\n ncDropdownMenu\n role=\"menu\"\n class=\"dropdown-menu\"\n aria-labelledby=\"nc-navbar-brand-menu\"\n >\n <li *ngFor=\"let brandOption of navbar.brandOptions\" role=\"none\">\n <ng-template\n [ngTemplateOutlet]=\"brandOption.content\"\n [ngTemplateOutletContext]=\"{ dropdown: dropdown }\"\n ></ng-template>\n </li>\n </ul>\n </div>\n</div>\n", directives: [{ type: i2.NcDropdownDirective, selector: "[ncDropdown]", inputs: ["isOpen"], exportAs: ["ncDropdown"] }, { type: i3.NcDropdownToggleDirective, selector: "[ncDropdownToggle]" }, { type: i4.NcDropdownMenuDirective, selector: "[ncDropdownMenu]" }, { type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "async": i5.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.1.3", ngImport: i0, type: NcNavbarBrandComponent, decorators: [{
type: Component,
args: [{ selector: 'nc-navbar-brand', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"navbar-header\">\n <div\n ncDropdown\n #dropdown=\"ncDropdown\"\n class=\"navbar-brand dropdown\"\n [class.open]=\"dropdown.isOpen$ | async\"\n >\n <a\n ncDropdownToggle\n id=\"nc-navbar-brand-menu\"\n (click)=\"navbar.brandOptions.length > 0 && dropdown.toggle()\"\n [class.dropdown-toggle]=\"navbar.brandOptions.length > 0\"\n [attr.aria-expanded]=\"dropdown.isOpen$ | async\"\n [attr.aria-haspopup]=\"navbar.brandOptions.length > 0\"\n role=\"button\"\n href=\"javascript: void(0)\"\n >\n <ng-content></ng-content>\n <span class=\"caret\"></span>\n </a>\n <ul\n ncDropdownMenu\n role=\"menu\"\n class=\"dropdown-menu\"\n aria-labelledby=\"nc-navbar-brand-menu\"\n >\n <li *ngFor=\"let brandOption of navbar.brandOptions\" role=\"none\">\n <ng-template\n [ngTemplateOutlet]=\"brandOption.content\"\n [ngTemplateOutletContext]=\"{ dropdown: dropdown }\"\n ></ng-template>\n </li>\n </ul>\n </div>\n</div>\n" }]
}], ctorParameters: function () { return [{ type: i1.NcNavbarComponent, decorators: [{
type: Host
}] }, { type: i0.ChangeDetectorRef }]; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLWJyYW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub3JkaWMtY29vbC9zcmMvbGliL25hdmJhci9uYXZiYXItYnJhbmQvbmF2YmFyLWJyYW5kLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1ub3JkaWMtY29vbC9zcmMvbGliL25hdmJhci9uYXZiYXItYnJhbmQvbmF2YmFyLWJyYW5kLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsdUJBQXVCLEVBQ3ZCLElBQUksR0FJTCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7OztBQVEzQyxNQUFNLE9BQU8sc0JBQXNCO0lBR2pDLFlBQ2lCLE1BQXlCLEVBQ2hDLEtBQXdCO1FBRGpCLFdBQU0sR0FBTixNQUFNLENBQW1CO1FBQ2hDLFVBQUssR0FBTCxLQUFLLENBQW1CO1FBSjFCLGVBQVUsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0lBS2hDLENBQUM7SUFFSixrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsT0FBTzthQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNoQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN6QixDQUFDOzttSEFoQlUsc0JBQXNCO3VHQUF0QixzQkFBc0IsdURDakJuQywyaUNBbUNBOzJGRGxCYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUVWLHVCQUF1QixDQUFDLE1BQU07OzBCQU01QyxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgSG9zdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIEFmdGVyQ29udGVudEluaXQsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBOY05hdmJhckNvbXBvbmVudCB9IGZyb20gJy4uL25hdmJhci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduYy1uYXZiYXItYnJhbmQnLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLWJyYW5kLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5jTmF2YmFyQnJhbmRDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuICBwcml2YXRlIGRlc3Ryb3llZCQgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBIb3N0KCkgcHVibGljIG5hdmJhcjogTmNOYXZiYXJDb21wb25lbnQsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7fVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLm5hdmJhci5icmFuZE9wdGlvbnMuY2hhbmdlc1xuICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkJCkpXG4gICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCkpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXN0cm95ZWQkLm5leHQoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm5hdmJhci1oZWFkZXJcIj5cbiAgPGRpdlxuICAgIG5jRHJvcGRvd25cbiAgICAjZHJvcGRvd249XCJuY0Ryb3Bkb3duXCJcbiAgICBjbGFzcz1cIm5hdmJhci1icmFuZCBkcm9wZG93blwiXG4gICAgW2NsYXNzLm9wZW5dPVwiZHJvcGRvd24uaXNPcGVuJCB8IGFzeW5jXCJcbiAgPlxuICAgIDxhXG4gICAgICBuY0Ryb3Bkb3duVG9nZ2xlXG4gICAgICBpZD1cIm5jLW5hdmJhci1icmFuZC1tZW51XCJcbiAgICAgIChjbGljayk9XCJuYXZiYXIuYnJhbmRPcHRpb25zLmxlbmd0aCA+IDAgJiYgZHJvcGRvd24udG9nZ2xlKClcIlxuICAgICAgW2NsYXNzLmRyb3Bkb3duLXRvZ2dsZV09XCJuYXZiYXIuYnJhbmRPcHRpb25zLmxlbmd0aCA+IDBcIlxuICAgICAgW2F0dHIuYXJpYS1leHBhbmRlZF09XCJkcm9wZG93bi5pc09wZW4kIHwgYXN5bmNcIlxuICAgICAgW2F0dHIuYXJpYS1oYXNwb3B1cF09XCJuYXZiYXIuYnJhbmRPcHRpb25zLmxlbmd0aCA+IDBcIlxuICAgICAgcm9sZT1cImJ1dHRvblwiXG4gICAgICBocmVmPVwiamF2YXNjcmlwdDogdm9pZCgwKVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgPHNwYW4gY2xhc3M9XCJjYXJldFwiPjwvc3Bhbj5cbiAgICA8L2E+XG4gICAgPHVsXG4gICAgICBuY0Ryb3Bkb3duTWVudVxuICAgICAgcm9sZT1cIm1lbnVcIlxuICAgICAgY2xhc3M9XCJkcm9wZG93bi1tZW51XCJcbiAgICAgIGFyaWEtbGFiZWxsZWRieT1cIm5jLW5hdmJhci1icmFuZC1tZW51XCJcbiAgICA+XG4gICAgICA8bGkgKm5nRm9yPVwibGV0IGJyYW5kT3B0aW9uIG9mIG5hdmJhci5icmFuZE9wdGlvbnNcIiByb2xlPVwibm9uZVwiPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJicmFuZE9wdGlvbi5jb250ZW50XCJcbiAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyBkcm9wZG93bjogZHJvcGRvd24gfVwiXG4gICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgPC9saT5cbiAgICA8L3VsPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19