vix-ui
Version:
88 lines • 6.11 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { Component, Input } from '@angular/core';
var DeltaComponent = /** @class */ (function () {
function DeltaComponent() {
this.first = 0;
this.second = 0;
this.decimalPts = 4;
this.diff = '0';
this.color = 'neutral';
}
/**
* @return {?}
*/
DeltaComponent.prototype.ngOnInit = /**
* @return {?}
*/
function () {
// Decimal pts must be between 0-8 inclusive
this.decimalPts = Math.min(Math.max(this.decimalPts, 0), 8);
this.computeDelta();
};
/**
* @return {?}
*/
DeltaComponent.prototype.ngOnChanges = /**
* @return {?}
*/
function () {
this.computeDelta();
};
/**
* @return {?}
*/
DeltaComponent.prototype.computeDelta = /**
* @return {?}
*/
function () {
if (this.first === 0 || !+this.first || !+this.second) {
this.diff = '-';
this.color = 'none';
}
else {
/** @type {?} */
var multiplier = Math.pow(10, this.decimalPts);
/** @type {?} */
var diff = Math.floor((this.second - this.first) / this.first * multiplier * 100) / multiplier;
if (diff > 0) {
this.diff = "+" + diff + "%";
this.color = 'increase';
}
else if (diff < 0) {
this.diff = diff + "%";
this.color = 'decrease';
}
}
};
DeltaComponent.decorators = [
{ type: Component, args: [{
selector: 'vix-delta',
template: "<span class=\"color-{{ color }}\">{{ diff }}</span>\n",
styles: [".color-neutral{color:#000}.color-increase{color:green}.color-decrease{color:red}.color-none{color:gray}"]
}] }
];
DeltaComponent.ctorParameters = function () { return []; };
DeltaComponent.propDecorators = {
first: [{ type: Input }],
second: [{ type: Input }],
decimalPts: [{ type: Input }]
};
return DeltaComponent;
}());
export { DeltaComponent };
if (false) {
/** @type {?} */
DeltaComponent.prototype.first;
/** @type {?} */
DeltaComponent.prototype.second;
/** @type {?} */
DeltaComponent.prototype.decimalPts;
/** @type {?} */
DeltaComponent.prototype.diff;
/** @type {?} */
DeltaComponent.prototype.color;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVsdGEuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdml4LXVpLyIsInNvdXJjZXMiOlsidml4LXBlcmZvcm1hbmNlLXN0YXRzL2RlbHRhLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQXFCLE1BQU0sZUFBZSxDQUFDO0FBRXBFO0lBYUU7UUFOUyxVQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsV0FBTSxHQUFHLENBQUMsQ0FBQztRQUNYLGVBQVUsR0FBRyxDQUFDLENBQUM7UUFDeEIsU0FBSSxHQUFHLEdBQUcsQ0FBQztRQUNYLFVBQUssR0FBRyxTQUFTLENBQUM7SUFFSCxDQUFDOzs7O0lBRWhCLGlDQUFROzs7SUFBUjtRQUNFLDRDQUE0QztRQUM1QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzVELElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs7O0lBRUQsb0NBQVc7OztJQUFYO1FBQ0UsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7Ozs7SUFFRCxxQ0FBWTs7O0lBQVo7UUFDRSxJQUFJLElBQUksQ0FBQyxLQUFLLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ3JELElBQUksQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDO1lBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsTUFBTSxDQUFDO1NBQ3JCO2FBQU07O2dCQUNDLFVBQVUsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDOztnQkFDMUMsSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLFVBQVUsR0FBRyxHQUFHLENBQUMsR0FBRyxVQUFVO1lBQ2hHLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtnQkFDWixJQUFJLENBQUMsSUFBSSxHQUFHLE1BQUksSUFBSSxNQUFHLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxLQUFLLEdBQUcsVUFBVSxDQUFDO2FBQ3pCO2lCQUFNLElBQUksSUFBSSxHQUFHLENBQUMsRUFBRTtnQkFDbkIsSUFBSSxDQUFDLElBQUksR0FBTSxJQUFJLE1BQUcsQ0FBQztnQkFDdkIsSUFBSSxDQUFDLEtBQUssR0FBRyxVQUFVLENBQUM7YUFDekI7U0FDRjtJQUNILENBQUM7O2dCQXhDRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLGlFQUFxQzs7aUJBRXRDOzs7O3dCQUdFLEtBQUs7eUJBQ0wsS0FBSzs2QkFDTCxLQUFLOztJQWlDUixxQkFBQztDQUFBLEFBMUNELElBMENDO1NBckNZLGNBQWM7OztJQUV6QiwrQkFBbUI7O0lBQ25CLGdDQUFvQjs7SUFDcEIsb0NBQXdCOztJQUN4Qiw4QkFBVzs7SUFDWCwrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkNoYW5nZXMsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd2aXgtZGVsdGEnLFxuICB0ZW1wbGF0ZVVybDogJy4vZGVsdGEuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9kZWx0YS5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBEZWx0YUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcblxuICBASW5wdXQoKSBmaXJzdCA9IDA7XG4gIEBJbnB1dCgpIHNlY29uZCA9IDA7XG4gIEBJbnB1dCgpIGRlY2ltYWxQdHMgPSA0O1xuICBkaWZmID0gJzAnO1xuICBjb2xvciA9ICduZXV0cmFsJztcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gRGVjaW1hbCBwdHMgbXVzdCBiZSBiZXR3ZWVuIDAtOCBpbmNsdXNpdmVcbiAgICB0aGlzLmRlY2ltYWxQdHMgPSBNYXRoLm1pbihNYXRoLm1heCh0aGlzLmRlY2ltYWxQdHMsIDApLCA4KTtcbiAgICB0aGlzLmNvbXB1dGVEZWx0YSgpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5jb21wdXRlRGVsdGEoKTtcbiAgfVxuXG4gIGNvbXB1dGVEZWx0YSgpIHtcbiAgICBpZiAodGhpcy5maXJzdCA9PT0gMCB8fCAhK3RoaXMuZmlyc3QgfHwgISt0aGlzLnNlY29uZCkge1xuICAgICAgdGhpcy5kaWZmID0gJy0nO1xuICAgICAgdGhpcy5jb2xvciA9ICdub25lJztcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgbXVsdGlwbGllciA9IE1hdGgucG93KDEwLCB0aGlzLmRlY2ltYWxQdHMpO1xuICAgICAgY29uc3QgZGlmZiA9IE1hdGguZmxvb3IoKHRoaXMuc2Vjb25kIC0gdGhpcy5maXJzdCkgLyB0aGlzLmZpcnN0ICogbXVsdGlwbGllciAqIDEwMCkgLyBtdWx0aXBsaWVyO1xuICAgICAgaWYgKGRpZmYgPiAwKSB7XG4gICAgICAgIHRoaXMuZGlmZiA9IGArJHtkaWZmfSVgO1xuICAgICAgICB0aGlzLmNvbG9yID0gJ2luY3JlYXNlJztcbiAgICAgIH0gZWxzZSBpZiAoZGlmZiA8IDApIHtcbiAgICAgICAgdGhpcy5kaWZmID0gYCR7ZGlmZn0lYDtcbiAgICAgICAgdGhpcy5jb2xvciA9ICdkZWNyZWFzZSc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==