/*
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 { DataPieBaseChart } from "./DataPieBaseChart";
import { typeCast, enumGetBox, markType } from "igniteui-react-core";
import { List$1 } from "igniteui-react-core";
import { DataSeriesType_$type } from "igniteui-react-core";
import { IDataSeriesAdapterRule_$type } from "igniteui-react-core";
import { SimplePieSeriesRule } from "igniteui-react-core";
import { SubCollectionsRule } from "igniteui-react-core";
import { DataPieChartType_$type } from "./DataPieChartType";
import { CategoryTransitionInMode_$type } from "./CategoryTransitionInMode";
import { TransitionInSpeedType_$type } from "./TransitionInSpeedType";
import { BrushUtil } from "igniteui-react-core";
import { AxisDefaults } from "./AxisDefaults";
import { Defaults } from "./Defaults";
import { DeviceUtils } from "igniteui-react-core";
import { RadialBase } from "./RadialBase";
import { RadialPieSeries } from "./RadialPieSeries";
/**
 * @hidden
 */
var DataPieChart = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(DataPieChart, _super);
    function DataPieChart() {
        var _this = _super.call(this) || this;
        _this.akc = 1000;
        _this.akd = 1000;
        _this.aj6 = null;
        _this.aj7 = null;
        _this.aj2 = 0;
        _this.aka = true;
        _this.aj0 = 0;
        _this.aj4 = 3;
        _this.ue();
        return _this;
    }
    DataPieChart.prototype.ux = function () {
        _super.prototype.ux.call(this);
        if (this.dataChart == null) {
            return;
        }
        var a = this.dataChart.c8.j.e();
        if (this.aft == null) {
            this.aft = a.k;
        }
        if (this.af0 == null) {
            this.af0 = a.k;
        }
        this.abs = 0;
        this.af1 = BrushUtil.h(0, 0, 0, 0);
        this.af4 = BrushUtil.h(0, 0, 0, 0);
        this.afx = BrushUtil.h(0, 0, 0, 0);
        this.afu = BrushUtil.h(0, 0, 0, 0);
        this.aa7 = 0;
        this.afy = BrushUtil.h(0, 0, 0, 0);
        this.aa8 = AxisDefaults.e;
        this.agf = 1;
        this.agg = 1;
        this.bf = 1;
        this.gp = true;
        this.jm = Defaults.j;
        this.xw = Defaults.ae;
        this.xr = Defaults.af;
        this.xs = Defaults.ag;
        this.gi = true;
        this.hl = true;
        this.g6 = false;
        this.he = false;
        this.b3 = 1;
        this.bz = 11;
        this.akb = true;
        this.xq = BrushUtil.h(255, 255, 255, 255);
        this.jl = DeviceUtils.g(2);
        this.gm = true;
        this.gk = true;
        this.gg = true;
        this.dp = 4;
        this.dm = 4;
    };
    DataPieChart.prototype.uz = function (a, b) {
        _super.prototype.uz.call(this, a, b);
        a.kc = this.ake;
        a.kd = this.akf;
        a.dc = this.aj8;
        a.dd = this.aj9;
    };
    DataPieChart.prototype.vo = function (a, b, c) {
        var _this = this;
        _super.prototype.vo.call(this, a, b, c);
        switch (a) {
            case "TransitionInDuration":
                this.um(function (d) { return d.kc = _this.ake; });
                break;
            case "TransitionOutDuration":
                this.um(function (d) { return d.kd = _this.akf; });
                break;
            case "TransitionInEasingFunction":
                this.um(function (d) { return d.dc = _this.aj8; });
                break;
            case "TransitionOutEasingFunction":
                this.um(function (d) { return d.dd = _this.aj9; });
                break;
        }
    };
    Object.defineProperty(DataPieChart.prototype, "ake", {
        get: function () {
            return this.akc;
        },
        set: function (a) {
            var b = this.ake;
            if (a != b) {
                this.akc = a;
                this.vl("TransitionInDuration", b, this.ake);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "akf", {
        get: function () {
            return this.akd;
        },
        set: function (a) {
            var b = this.akf;
            if (a != b) {
                this.akd = a;
                this.vl("TransitionOutDuration", b, this.akf);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "aj8", {
        get: function () {
            return this.aj6;
        },
        set: function (a) {
            var b = this.aj8;
            if (a != b) {
                this.aj6 = a;
                this.vl("TransitionInEasingFunction", b, this.aj8);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "aj9", {
        get: function () {
            return this.aj7;
        },
        set: function (a) {
            var b = this.aj9;
            if (a != b) {
                this.aj7 = a;
                this.vl("TransitionOutEasingFunction", b, this.aj9);
            }
        },
        enumerable: false,
        configurable: true
    });
    DataPieChart.prototype.akh = function () {
        var cvd_ = this.lv();
        cvd_.scaleByViewport();
        return (cvd_.serialize());
    };
    DataPieChart.prototype.get_hy = function () {
        return ((function () {
            var $ret = new List$1(DataSeriesType_$type, 0);
            $ret.add(34);
            return $ret;
        })());
    };
    Object.defineProperty(DataPieChart.prototype, "hy", {
        get: function () {
            return this.get_hy();
        },
        enumerable: false,
        configurable: true
    });
    DataPieChart.prototype.get_hx = function () {
        return ((function () {
            var $ret = new List$1(IDataSeriesAdapterRule_$type, 0);
            $ret.add(new SimplePieSeriesRule());
            $ret.add(new SubCollectionsRule());
            return $ret;
        })());
    };
    Object.defineProperty(DataPieChart.prototype, "hx", {
        get: function () {
            return this.get_hx();
        },
        enumerable: false,
        configurable: true
    });
    DataPieChart.prototype.get_ahd = function () {
        return false;
    };
    DataPieChart.prototype.bi = function (a) {
        if (this.aj3 == 0) {
            return a.suggestedSeries;
        }
        if (this.aj3 == 1) {
            return 34;
        }
        return 34;
    };
    DataPieChart.prototype.dg = function (a, b) {
        var c = _super.prototype.dg.call(this, a, b);
        return c;
    };
    DataPieChart.prototype.us = function (a, b) {
        _super.prototype.us.call(this, a, b);
    };
    DataPieChart.prototype.uy = function (a, b) {
        _super.prototype.uy.call(this, a, b);
        var c = typeCast(RadialBase.$, a);
        if (c == null) {
            return;
        }
        c.zk = this.akb;
        c.yu = this.aj1;
        c.c3 = this.aj5;
    };
    DataPieChart.prototype.t3 = function (a, b) {
        _super.prototype.t3.call(this, a, b);
        var c = typeCast(RadialPieSeries.$, a);
        if (c != null) {
            c.w2 = this.c6(a, b);
        }
    };
    DataPieChart.prototype.c5 = function (a) {
        return 13;
    };
    DataPieChart.prototype.vl = function (a, b, c) {
        _super.prototype.vl.call(this, a, b, c);
        switch (a) {
            case "ChartType":
                this.ud();
                break;
        }
    };
    DataPieChart.prototype.get_cf = function () {
        return 4;
    };
    Object.defineProperty(DataPieChart.prototype, "cf", {
        get: function () {
            return this.get_cf();
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "aj3", {
        get: function () {
            return this.aj2;
        },
        set: function (a) {
            if (a != this.aj2) {
                var b = this.aj3;
                this.aj2 = a;
                this.vl("ChartType", enumGetBox(DataPieChartType_$type, b), enumGetBox(DataPieChartType_$type, this.aj3));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "akb", {
        get: function () {
            return this.aka;
        },
        set: function (a) {
            var b = this.akb;
            if (a != b) {
                this.aka = a;
                this.vl("IsTransitionInEnabled", b, this.akb);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "aj1", {
        get: function () {
            return this.aj0;
        },
        set: function (a) {
            var b = this.aj1;
            if (a != b) {
                this.aj0 = a;
                this.vl("TransitionInMode", enumGetBox(CategoryTransitionInMode_$type, b), enumGetBox(CategoryTransitionInMode_$type, this.aj1));
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(DataPieChart.prototype, "aj5", {
        get: function () {
            return this.aj4;
        },
        set: function (a) {
            var b = this.aj5;
            if (a != b) {
                this.aj4 = a;
                this.vl("TransitionInSpeedType", enumGetBox(TransitionInSpeedType_$type, b), enumGetBox(TransitionInSpeedType_$type, this.aj5));
            }
        },
        enumerable: false,
        configurable: true
    });
    DataPieChart.$t = markType(DataPieChart, 'DataPieChart', DataPieBaseChart.$);
    return DataPieChart;
}(DataPieBaseChart));
export { DataPieChart };
