UNPKG

@ngez/core

Version:

A collection of minimalistic, easy-to-use and fully customizable Angular components, directives and services

183 lines 15.2 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, Input, ContentChildren, QueryList, ViewEncapsulation } from "@angular/core"; import { faAngleUp, faAngleDown } from '@fortawesome/free-solid-svg-icons'; import { RouterLink, RouterLinkWithHref, Router, NavigationEnd } from "@angular/router"; import { filter } from "rxjs/operators"; var NgEzNavListComponent = /** @class */ (function () { function NgEzNavListComponent(router) { this.router = router; this.routerLinkActiveOptions = { exact: false }; this.faAngleUp = faAngleUp; this.faAngleDown = faAngleDown; this.open = false; this.active = false; } /** * @return {?} */ NgEzNavListComponent.prototype.ngOnChanges = /** * @return {?} */ function () { this.update(); }; /** * @return {?} */ NgEzNavListComponent.prototype.ngOnInit = /** * @return {?} */ function () { var _this = this; this.navigationSubscription = this.router.events .pipe(filter(function (e) { return e instanceof NavigationEnd; })) .subscribe(function (e) { return _this.update(); }); }; /** * @return {?} */ NgEzNavListComponent.prototype.ngAfterContentInit = /** * @return {?} */ function () { var _this = this; this.linksQueryListChangesSubscription = this.links.changes.subscribe(function (c) { return _this.update(); }); this.linksWithHrefsQueryListChangesSubscription = this.linksWithHrefs.changes.subscribe(function (c) { return _this.update(); }); this.update(); }; /** * @return {?} */ NgEzNavListComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { if (this.navigationSubscription) this.navigationSubscription.unsubscribe(); if (this.linksQueryListChangesSubscription) this.linksQueryListChangesSubscription.unsubscribe(); if (this.linksWithHrefsQueryListChangesSubscription) this.linksWithHrefsQueryListChangesSubscription.unsubscribe(); }; /** * @return {?} */ NgEzNavListComponent.prototype.onToggle = /** * @return {?} */ function () { this.open = !this.open; }; /** * @private * @return {?} */ NgEzNavListComponent.prototype.update = /** * @private * @return {?} */ function () { if (!this.links || !this.linksWithHrefs || !this.router.navigated) return; this.active = this.hasActiveLinks(); if (!this.open) this.open = this.active; }; /** * @private * @param {?} router * @return {?} */ NgEzNavListComponent.prototype.isLinkActive = /** * @private * @param {?} router * @return {?} */ function (router) { var _this = this; return function (link) { return router.isActive(link.urlTree, _this.exact); }; }; /** * @private * @return {?} */ NgEzNavListComponent.prototype.hasActiveLinks = /** * @private * @return {?} */ function () { return this.links.some(this.isLinkActive(this.router)) || this.linksWithHrefs.some(this.isLinkActive(this.router)); }; Object.defineProperty(NgEzNavListComponent.prototype, "exact", { get: /** * @private * @return {?} */ function () { return this.routerLinkActiveOptions ? this.routerLinkActiveOptions.exact : false; }, enumerable: true, configurable: true }); NgEzNavListComponent.decorators = [ { type: Component, args: [{ selector: 'ngez-nav-list', template: "<div class=\"ngez-nav-list\">\r\n <button (click)=\"onToggle()\" class=\"ngez-nav-list-header\" [class.active]=\"active\">\r\n <span>{{title}}</span>\r\n <fa-icon [icon]=\"open ? faAngleUp : faAngleDown\"></fa-icon>\r\n </button>\r\n <div *ngIf=\"open\" class=\"ngez-nav-list-content\">\r\n <ng-content></ng-content>\r\n </div>\r\n</div>", encapsulation: ViewEncapsulation.None, styles: [".ngez-nav-list{display:flex;flex-direction:column}.ngez-nav-list-header{display:flex;flex-direction:row;justify-content:space-between;border:none;background-color:transparent;margin-right:0;padding-left:6px;padding-top:8px;padding-bottom:10px;cursor:pointer;outline:0}.ngez-nav-list-header.active{color:#d70026}.ngez-nav-list-header:hover{color:#d70026;background-color:#f2f2f2}.ngez-nav-list-content{padding-left:18px}.ngez-nav-list-content a{display:flex;flex-direction:row;justify-content:space-between;border:none;background-color:transparent;padding:6px;text-decoration:none;cursor:pointer}.ngez-nav-list-content a.active{color:#d70026}.ngez-nav-list-content a:hover{background-color:#f2f2f2;color:#d70026}"] }] } ]; /** @nocollapse */ NgEzNavListComponent.ctorParameters = function () { return [ { type: Router } ]; }; NgEzNavListComponent.propDecorators = { title: [{ type: Input }], routerLinkActiveOptions: [{ type: Input }], lists: [{ type: ContentChildren, args: [NgEzNavListComponent,] }], links: [{ type: ContentChildren, args: [RouterLink,] }], linksWithHrefs: [{ type: ContentChildren, args: [RouterLinkWithHref,] }] }; return NgEzNavListComponent; }()); export { NgEzNavListComponent }; if (false) { /** @type {?} */ NgEzNavListComponent.prototype.title; /** @type {?} */ NgEzNavListComponent.prototype.routerLinkActiveOptions; /** @type {?} */ NgEzNavListComponent.prototype.lists; /** @type {?} */ NgEzNavListComponent.prototype.links; /** @type {?} */ NgEzNavListComponent.prototype.linksWithHrefs; /** @type {?} */ NgEzNavListComponent.prototype.faAngleUp; /** @type {?} */ NgEzNavListComponent.prototype.faAngleDown; /** @type {?} */ NgEzNavListComponent.prototype.open; /** @type {?} */ NgEzNavListComponent.prototype.active; /** @type {?} */ NgEzNavListComponent.prototype.navigationSubscription; /** @type {?} */ NgEzNavListComponent.prototype.linksQueryListChangesSubscription; /** @type {?} */ NgEzNavListComponent.prototype.linksWithHrefsQueryListChangesSubscription; /** * @type {?} * @private */ NgEzNavListComponent.prototype.router; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG5nZXovY29yZS8iLCJzb3VyY2VzIjpbIm5lc3RlZC1uYXYvbmF2LWxpc3QuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUUsU0FBUyxFQUFrRCxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBa0IsTUFBTSxtQ0FBbUMsQ0FBQztBQUMzRixPQUFPLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUV4RixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEM7SUFnQ0ksOEJBQW9CLE1BQWM7UUFBZCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBdEJ6Qiw0QkFBdUIsR0FBdUIsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFReEUsY0FBUyxHQUFtQixTQUFTLENBQUM7UUFFdEMsZ0JBQVcsR0FBbUIsV0FBVyxDQUFDO1FBRTFDLFNBQUksR0FBWSxLQUFLLENBQUM7UUFFdEIsV0FBTSxHQUFZLEtBQUssQ0FBQztJQVFjLENBQUM7Ozs7SUFFdkMsMENBQVc7OztJQUFYO1FBQ0ksSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQ2xCLENBQUM7Ozs7SUFFRCx1Q0FBUTs7O0lBQVI7UUFBQSxpQkFJQztRQUhHLElBQUksQ0FBQyxzQkFBc0IsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07YUFDM0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUMsSUFBSSxPQUFBLENBQUMsWUFBWSxhQUFhLEVBQTFCLENBQTBCLENBQUMsQ0FBQzthQUM3QyxTQUFTLENBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxLQUFJLENBQUMsTUFB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QUFzQzs7SUFFdEMsMkNBQTBDOztJQUUxQyxvQ0FBc0I7O0lBRXRCLHNDQUF3Qjs7SUFFeEIsc0RBQXFDOztJQUVyQyxpRUFBZ0Q7O0lBRWhELDBFQUF5RDs7Ozs7SUFFN0Msc0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgQ29udGVudENoaWxkcmVuLCBRdWVyeUxpc3QsIEFmdGVyQ29udGVudEluaXQsIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgZmFBbmdsZVVwLCBmYUFuZ2xlRG93biwgSWNvbkRlZmluaXRpb24gfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnO1xyXG5pbXBvcnQgeyBSb3V0ZXJMaW5rLCBSb3V0ZXJMaW5rV2l0aEhyZWYsIFJvdXRlciwgTmF2aWdhdGlvbkVuZCB9IGZyb20gXCJAYW5ndWxhci9yb3V0ZXJcIjtcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgZmlsdGVyIH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAnbmdlei1uYXYtbGlzdCcsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbmF2LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vbmF2LWxpc3QuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmVcclxufSlcclxuZXhwb3J0IGNsYXNzIE5nRXpOYXZMaXN0Q29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQsIEFmdGVyQ29udGVudEluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gICAgQElucHV0KCkgdGl0bGU6IHN0cmluZztcclxuXHJcbiAgICBASW5wdXQoKSByb3V0ZXJMaW5rQWN0aXZlT3B0aW9uczogeyBleGFjdDogYm9vbGVhbiB9ID0geyBleGFjdDogZmFsc2UgfTtcclxuXHJcbiAgICBAQ29udGVudENoaWxkcmVuKE5nRXpOYXZMaXN0Q29tcG9uZW50KSBsaXN0czogUXVlcnlMaXN0PE5nRXpOYXZMaXN0Q29tcG9uZW50PjtcclxuXHJcbiAgICBAQ29udGVudENoaWxkcmVuKFJvdXRlckxpbmspIGxpbmtzOiBRdWVyeUxpc3Q8Um91dGVyTGluaz47XHJcblxyXG4gICAgQENvbnRlbnRDaGlsZHJlbihSb3V0ZXJMaW5rV2l0aEhyZWYpIGxpbmtzV2l0aEhyZWZzOiBRdWVyeUxpc3Q8Um91dGVyTGlua1dpdGhIcmVmPjtcclxuXHJcbiAgICBmYUFuZ2xlVXA6IEljb25EZWZpbml0aW9uID0gZmFBbmdsZVVwO1xyXG5cclxuICAgIGZhQW5nbGVEb3duOiBJY29uRGVmaW5pdGlvbiA9IGZhQW5nbGVEb3duO1xyXG5cclxuICAgIG9wZW46IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBhY3RpdmU6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBuYXZpZ2F0aW9uU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbGlua3NRdWVyeUxpc3RDaGFuZ2VzU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgbGlua3NXaXRoSHJlZnNRdWVyeUxpc3RDaGFuZ2VzU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikgeyB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoKSB7XHJcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICB0aGlzLm5hdmlnYXRpb25TdWJzY3JpcHRpb24gPSB0aGlzLnJvdXRlci5ldmVudHNcclxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpKVxyXG4gICAgICAgICAgICAuc3Vic2NyaWJlKGUgPT4gdGhpcy51cGRhdGUoKSlcclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XHJcbiAgICAgICAgdGhpcy5saW5rc1F1ZXJ5TGlzdENoYW5nZXNTdWJzY3JpcHRpb24gPSBcclxuICAgICAgICAgICAgdGhpcy5saW5rcy5jaGFuZ2VzLnN1YnNjcmliZSgoYykgPT4gdGhpcy51cGRhdGUoKSk7XHJcbiAgICAgICAgdGhpcy5saW5rc1dpdGhIcmVmc1F1ZXJ5TGlzdENoYW5nZXNTdWJzY3JpcHRpb24gPSBcclxuICAgICAgICAgICAgdGhpcy5saW5rc1dpdGhIcmVmcy5jaGFuZ2VzLnN1YnNjcmliZSgoYykgPT4gdGhpcy51cGRhdGUoKSk7XHJcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpIHtcclxuICAgICAgICBpZih0aGlzLm5hdmlnYXRpb25TdWJzY3JpcHRpb24pXHJcbiAgICAgICAgICAgIHRoaXMubmF2aWdhdGlvblN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIGlmKHRoaXMubGlua3NRdWVyeUxpc3RDaGFuZ2VzU3Vic2NyaXB0aW9uKVxyXG4gICAgICAgICAgICB0aGlzLmxpbmtzUXVlcnlMaXN0Q2hhbmdlc1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIGlmKHRoaXMubGlua3NXaXRoSHJlZnNRdWVyeUxpc3RDaGFuZ2VzU3Vic2NyaXB0aW9uKVxyXG4gICAgICAgICAgICB0aGlzLmxpbmtzV2l0aEhyZWZzUXVlcnlMaXN0Q2hhbmdlc1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIG9uVG9nZ2xlKCkge1xyXG4gICAgICAgIHRoaXMub3BlbiA9ICF0aGlzLm9wZW47XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSB1cGRhdGUoKXtcclxuICAgICAgICBpZighdGhpcy5saW5rcyB8fCAhdGhpcy5saW5rc1dpdGhIcmVmcyB8fCAhdGhpcy5yb3V0ZXIubmF2aWdhdGVkKVxyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgdGhpcy5hY3RpdmUgPSB0aGlzLmhhc0FjdGl2ZUxpbmtzKCk7XHJcblxyXG4gICAgICAgIGlmKCF0aGlzLm9wZW4pXHJcbiAgICAgICAgICAgIHRoaXMub3BlbiA9IHRoaXMuYWN0aXZlO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNMaW5rQWN0aXZlKHJvdXRlcjogUm91dGVyKTogKGxpbms6IChSb3V0ZXJMaW5rIHwgUm91dGVyTGlua1dpdGhIcmVmKSkgPT4gYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIChsaW5rOiBSb3V0ZXJMaW5rIHwgUm91dGVyTGlua1dpdGhIcmVmKSA9PlxyXG4gICAgICAgICAgICByb3V0ZXIuaXNBY3RpdmUobGluay51cmxUcmVlLCB0aGlzLmV4YWN0KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGhhc0FjdGl2ZUxpbmtzKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxpbmtzLnNvbWUodGhpcy5pc0xpbmtBY3RpdmUodGhpcy5yb3V0ZXIpKSB8fFxyXG4gICAgICAgICAgICB0aGlzLmxpbmtzV2l0aEhyZWZzLnNvbWUodGhpcy5pc0xpbmtBY3RpdmUodGhpcy5yb3V0ZXIpKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGdldCBleGFjdCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5yb3V0ZXJMaW5rQWN0aXZlT3B0aW9ucyA/IHRoaXMucm91dGVyTGlua0FjdGl2ZU9wdGlvbnMuZXhhY3QgOiBmYWxzZTtcclxuICAgIH1cclxufSJdfQ==