/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import * as tslib_1 from "tslib";
import { Base, markType } from "igniteui-react-core/ES5/type";
import { INumberAbbreviator_$type } from "./INumberAbbreviator";
import { numberToString2 } from "igniteui-react-core/ES5/numberExtended";
/**
 * @hidden
 */
var NumberAbbreviator = /** @class */ (function (_super) {
    tslib_1.__extends(NumberAbbreviator, _super);
    function NumberAbbreviator() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    NumberAbbreviator.prototype.abbreviate = function (a) {
        var b = "0.#";
        var c = Math.abs(a);
        var d = ['Q', 'T', 'B', 'M', 'K'];
        var e = [1E+15, 1000000000000, 1000000000, 1000000, 1000];
        for (var f = 0; f < d.length; f++) {
            if (c >= e[f]) {
                return numberToString2((a / e[f]), b) + d[f];
            }
        }
        return a.toString();
    };
    NumberAbbreviator.$t = markType(NumberAbbreviator, 'NumberAbbreviator', Base.$, [INumberAbbreviator_$type]);
    return NumberAbbreviator;
}(Base));
export { NumberAbbreviator };
