/*
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 { PolarLineSeriesBase } from "./PolarLineSeriesBase";
import { DependencyProperty } from "igniteui-angular-core";
import { runOn, markType, markDep } from "igniteui-angular-core";
import { Path } from "igniteui-angular-core";
import { PropertyMetadata } from "igniteui-angular-core";
import { PolarLineSeriesBaseView } from "./PolarLineSeriesBaseView";
import { PathGeometry } from "igniteui-angular-core";
import { Defaults } from "./Defaults";
import { Extensions } from "igniteui-angular-core";
import { Numeric } from "igniteui-angular-core";
import { Color } from "igniteui-angular-core";
/**
 * @hidden
 */
var PolarSplineAreaSeries = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(PolarSplineAreaSeries, _super);
    function PolarSplineAreaSeries() {
        var _this = _super.call(this) || this;
        _this.ab = PolarSplineAreaSeries.$;
        return _this;
    }
    PolarSplineAreaSeries.prototype.bk = function () {
        return new PolarSplineAreaSeries();
    };
    PolarSplineAreaSeries.prototype.z8 = function () {
        return false;
    };
    PolarSplineAreaSeries.prototype.get_ew = function () {
        return true;
    };
    PolarSplineAreaSeries.prototype.get_f1 = function () {
        return true;
    };
    PolarSplineAreaSeries.prototype.ct = function () {
        return new PolarSplineAreaSeriesView(this);
    };
    PolarSplineAreaSeries.prototype.q7 = function (a) {
        _super.prototype.q7.call(this, a);
        this.ac4 = a;
    };
    PolarSplineAreaSeries.prototype.ac2 = function (a) {
        var b = a;
        b.dn();
    };
    PolarSplineAreaSeries.prototype.ac3 = function (a, b) {
        this.ac2(b);
        if (a.n.count < 1) {
            return;
        }
        var c = b;
        c.dp(a.n, this.ac5);
        this.zf.az(this, this.z7(), runOn(this, this.yx));
        var d = false;
        var e = this.zf.b;
        if (e != null) {
            d = true;
        }
        if (d) {
            this.abm(-1, this.zt.count, b.t);
        }
        var f = c.dv;
        var g = c.du;
        this.zf.ad(f, true, false, true, true);
        this.zf.ad(g, false, true, false, false);
        g._opacity = this.zf.j * this.ia;
    };
    PolarSplineAreaSeries.prototype.get_acz = function () {
        return true;
    };
    PolarSplineAreaSeries.prototype.rg = function (a, b, c, d) {
        _super.prototype.rg.call(this, a, b, c, d);
        switch (b) {
            case PolarSplineAreaSeries.$$p[0]:
                this.ry(false);
                break;
        }
    };
    PolarSplineAreaSeries.$t = markType(PolarSplineAreaSeries, 'PolarSplineAreaSeries', PolarLineSeriesBase.$);
    PolarSplineAreaSeries.$$p = markDep(DependencyProperty, PropertyMetadata, PolarSplineAreaSeries, 'raisePropertyChanged', ['Stiffness:ac5:ac7', [1, 0.5]]);
    return PolarSplineAreaSeries;
}(PolarLineSeriesBase));
export { PolarSplineAreaSeries };
/**
 * @hidden
 */
var PolarSplineAreaSeriesView = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(PolarSplineAreaSeriesView, _super);
    function PolarSplineAreaSeriesView(a) {
        var _this = _super.call(this, a) || this;
        _this.dm = null;
        _this.dt = ((function () {
            var $ret = new Path();
            $ret.an = new PathGeometry();
            return $ret;
        })());
        _this.ds = ((function () {
            var $ret = new Path();
            $ret.an = new PathGeometry();
            return $ret;
        })());
        _this.dr = ((function () {
            var $ret = new Path();
            $ret.an = new PathGeometry();
            return $ret;
        })());
        _this.dq = ((function () {
            var $ret = new Path();
            $ret.an = new PathGeometry();
            return $ret;
        })());
        _this.dm = a;
        return _this;
    }
    PolarSplineAreaSeriesView.prototype.a4 = function () {
        _super.prototype.a4.call(this);
        if (!this.t) {
            this.dm.xk = Defaults.e;
        }
    };
    Object.defineProperty(PolarSplineAreaSeriesView.prototype, "du", {
        get: function () {
            return this.ds;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(PolarSplineAreaSeriesView.prototype, "dv", {
        get: function () {
            return this.dt;
        },
        enumerable: false,
        configurable: true
    });
    PolarSplineAreaSeriesView.prototype.dn = function () {
        Extensions.e(this.ds.an);
        Extensions.e(this.dt.an);
        Extensions.e(this.dq.an);
        Extensions.e(this.dr.an);
        this.a2();
    };
    PolarSplineAreaSeriesView.prototype.dp = function (a, b) {
        this.dt.an.c = Numeric.h(a.count + 1, function (c) { return c < a.count ? a._inner[c].x : a._inner[c - a.count].x; }, function (c) { return c < a.count ? a._inner[c].y : a._inner[c - a.count].y; }, b);
        this.ds.an.c = Numeric.h(a.count + 1, function (c) { return c < a.count ? a._inner[c].x : a._inner[c - a.count].x; }, function (c) { return c < a.count ? a._inner[c].y : a._inner[c - a.count].y; }, b);
        this.a2();
    };
    PolarSplineAreaSeriesView.prototype.bp = function () {
        _super.prototype.bp.call(this);
    };
    PolarSplineAreaSeriesView.prototype.bq = function () {
        _super.prototype.bq.call(this);
        var a = this.b3();
        this.dq.an = this.ds.an;
        this.dr.an = this.dt.an;
        this.dq._fill = a;
        this.dq._opacity = 1;
        this.dr._stroke = a;
        this.dr.ad = this.f.ig + 3;
    };
    PolarSplineAreaSeriesView.prototype.bj = function (a, b) {
        _super.prototype.bj.call(this, a, b);
        if (a.d) {
            if (b) {
                a.t(this.dq);
                a.t(this.dr);
            }
            else {
                a.t(this.ds);
                a.t(this.dt);
            }
        }
    };
    PolarSplineAreaSeriesView.prototype.ax = function (a) {
        _super.prototype.ax.call(this, a);
        this.f.bc.exportPathData(a, this.dt, "polarShape", ["Main"]);
        this.f.bc.exportPathData(a, this.ds, "fillShape", ["Fill"]);
    };
    PolarSplineAreaSeriesView.prototype.an = function () {
        var a = new Color();
        a.colorString = "rgba(95,95,95,0.5)";
        this.f.wb = a;
        this.f.jq = 5;
        this.f.jr = 5;
        this.f.js = 5;
    };
    PolarSplineAreaSeriesView.$t = markType(PolarSplineAreaSeriesView, 'PolarSplineAreaSeriesView', PolarLineSeriesBaseView.$);
    return PolarSplineAreaSeriesView;
}(PolarLineSeriesBaseView));
export { PolarSplineAreaSeriesView };
