/*
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 { DomainChart } from "./DomainChart";
import { fromEnum, enumGetBox, markType } from "igniteui-react-core";
import { HorizontalAlignment_$type } from "igniteui-react-core";
import { VerticalAlignment_$type } from "igniteui-react-core";
import { Visibility_$type } from "igniteui-react-core";
import { AxisLabelsLocation_$type } from "./AxisLabelsLocation";
import { AxisLabelSettings } from "./AxisLabelSettings";
import { TitleSettings } from "./TitleSettings";
import { ScalerParams } from "./ScalerParams";
/**
 * @hidden
 */
var XYChart = /** @class */ /*@__PURE__*/ (function (_super) {
    tslib_1.__extends(XYChart, _super);
    function XYChart() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.jr = null;
        _this.js = null;
        _this.j4 = 0;
        _this.j6 = 5;
        _this.j5 = 0;
        _this.j3 = 5;
        _this.kl = 5;
        _this.kn = 0;
        _this.km = 5;
        _this.kk = 0;
        _this.o7 = null;
        _this.pe = null;
        _this.kf = 0;
        _this.kw = 0;
        _this.ke = NaN;
        _this.kv = NaN;
        _this.kh = NaN;
        _this.ky = NaN;
        _this.kg = NaN;
        _this.kx = NaN;
        _this.kd = NaN;
        _this.ku = NaN;
        _this.pd = null;
        _this.pk = null;
        _this.l6 = null;
        _this.ma = null;
        _this.l8 = null;
        _this.mc = null;
        _this.l1 = null;
        _this.l2 = null;
        _this.o8 = null;
        _this.pf = null;
        _this.j7 = 1;
        _this.ko = 1;
        _this.j8 = 1;
        _this.kp = 0;
        _this.pa = null;
        _this.ph = null;
        _this.pb = null;
        _this.pi = null;
        _this.j9 = 1;
        _this.kq = 1;
        _this.ka = 5;
        _this.kr = 0;
        _this.pc = null;
        _this.pj = null;
        _this.kb = 2;
        _this.ks = 2;
        _this.l7 = null;
        _this.mb = null;
        _this.o9 = null;
        _this.pg = null;
        _this.j2 = 0;
        _this.kj = 0;
        _this.j1 = NaN;
        _this.ki = NaN;
        _this.kc = 0;
        _this.kt = -90;
        _this.jx = false;
        _this.jy = false;
        _this.o2 = 1;
        _this.p1 = 1;
        _this.o1 = 1;
        _this.o3 = 2;
        _this.pz = 0;
        _this.p0 = 1;
        _this.p5 = 0;
        _this.p6 = 0;
        _this.jv = 2;
        _this.l5 = null;
        _this.jl = null;
        _this.l9 = null;
        _this.jm = null;
        return _this;
    }
    XYChart.prototype.provideContainer = function (a) {
        if (a != null) {
            var b = this.jp();
            var c = this.jq();
            if (b != null) {
                b.provideRenderer(a);
            }
            if (c != null) {
                c.provideRenderer(a);
            }
        }
        _super.prototype.provideContainer.call(this, a);
    };
    XYChart.prototype.hs = function () {
        _super.prototype.hs.call(this);
        var a = this.jp();
        var b = this.jq();
        if (a != null && a.ay != null) {
            this.pl = a.ay.textColor;
        }
        if (b != null && b.ay != null) {
            this.ps = b.ay.textColor;
        }
    };
    XYChart.prototype.ie = function (a, b, c) {
        var _this = this;
        _super.prototype.ie.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelLeftMargin":
                this.ov(function (d) { return d.leftMargin = _this.k6; });
                break;
            case "XAxisLabelTopMargin":
                this.ov(function (d) { return d.topMargin = _this.k8; });
                break;
            case "XAxisLabelRightMargin":
                this.ov(function (d) { return d.rightMargin = _this.k7; });
                break;
            case "XAxisLabelBottomMargin":
                this.ov(function (d) { return d.bottomMargin = _this.k5; });
                break;
            case "YAxisLabelLeftMargin":
                this.oz(function (d) { return d.leftMargin = _this.ln; });
                break;
            case "YAxisLabelTopMargin":
                this.oz(function (d) { return d.topMargin = _this.lp; });
                break;
            case "YAxisLabelRightMargin":
                this.oz(function (d) { return d.rightMargin = _this.lo; });
                break;
            case "YAxisLabelBottomMargin":
                this.oz(function (d) { return d.bottomMargin = _this.lm; });
                break;
            case "XAxisLabelTextColor":
                this.ov(function (d) { return d.textColor = _this.pl; });
                break;
            case "YAxisLabelTextColor":
                this.oz(function (d) { return d.textColor = _this.ps; });
                break;
            case "XAxisTitleMargin":
                this.ow(function (d) { return d.margin = _this.lh; });
                break;
            case "YAxisTitleMargin":
                this.o0(function (d) { return d.margin = _this.ly; });
                break;
            case "XAxisTitleLeftMargin":
                this.ow(function (d) { return d.leftMargin = _this.lg; });
                break;
            case "YAxisTitleLeftMargin":
                this.o0(function (d) { return d.leftMargin = _this.lx; });
                break;
            case "XAxisTitleTopMargin":
                this.ow(function (d) { return d.topMargin = _this.lj; });
                break;
            case "YAxisTitleTopMargin":
                this.o0(function (d) { return d.topMargin = _this.l0; });
                break;
            case "XAxisTitleRightMargin":
                this.ow(function (d) { return d.rightMargin = _this.li; });
                break;
            case "YAxisTitleRightMargin":
                this.o0(function (d) { return d.rightMargin = _this.lz; });
                break;
            case "XAxisTitleBottomMargin":
                this.ow(function (d) { return d.bottomMargin = _this.lf; });
                break;
            case "YAxisTitleBottomMargin":
                this.o0(function (d) { return d.bottomMargin = _this.lw; });
                break;
            case "XAxisTitleTextColor":
                this.ow(function (d) { return d.textColor = _this.pr; });
                break;
            case "YAxisTitleTextColor":
                this.o0(function (d) { return d.textColor = _this.py; });
                break;
            case "XAxisFormatLabel":
                this.ot(function (d) { return d.at = _this.jt; });
                break;
            case "YAxisFormatLabel":
                this.ox(function (d) { return d.at = _this.ju; });
                break;
        }
    };
    Object.defineProperty(XYChart.prototype, "jt", {
        get: function () {
            return this.jr;
        },
        set: function (a) {
            var b = this.jt;
            if (a != b) {
                this.jr = a;
                this.id("XAxisFormatLabel", b, this.jt);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ju", {
        get: function () {
            return this.js;
        },
        set: function (a) {
            var b = this.ju;
            if (a != b) {
                this.js = a;
                this.id("YAxisFormatLabel", b, this.ju);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k6", {
        get: function () {
            return this.j4;
        },
        set: function (a) {
            var b = this.k6;
            if (a != b) {
                this.j4 = a;
                this.id("XAxisLabelLeftMargin", b, this.k6);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k8", {
        get: function () {
            return this.j6;
        },
        set: function (a) {
            var b = this.k8;
            if (a != b) {
                this.j6 = a;
                this.id("XAxisLabelTopMargin", b, this.k8);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k7", {
        get: function () {
            return this.j5;
        },
        set: function (a) {
            var b = this.k7;
            if (a != b) {
                this.j5 = a;
                this.id("XAxisLabelRightMargin", b, this.k7);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k5", {
        get: function () {
            return this.j3;
        },
        set: function (a) {
            var b = this.k5;
            if (a != b) {
                this.j3 = a;
                this.id("XAxisLabelBottomMargin", b, this.k5);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ln", {
        get: function () {
            return this.kl;
        },
        set: function (a) {
            var b = this.ln;
            if (a != b) {
                this.kl = a;
                this.id("YAxisLabelLeftMargin", b, this.ln);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lp", {
        get: function () {
            return this.kn;
        },
        set: function (a) {
            var b = this.lp;
            if (a != b) {
                this.kn = a;
                this.id("YAxisLabelTopMargin", b, this.lp);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lo", {
        get: function () {
            return this.km;
        },
        set: function (a) {
            var b = this.lo;
            if (a != b) {
                this.km = a;
                this.id("YAxisLabelRightMargin", b, this.lo);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lm", {
        get: function () {
            return this.kk;
        },
        set: function (a) {
            var b = this.lm;
            if (a != b) {
                this.kk = a;
                this.id("YAxisLabelBottomMargin", b, this.lm);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pl", {
        get: function () {
            return this.o7;
        },
        set: function (a) {
            var b = this.pl;
            if (a != b) {
                this.o7 = a;
                this.id("XAxisLabelTextColor", b, this.pl);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ps", {
        get: function () {
            return this.pe;
        },
        set: function (a) {
            var b = this.ps;
            if (a != b) {
                this.pe = a;
                this.id("YAxisLabelTextColor", b, this.ps);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lh", {
        get: function () {
            return this.kf;
        },
        set: function (a) {
            var b = this.lh;
            if (a != b) {
                this.kf = a;
                this.id("XAxisTitleMargin", b, this.lh);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ly", {
        get: function () {
            return this.kw;
        },
        set: function (a) {
            var b = this.ly;
            if (a != b) {
                this.kw = a;
                this.id("YAxisTitleMargin", b, this.ly);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lg", {
        get: function () {
            return this.ke;
        },
        set: function (a) {
            var b = this.lg;
            if (a != b) {
                this.ke = a;
                this.id("XAxisTitleLeftMargin", b, this.lg);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lx", {
        get: function () {
            return this.kv;
        },
        set: function (a) {
            var b = this.lx;
            if (a != b) {
                this.kv = a;
                this.id("YAxisTitleLeftMargin", b, this.lx);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lj", {
        get: function () {
            return this.kh;
        },
        set: function (a) {
            var b = this.lj;
            if (a != b) {
                this.kh = a;
                this.id("XAxisTitleTopMargin", b, this.lj);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "l0", {
        get: function () {
            return this.ky;
        },
        set: function (a) {
            var b = this.l0;
            if (a != b) {
                this.ky = a;
                this.id("YAxisTitleTopMargin", b, this.l0);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "li", {
        get: function () {
            return this.kg;
        },
        set: function (a) {
            var b = this.li;
            if (a != b) {
                this.kg = a;
                this.id("XAxisTitleRightMargin", b, this.li);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lz", {
        get: function () {
            return this.kx;
        },
        set: function (a) {
            var b = this.lz;
            if (a != b) {
                this.kx = a;
                this.id("YAxisTitleRightMargin", b, this.lz);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lf", {
        get: function () {
            return this.kd;
        },
        set: function (a) {
            var b = this.lf;
            if (a != b) {
                this.kd = a;
                this.id("XAxisTitleBottomMargin", b, this.lf);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lw", {
        get: function () {
            return this.ku;
        },
        set: function (a) {
            var b = this.lw;
            if (a != b) {
                this.ku = a;
                this.id("YAxisTitleBottomMargin", b, this.lw);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pr", {
        get: function () {
            return this.pd;
        },
        set: function (a) {
            var b = this.pr;
            if (a != b) {
                this.pd = a;
                this.id("XAxisTitleTextColor", b, this.pr);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "py", {
        get: function () {
            return this.pk;
        },
        set: function (a) {
            var b = this.py;
            if (a != b) {
                this.pk = a;
                this.id("YAxisTitleTextColor", b, this.py);
            }
        },
        enumerable: true,
        configurable: true
    });
    XYChart.prototype.ig = function (a, b, c) {
        var _this = this;
        _super.prototype.ig.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelTextStyle":
                this.ov(function (d) { return d.textStyle = _this.mr; });
                break;
            case "YAxisLabelTextStyle":
                this.oz(function (d) { return d.textStyle = _this.nw; });
                break;
            case "XAxisTitleTextStyle":
                this.ow(function (d) { return d.textStyle = _this.nf; });
                break;
            case "YAxisTitleTextStyle":
                this.o0(function (d) { return d.textStyle = _this.ok; });
                break;
        }
    };
    Object.defineProperty(XYChart.prototype, "mr", {
        get: function () {
            return this.l6;
        },
        set: function (a) {
            var b = this.mr;
            if (a != b) {
                this.l6 = a;
                this.id("XAxisLabelTextStyle", b, this.mr);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "nw", {
        get: function () {
            return this.ma;
        },
        set: function (a) {
            var b = this.nw;
            if (a != b) {
                this.ma = a;
                this.id("YAxisLabelTextStyle", b, this.nw);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "nf", {
        get: function () {
            return this.l8;
        },
        set: function (a) {
            var b = this.nf;
            if (a != b) {
                this.l8 = a;
                this.id("XAxisTitleTextStyle", b, this.nf);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ok", {
        get: function () {
            return this.mc;
        },
        set: function (a) {
            var b = this.ok;
            if (a != b) {
                this.mc = a;
                this.id("YAxisTitleTextStyle", b, this.ok);
            }
        },
        enumerable: true,
        configurable: true
    });
    XYChart.prototype.oq = function (a) {
        var _this = this;
        this.on(a, function (b) { return b.leftMargin = _this.k6; });
        this.on(a, function (b) { return b.topMargin = _this.k8; });
        this.on(a, function (b) { return b.rightMargin = _this.k7; });
        this.on(a, function (b) { return b.bottomMargin = _this.k5; });
        this.on(a, function (b) { return b.textColor = _this.pl; });
        this.oo(a, function (b) { return b.textColor = _this.pr; });
        this.oo(a, function (b) { return b.leftMargin = _this.lg; });
        this.oo(a, function (b) { return b.topMargin = _this.lj; });
        this.oo(a, function (b) { return b.rightMargin = _this.li; });
        this.oo(a, function (b) { return b.bottomMargin = _this.lf; });
        this.on(a, function (b) { return b.textStyle = _this.mr; });
        this.oo(a, function (b) { return b.textStyle = _this.nf; });
    };
    XYChart.prototype.os = function (a) {
        var _this = this;
        this.on(a, function (b) { return b.leftMargin = _this.ln; });
        this.on(a, function (b) { return b.topMargin = _this.lp; });
        this.on(a, function (b) { return b.rightMargin = _this.lo; });
        this.on(a, function (b) { return b.bottomMargin = _this.lm; });
        this.on(a, function (b) { return b.textColor = _this.ps; });
        this.oo(a, function (b) { return b.textColor = _this.py; });
        this.oo(a, function (b) { return b.leftMargin = _this.lx; });
        this.oo(a, function (b) { return b.topMargin = _this.l0; });
        this.oo(a, function (b) { return b.rightMargin = _this.lz; });
        this.oo(a, function (b) { return b.bottomMargin = _this.lw; });
        this.on(a, function (b) { return b.textStyle = _this.nw; });
        this.oo(a, function (b) { return b.textStyle = _this.ok; });
    };
    XYChart.prototype.iw = function (a) {
        var b = this.w(a);
        var c = this.ay(a, b);
        if (c == null) {
            return;
        }
        c.itemsSource = a.data;
        c.name = this.fi(a);
        c.gy = this.fj(a, b);
        this.dataChart.series.add(c);
    };
    XYChart.prototype.ot = function (a) {
        this.ou(a, null);
    };
    XYChart.prototype.ou = function (a, b) {
        a(this.jp());
    };
    XYChart.prototype.oy = function (a, b) {
        a(this.jq());
    };
    XYChart.prototype.ox = function (a) {
        this.oy(a, true);
    };
    XYChart.prototype.ow = function (a) {
        this.oo(this.jp(), a);
    };
    XYChart.prototype.o0 = function (a) {
        this.oo(this.jq(), a);
    };
    XYChart.prototype.oz = function (a) {
        this.on(this.jq(), a);
    };
    XYChart.prototype.ov = function (a) {
        this.on(this.jp(), a);
    };
    XYChart.prototype.kz = function (a) {
        var b = this.jp();
        return b.dz(a, new ScalerParams(1, this.jk, this.jj, b.ca));
    };
    XYChart.prototype.k1 = function (a) {
        var b = this.jp();
        return b.d2(a, new ScalerParams(1, this.jk, this.jj, b.ca));
    };
    XYChart.prototype.k0 = function (a) {
        var b = this.jq();
        return b.dz(a, new ScalerParams(1, this.jk, this.jj, b.ca));
    };
    XYChart.prototype.k2 = function (a) {
        var b = this.jq();
        return b.d2(a, new ScalerParams(1, this.jk, this.jj, b.ca));
    };
    XYChart.prototype.iu = function (a) {
        _super.prototype.iu.call(this, a);
        if (a == null) {
            return;
        }
        if (a.axes != null) {
            var b = this.jp();
            var c = this.jq();
            if (a.axes.contains(b)) {
                a.axes.remove(b);
            }
            if (a.axes.contains(c)) {
                a.axes.remove(c);
            }
        }
    };
    XYChart.md = function (a, b) {
        var e_1, _a;
        try {
            for (var _b = tslib_1.__values(fromEnum(b)), _c = _b.next(); !_c.done; _c = _b.next()) {
                var c = _c.value;
                var d = c.findMatchingHint(16);
                if (d != null) {
                    var e = d.path;
                    return e;
                }
            }
        }
        catch (e_1_1) {
            e_1 = { error: e_1_1 };
        }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return))
                    _a.call(_b);
            }
            finally {
                if (e_1)
                    throw e_1.error;
            }
        }
        return null;
    };
    XYChart.prototype.hn = function (a) {
        _super.prototype.hn.call(this, a);
        if (a == this.dataChart) {
            this.dataChart.axes.add(this.jp());
            this.dataChart.axes.add(this.jq());
        }
    };
    XYChart.prototype.op = function (a) {
        var _this = this;
        if (a != null && this.ed != null && a.ev == null) {
            a.provideRenderer(this.ed);
        }
        a.it = this.pm;
        a.d6 = this.k9;
        a.iu = this.pn;
        a.d9 = this.la;
        a.iw = this.pp;
        a.eq = this.lb;
        a.iv = this.po;
        a.er = this.lc;
        a.ix = this.pq;
        a.es = this.ld;
        a.cq = true;
        var b = a == this.jp();
        if (b) {
            a.gd = this.m6;
        }
        a.fa = this.l3;
        a.fp = this.mj;
        a.ag = this.jn;
        this.on(a, function (c) { return c.angle = _this.k4; });
        this.on(a, function (c) {
            if (c.extent != _this.k3) {
                c.extent = _this.k3;
            }
        });
        this.on(a, function (c) { return c.horizontalAlignment = _this.o4; });
        this.on(a, function (c) { return c.verticalAlignment = _this.p2; });
        this.on(a, function (c) { return c.visibility = _this.p7; });
        this.oo(a, function (c) { return c.horizontalAlignment = _this.o5; });
        this.oo(a, function (c) { return c.angle = _this.le; });
        this.oq(a);
    };
    XYChart.prototype.or = function (a) {
        var _this = this;
        if (a == null) {
            return;
        }
        if (this.ed != null && a.ev == null) {
            a.provideRenderer(this.ed);
        }
        this.on(a, function (b) { return b.angle = _this.ll; });
        this.on(a, function (b) {
            if (b.extent != _this.lk) {
                b.extent = _this.lk;
            }
        });
        this.on(a, function (b) { return b.horizontalAlignment = _this.o6; });
        this.on(a, function (b) { return b.verticalAlignment = _this.p3; });
        this.on(a, function (b) { return b.visibility = _this.p8; });
        this.on(a, function (b) { return b.location = _this.jw; });
        this.oo(a, function (b) { return b.verticalAlignment = _this.p4; });
        this.oo(a, function (b) { return b.angle = _this.lv; });
        a.it = this.pt;
        a.d6 = this.lq;
        a.iu = this.pu;
        a.d9 = this.lr;
        a.iw = this.pw;
        a.eq = this.ls;
        a.iv = this.pv;
        a.er = this.lt;
        a.ix = this.px;
        a.es = this.lu;
        var b = a == this.jq();
        if (b) {
            a.gd = this.ob;
        }
        a.fp = this.nn;
        a.ag = this.jo;
        this.os(a);
    };
    XYChart.prototype.hk = function () {
        _super.prototype.hk.call(this);
        this.op(this.jp());
        this.or(this.jq());
    };
    XYChart.prototype.on = function (a, b) {
        if (a == null) {
            return;
        }
        if (a.ay == null) {
            a.ay = new AxisLabelSettings();
            a.ay.angle = a.dn();
            a.ay.bottomMargin = a.dp();
            a.ay.leftMargin = a.dq();
            a.ay.rightMargin = a.dr();
            a.ay.topMargin = a.ds();
            a.ay.horizontalAlignment = a.io();
            a.ay.location = a.az();
            a.ay.verticalAlignment = a.jh();
        }
        b(a.ay);
    };
    XYChart.prototype.oo = function (a, b) {
        if (a == null) {
            return;
        }
        if (a.be == null) {
            a.be = new TitleSettings();
            a.be.bottomMargin = a.du();
            a.be.leftMargin = a.dv();
            a.be.rightMargin = a.dw();
            a.be.topMargin = a.dx();
            a.be.location = a.a0();
            a.be.angle = a.dt();
            a.be.horizontalAlignment = a.ip();
            a.be.verticalAlignment = a.ji();
        }
        b(a.be);
    };
    XYChart.prototype.id = function (a, b, c) {
        var _this = this;
        _super.prototype.id.call(this, a, b, c);
        switch (a) {
            case "XAxisLabelAngle":
                this.ov(function (d) { return d.angle = _this.k4; });
                break;
            case "YAxisLabelAngle":
                this.oz(function (d) { return d.angle = _this.ll; });
                break;
            case "XAxisLabelHorizontalAlignment":
                this.ov(function (d) { return d.horizontalAlignment = _this.o4; });
                break;
            case "YAxisLabelHorizontalAlignment":
                this.oz(function (d) { return d.horizontalAlignment = _this.o6; });
                break;
            case "XAxisLabelVerticalAlignment":
                this.ov(function (d) { return d.verticalAlignment = _this.p2; });
                break;
            case "YAxisLabelVerticalAlignment":
                this.oz(function (d) { return d.verticalAlignment = _this.p3; });
                break;
            case "XAxisLabelVisibility":
                this.ov(function (d) { return d.visibility = _this.p7; });
                break;
            case "YAxisLabelVisibility":
                this.oz(function (d) { return d.visibility = _this.p8; });
                break;
            case "XAxisLabel":
                this.ot(function (d) { return d.fa = _this.l3; });
                break;
            case "YAxisLabel":
                this.ox(function (d) { return d.fa = _this.l4; });
                break;
            case "XAxisLabelFormat":
                this.ot(function (d) { return d.fp = _this.mj; });
                break;
            case "XAxisLabelFormatSpecifiers":
                this.ot(function (d) { return d.ag = _this.jn; });
                break;
            case "YAxisLabelFormat":
                this.ox(function (d) { return d.fp = _this.nn; });
                break;
            case "YAxisLabelFormatSpecifiers":
                this.ox(function (d) { return d.ag = _this.jo; });
                break;
            case "XAxisTitleAngle":
                this.ow(function (d) { return d.angle = _this.le; });
                break;
            case "YAxisTitleAngle":
                this.o0(function (d) { return d.angle = _this.lv; });
                break;
            case "XAxisTitleAlignment":
                this.ow(function (d) { return d.horizontalAlignment = _this.o5; });
                break;
            case "YAxisTitleAlignment":
                this.o0(function (d) { return d.verticalAlignment = _this.p4; });
                break;
            case "XAxisTitle":
                this.ot(function (d) { return d.gd = _this.m6; });
                break;
            case "YAxisTitle":
                this.oy(function (d) { return d.gd = _this.ob; }, false);
                break;
            case "XAxisMajorStroke":
                this.ou(function (d) { return d.it = _this.pm; }, a);
                break;
            case "YAxisMajorStroke":
                this.ox(function (d) { return d.it = _this.pt; });
                break;
            case "XAxisMajorStrokeThickness":
                this.ou(function (d) { return d.d6 = _this.k9; }, a);
                break;
            case "YAxisMajorStrokeThickness":
                this.ox(function (d) { return d.d6 = _this.lq; });
                break;
            case "XAxisMinorStroke":
                this.ot(function (d) { return d.iu = _this.pn; });
                break;
            case "YAxisMinorStroke":
                this.ox(function (d) { return d.iu = _this.pu; });
                break;
            case "XAxisMinorStrokeThickness":
                this.ot(function (d) { return d.d9 = _this.la; });
                break;
            case "YAxisMinorStrokeThickness":
                this.ox(function (d) { return d.d9 = _this.lr; });
                break;
            case "XAxisTickLength":
                this.ot(function (d) { return d.er = _this.lc; });
                break;
            case "YAxisTickLength":
                this.ox(function (d) { return d.er = _this.lt; });
                break;
            case "XAxisTickStroke":
                this.ot(function (d) { return d.ix = _this.pq; });
                break;
            case "YAxisTickStroke":
                this.ox(function (d) { return d.ix = _this.px; });
                break;
            case "XAxisTickStrokeThickness":
                this.ot(function (d) { return d.es = _this.ld; });
                break;
            case "YAxisTickStrokeThickness":
                this.ox(function (d) { return d.es = _this.lu; });
                break;
            case "XAxisStroke":
                this.ot(function (d) { return d.iw = _this.pp; });
                break;
            case "YAxisStroke":
                this.ox(function (d) { return d.iw = _this.pw; });
                break;
            case "XAxisStrokeThickness":
                this.ot(function (d) { return d.eq = _this.lb; });
                break;
            case "YAxisStrokeThickness":
                this.ox(function (d) { return d.eq = _this.ls; });
                break;
            case "XAxisExtent":
                this.ov(function (d) { return d.extent = _this.k3; });
                break;
            case "YAxisExtent":
                this.oz(function (d) { return d.extent = _this.lk; });
                break;
            case "XAxisStrip":
                this.ot(function (d) { return d.iv = _this.po; });
                break;
            case "YAxisStrip":
                this.ox(function (d) { return d.iv = _this.pv; });
                break;
            case "XAxisInverted":
                this.ot(function (d) { return d.ca = _this.jz; });
                break;
            case "YAxisInverted":
                this.ox(function (d) { return d.ca = _this.j0; });
                break;
            case "YAxisLabelLocation":
                this.oz(function (d) { return d.location = _this.jw; });
                break;
        }
    };
    Object.defineProperty(XYChart.prototype, "l3", {
        get: function () {
            return this.l1;
        },
        set: function (a) {
            var b = this.l3;
            if (a != b) {
                this.l1 = a;
                this.id("XAxisLabel", b, this.l3);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "l4", {
        get: function () {
            return this.l2;
        },
        set: function (a) {
            var b = this.l4;
            if (a != b) {
                this.l2 = a;
                this.id("YAxisLabel", b, this.l4);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pm", {
        get: function () {
            return this.o8;
        },
        set: function (a) {
            var b = this.pm;
            if (a != b) {
                this.o8 = a;
                this.id("XAxisMajorStroke", b, this.pm);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pt", {
        get: function () {
            return this.pf;
        },
        set: function (a) {
            var b = this.pt;
            if (a != b) {
                this.pf = a;
                this.id("YAxisMajorStroke", b, this.pt);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k9", {
        get: function () {
            return this.j7;
        },
        set: function (a) {
            var b = this.k9;
            if (a != b) {
                this.j7 = a;
                this.id("XAxisMajorStrokeThickness", b, this.k9);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lq", {
        get: function () {
            return this.ko;
        },
        set: function (a) {
            var b = this.lq;
            if (a != b) {
                this.ko = a;
                this.id("YAxisMajorStrokeThickness", b, this.lq);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "la", {
        get: function () {
            return this.j8;
        },
        set: function (a) {
            var b = this.la;
            if (a != b) {
                this.j8 = a;
                this.id("XAxisMinorStrokeThickness", b, this.la);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lr", {
        get: function () {
            return this.kp;
        },
        set: function (a) {
            var b = this.lr;
            if (a != b) {
                this.kp = a;
                this.id("YAxisMinorStrokeThickness", b, this.lr);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "po", {
        get: function () {
            return this.pa;
        },
        set: function (a) {
            var b = this.po;
            if (a != b) {
                this.pa = a;
                this.id("XAxisStrip", b, this.po);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pv", {
        get: function () {
            return this.ph;
        },
        set: function (a) {
            var b = this.pv;
            if (a != b) {
                this.ph = a;
                this.id("YAxisStrip", b, this.pv);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pp", {
        get: function () {
            return this.pb;
        },
        set: function (a) {
            var b = this.pp;
            if (a != b) {
                this.pb = a;
                this.id("XAxisStroke", b, this.pp);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pw", {
        get: function () {
            return this.pi;
        },
        set: function (a) {
            var b = this.pw;
            if (a != b) {
                this.pi = a;
                this.id("YAxisStroke", b, this.pw);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lb", {
        get: function () {
            return this.j9;
        },
        set: function (a) {
            var b = this.lb;
            if (a != b) {
                this.j9 = a;
                this.id("XAxisStrokeThickness", b, this.lb);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ls", {
        get: function () {
            return this.kq;
        },
        set: function (a) {
            var b = this.ls;
            if (a != b) {
                this.kq = a;
                this.id("YAxisStrokeThickness", b, this.ls);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lc", {
        get: function () {
            return this.ka;
        },
        set: function (a) {
            var b = this.lc;
            if (a != b) {
                this.ka = a;
                this.id("XAxisTickLength", b, this.lc);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lt", {
        get: function () {
            return this.kr;
        },
        set: function (a) {
            var b = this.lt;
            if (a != b) {
                this.kr = a;
                this.id("YAxisTickLength", b, this.lt);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pq", {
        get: function () {
            return this.pc;
        },
        set: function (a) {
            var b = this.pq;
            if (a != b) {
                this.pc = a;
                this.id("XAxisTickStroke", b, this.pq);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "px", {
        get: function () {
            return this.pj;
        },
        set: function (a) {
            var b = this.px;
            if (a != b) {
                this.pj = a;
                this.id("YAxisTickStroke", b, this.px);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ld", {
        get: function () {
            return this.kb;
        },
        set: function (a) {
            var b = this.ld;
            if (a != b) {
                this.kb = a;
                this.id("XAxisTickStrokeThickness", b, this.ld);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lu", {
        get: function () {
            return this.ks;
        },
        set: function (a) {
            var b = this.lu;
            if (a != b) {
                this.ks = a;
                this.id("YAxisTickStrokeThickness", b, this.lu);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "m6", {
        get: function () {
            return this.l7;
        },
        set: function (a) {
            var b = this.m6;
            if (a != b) {
                this.l7 = a;
                this.id("XAxisTitle", b, this.m6);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ob", {
        get: function () {
            return this.mb;
        },
        set: function (a) {
            var b = this.ob;
            if (a != b) {
                this.mb = a;
                this.id("YAxisTitle", b, this.ob);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pn", {
        get: function () {
            return this.o9;
        },
        set: function (a) {
            var b = this.pn;
            if (a != b) {
                this.o9 = a;
                this.id("XAxisMinorStroke", b, this.pn);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "pu", {
        get: function () {
            return this.pg;
        },
        set: function (a) {
            var b = this.pu;
            if (a != b) {
                this.pg = a;
                this.id("YAxisMinorStroke", b, this.pu);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k4", {
        get: function () {
            return this.j2;
        },
        set: function (a) {
            var b = this.k4;
            if (a != b) {
                this.j2 = a;
                this.id("XAxisLabelAngle", b, this.k4);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "ll", {
        get: function () {
            return this.kj;
        },
        set: function (a) {
            var b = this.ll;
            if (a != b) {
                this.kj = a;
                this.id("YAxisLabelAngle", b, this.ll);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "k3", {
        get: function () {
            return this.j1;
        },
        set: function (a) {
            var b = this.k3;
            if (a != b) {
                this.j1 = a;
                this.id("XAxisExtent", b, this.k3);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lk", {
        get: function () {
            return this.ki;
        },
        set: function (a) {
            var b = this.lk;
            if (a != b) {
                this.ki = a;
                this.id("YAxisExtent", b, this.lk);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "le", {
        get: function () {
            return this.kc;
        },
        set: function (a) {
            var b = this.le;
            if (a != b) {
                this.kc = a;
                this.id("XAxisTitleAngle", b, this.le);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "lv", {
        get: function () {
            return this.kt;
        },
        set: function (a) {
            var b = this.lv;
            if (a != b) {
                this.kt = a;
                this.id("YAxisTitleAngle", b, this.lv);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "jz", {
        get: function () {
            return this.jx;
        },
        set: function (a) {
            var b = this.jz;
            if (a != b) {
                this.jx = a;
                this.id("XAxisInverted", b, this.jz);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "j0", {
        get: function () {
            return this.jy;
        },
        set: function (a) {
            var b = this.j0;
            if (a != b) {
                this.jy = a;
                this.id("YAxisInverted", b, this.j0);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "o5", {
        get: function () {
            return this.o2;
        },
        set: function (a) {
            var b = this.o5;
            if (a != b) {
                this.o2 = a;
                this.id("XAxisTitleAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.o5));
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "p4", {
        get: function () {
            return this.p1;
        },
        set: function (a) {
            var b = this.p4;
            if (a != b) {
                this.p1 = a;
                this.id("YAxisTitleAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.p4));
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "o4", {
        get: function () {
            return this.o1;
        },
        set: function (a) {
            var b = this.o4;
            if (a != b) {
                this.o1 = a;
                this.id("XAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.o4));
            }
        },
        enumerable: true,
        configurable: true
    });
    XYChart.prototype.get_o6 = function () {
        return this.o3;
    };
    XYChart.prototype.set_o6 = function (a) {
        var b = this.o6;
        if (a != b) {
            this.o3 = a;
            this.id("YAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.o6));
        }
    };
    Object.defineProperty(XYChart.prototype, "o6", {
        get: function () {
            return this.get_o6();
        },
        set: function (a) {
            this.set_o6(a);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "p2", {
        get: function () {
            return this.pz;
        },
        set: function (a) {
            var b = this.p2;
            if (a != b) {
                this.pz = a;
                this.id("XAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.p2));
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "p3", {
        get: function () {
            return this.p0;
        },
        set: function (a) {
            var b = this.p3;
            if (a != b) {
                this.p0 = a;
                this.id("YAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.p3));
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "p7", {
        get: function () {
            return this.p5;
        },
        set: function (a) {
            var b = this.p7;
            if (a != b) {
                this.p5 = a;
                this.id("XAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.p7));
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "p8", {
        get: function () {
            return this.p6;
        },
        set: function (a) {
            var b = this.p8;
            if (a != b) {
                this.p6 = a;
                this.id("YAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.p8));
            }
        },
        enumerable: true,
        configurable: true
    });
    XYChart.prototype.get_jw = function () {
        return this.jv;
    };
    XYChart.prototype.set_jw = function (a) {
        var b = this.jw;
        if (a != b) {
            this.jv = a;
            this.id("YAxisLabelLocation", enumGetBox(AxisLabelsLocation_$type, b), enumGetBox(AxisLabelsLocation_$type, this.jw));
        }
    };
    Object.defineProperty(XYChart.prototype, "jw", {
        get: function () {
            return this.get_jw();
        },
        set: function (a) {
            this.set_jw(a);
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "mj", {
        get: function () {
            return this.l5;
        },
        set: function (a) {
            var b = this.l5;
            if (a != b) {
                this.l5 = a;
                this.id("XAxisLabelFormat", b, this.l5);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "jn", {
        get: function () {
            return this.jl;
        },
        set: function (a) {
            var b = this.jl;
            if (a != b) {
                this.jl = a;
                this.id("XAxisLabelFormatSpecifiers", b, this.jl);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "nn", {
        get: function () {
            return this.l9;
        },
        set: function (a) {
            var b = this.l9;
            if (a != b) {
                this.l9 = a;
                this.id("YAxisLabelFormat", b, this.l9);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(XYChart.prototype, "jo", {
        get: function () {
            return this.jm;
        },
        set: function (a) {
            var b = this.jm;
            if (a != b) {
                this.jm = a;
                this.id("YAxisLabelFormatSpecifiers", b, this.jm);
            }
        },
        enumerable: true,
        configurable: true
    });
    XYChart.$t = markType(XYChart, 'XYChart', DomainChart.$);
    return XYChart;
}(DomainChart));
export { XYChart };
//# sourceMappingURL=XYChart.js.map
