/*
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 { __extends } from "tslib";
import { StackedColumnSeries } from "./StackedColumnSeries";
import { IStacked100Series_$type } from "./IStacked100Series";
import { Defaults } from "./Defaults";
import { markType } from "igniteui-angular-core";
import { Stacked100DataPreparer } from "./Stacked100DataPreparer";
import { isNaN_ } from "igniteui-angular-core";
import { StackedColumnSeriesView } from "./StackedColumnSeriesView";
import { Stacked100ColumnBucketCalculator } from "./Stacked100ColumnBucketCalculator";
/**
 * @hidden
 */
var Stacked100ColumnSeries = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(Stacked100ColumnSeries, _super);
    function Stacked100ColumnSeries() {
        var _this = _super.call(this) || this;
        _this.ab = Stacked100ColumnSeries.$;
        return _this;
    }
    Stacked100ColumnSeries.prototype.get_abg = function () {
        return true;
    };
    Stacked100ColumnSeries.prototype.jn = function () {
        if (!isNaN_(this.jm)) {
            return _super.prototype.jn.call(this);
        }
        return Defaults.h;
    };
    Stacked100ColumnSeries.prototype.ac = function () {
        _super.prototype.ac.call(this);
        this.ry(false);
    };
    Stacked100ColumnSeries.prototype.ct = function () {
        return new Stacked100ColumnSeriesView(this);
    };
    Stacked100ColumnSeries.prototype.q7 = function (a) {
        _super.prototype.q7.call(this, a);
        this.acl = a;
    };
    Stacked100ColumnSeries.prototype.aa7 = function () {
        return this.acl;
    };
    Stacked100ColumnSeries.prototype.abx = function () {
        _super.prototype.abx.call(this);
        Stacked100DataPreparer.a(this);
    };
    Stacked100ColumnSeries.prototype.abm = function (a, b) {
        var c = 0;
        for (var d = 0; d < this.series.count; d++) {
            c += this.series._inner[d].ak.item(b);
        }
        return (this.series._inner[a].ak.item(b) / c) * 100;
    };
    Object.defineProperty(Stacked100ColumnSeries.prototype, "useHighMarkerFidelity", {
        get: function () {
            return this.z0;
        },
        enumerable: false,
        configurable: true
    });
    Stacked100ColumnSeries.$t = markType(Stacked100ColumnSeries, 'Stacked100ColumnSeries', StackedColumnSeries.$, [IStacked100Series_$type]);
    return Stacked100ColumnSeries;
}(StackedColumnSeries));
export { Stacked100ColumnSeries };
/**
 * @hidden
 */
var Stacked100ColumnSeriesView = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(Stacked100ColumnSeriesView, _super);
    function Stacked100ColumnSeriesView(a) {
        var _this = _super.call(this, a) || this;
        _this.dn = null;
        _this.dn = a;
        return _this;
    }
    Stacked100ColumnSeriesView.prototype.da = function () {
        return new Stacked100ColumnBucketCalculator(this);
    };
    Stacked100ColumnSeriesView.prototype.a4 = function () {
        _super.prototype.a4.call(this);
        if (!this.t) {
            this.di.xk = Defaults.c;
            this.di.jt = Defaults.i;
        }
    };
    Stacked100ColumnSeriesView.$t = markType(Stacked100ColumnSeriesView, 'Stacked100ColumnSeriesView', StackedColumnSeriesView.$);
    return Stacked100ColumnSeriesView;
}(StackedColumnSeriesView));
export { Stacked100ColumnSeriesView };
