jpush-ui
Version:
极光大数据前端Angular组件(^6.1.0)
104 lines • 4.08 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var core_1 = require("@angular/core");
var menu_component_1 = require("./menu.component");
var submenu_component_1 = require("./submenu.component");
var MenuItemComponent = /** @class */ (function () {
function MenuItemComponent(elementRef, renderer2, menuComponent, subMenuComponent) {
this.elementRef = elementRef;
this.renderer2 = renderer2;
this.menuComponent = menuComponent;
this.subMenuComponent = subMenuComponent;
this.level = 0;
this.padding = null;
this._selected = false;
this.disabled = false;
this.menuComponent.menuItems.push(this);
this.hostEl = this.elementRef.nativeElement;
if (this.hostEl.style['padding-left']) {
this.padding = parseInt(this.hostEl.style['padding-left'], 10);
}
}
Object.defineProperty(MenuItemComponent.prototype, "selected", {
get: function () {
return this._selected;
},
set: function (value) {
this._selected = value;
if (value) {
this.renderer2.addClass(this.hostEl, 'jui-menu-item-selected');
}
else {
this.renderer2.removeClass(this.hostEl, 'jui-menu-item-selected');
}
},
enumerable: true,
configurable: true
});
Object.defineProperty(MenuItemComponent.prototype, "setItemClass", {
get: function () {
return true;
},
enumerable: true,
configurable: true
});
Object.defineProperty(MenuItemComponent.prototype, "setMenuDisableClass", {
get: function () {
return this.disabled;
},
enumerable: true,
configurable: true
});
Object.defineProperty(MenuItemComponent.prototype, "setPaddingLeft", {
get: function () {
if (this.subMenuComponent) {
if (this.subMenuComponent.menuComponent.mode === 'inline') {
return (this.subMenuComponent.level + 1) * menu_component_1.PADDING_BASE;
}
else {
return this.padding;
}
}
else if (this.menuComponent.hasSubMenu && (this.menuComponent.mode === 'inline')) {
return menu_component_1.PADDING_BASE;
}
else {
return this.padding;
}
},
enumerable: true,
configurable: true
});
MenuItemComponent.prototype.onClickItem = function (event) {
if (!this.disabled) {
this.menuComponent.clearAllSelected();
this.selected = true;
}
};
MenuItemComponent.prototype.ngOnInit = function () { };
MenuItemComponent.decorators = [
{ type: core_1.Component, args: [{
selector: '[jui-menu-item]',
template: "\n <ng-content></ng-content>\n ",
encapsulation: core_1.ViewEncapsulation.None
},] },
];
/** @nocollapse */
MenuItemComponent.ctorParameters = function () { return [
{ type: core_1.ElementRef, },
{ type: core_1.Renderer2, },
{ type: menu_component_1.MenuComponent, },
{ type: submenu_component_1.SubMenuComponent, decorators: [{ type: core_1.Optional },] },
]; };
MenuItemComponent.propDecorators = {
"disabled": [{ type: core_1.Input },],
"selected": [{ type: core_1.Input },],
"setItemClass": [{ type: core_1.HostBinding, args: ['class.jui-menu-item',] },],
"setMenuDisableClass": [{ type: core_1.HostBinding, args: ['class.jui-menu-item-disabled',] },],
"setPaddingLeft": [{ type: core_1.HostBinding, args: ['style.padding-left.px',] },],
"onClickItem": [{ type: core_1.HostListener, args: ['click', ['$event'],] },],
};
return MenuItemComponent;
}());
exports.MenuItemComponent = MenuItemComponent;
//# sourceMappingURL=menu-item.component.js.map