UNPKG

@miesil/pp-breadcrumbs

Version:

PP-Breadcrumbs is an Angular 7 module generating breadcrumbs based on the routing state.

80 lines 5.66 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, EventEmitter, Output } from '@angular/core'; import { PpBreadcrumbsService } from './breadcrumbs.service'; var PpBreadcrumbsComponent = /** @class */ (function () { function PpBreadcrumbsComponent(service) { this.service = service; this.subscriptions = []; this.onNavigate = new EventEmitter(); } /** * @return {?} */ PpBreadcrumbsComponent.prototype.ngOnInit = /** * @return {?} */ function () { var _this = this; this.subscriptions.push(this.service.crumbs$.subscribe((/** * @param {?} x * @return {?} */ function (x) { _this.crumbs = x; }))); }; /** * @return {?} */ PpBreadcrumbsComponent.prototype.ngOnDestroy = /** * @return {?} */ function () { this.subscriptions.forEach((/** * @param {?} x * @return {?} */ function (x) { return x.unsubscribe(); })); this.onNavigate.complete(); this.onNavigate = undefined; }; /** * @return {?} */ PpBreadcrumbsComponent.prototype.click = /** * @return {?} */ function () { this.onNavigate.emit({}); }; PpBreadcrumbsComponent.decorators = [ { type: Component, args: [{ selector: 'pp-breadcrumbs', template: "<ol *ngIf=\"crumbs.length\" class=\"breadcrumb\">\r\n <li *ngFor=\"let crumb of crumbs; let first = first; let last = last\" [ngClass]=\"{ 'active': last }\" class=\"breadcrumb-item\">\r\n <a *ngIf=\"!last; else lastBreadcrumb\" [routerLink]=\"crumb.path\" [innerHTML]=\"crumb.text\" (click)=\"click()\"></a>\r\n <ng-template #lastBreadcrumb>\r\n <span [innerHTML]=\"crumb.text\"></span>\r\n </ng-template>\r\n </li>\r\n</ol>\r\n", styles: [""] }] } ]; /** @nocollapse */ PpBreadcrumbsComponent.ctorParameters = function () { return [ { type: PpBreadcrumbsService } ]; }; PpBreadcrumbsComponent.propDecorators = { onNavigate: [{ type: Output }] }; return PpBreadcrumbsComponent; }()); export { PpBreadcrumbsComponent }; if (false) { /** @type {?} */ PpBreadcrumbsComponent.prototype.crumbs; /** @type {?} */ PpBreadcrumbsComponent.prototype.subscriptions; /** @type {?} */ PpBreadcrumbsComponent.prototype.onNavigate; /** @type {?} */ PpBreadcrumbsComponent.prototype.service; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQG1pZXNpbC9wcC1icmVhZGNydW1icy8iLCJzb3VyY2VzIjpbImxpYi9icmVhZGNydW1icy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHakYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFN0Q7SUFZRSxnQ0FBbUIsT0FBNkI7UUFBN0IsWUFBTyxHQUFQLE9BQU8sQ0FBc0I7UUFMaEQsa0JBQWEsR0FBbUIsRUFBRSxDQUFDO1FBR25DLGVBQVUsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBRWMsQ0FBQzs7OztJQUU3Qyx5Q0FBUTs7O0lBQWY7UUFBQSxpQkFNQztRQUxDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTOzs7O1FBQUMsVUFBQSxDQUFDO1lBQzlCLEtBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLENBQUMsRUFBQyxDQUNILENBQUM7SUFDSixDQUFDOzs7O0lBRUQsNENBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPOzs7O1FBQUMsVUFBQSxDQUFDLElBQUksT0FBQSxDQUFDLENBQUMsV0FBVyxFQUFFLEVBQWYsQ0FBZSxFQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQztJQUM5QixDQUFDOzs7O0lBRUQsc0NBQUs7OztJQUFMO1FBQ0UsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7Z0JBOUJGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQiwwY0FBMkM7O2lCQUU1Qzs7OztnQkFOUSxvQkFBb0I7Ozs2QkFXMUIsTUFBTTs7SUFzQlQsNkJBQUM7Q0FBQSxBQS9CRCxJQStCQztTQTFCWSxzQkFBc0I7OztJQUNqQyx3Q0FBcUI7O0lBQ3JCLCtDQUFtQzs7SUFFbkMsNENBQ3FDOztJQUV6Qix5Q0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPbkRlc3Ryb3ksIE9uSW5pdCwgT3V0cHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IEJyZWFkY3J1bWIgfSBmcm9tICcuL2JyZWFkY3J1bWInO1xyXG5pbXBvcnQgeyBQcEJyZWFkY3J1bWJzU2VydmljZSB9IGZyb20gJy4vYnJlYWRjcnVtYnMuc2VydmljZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3BwLWJyZWFkY3J1bWJzJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYnJlYWRjcnVtYnMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2JyZWFkY3J1bWJzLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIFBwQnJlYWRjcnVtYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgY3J1bWJzOiBCcmVhZGNydW1iW107XHJcbiAgc3Vic2NyaXB0aW9uczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgQE91dHB1dCgpXHJcbiAgb25OYXZpZ2F0ZSA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG5cclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgc2VydmljZTogUHBCcmVhZGNydW1ic1NlcnZpY2UpIHt9XHJcblxyXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5wdXNoKFxyXG4gICAgICB0aGlzLnNlcnZpY2UuY3J1bWJzJC5zdWJzY3JpYmUoeCA9PiB7XHJcbiAgICAgICAgdGhpcy5jcnVtYnMgPSB4O1xyXG4gICAgICB9KVxyXG4gICAgKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmZvckVhY2goeCA9PiB4LnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgdGhpcy5vbk5hdmlnYXRlLmNvbXBsZXRlKCk7XHJcbiAgICB0aGlzLm9uTmF2aWdhdGUgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBjbGljaygpIHtcclxuICAgIHRoaXMub25OYXZpZ2F0ZS5lbWl0KHt9KTtcclxuICB9XHJcbn1cclxuIl19