UNPKG

@cause-911/material

Version:

Run `npm install @cause-911/material --save` to add this library to your project

105 lines 8.88 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Component, EventEmitter, Input, Output } from '@angular/core'; import { NavigationEnd, Router } from '@angular/router'; var MenuVerticalComponent = /** @class */ (function () { function MenuVerticalComponent(router) { var _this = this; this.router = router; this.itemClick = new EventEmitter(); this.menuItems = []; this.router.events.subscribe((/** * @param {?} route * @return {?} */ function (route) { if (route instanceof NavigationEnd) { _this.selectActiveRoute(route); } })); } /** * @return {?} */ MenuVerticalComponent.prototype.ngOnInit = /** * @return {?} */ function () { }; /** * @param {?} path * @param {?} e * @return {?} */ MenuVerticalComponent.prototype.goTo = /** * @param {?} path * @param {?} e * @return {?} */ function (path, e) { this.router.navigate([path]); this.itemClick.emit(); e.stopPropagation(); }; /** * @private * @param {?} route * @return {?} */ MenuVerticalComponent.prototype.selectActiveRoute = /** * @private * @param {?} route * @return {?} */ function (route) { this.menuItems.forEach((/** * @param {?} menu * @return {?} */ function (menu) { if (route.url) { menu.activated = (route.url === menu.path || (menu.childs.length && route.url.indexOf(menu.path) > -1)); } menu.childs.forEach((/** * @param {?} submenu * @return {?} */ function (submenu) { if (route.url) { submenu.activated = (route.url === submenu.path || route.urlAfterRedirects === submenu.path); } })); })); }; MenuVerticalComponent.decorators = [ { type: Component, args: [{ selector: 'cause-menu-vertical', template: "<h4 *ngFor=\"let menu of menuItems\" [class]=\"menu.activated ? 'selected' : ''\">\n <div (click)=\"goTo(menu.path, $event)\" class=\"menu\">\n <div *ngIf=\"menu.icon\" class=\"menu-icon\">\n <fa-icon *ngIf=\"menu.icon.filter !== undefined\" [icon]=\"menu.icon\"></fa-icon>\n <img *ngIf=\"menu.icon.filter === undefined\" [src]=\"menu.icon\" />\n </div>\n <div *ngIf=\"menu.label\" class=\"menu-caption\">\n <span>{{menu.label | translate}}</span>\n </div>\n </div>\n <div *ngIf=\"menu.childs.length && menu.activated\" class=\"submenu\">\n <div\n *ngFor=\"let submenu of menu.childs\"\n [class]=\"submenu.activated ? 'menu selected' : 'menu'\"\n (click)=\"goTo(submenu.path, $event)\">\n <div *ngIf=\"!submenu.icon\" class=\"menu-dot\">&bull;</div>\n <div *ngIf=\"submenu.icon\" class=\"menu-icon\">\n <fa-icon *ngIf=\"submenu.icon.filter !== undefined\" [icon]=\"submenu.icon\"></fa-icon>\n <img *ngIf=\"submenu.icon.filter === undefined\" [src]=\"submenu.icon\" />\n </div>\n <div *ngIf=\"submenu.label\" class=\"menu-caption\">\n <span>{{submenu.label | translate}}</span>\n </div>\n </div>\n </div>\n</h4>\n", styles: [".menu,.submenu{cursor:pointer}h4{margin:0;padding:0}h4 .menu{padding:1em 0;display:flex;flex-direction:row}h4 .menu>div{flex:1 1 auto;-ms-grid-row-align:center;align-self:center}.menu-dot{max-width:1.1em;text-align:center;margin-right:.5em;font-size:2em}.menu-icon{max-width:60px;text-align:center;margin-right:.5em}.submenu{margin-left:1em}.submenu .menu{padding:0;font-size:.9em;line-height:2.2em}.submenu .menu::before{content:\"\";margin-left:1.1em;width:.1em;height:2.5em;position:relative;background:#fff;margin-right:-1.17em}"] }] } ]; /** @nocollapse */ MenuVerticalComponent.ctorParameters = function () { return [ { type: Router } ]; }; MenuVerticalComponent.propDecorators = { itemClick: [{ type: Output }], menuItems: [{ type: Input }] }; return MenuVerticalComponent; }()); export { MenuVerticalComponent }; if (false) { /** @type {?} */ MenuVerticalComponent.prototype.itemClick; /** @type {?} */ MenuVerticalComponent.prototype.menuItems; /** * @type {?} * @private */ MenuVerticalComponent.prototype.router; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS12ZXJ0aWNhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY2F1c2UtOTExL21hdGVyaWFsLyIsInNvdXJjZXMiOlsibGliL21lbnUtdmVydGljYWwvbWVudS12ZXJ0aWNhbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDN0UsT0FBTyxFQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUMsTUFBTSxpQkFBaUIsQ0FBQztBQUd0RDtJQVNJLCtCQUNZLE1BQWM7UUFEMUIsaUJBUUM7UUFQVyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBSmhCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hDLGNBQVMsR0FBZSxFQUFFLENBQUM7UUFLaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUzs7OztRQUFDLFVBQUMsS0FBb0I7WUFDOUMsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFO2dCQUNoQyxLQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDakM7UUFDTCxDQUFDLEVBQUMsQ0FBQztJQUNQLENBQUM7Ozs7SUFFRCx3Q0FBUTs7O0lBQVI7SUFDQSxDQUFDOzs7Ozs7SUFFRCxvQ0FBSTs7Ozs7SUFBSixVQUFLLElBQUksRUFBRSxDQUFDO1FBQ1IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFFdEIsQ0FBQyxDQUFDLGVBQWUsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7OztJQUVPLGlEQUFpQjs7Ozs7SUFBekIsVUFBMEIsS0FBb0I7UUFDMUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPOzs7O1FBQUMsVUFBQSxJQUFJO1lBQ3ZCLElBQUksS0FBSyxDQUFDLEdBQUcsRUFBRTtnQkFDWCxJQUFJLENBQUMsU0FBUyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsS0FBSyxJQUFJLENBQUMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzRztZQUVELElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTzs7OztZQUFDLFVBQUEsT0FBTztnQkFDdkIsSUFBSSxLQUFLLENBQUMsR0FBRyxFQUFFO29CQUNYLE9BQU8sQ0FBQyxTQUFTLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sQ0FBQyxJQUFJLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDaEc7WUFDTCxDQUFDLEVBQUMsQ0FBQztRQUNQLENBQUMsRUFBQyxDQUFDO0lBQ1AsQ0FBQzs7Z0JBekNKLFNBQVMsU0FBQztvQkFDUCxRQUFRLEVBQUUscUJBQXFCO29CQUMvQixnMENBQTZDOztpQkFFaEQ7Ozs7Z0JBUHNCLE1BQU07Ozs0QkFTeEIsTUFBTTs0QkFDTixLQUFLOztJQW1DViw0QkFBQztDQUFBLEFBMUNELElBMENDO1NBckNZLHFCQUFxQjs7O0lBQzlCLDBDQUF5Qzs7SUFDekMsMENBQW9DOzs7OztJQUdoQyx1Q0FBc0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtOYXZpZ2F0aW9uRW5kLCBSb3V0ZXJ9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge01lbnVJdGVtfSBmcm9tICcuLi9zaGFyZWQvbW9kZWxzL21lbnUtaXRlbSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnY2F1c2UtbWVudS12ZXJ0aWNhbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL21lbnUtdmVydGljYWwuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL21lbnUtdmVydGljYWwuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBNZW51VmVydGljYWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gICAgQElucHV0KCkgbWVudUl0ZW1zOiBNZW51SXRlbVtdID0gW107XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICApIHtcbiAgICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgocm91dGU6IE5hdmlnYXRpb25FbmQpID0+IHtcbiAgICAgICAgICAgIGlmIChyb3V0ZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdEFjdGl2ZVJvdXRlKHJvdXRlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgfVxuXG4gICAgZ29UbyhwYXRoLCBlKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFtwYXRoXSk7XG4gICAgICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQoKTtcblxuICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2VsZWN0QWN0aXZlUm91dGUocm91dGU6IE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgdGhpcy5tZW51SXRlbXMuZm9yRWFjaChtZW51ID0+IHtcbiAgICAgICAgICAgIGlmIChyb3V0ZS51cmwpIHtcbiAgICAgICAgICAgICAgICBtZW51LmFjdGl2YXRlZCA9IChyb3V0ZS51cmwgPT09IG1lbnUucGF0aCB8fCAobWVudS5jaGlsZHMubGVuZ3RoICYmIHJvdXRlLnVybC5pbmRleE9mKG1lbnUucGF0aCkgPiAtMSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBtZW51LmNoaWxkcy5mb3JFYWNoKHN1Ym1lbnUgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChyb3V0ZS51cmwpIHtcbiAgICAgICAgICAgICAgICAgICAgc3VibWVudS5hY3RpdmF0ZWQgPSAocm91dGUudXJsID09PSBzdWJtZW51LnBhdGggfHwgcm91dGUudXJsQWZ0ZXJSZWRpcmVjdHMgPT09IHN1Ym1lbnUucGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==