@asi-ngtools/lib
Version:
This project is a little components library, simple to use, which will help you to simplify your project.
94 lines (93 loc) • 6.04 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { AsiMenuItem } from './asi-menu-item.component';
import { Component, Input, ContentChild, TemplateRef, QueryList, ContentChildren } from '@angular/core';
var AsiMenu = /** @class */ (function () {
function AsiMenu() {
/**
* is enabled/disabled
*/
this.disabled = false;
/**
* change to a menu burger
*/
this.burger = false;
/**
* horizontal/vertical
*/
this.vertical = false;
this.items = new Array();
}
/**
* @return {?}
*/
AsiMenu.prototype.toggleBurger = /**
* @return {?}
*/
function () {
this.burgerOpen = !this.burgerOpen;
};
/**
* @return {?}
*/
AsiMenu.prototype.ngAfterContentInit = /**
* @return {?}
*/
function () {
var _this = this;
this.items = [];
this.queryItems.forEach(function (item) {
_this.items.push(item);
});
this.queryItems.changes.subscribe(function (items) {
_this.items = items;
});
this.burgerOpen = !this.burger;
};
AsiMenu.decorators = [
{ type: Component, args: [{
selector: 'asi-menu',
host: { 'class': 'asi-component asi-menu' },
template: "<div class=\"asi-menu-container\">\n <span *ngIf=\"burger\" (click)=\"toggleBurger()\">\n <ng-template *ngIf=\"burgerTemplate != null\" [ngTemplateOutlet]=\"burgerTemplate\"></ng-template>\n </span>\n <ul class=\"asi-menu-panel\">\n <li *ngIf=\"burgerOpen\" class=\"items-container\" [ngClass]=\"{'vertical' : vertical, 'burger' : burger }\">\n <button *ngFor=\"let item of items\" class=\"item-container\" routerLinkActive=\"active\" [routerLink]=\"item.routerLink\" [disabled]=\"disabled || item.disabled\"\n (click)=\"item.emitClick($event)\">\n <ng-template *ngIf=\"item.template != null\" [ngTemplateOutlet]=\"item.template\"></ng-template>\n </button>\n </li>\n </ul>\n</div>\n"
}] }
];
/** @nocollapse */
AsiMenu.ctorParameters = function () { return []; };
AsiMenu.propDecorators = {
disabled: [{ type: Input }],
burger: [{ type: Input }],
vertical: [{ type: Input }],
queryItems: [{ type: ContentChildren, args: [AsiMenuItem,] }],
burgerTemplate: [{ type: ContentChild, args: ['burger',] }]
};
return AsiMenu;
}());
export { AsiMenu };
if (false) {
/**
* is enabled/disabled
* @type {?}
*/
AsiMenu.prototype.disabled;
/**
* change to a menu burger
* @type {?}
*/
AsiMenu.prototype.burger;
/**
* horizontal/vertical
* @type {?}
*/
AsiMenu.prototype.vertical;
/** @type {?} */
AsiMenu.prototype.items;
/** @type {?} */
AsiMenu.prototype.queryItems;
/** @type {?} */
AsiMenu.prototype.burgerTemplate;
/** @type {?} */
AsiMenu.prototype.burgerOpen;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNpLW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGFzaS1uZ3Rvb2xzL2xpYi8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FzaS1tZW51L2FzaS1tZW51LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFDTCxTQUFTLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUNwQyxlQUFlLEVBQ2xDLE1BQU0sZUFBZSxDQUFDOztJQTJCckI7Ozs7d0JBaEJvQixLQUFLOzs7O3NCQUdQLEtBQUs7Ozs7d0JBR0gsS0FBSztxQkFFakIsSUFBSSxLQUFLLEVBQWU7S0FRZjs7OztJQUVqQiw4QkFBWTs7O0lBQVo7UUFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztLQUNwQzs7OztJQUVELG9DQUFrQjs7O0lBQWxCO1FBQUEsaUJBU0M7UUFSQyxJQUFJLENBQUMsS0FBSyxHQUFHLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxVQUFDLElBQUk7WUFDM0IsS0FBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDdkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLFVBQUMsS0FBSztZQUN0QyxLQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztTQUNwQixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsVUFBVSxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztLQUNoQzs7Z0JBdkNGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsSUFBSSxFQUFFLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFO29CQUMzQyw4dEJBQXdDO2lCQUN6Qzs7Ozs7MkJBSUUsS0FBSzt5QkFHTCxLQUFLOzJCQUdMLEtBQUs7NkJBSUwsZUFBZSxTQUFDLFdBQVc7aUNBRTNCLFlBQVksU0FBQyxRQUFROztrQkEzQnhCOztTQVlhLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc2lNZW51SXRlbSB9IGZyb20gJy4vYXNpLW1lbnUtaXRlbS5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LCBJbnB1dCwgQ29udGVudENoaWxkLCBUZW1wbGF0ZVJlZiwgUXVlcnlMaXN0LFxuICBBZnRlckNvbnRlbnRJbml0LCBDb250ZW50Q2hpbGRyZW5cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXNpLW1lbnUnLFxuICBob3N0OiB7ICdjbGFzcyc6ICdhc2ktY29tcG9uZW50IGFzaS1tZW51JyB9LFxuICB0ZW1wbGF0ZVVybDogJy4vYXNpLW1lbnUuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFzaU1lbnUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcblxuICAvKiogaXMgZW5hYmxlZC9kaXNhYmxlZCAqL1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gIC8qKiBjaGFuZ2UgdG8gYSBtZW51IGJ1cmdlciAqL1xuICBASW5wdXQoKSBidXJnZXIgPSBmYWxzZTtcblxuICAvKiogaG9yaXpvbnRhbC92ZXJ0aWNhbCAqL1xuICBASW5wdXQoKSB2ZXJ0aWNhbCA9IGZhbHNlO1xuXG4gIGl0ZW1zID0gbmV3IEFycmF5PEFzaU1lbnVJdGVtPigpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oQXNpTWVudUl0ZW0pIHF1ZXJ5SXRlbXM6IFF1ZXJ5TGlzdDxBc2lNZW51SXRlbT47XG5cbiAgQENvbnRlbnRDaGlsZCgnYnVyZ2VyJykgYnVyZ2VyVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgYnVyZ2VyT3BlbjogQm9vbGVhbjtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIHRvZ2dsZUJ1cmdlcigpIHtcbiAgICB0aGlzLmJ1cmdlck9wZW4gPSAhdGhpcy5idXJnZXJPcGVuO1xuICB9XG5cbiAgbmdBZnRlckNvbnRlbnRJbml0KCkge1xuICAgIHRoaXMuaXRlbXMgPSBbXTtcbiAgICB0aGlzLnF1ZXJ5SXRlbXMuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgdGhpcy5pdGVtcy5wdXNoKGl0ZW0pO1xuICAgIH0pO1xuICAgIHRoaXMucXVlcnlJdGVtcy5jaGFuZ2VzLnN1YnNjcmliZSgoaXRlbXMpID0+IHtcbiAgICAgIHRoaXMuaXRlbXMgPSBpdGVtcztcbiAgICB9KTtcbiAgICB0aGlzLmJ1cmdlck9wZW4gPSAhdGhpcy5idXJnZXI7XG4gIH1cbn1cbiJdfQ==