@stratio/egeo
Version:
119 lines • 11.4 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/st-dropdown-menu/st-dropdown-menu-item/st-dropdown-menu-item.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/*
* © 2017 Stratio Big Data Inc., Sucursal en España.
*
* This software is licensed under the Apache License, Version 2.0.
* This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
* without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the terms of the License for more details.
*
* SPDX-License-Identifier: Apache-2.0.
*/
import { Component, EventEmitter, Input, Output } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser';
import { StDropDownMenuItem } from '../st-dropdown-menu.interface';
export class StDropdownMenuItemComponent {
/**
* @param {?} sanitizer
*/
constructor(sanitizer) {
this.sanitizer = sanitizer;
this.index = 0;
this.item = undefined;
this.selectedItem = undefined;
this.styleSelected = true;
this.change = new EventEmitter();
}
/**
* @return {?}
*/
onChangeItem() {
if (!this.item.disabled) {
this.change.emit(this.item);
}
}
/**
* @return {?}
*/
onToggleExtraButtonBubble() {
this.visibleExtraButtonBubble = !this.visibleExtraButtonBubble;
}
/**
* @return {?}
*/
get isSelected() {
return (this.hasItem && this.item.selected && this.styleSelected) ||
(this.hasItem && this.selectedItem !== undefined && this.item.value === this.selectedItem.value && this.styleSelected);
}
/**
* @return {?}
*/
get icon() {
return this.hasIcon ? this.item.icon : '';
}
/**
* @return {?}
*/
get html() {
return this.item && this.item.label ? this.sanitizer.bypassSecurityTrustHtml(this.item.label) : '';
}
/**
* @return {?}
*/
get hasIcon() {
return this.hasItem && this.item.icon !== undefined && this.item.icon !== null;
}
/**
* @return {?}
*/
get hasExtraIcon() {
return this.hasItem && this.item.extraIcon !== undefined && this.item.extraIcon !== null;
}
/**
* @return {?}
*/
get hasItem() {
return this.item !== undefined && this.item !== null;
}
}
StDropdownMenuItemComponent.decorators = [
{ type: Component, args: [{
selector: 'st-dropdown-menu-item',
template: "<!--\n\n \u00A9 2017 Stratio Big Data Inc., Sucursal en Espa\u00F1a.\n\n This software is licensed under the Apache License, Version 2.0.\n This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;\n without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n See the terms of the License for more details.\n\n SPDX-License-Identifier: Apache-2.0.\n\n-->\n<li *ngIf=\"hasItem\"\n [attr.tabindex]=\"index\"\n [ngClass]=\"{'selected': isSelected, 'disabled': item.disabled, 'top-separator': item.topSeparator, 'bottom-separator': item.bottomSeparator}\"\n class=\"st-dropdown-menu-item\"\n (click)=\"onChangeItem()\"\n (keyup.enter)=\"onChangeItem()\"\n>\n <i *ngIf=\"hasIcon\" class=\"icon\" [ngClass]=\"icon\" [style.color]=\"item.iconColor\"></i>\n <div *ngIf=\"!item.hasHtml\" class=\"label-container\">\n <span class=\"label\">\n <span [style.color]=\"item.labelColor\">{{item.label}}</span>\n <span *ngIf=\"item.textInfo\" class=\"text-info\">{{item.textInfo}}</span>\n </span>\n <ng-container *ngIf=\"hasExtraIcon\">\n <i class=\"extra-icon\" *ngIf=\"!item.extraIconBubble\"\n [ngClass]=\"item.extraIcon\"\n [style.color]=\"item.extraIconColor\">\n </i>\n <st-bubble *ngIf=\"item.extraIconBubble\" class=\"extra-icon__bubble\"\n [hidden]=\"!visibleExtraButtonBubble\"\n [small]=\"true\"\n [text]=\"item.extraIconBubble\"\n [animation]=\"false\"\n [showArrow]=\"true\"\n [offset]=\"{x: 38, y: 9}\"\n [openToLeft]=\"true\">\n <i bubble-button\n [ngClass]=\"item.extraIcon\"\n [style.color]=\"item.extraIconColor\"\n (mouseenter)=\"onToggleExtraButtonBubble()\"\n (mouseleave)=\"onToggleExtraButtonBubble()\">\n </i>\n </st-bubble>\n </ng-container>\n </div>\n\n <div *ngIf=\"item.hasHtml\" [innerHTML]=\"html\"></div>\n</li>\n"
}] }
];
/** @nocollapse */
StDropdownMenuItemComponent.ctorParameters = () => [
{ type: DomSanitizer }
];
StDropdownMenuItemComponent.propDecorators = {
index: [{ type: Input }],
item: [{ type: Input }],
selectedItem: [{ type: Input }],
styleSelected: [{ type: Input }],
change: [{ type: Output }]
};
if (false) {
/** @type {?} */
StDropdownMenuItemComponent.prototype.index;
/** @type {?} */
StDropdownMenuItemComponent.prototype.item;
/** @type {?} */
StDropdownMenuItemComponent.prototype.selectedItem;
/** @type {?} */
StDropdownMenuItemComponent.prototype.styleSelected;
/** @type {?} */
StDropdownMenuItemComponent.prototype.change;
/** @type {?} */
StDropdownMenuItemComponent.prototype.visibleExtraButtonBubble;
/**
* @type {?}
* @private
*/
StDropdownMenuItemComponent.prototype.sanitizer;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3QtZHJvcGRvd24tbWVudS1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BzdHJhdGlvL2VnZW8vIiwic291cmNlcyI6WyJsaWIvc3QtZHJvcGRvd24tbWVudS9zdC1kcm9wZG93bi1tZW51LWl0ZW0vc3QtZHJvcGRvd24tbWVudS1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7QUFVQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxZQUFZLEVBQVksTUFBTSwyQkFBMkIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU1uRSxNQUFNLE9BQU8sMkJBQTJCOzs7O0lBVXJDLFlBQW9CLFNBQXVCO1FBQXZCLGNBQVMsR0FBVCxTQUFTLENBQWM7UUFUbEMsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixTQUFJLEdBQXVCLFNBQVMsQ0FBQztRQUNyQyxpQkFBWSxHQUF1QixTQUFTLENBQUM7UUFDN0Msa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFFN0IsV0FBTSxHQUFxQyxJQUFJLFlBQVksRUFBc0IsQ0FBQztJQU01RixDQUFDOzs7O0lBRUQsWUFBWTtRQUNULElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN0QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDOUI7SUFDSixDQUFDOzs7O0lBRUQseUJBQXlCO1FBQ3RCLElBQUksQ0FBQyx3QkFBd0IsR0FBRyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQztJQUNsRSxDQUFDOzs7O0lBRUQsSUFBSSxVQUFVO1FBQ1gsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUM5RCxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzdILENBQUM7Ozs7SUFFRCxJQUFJLElBQUk7UUFDTCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDN0MsQ0FBQzs7OztJQUVELElBQUksSUFBSTtRQUNMLE9BQU8sSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDdEcsQ0FBQzs7OztJQUVELElBQUksT0FBTztRQUNSLE9BQU8sSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDO0lBQ2xGLENBQUM7Ozs7SUFFRCxJQUFJLFlBQVk7UUFDYixPQUFPLElBQUksQ0FBQyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQztJQUM1RixDQUFDOzs7O0lBRUQsSUFBSSxPQUFPO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQztJQUN4RCxDQUFDOzs7WUFuREgsU0FBUyxTQUFDO2dCQUNSLFFBQVEsRUFBRSx1QkFBdUI7Z0JBQ2pDLG1tRUFBcUQ7YUFDdkQ7Ozs7WUFQUSxZQUFZOzs7b0JBU2pCLEtBQUs7bUJBQ0wsS0FBSzsyQkFDTCxLQUFLOzRCQUNMLEtBQUs7cUJBRUwsTUFBTTs7OztJQUxQLDRDQUEyQjs7SUFDM0IsMkNBQThDOztJQUM5QyxtREFBc0Q7O0lBQ3RELG9EQUF1Qzs7SUFFdkMsNkNBQTRGOztJQUU1RiwrREFBa0M7Ozs7O0lBRXRCLGdEQUErQiIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiDCqSAyMDE3IFN0cmF0aW8gQmlnIERhdGEgSW5jLiwgU3VjdXJzYWwgZW4gRXNwYcOxYS5cbiAqXG4gKiBUaGlzIHNvZnR3YXJlIGlzIGxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAuXG4gKiBUaGlzIHByb2dyYW0gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZO1xuICogd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS5cbiAqIFNlZSB0aGUgdGVybXMgb2YgdGhlIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMC5cbiAqL1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZUh0bWwgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuaW1wb3J0IHsgU3REcm9wRG93bk1lbnVJdGVtIH0gZnJvbSAnLi4vc3QtZHJvcGRvd24tbWVudS5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgIHNlbGVjdG9yOiAnc3QtZHJvcGRvd24tbWVudS1pdGVtJyxcbiAgIHRlbXBsYXRlVXJsOiAnLi9zdC1kcm9wZG93bi1tZW51LWl0ZW0uY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIFN0RHJvcGRvd25NZW51SXRlbUNvbXBvbmVudCB7XG4gICBASW5wdXQoKSBpbmRleDogbnVtYmVyID0gMDtcbiAgIEBJbnB1dCgpIGl0ZW06IFN0RHJvcERvd25NZW51SXRlbSA9IHVuZGVmaW5lZDtcbiAgIEBJbnB1dCgpIHNlbGVjdGVkSXRlbTogU3REcm9wRG93bk1lbnVJdGVtID0gdW5kZWZpbmVkO1xuICAgQElucHV0KCkgc3R5bGVTZWxlY3RlZDogYm9vbGVhbiA9IHRydWU7XG5cbiAgIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxTdERyb3BEb3duTWVudUl0ZW0+ID0gbmV3IEV2ZW50RW1pdHRlcjxTdERyb3BEb3duTWVudUl0ZW0+KCk7XG5cbiAgIHZpc2libGVFeHRyYUJ1dHRvbkJ1YmJsZTogYm9vbGVhbjtcblxuICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge1xuXG4gICB9XG5cbiAgIG9uQ2hhbmdlSXRlbSgpOiB2b2lkIHtcbiAgICAgIGlmICghdGhpcy5pdGVtLmRpc2FibGVkKSB7XG4gICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KHRoaXMuaXRlbSk7XG4gICAgICB9XG4gICB9XG5cbiAgIG9uVG9nZ2xlRXh0cmFCdXR0b25CdWJibGUoKTogdm9pZCB7XG4gICAgICB0aGlzLnZpc2libGVFeHRyYUJ1dHRvbkJ1YmJsZSA9ICF0aGlzLnZpc2libGVFeHRyYUJ1dHRvbkJ1YmJsZTtcbiAgIH1cblxuICAgZ2V0IGlzU2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gKHRoaXMuaGFzSXRlbSAmJiB0aGlzLml0ZW0uc2VsZWN0ZWQgJiYgdGhpcy5zdHlsZVNlbGVjdGVkKSB8fFxuICAgICAgICAgKHRoaXMuaGFzSXRlbSAmJiB0aGlzLnNlbGVjdGVkSXRlbSAhPT0gdW5kZWZpbmVkICYmIHRoaXMuaXRlbS52YWx1ZSA9PT0gdGhpcy5zZWxlY3RlZEl0ZW0udmFsdWUgJiYgdGhpcy5zdHlsZVNlbGVjdGVkKTtcbiAgIH1cblxuICAgZ2V0IGljb24oKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLmhhc0ljb24gPyB0aGlzLml0ZW0uaWNvbiA6ICcnO1xuICAgfVxuXG4gICBnZXQgaHRtbCgpOiBTYWZlSHRtbCB7XG4gICAgICByZXR1cm4gdGhpcy5pdGVtICYmIHRoaXMuaXRlbS5sYWJlbCA/IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHRoaXMuaXRlbS5sYWJlbCkgOiAnJztcbiAgIH1cblxuICAgZ2V0IGhhc0ljb24oKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNJdGVtICYmIHRoaXMuaXRlbS5pY29uICE9PSB1bmRlZmluZWQgJiYgdGhpcy5pdGVtLmljb24gIT09IG51bGw7XG4gICB9XG5cbiAgIGdldCBoYXNFeHRyYUljb24oKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5oYXNJdGVtICYmIHRoaXMuaXRlbS5leHRyYUljb24gIT09IHVuZGVmaW5lZCAmJiB0aGlzLml0ZW0uZXh0cmFJY29uICE9PSBudWxsO1xuICAgfVxuXG4gICBnZXQgaGFzSXRlbSgpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLml0ZW0gIT09IHVuZGVmaW5lZCAmJiB0aGlzLml0ZW0gIT09IG51bGw7XG4gICB9XG59XG4iXX0=