@miesil/pp-breadcrumbs
Version:
PP-Breadcrumbs is an Angular 7 module generating breadcrumbs based on the routing state.
80 lines • 5.66 kB
JavaScript
/**
* @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