ngx-pluto
Version:
147 lines • 10.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Directive, Input, ElementRef, Renderer2 } from '@angular/core';
import { Utils } from '../utils';
/**
* @ignore
*/
var NpBadgeDirective = /** @class */ (function () {
function NpBadgeDirective(_elementRef, _renderer) {
this._elementRef = _elementRef;
this._renderer = _renderer;
this.badgePosition = 'above after';
this.badgeColor = '#ed5565';
this.badgeRadius = '0';
this.hasContent = false;
}
/**
* @param {?} changes
* @return {?}
*/
NpBadgeDirective.prototype.ngOnChanges = /**
* @param {?} changes
* @return {?}
*/
function (changes) {
/** @type {?} */
var contentChange = changes['badgeContent'];
if (contentChange) {
/** @type {?} */
var value = contentChange.currentValue;
this.hasContent = value != null && ("" + value).trim().length > 0 && +value !== 0;
this.updateTextContent();
}
};
/**
* @return {?}
*/
NpBadgeDirective.prototype.isAbove = /**
* @return {?}
*/
function () {
return this.badgePosition.indexOf('below') === -1;
};
/**
* @return {?}
*/
NpBadgeDirective.prototype.isAfter = /**
* @return {?}
*/
function () {
return this.badgePosition.indexOf('before') === -1;
};
/**
* @private
* @return {?}
*/
NpBadgeDirective.prototype.updateTextContent = /**
* @private
* @return {?}
*/
function () {
if (!this.badgeElement) {
this.badgeElement = this.createBadgeElement();
}
else {
this.badgeElement.textContent = this.badgeContent;
}
return this.badgeElement;
};
/**
* @private
* @return {?}
*/
NpBadgeDirective.prototype.createBadgeElement = /**
* @private
* @return {?}
*/
function () {
/** @type {?} */
var badgeElement = this._renderer.createElement('span');
badgeElement.setAttribute('id', "np-badge-content-" + Utils.ID());
badgeElement.style.borderRadius = this.badgeRadius;
badgeElement.style.backgroundColor = this.badgeColor;
badgeElement.classList.add('np-badge-content');
badgeElement.textContent = this.badgeContent;
this._elementRef.nativeElement.appendChild(badgeElement);
return badgeElement;
};
NpBadgeDirective.decorators = [
{ type: Directive, args: [{
selector: '[np-badge]',
host: {
'class': 'np-badge-wrapper',
'[class.np-badge-above]': 'isAbove()',
'[class.np-badge-below]': '!isAbove()',
'[class.np-badge-before]': '!isAfter()',
'[class.np-badge-after]': 'isAfter()'
}
},] }
];
/** @nocollapse */
NpBadgeDirective.ctorParameters = function () { return [
{ type: ElementRef },
{ type: Renderer2 }
]; };
NpBadgeDirective.propDecorators = {
badgePosition: [{ type: Input }],
badgeColor: [{ type: Input }],
badgeContent: [{ type: Input }],
badgeRadius: [{ type: Input }]
};
return NpBadgeDirective;
}());
export { NpBadgeDirective };
if (false) {
/** @type {?} */
NpBadgeDirective.prototype.badgePosition;
/** @type {?} */
NpBadgeDirective.prototype.badgeColor;
/** @type {?} */
NpBadgeDirective.prototype.badgeContent;
/** @type {?} */
NpBadgeDirective.prototype.badgeRadius;
/**
* @type {?}
* @private
*/
NpBadgeDirective.prototype.badgeElement;
/**
* @type {?}
* @private
*/
NpBadgeDirective.prototype.hasContent;
/**
* @type {?}
* @private
*/
NpBadgeDirective.prototype._elementRef;
/**
* @type {?}
* @private
*/
NpBadgeDirective.prototype._renderer;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vbmd4LXBsdXRvLyIsInNvdXJjZXMiOlsibGliL2JhZGdlL2JhZGdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDdkYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQzs7OztBQU1qQztJQW9CRSwwQkFBb0IsV0FBb0MsRUFDOUMsU0FBb0I7UUFEVixnQkFBVyxHQUFYLFdBQVcsQ0FBeUI7UUFDOUMsY0FBUyxHQUFULFNBQVMsQ0FBVztRQVRyQixrQkFBYSxHQUFvQixhQUFhLENBQUM7UUFDL0MsZUFBVSxHQUFXLFNBQVMsQ0FBQztRQUUvQixnQkFBVyxHQUFXLEdBQUcsQ0FBQztRQUczQixlQUFVLEdBQUcsS0FBSyxDQUFDO0lBR08sQ0FBQzs7Ozs7SUFFbkMsc0NBQVc7Ozs7SUFBWCxVQUFZLE9BQXNCOztZQUMxQixhQUFhLEdBQUcsT0FBTyxDQUFDLGNBQWMsQ0FBQztRQUU3QyxJQUFJLGFBQWEsRUFBRTs7Z0JBQ1gsS0FBSyxHQUFHLGFBQWEsQ0FBQyxZQUFZO1lBQ3hDLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFBLEtBQUcsS0FBTyxDQUFBLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUM7WUFDaEYsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7U0FDMUI7SUFDSCxDQUFDOzs7O0lBRUQsa0NBQU87OztJQUFQO1FBQ0UsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDOzs7O0lBRUQsa0NBQU87OztJQUFQO1FBQ0UsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNyRCxDQUFDOzs7OztJQUVPLDRDQUFpQjs7OztJQUF6QjtRQUNFLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7U0FDL0M7YUFBTTtZQUNMLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUM7U0FDbkQ7UUFDRCxPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQzs7Ozs7SUFFTyw2Q0FBa0I7Ozs7SUFBMUI7O1lBQ1EsWUFBWSxHQUFnQixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUM7UUFFdEUsWUFBWSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsc0JBQW9CLEtBQUssQ0FBQyxFQUFFLEVBQUksQ0FBQyxDQUFDO1FBQ2xFLFlBQVksQ0FBQyxLQUFLLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDbkQsWUFBWSxDQUFDLEtBQUssQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQztRQUNyRCxZQUFZLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQy9DLFlBQVksQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUU3QyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFekQsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQzs7Z0JBOURGLFNBQVMsU0FBQztvQkFDVCxRQUFRLEVBQUUsWUFBWTtvQkFDdEIsSUFBSSxFQUFFO3dCQUNKLE9BQU8sRUFBRSxrQkFBa0I7d0JBQzNCLHdCQUF3QixFQUFFLFdBQVc7d0JBQ3JDLHdCQUF3QixFQUFFLFlBQVk7d0JBQ3RDLHlCQUF5QixFQUFFLFlBQVk7d0JBQ3ZDLHdCQUF3QixFQUFFLFdBQVc7cUJBQ3RDO2lCQUNGOzs7O2dCQWhCMEIsVUFBVTtnQkFBRSxTQUFTOzs7Z0NBbUI3QyxLQUFLOzZCQUNMLEtBQUs7K0JBQ0wsS0FBSzs4QkFDTCxLQUFLOztJQWdEUix1QkFBQztDQUFBLEFBL0RELElBK0RDO1NBckRZLGdCQUFnQjs7O0lBRTNCLHlDQUF3RDs7SUFDeEQsc0NBQXdDOztJQUN4Qyx3Q0FBOEI7O0lBQzlCLHVDQUFtQzs7Ozs7SUFFbkMsd0NBQThDOzs7OztJQUM5QyxzQ0FBMkI7Ozs7O0lBRWYsdUNBQTRDOzs7OztJQUN0RCxxQ0FBNEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBFbGVtZW50UmVmLCBSZW5kZXJlcjIsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuLi91dGlscyc7XHJcblxyXG5cclxuLyoqXHJcbiAqIEBpZ25vcmVcclxuICovXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW25wLWJhZGdlXScsXHJcbiAgaG9zdDoge1xyXG4gICAgJ2NsYXNzJzogJ25wLWJhZGdlLXdyYXBwZXInLFxyXG4gICAgJ1tjbGFzcy5ucC1iYWRnZS1hYm92ZV0nOiAnaXNBYm92ZSgpJyxcclxuICAgICdbY2xhc3MubnAtYmFkZ2UtYmVsb3ddJzogJyFpc0Fib3ZlKCknLFxyXG4gICAgJ1tjbGFzcy5ucC1iYWRnZS1iZWZvcmVdJzogJyFpc0FmdGVyKCknLFxyXG4gICAgJ1tjbGFzcy5ucC1iYWRnZS1hZnRlcl0nOiAnaXNBZnRlcigpJ1xyXG4gIH1cclxufSlcclxuZXhwb3J0IGNsYXNzIE5wQmFkZ2VEaXJlY3RpdmUge1xyXG5cclxuICBASW5wdXQoKSBiYWRnZVBvc2l0aW9uOiBOcEJhZGdlUG9zaXRpb24gPSAnYWJvdmUgYWZ0ZXInO1xyXG4gIEBJbnB1dCgpIGJhZGdlQ29sb3I6IHN0cmluZyA9ICcjZWQ1NTY1JztcclxuICBASW5wdXQoKSBiYWRnZUNvbnRlbnQ6IHN0cmluZztcclxuICBASW5wdXQoKSBiYWRnZVJhZGl1czogc3RyaW5nID0gJzAnO1xyXG5cclxuICBwcml2YXRlIGJhZGdlRWxlbWVudDogSFRNTEVsZW1lbnQgfCB1bmRlZmluZWQ7XHJcbiAgcHJpdmF0ZSBoYXNDb250ZW50ID0gZmFsc2U7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+LFxyXG4gICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMikgeyB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcclxuICAgIGNvbnN0IGNvbnRlbnRDaGFuZ2UgPSBjaGFuZ2VzWydiYWRnZUNvbnRlbnQnXTtcclxuXHJcbiAgICBpZiAoY29udGVudENoYW5nZSkge1xyXG4gICAgICBjb25zdCB2YWx1ZSA9IGNvbnRlbnRDaGFuZ2UuY3VycmVudFZhbHVlO1xyXG4gICAgICB0aGlzLmhhc0NvbnRlbnQgPSB2YWx1ZSAhPSBudWxsICYmIGAke3ZhbHVlfWAudHJpbSgpLmxlbmd0aCA+IDAgJiYgK3ZhbHVlICE9PSAwO1xyXG4gICAgICB0aGlzLnVwZGF0ZVRleHRDb250ZW50KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBpc0Fib3ZlKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuYmFkZ2VQb3NpdGlvbi5pbmRleE9mKCdiZWxvdycpID09PSAtMTtcclxuICB9XHJcblxyXG4gIGlzQWZ0ZXIoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5iYWRnZVBvc2l0aW9uLmluZGV4T2YoJ2JlZm9yZScpID09PSAtMTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlVGV4dENvbnRlbnQoKTogSFRNTFNwYW5FbGVtZW50IHtcclxuICAgIGlmICghdGhpcy5iYWRnZUVsZW1lbnQpIHtcclxuICAgICAgdGhpcy5iYWRnZUVsZW1lbnQgPSB0aGlzLmNyZWF0ZUJhZGdlRWxlbWVudCgpO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5iYWRnZUVsZW1lbnQudGV4dENvbnRlbnQgPSB0aGlzLmJhZGdlQ29udGVudDtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLmJhZGdlRWxlbWVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgY3JlYXRlQmFkZ2VFbGVtZW50KCk6IEhUTUxFbGVtZW50IHtcclxuICAgIGNvbnN0IGJhZGdlRWxlbWVudDogSFRNTEVsZW1lbnQgPSB0aGlzLl9yZW5kZXJlci5jcmVhdGVFbGVtZW50KCdzcGFuJyk7XHJcblxyXG4gICAgYmFkZ2VFbGVtZW50LnNldEF0dHJpYnV0ZSgnaWQnLCBgbnAtYmFkZ2UtY29udGVudC0ke1V0aWxzLklEKCl9YCk7XHJcbiAgICBiYWRnZUVsZW1lbnQuc3R5bGUuYm9yZGVyUmFkaXVzID0gdGhpcy5iYWRnZVJhZGl1cztcclxuICAgIGJhZGdlRWxlbWVudC5zdHlsZS5iYWNrZ3JvdW5kQ29sb3IgPSB0aGlzLmJhZGdlQ29sb3I7XHJcbiAgICBiYWRnZUVsZW1lbnQuY2xhc3NMaXN0LmFkZCgnbnAtYmFkZ2UtY29udGVudCcpO1xyXG4gICAgYmFkZ2VFbGVtZW50LnRleHRDb250ZW50ID0gdGhpcy5iYWRnZUNvbnRlbnQ7XHJcblxyXG4gICAgdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmFwcGVuZENoaWxkKGJhZGdlRWxlbWVudCk7XHJcblxyXG4gICAgcmV0dXJuIGJhZGdlRWxlbWVudDtcclxuICB9XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBAaWdub3JlXHJcbiAqL1xyXG5leHBvcnQgdHlwZSBOcEJhZGdlUG9zaXRpb24gPSAnYWJvdmUgYWZ0ZXInIHwgJ2Fib3ZlIGJlZm9yZScgfCAnYmVsb3cgYmVmb3JlJyB8ICdiZWxvdyBhZnRlcic7Il19