@uex/web-extensions
Version:
Uex extensions for Angular 6+ web projects
195 lines • 13.7 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/modules/icon/icon.component.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Component, ElementRef, Input } from '@angular/core';
import * as _ from 'lodash';
export class IconComponent {
/**
* @param {?} elementRef
*/
constructor(elementRef) {
this.elementRef = elementRef;
this.mode = 'md';
this._classes = [];
}
/**
* @return {?}
*/
ngOnInit() {
this._updateClasses();
}
/**
* @return {?}
*/
ngOnChanges() {
this._updateClasses();
}
/**
* @return {?}
*/
get offsetTop() {
return this.elementRef.nativeElement.offsetTop;
}
/**
* @return {?}
*/
getValue() {
switch (this.mode) {
case 'fa':
case 'fas':
case 'far':
case 'fab':
case 'uex':
return null;
default:
return this.name;
}
}
/**
* @private
* @return {?}
*/
_updateClasses() {
this._clearClasses();
switch (this.mode) {
case 'fa':
case 'fas':
case 'far':
case 'fab':
this._classes.push(this.mode);
this._classes.push('fa-fw');
this._classes.push(`fa-${this.name}`);
break;
case 'uex':
this._classes.push(`uex-custom-icons`);
this._classes.push(`uex-custom-icon-${this.name}`);
break;
default:
this._classes.push('material-icons');
}
/** @type {?} */
const size_class = this._getSizeClass();
if (size_class) {
this._classes.push(size_class);
}
/** @type {?} */
const color_class = this._getColorClass();
if (color_class) {
this._classes.push(color_class);
}
this._setClasses();
}
/**
* @private
* @return {?}
*/
_clearClasses() {
if (this._classes) {
/** @type {?} */
const current_classes = this.elementRef.nativeElement.className.split(' ');
this._classes.forEach((/**
* @param {?} _class
* @return {?}
*/
(_class) => {
/** @type {?} */
const index = current_classes.indexOf(_class);
if (index > -1) {
current_classes.splice(index, 1);
}
}));
this._classes = [];
this.elementRef.nativeElement.className = current_classes.join(' ');
}
}
/**
* @private
* @return {?}
*/
_setClasses() {
/** @type {?} */
const current_classes = this.elementRef.nativeElement.className.split(' ').filter((/**
* @param {?} i
* @return {?}
*/
(i) => !!i));
this.elementRef.nativeElement.className = _.concat(current_classes, this._classes).join(' ');
}
/**
* @private
* @return {?}
*/
_getSizeClass() {
switch (this.size) {
case '2x':
case 'large':
case 'lg':
return 'size-2x';
case '3x':
case 'xlarge':
case 'xl':
return 'size-3x';
case '4x':
case 'xxlarge':
case 'xxl':
return 'size-4x';
case '5x':
case 'xxxlarge':
case 'xxxl':
return 'size-5x';
default: return null;
}
}
/**
* @private
* @return {?}
*/
_getColorClass() {
if (!this.color) {
return;
}
return `text-${this.color}`;
}
}
IconComponent.decorators = [
{ type: Component, args: [{
selector: 'uex-icon',
template: '{{getValue()}}',
host: {
class: 'uex-icon'
}
}] }
];
/** @nocollapse */
IconComponent.ctorParameters = () => [
{ type: ElementRef }
];
IconComponent.propDecorators = {
mode: [{ type: Input }],
color: [{ type: Input }],
size: [{ type: Input }],
name: [{ type: Input }]
};
if (false) {
/** @type {?} */
IconComponent.prototype.mode;
/** @type {?} */
IconComponent.prototype.color;
/** @type {?} */
IconComponent.prototype.size;
/** @type {?} */
IconComponent.prototype.name;
/**
* @type {?}
* @private
*/
IconComponent.prototype._classes;
/**
* @type {?}
* @private
*/
IconComponent.prototype.elementRef;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdWV4L3dlYi1leHRlbnNpb25zLyIsInNvdXJjZXMiOlsibGliL21vZHVsZXMvaWNvbi9pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFaEYsT0FBTyxLQUFLLENBQUMsTUFBTSxRQUFRLENBQUM7QUFTNUIsTUFBTSxPQUFPLGFBQWE7Ozs7SUFNeEIsWUFDVSxVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBTnZCLFNBQUksR0FBYSxJQUFJLENBQUM7UUFTdkIsYUFBUSxHQUFrQixFQUFFLENBQUM7SUFGakMsQ0FBQzs7OztJQUlFLFFBQVE7UUFDYixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQzs7OztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7Ozs7SUFFRCxJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUM7SUFDakQsQ0FBQzs7OztJQUVNLFFBQVE7UUFDYixRQUFRLElBQUksQ0FBQyxJQUFJLEVBQUU7WUFDakIsS0FBSyxJQUFJLENBQUM7WUFDVixLQUFLLEtBQUssQ0FBQztZQUNYLEtBQUssS0FBSyxDQUFDO1lBQ1gsS0FBSyxLQUFLLENBQUM7WUFDWCxLQUFLLEtBQUs7Z0JBQ1IsT0FBTyxJQUFJLENBQUM7WUFDZDtnQkFDRSxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7U0FDcEI7SUFDSCxDQUFDOzs7OztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBRXJCLFFBQVEsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNqQixLQUFLLElBQUksQ0FBQztZQUNWLEtBQUssS0FBSyxD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QUFDO1lBQ2hCLEtBQUssTUFBTTtnQkFDVCxPQUFPLFNBQVMsQ0FBQztZQUNuQixPQUFPLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQztTQUN0QjtJQUNILENBQUM7Ozs7O0lBRU8sY0FBYztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUFFLE9BQU87U0FBRTtRQUM1QixPQUFPLFFBQVEsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzlCLENBQUM7OztZQW5IRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLFVBQVU7Z0JBQ3BCLFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLElBQUksRUFBRTtvQkFDSixLQUFLLEVBQUUsVUFBVTtpQkFDbEI7YUFDRjs7OztZQVZtQixVQUFVOzs7bUJBWTNCLEtBQUs7b0JBQ0wsS0FBSzttQkFDTCxLQUFLO21CQUNMLEtBQUs7Ozs7SUFITiw2QkFBK0I7O0lBQy9CLDhCQUF1Qjs7SUFDdkIsNkJBQXNCOztJQUN0Qiw2QkFBc0I7Ozs7O0lBTXRCLGlDQUFxQzs7Ozs7SUFIbkMsbUNBQThCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBJbnB1dCwgT25Jbml0LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAndWV4LWljb24nLFxyXG4gIHRlbXBsYXRlOiAne3tnZXRWYWx1ZSgpfX0nLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiAndWV4LWljb24nXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcclxuICBASW5wdXQoKSBtb2RlOiBJY29uTW9kZSA9ICdtZCc7XHJcbiAgQElucHV0KCkgY29sb3I6IHN0cmluZztcclxuICBASW5wdXQoKSBzaXplOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbmFtZTogc3RyaW5nO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgZWxlbWVudFJlZjogRWxlbWVudFJlZlxyXG4gICkgeyB9XHJcblxyXG4gIHByaXZhdGUgX2NsYXNzZXM6IEFycmF5PHN0cmluZz4gPSBbXTtcclxuXHJcbiAgcHVibGljIG5nT25Jbml0KCkge1xyXG4gICAgdGhpcy5fdXBkYXRlQ2xhc3NlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG5nT25DaGFuZ2VzKCkge1xyXG4gICAgdGhpcy5fdXBkYXRlQ2xhc3NlcygpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGdldCBvZmZzZXRUb3AoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZ2V0VmFsdWUoKTogc3RyaW5nIHtcclxuICAgIHN3aXRjaCAodGhpcy5tb2RlKSB7XHJcbiAgICAgIGNhc2UgJ2ZhJzpcclxuICAgICAgY2FzZSAnZmFzJzpcclxuICAgICAgY2FzZSAnZmFyJzpcclxuICAgICAgY2FzZSAnZmFiJzpcclxuICAgICAgY2FzZSAndWV4JzpcclxuICAgICAgICByZXR1cm4gbnVsbDtcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gdGhpcy5uYW1lO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfdXBkYXRlQ2xhc3NlcygpIHtcclxuICAgIHRoaXMuX2NsZWFyQ2xhc3NlcygpO1xyXG5cclxuICAgIHN3aXRjaCAodGhpcy5tb2RlKSB7XHJcbiAgICAgIGNhc2UgJ2ZhJzpcclxuICAgICAgY2FzZSAnZmFzJzpcclxuICAgICAgY2FzZSAnZmFyJzpcclxuICAgICAgY2FzZSAnZmFiJzpcclxuICAgICAgICB0aGlzLl9jbGFzc2VzLnB1c2godGhpcy5tb2RlKTtcclxuICAgICAgICB0aGlzLl9jbGFzc2VzLnB1c2goJ2ZhLWZ3Jyk7XHJcbiAgICAgICAgdGhpcy5fY2xhc3Nlcy5wdXNoKGBmYS0ke3RoaXMubmFtZX1gKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSAndWV4JzpcclxuICAgICAgICB0aGlzLl9jbGFzc2VzLnB1c2goYHVleC1jdXN0b20taWNvbnNgKTtcclxuICAgICAgICB0aGlzLl9jbGFzc2VzLnB1c2goYHVleC1jdXN0b20taWNvbi0ke3RoaXMubmFtZX1gKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLl9jbGFzc2VzLnB1c2goJ21hdGVyaWFsLWljb25zJyk7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3Qgc2l6ZV9jbGFzcyA9IHRoaXMuX2dldFNpemVDbGFzcygpO1xyXG4gICAgaWYgKHNpemVfY2xhc3MpIHsgdGhpcy5fY2xhc3Nlcy5wdXNoKHNpemVfY2xhc3MpOyB9XHJcblxyXG4gICAgY29uc3QgY29sb3JfY2xhc3MgPSB0aGlzLl9nZXRDb2xvckNsYXNzKCk7XHJcbiAgICBpZiAoY29sb3JfY2xhc3MpIHsgdGhpcy5fY2xhc3Nlcy5wdXNoKGNvbG9yX2NsYXNzKTsgfVxyXG5cclxuICAgIHRoaXMuX3NldENsYXNzZXMoKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgX2NsZWFyQ2xhc3NlcygpIHtcclxuICAgIGlmICh0aGlzLl9jbGFzc2VzKSB7XHJcbiAgICAgIGNvbnN0IGN1cnJlbnRfY2xhc3NlcyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5zcGxpdCgnICcpO1xyXG4gICAgICB0aGlzLl9jbGFzc2VzLmZvckVhY2goKF9jbGFzcykgPT4ge1xyXG4gICAgICAgIGNvbnN0IGluZGV4ID0gY3VycmVudF9jbGFzc2VzLmluZGV4T2YoX2NsYXNzKTtcclxuICAgICAgICBpZiAoaW5kZXggPiAtMSkgeyBjdXJyZW50X2NsYXNzZXMuc3BsaWNlKGluZGV4LCAxKTsgfVxyXG4gICAgICB9KTtcclxuICAgICAgdGhpcy5fY2xhc3NlcyA9IFtdO1xyXG4gICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jbGFzc05hbWUgPSBjdXJyZW50X2NsYXNzZXMuam9pbignICcpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfc2V0Q2xhc3NlcygpIHtcclxuICAgIGNvbnN0IGN1cnJlbnRfY2xhc3NlcyA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZS5zcGxpdCgnICcpLmZpbHRlcigoaSkgPT4gISFpKTtcclxuICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTmFtZSA9IF8uY29uY2F0KGN1cnJlbnRfY2xhc3NlcywgdGhpcy5fY2xhc3Nlcykuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0U2l6ZUNsYXNzKCk6IHN0cmluZyB7XHJcbiAgICBzd2l0Y2ggKHRoaXMuc2l6ZSkge1xyXG4gICAgICBjYXNlICcyeCc6XHJcbiAgICAgIGNhc2UgJ2xhcmdlJzpcclxuICAgICAgY2FzZSAnbGcnOlxyXG4gICAgICAgIHJldHVybiAnc2l6ZS0yeCc7XHJcbiAgICAgIGNhc2UgJzN4JzpcclxuICAgICAgY2FzZSAneGxhcmdlJzpcclxuICAgICAgY2FzZSAneGwnOlxyXG4gICAgICAgIHJldHVybiAnc2l6ZS0zeCc7XHJcbiAgICAgIGNhc2UgJzR4JzpcclxuICAgICAgY2FzZSAneHhsYXJnZSc6XHJcbiAgICAgIGNhc2UgJ3h4bCc6XHJcbiAgICAgICAgcmV0dXJuICdzaXplLTR4JztcclxuICAgICAgY2FzZSAnNXgnOlxyXG4gICAgICBjYXNlICd4eHhsYXJnZSc6XHJcbiAgICAgIGNhc2UgJ3h4eGwnOlxyXG4gICAgICAgIHJldHVybiAnc2l6ZS01eCc7XHJcbiAgICAgIGRlZmF1bHQ6IHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfZ2V0Q29sb3JDbGFzcygpOiBzdHJpbmcge1xyXG4gICAgaWYgKCF0aGlzLmNvbG9yKSB7IHJldHVybjsgfVxyXG4gICAgcmV0dXJuIGB0ZXh0LSR7dGhpcy5jb2xvcn1gO1xyXG4gIH1cclxufVxyXG5cclxuZXhwb3J0IHR5cGUgSWNvbk1vZGUgPSAnbWQnIHwgJ2ZhJyB8ICdmYXMnIHwgJ2ZhcicgfCAnZmFiJyB8ICd1ZXgnO1xyXG4iXX0=