/*
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 { 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 { YAxisLabelLocation_$type } from "./YAxisLabelLocation";
import { XAxisLabelLocation_$type } from "./XAxisLabelLocation";
import { AxisLabelSettings } from "./AxisLabelSettings";
import { AxisDefaults } from "./AxisDefaults";
import { TitleSettings } from "./TitleSettings";
import { ScalerParams } from "./ScalerParams";
import { DeviceUtils } from "igniteui-react-core";
/**
 * @hidden
 */
export let XYChart = /*@__PURE__*/ (() => {
    class XYChart extends DomainChart {
        constructor() {
            super(...arguments);
            this.zm = null;
            this.zn = null;
            this.z3 = 0;
            this.z5 = 5;
            this.z4 = 0;
            this.z2 = 5;
            this.aak = 5;
            this.aam = 0;
            this.aal = 5;
            this.aaj = 0;
            this.afd = null;
            this.afk = null;
            this.afb = null;
            this.afc = null;
            this.aae = 0;
            this.aav = 0;
            this.aad = NaN;
            this.aau = NaN;
            this.aag = NaN;
            this.aax = NaN;
            this.aaf = NaN;
            this.aaw = NaN;
            this.aac = NaN;
            this.aat = NaN;
            this.afj = null;
            this.afq = null;
            this.ab5 = null;
            this.ab9 = null;
            this.ab7 = null;
            this.acb = null;
            this.ab0 = null;
            this.ab1 = null;
            this.afe = null;
            this.afl = null;
            this.z6 = DeviceUtils.g(1);
            this.aan = DeviceUtils.g(1);
            this.z7 = DeviceUtils.g(1);
            this.aao = DeviceUtils.g(1);
            this.afg = null;
            this.afn = null;
            this.afh = null;
            this.afo = null;
            this.z8 = DeviceUtils.g(1);
            this.aap = DeviceUtils.g(1);
            this.z9 = DeviceUtils.g(8);
            this.aaq = 0;
            this.afi = null;
            this.afp = null;
            this.aaa = DeviceUtils.g(1);
            this.aar = DeviceUtils.g(1);
            this.ab6 = null;
            this.aca = null;
            this.aff = null;
            this.afm = null;
            this.z1 = 0;
            this.aai = 0;
            this.z0 = NaN;
            this.aah = NaN;
            this.aab = 0;
            this.aas = -90;
            this.zw = false;
            this.zx = false;
            this.ae6 = 1;
            this.af9 = 1;
            this.ae5 = 1;
            this.ae7 = 2;
            this.af7 = 0;
            this.af8 = 1;
            this.agd = 0;
            this.age = 0;
            this.zu = 4;
            this.zs = 4;
            this.ab4 = null;
            this.zg = null;
            this.ab8 = null;
            this.zh = null;
        }
        provideContainer(a) {
            if (a != null) {
                let b = this.zk();
                let c = this.zl();
                if (b != null) {
                    b.provideRenderer(a);
                }
                if (c != null) {
                    c.provideRenderer(a);
                }
            }
            super.provideContainer(a);
        }
        ux() {
            super.ux();
            let a = this.zk();
            let b = this.zl();
            if (a != null && a.az != null) {
                this.aft = a.az.textColor;
            }
            if (b != null && b.az != null) {
                this.af0 = b.az.textColor;
            }
            this.afy = AxisDefaults.j;
            this.af5 = AxisDefaults.j;
            this.afu = AxisDefaults.h;
            this.af1 = AxisDefaults.h;
            this.afx = AxisDefaults.g;
            this.af4 = AxisDefaults.g;
        }
        vo(a, b, c) {
            super.vo(a, b, c);
            switch (a) {
                case "XAxisLabelLeftMargin":
                    this.aex((d) => d.leftMargin = this.aa5);
                    break;
                case "XAxisLabelTopMargin":
                    this.aex((d) => d.topMargin = this.aa7);
                    break;
                case "XAxisLabelRightMargin":
                    this.aex((d) => d.rightMargin = this.aa6);
                    break;
                case "XAxisLabelBottomMargin":
                    this.aex((d) => d.bottomMargin = this.aa4);
                    break;
                case "YAxisLabelLeftMargin":
                    this.ae2((d) => d.leftMargin = this.abm);
                    break;
                case "YAxisLabelTopMargin":
                    this.ae2((d) => d.topMargin = this.abo);
                    break;
                case "YAxisLabelRightMargin":
                    this.ae2((d) => d.rightMargin = this.abn);
                    break;
                case "YAxisLabelBottomMargin":
                    this.ae2((d) => d.bottomMargin = this.abl);
                    break;
                case "ActualItemsSource":
                case "ShouldDisplayMockData":
                case "ShouldUseSkeletonStyleForMockData":
                    this.afr = this.yg(this.aft);
                    this.afs = this.yg(this.af0);
                    break;
                case "XAxisLabelTextColor":
                    this.afr = this.yg(this.aft);
                    break;
                case "YAxisLabelTextColor":
                    this.afs = this.yg(this.af0);
                    break;
                case "ActualXAxisLabelTextColor":
                    this.aex((d) => d.textColor = this.afr);
                    break;
                case "ActualYAxisLabelTextColor":
                    this.ae2((d) => d.textColor = this.afs);
                    break;
                case "XAxisTitleMargin":
                    this.aez((d) => d.margin = this.abg);
                    break;
                case "YAxisTitleMargin":
                    this.ae4((d) => d.margin = this.abx);
                    break;
                case "XAxisTitleLeftMargin":
                    this.aez((d) => d.leftMargin = this.abf);
                    break;
                case "YAxisTitleLeftMargin":
                    this.ae4((d) => d.leftMargin = this.abw);
                    break;
                case "XAxisTitleTopMargin":
                    this.aez((d) => d.topMargin = this.abi);
                    break;
                case "YAxisTitleTopMargin":
                    this.ae4((d) => d.topMargin = this.abz);
                    break;
                case "XAxisTitleRightMargin":
                    this.aez((d) => d.rightMargin = this.abh);
                    break;
                case "YAxisTitleRightMargin":
                    this.ae4((d) => d.rightMargin = this.aby);
                    break;
                case "XAxisTitleBottomMargin":
                    this.aez((d) => d.bottomMargin = this.abe);
                    break;
                case "YAxisTitleBottomMargin":
                    this.ae4((d) => d.bottomMargin = this.abv);
                    break;
                case "XAxisTitleTextColor":
                    this.aez((d) => d.textColor = this.afz);
                    break;
                case "YAxisTitleTextColor":
                    this.ae4((d) => d.textColor = this.af6);
                    break;
                case "XAxisFormatLabel":
                    this.aev((d) => d.au = this.zo);
                    break;
                case "YAxisFormatLabel":
                    this.ae0((d) => d.au = this.zp);
                    break;
            }
        }
        get zo() {
            return this.zm;
        }
        set zo(a) {
            let b = this.zo;
            if (a != b) {
                this.zm = a;
                this.vl("XAxisFormatLabel", b, this.zo);
            }
        }
        get zp() {
            return this.zn;
        }
        set zp(a) {
            let b = this.zp;
            if (a != b) {
                this.zn = a;
                this.vl("YAxisFormatLabel", b, this.zp);
            }
        }
        get aa5() {
            return this.z3;
        }
        set aa5(a) {
            let b = this.aa5;
            if (a != b) {
                this.z3 = a;
                this.vl("XAxisLabelLeftMargin", b, this.aa5);
            }
        }
        get aa7() {
            return this.z5;
        }
        set aa7(a) {
            let b = this.aa7;
            if (a != b) {
                this.z5 = a;
                this.vl("XAxisLabelTopMargin", b, this.aa7);
            }
        }
        get aa6() {
            return this.z4;
        }
        set aa6(a) {
            let b = this.aa6;
            if (a != b) {
                this.z4 = a;
                this.vl("XAxisLabelRightMargin", b, this.aa6);
            }
        }
        get aa4() {
            return this.z2;
        }
        set aa4(a) {
            let b = this.aa4;
            if (a != b) {
                this.z2 = a;
                this.vl("XAxisLabelBottomMargin", b, this.aa4);
            }
        }
        get abm() {
            return this.aak;
        }
        set abm(a) {
            let b = this.abm;
            if (a != b) {
                this.aak = a;
                this.vl("YAxisLabelLeftMargin", b, this.abm);
            }
        }
        get abo() {
            return this.aam;
        }
        set abo(a) {
            let b = this.abo;
            if (a != b) {
                this.aam = a;
                this.vl("YAxisLabelTopMargin", b, this.abo);
            }
        }
        get abn() {
            return this.aal;
        }
        set abn(a) {
            let b = this.abn;
            if (a != b) {
                this.aal = a;
                this.vl("YAxisLabelRightMargin", b, this.abn);
            }
        }
        get abl() {
            return this.aaj;
        }
        set abl(a) {
            let b = this.abl;
            if (a != b) {
                this.aaj = a;
                this.vl("YAxisLabelBottomMargin", b, this.abl);
            }
        }
        get aft() {
            return this.afd;
        }
        set aft(a) {
            let b = this.aft;
            if (a != b) {
                this.afd = a;
                this.vl("XAxisLabelTextColor", b, this.aft);
            }
        }
        get af0() {
            return this.afk;
        }
        set af0(a) {
            let b = this.af0;
            if (a != b) {
                this.afk = a;
                this.vl("YAxisLabelTextColor", b, this.af0);
            }
        }
        get afr() {
            return this.afb;
        }
        set afr(a) {
            let b = this.afb;
            if (a != b) {
                this.afb = a;
                this.vl("ActualXAxisLabelTextColor", b, this.afr);
            }
        }
        get afs() {
            return this.afc;
        }
        set afs(a) {
            let b = this.afc;
            if (a != b) {
                this.afc = a;
                this.vl("ActualYAxisLabelTextColor", b, this.afs);
            }
        }
        get abg() {
            return this.aae;
        }
        set abg(a) {
            let b = this.abg;
            if (a != b) {
                this.aae = a;
                this.vl("XAxisTitleMargin", b, this.abg);
            }
        }
        get abx() {
            return this.aav;
        }
        set abx(a) {
            let b = this.abx;
            if (a != b) {
                this.aav = a;
                this.vl("YAxisTitleMargin", b, this.abx);
            }
        }
        get abf() {
            return this.aad;
        }
        set abf(a) {
            let b = this.abf;
            if (a != b) {
                this.aad = a;
                this.vl("XAxisTitleLeftMargin", b, this.abf);
            }
        }
        get abw() {
            return this.aau;
        }
        set abw(a) {
            let b = this.abw;
            if (a != b) {
                this.aau = a;
                this.vl("YAxisTitleLeftMargin", b, this.abw);
            }
        }
        get abi() {
            return this.aag;
        }
        set abi(a) {
            let b = this.abi;
            if (a != b) {
                this.aag = a;
                this.vl("XAxisTitleTopMargin", b, this.abi);
            }
        }
        get abz() {
            return this.aax;
        }
        set abz(a) {
            let b = this.abz;
            if (a != b) {
                this.aax = a;
                this.vl("YAxisTitleTopMargin", b, this.abz);
            }
        }
        get abh() {
            return this.aaf;
        }
        set abh(a) {
            let b = this.abh;
            if (a != b) {
                this.aaf = a;
                this.vl("XAxisTitleRightMargin", b, this.abh);
            }
        }
        get aby() {
            return this.aaw;
        }
        set aby(a) {
            let b = this.aby;
            if (a != b) {
                this.aaw = a;
                this.vl("YAxisTitleRightMargin", b, this.aby);
            }
        }
        get abe() {
            return this.aac;
        }
        set abe(a) {
            let b = this.abe;
            if (a != b) {
                this.aac = a;
                this.vl("XAxisTitleBottomMargin", b, this.abe);
            }
        }
        get abv() {
            return this.aat;
        }
        set abv(a) {
            let b = this.abv;
            if (a != b) {
                this.aat = a;
                this.vl("YAxisTitleBottomMargin", b, this.abv);
            }
        }
        get afz() {
            return this.afj;
        }
        set afz(a) {
            let b = this.afz;
            if (a != b) {
                this.afj = a;
                this.vl("XAxisTitleTextColor", b, this.afz);
            }
        }
        get af6() {
            return this.afq;
        }
        set af6(a) {
            let b = this.af6;
            if (a != b) {
                this.afq = a;
                this.vl("YAxisTitleTextColor", b, this.af6);
            }
        }
        vp(a, b, c) {
            super.vp(a, b, c);
            switch (a) {
                case "XAxisLabelTextStyle":
                    this.aex((d) => d.textStyle = this.act);
                    break;
                case "YAxisLabelTextStyle":
                    this.ae2((d) => d.textStyle = this.ady);
                    break;
                case "XAxisTitleTextStyle":
                    this.aez((d) => d.textStyle = this.adh);
                    break;
                case "YAxisTitleTextStyle":
                    this.ae4((d) => d.textStyle = this.aem);
                    break;
            }
        }
        get act() {
            return this.ab5;
        }
        set act(a) {
            let b = this.act;
            if (a != b) {
                this.ab5 = a;
                this.vl("XAxisLabelTextStyle", b, this.act);
            }
        }
        get ady() {
            return this.ab9;
        }
        set ady(a) {
            let b = this.ady;
            if (a != b) {
                this.ab9 = a;
                this.vl("YAxisLabelTextStyle", b, this.ady);
            }
        }
        get adh() {
            return this.ab7;
        }
        set adh(a) {
            let b = this.adh;
            if (a != b) {
                this.ab7 = a;
                this.vl("XAxisTitleTextStyle", b, this.adh);
            }
        }
        get aem() {
            return this.acb;
        }
        set aem(a) {
            let b = this.aem;
            if (a != b) {
                this.acb = a;
                this.vl("YAxisTitleTextStyle", b, this.aem);
            }
        }
        aes(a) {
            this.aep(a, (b) => b.leftMargin = this.aa5);
            this.aep(a, (b) => b.topMargin = this.aa7);
            this.aep(a, (b) => b.rightMargin = this.aa6);
            this.aep(a, (b) => b.bottomMargin = this.aa4);
            this.aep(a, (b) => b.textColor = this.afr);
            this.aeq(a, (b) => b.textColor = this.afz);
            this.aeq(a, (b) => b.leftMargin = this.abf);
            this.aeq(a, (b) => b.topMargin = this.abi);
            this.aeq(a, (b) => b.rightMargin = this.abh);
            this.aeq(a, (b) => b.bottomMargin = this.abe);
            this.aep(a, (b) => b.textStyle = this.act);
            this.aeq(a, (b) => b.textStyle = this.adh);
        }
        aeu(a) {
            this.aep(a, (b) => b.leftMargin = this.abm);
            this.aep(a, (b) => b.topMargin = this.abo);
            this.aep(a, (b) => b.rightMargin = this.abn);
            this.aep(a, (b) => b.bottomMargin = this.abl);
            this.aep(a, (b) => b.textColor = this.afs);
            this.aeq(a, (b) => b.textColor = this.af6);
            this.aeq(a, (b) => b.leftMargin = this.abw);
            this.aeq(a, (b) => b.topMargin = this.abz);
            this.aeq(a, (b) => b.rightMargin = this.aby);
            this.aeq(a, (b) => b.bottomMargin = this.abv);
            this.aep(a, (b) => b.textStyle = this.ady);
            this.aeq(a, (b) => b.textStyle = this.aem);
        }
        wf(a) {
            let b = this.bi(a);
            let c = this.dg(a, b);
            if (c == null) {
                return;
            }
            c.itemsSource = this.h2(a);
            if (a.highlightedData != null) {
                c.highlightedItemsSource = this.h3(a);
            }
            c.name = this.qk(a);
            c.title = this.ql(a, b);
            this.dataChart.series.add(c);
        }
        aev(a) {
            this.aew(a, null);
        }
        aew(a, b) {
            a(this.zk());
        }
        ae1(a, b) {
            a(this.zl());
        }
        ae0(a) {
            this.ae1(a, true);
        }
        uh(a, b) {
            this.aev(a);
            this.ae1(a, b);
        }
        aez(a) {
            this.aeq(this.zk(), a);
        }
        ae4(a) {
            this.aeq(this.zl(), a);
        }
        ae2(a) {
            this.aep(this.zl(), a);
        }
        aex(a) {
            this.aep(this.zk(), a);
        }
        aay(a) {
            let b = this.zk();
            return b.ek(a, new ScalerParams(1, this.yp, this.yo, b.ch));
        }
        aa0(a) {
            let b = this.zk();
            return b.en(a, new ScalerParams(1, this.yp, this.yo, b.ch));
        }
        aaz(a) {
            let b = this.zl();
            return b.ek(a, new ScalerParams(1, this.yp, this.yo, b.ch));
        }
        aa1(a) {
            let b = this.zl();
            return b.en(a, new ScalerParams(1, this.yp, this.yo, b.ch));
        }
        wc(a) {
            super.wc(a);
            if (a == null) {
                return;
            }
            if (a.axes != null) {
                let b = this.zk();
                let c = this.zl();
                if (a.axes.contains(b)) {
                    a.axes.remove(b);
                }
                if (a.axes.contains(c)) {
                    a.axes.remove(c);
                }
            }
        }
        static ace(a, b) {
            for (let c of fromEnum(b)) {
                let d = c.findMatchingHint(16);
                if (d != null) {
                    let e = d.path;
                    return e;
                }
            }
            return null;
        }
        us(a, b) {
            super.us(a, b);
            if (a == this.dataChart) {
                this.dataChart.axes.add(this.zk());
                this.dataChart.axes.add(this.zl());
            }
        }
        aer(a) {
            if (a != null && this.lu != null && a.fm == null) {
                a.provideRenderer(this.lu);
            }
            a.jx = this.afu;
            a.es = this.aa8;
            a.jy = this.afv;
            a.ev = this.aa9;
            a.j0 = this.afx;
            a.fh = this.aba;
            a.jz = this.afw;
            a.fi = this.abb;
            a.j1 = this.afy;
            a.fj = this.abc;
            a.c4 = true;
            a.cu = this.hg;
            a.cw = this.hg;
            let b = a == this.zk();
            if (b) {
                a.g7 = this.ac8;
            }
            a.f1 = this.ab2;
            a.gh = this.ack;
            a.ah = this.zi;
            this.aep(a, (c) => c.angle = this.aa3);
            this.aep(a, (c) => {
                if (c.extent != this.aa2) {
                    c.extent = this.aa2;
                }
            });
            this.aep(a, (c) => c.horizontalAlignment = this.ae8);
            this.aep(a, (c) => c.verticalAlignment = this.aga);
            this.aep(a, (c) => c.visibility = this.agf);
            this.aep(a, (c) => c.location = this.zq(this.zt));
            this.aeq(a, (c) => c.horizontalAlignment = this.ae9);
            this.aeq(a, (c) => c.angle = this.abd);
            this.aes(a);
        }
        aet(a) {
            if (a == null) {
                return;
            }
            if (this.lu != null && a.fm == null) {
                a.provideRenderer(this.lu);
            }
            a.cu = this.hg;
            a.cw = this.hg;
            this.aep(a, (b) => b.angle = this.abk);
            this.aep(a, (b) => {
                if (b.extent != this.abj) {
                    b.extent = this.abj;
                }
            });
            this.aep(a, (b) => b.horizontalAlignment = this.afa);
            this.aep(a, (b) => b.verticalAlignment = this.agb);
            this.aep(a, (b) => b.visibility = this.agg);
            this.aep(a, (b) => b.location = this.zr(this.zv));
            this.aeq(a, (b) => b.verticalAlignment = this.agc);
            this.aeq(a, (b) => b.angle = this.abu);
            a.jx = this.af1;
            a.es = this.abp;
            a.jy = this.af2;
            a.ev = this.abq;
            a.j0 = this.af4;
            a.fh = this.abr;
            a.jz = this.af3;
            a.fi = this.abs;
            a.j1 = this.af5;
            a.fj = this.abt;
            let b = a == this.zl();
            if (b) {
                a.g7 = this.aed;
            }
            a.gh = this.adp;
            a.ah = this.zj;
            this.aeu(a);
        }
        up() {
            super.up();
            this.aer(this.zk());
            this.aet(this.zl());
        }
        aep(a, b) {
            if (a == null) {
                return;
            }
            if (a.az == null) {
                a.az = new AxisLabelSettings();
                a.az.angle = a.d6();
                a.az.bottomMargin = a.d7();
                a.az.leftMargin = a.d8();
                a.az.rightMargin = a.d9();
                a.az.topMargin = a.ea();
                a.az.horizontalAlignment = a.js();
                a.az.location = a.a0();
                a.az.verticalAlignment = a.kl();
            }
            b(a.az);
        }
        aeq(a, b) {
            if (a == null) {
                return;
            }
            if (a.bf == null) {
                a.bf = new TitleSettings();
                a.bf.bottomMargin = a.ec();
                a.bf.leftMargin = a.ed();
                a.bf.rightMargin = a.ee();
                a.bf.topMargin = a.ef();
                a.bf.location = a.a1();
                a.bf.angle = a.eb();
                a.bf.horizontalAlignment = a.jt();
                a.bf.verticalAlignment = a.km();
            }
            b(a.bf);
        }
        vl(a, b, c) {
            super.vl(a, b, c);
            switch (a) {
                case "XAxisLabelAngle":
                    this.aex((d) => d.angle = this.aa3);
                    break;
                case "YAxisLabelAngle":
                    this.ae2((d) => d.angle = this.abk);
                    break;
                case "XAxisLabelHorizontalAlignment":
                    this.aex((d) => d.horizontalAlignment = this.ae8);
                    break;
                case "YAxisLabelHorizontalAlignment":
                    this.ae2((d) => d.horizontalAlignment = this.afa);
                    break;
                case "XAxisLabelVerticalAlignment":
                    this.aex((d) => d.verticalAlignment = this.aga);
                    break;
                case "YAxisLabelVerticalAlignment":
                    this.ae2((d) => d.verticalAlignment = this.agb);
                    break;
                case "XAxisLabelVisibility":
                    this.aex((d) => d.visibility = this.agf);
                    break;
                case "YAxisLabelVisibility":
                    this.ae2((d) => d.visibility = this.agg);
                    break;
                case "XAxisLabel":
                    this.aev((d) => d.f1 = this.ab2);
                    break;
                case "YAxisLabel":
                    this.ae0((d) => d.f1 = this.ab3);
                    break;
                case "XAxisLabelFormat":
                    this.aev((d) => d.gh = this.ack);
                    break;
                case "XAxisLabelFormatSpecifiers":
                    this.aev((d) => d.ah = this.zi);
                    break;
                case "YAxisLabelFormat":
                    this.ae0((d) => d.gh = this.adp);
                    break;
                case "YAxisLabelFormatSpecifiers":
                    this.ae0((d) => d.ah = this.zj);
                    break;
                case "XAxisTitleAngle":
                    this.aez((d) => d.angle = this.abd);
                    break;
                case "YAxisTitleAngle":
                    this.ae4((d) => d.angle = this.abu);
                    break;
                case "XAxisTitleAlignment":
                    this.aez((d) => d.horizontalAlignment = this.ae9);
                    break;
                case "YAxisTitleAlignment":
                    this.ae4((d) => d.verticalAlignment = this.agc);
                    break;
                case "XAxisTitle":
                    this.aev((d) => d.g7 = this.ac8);
                    break;
                case "YAxisTitle":
                    this.ae1((d) => d.g7 = this.aed, false);
                    break;
                case "XAxisMajorStroke":
                    this.aew((d) => d.jx = this.afu, a);
                    break;
                case "YAxisMajorStroke":
                    this.ae0((d) => d.jx = this.af1);
                    break;
                case "XAxisMajorStrokeThickness":
                    this.aew((d) => d.es = this.aa8, a);
                    break;
                case "YAxisMajorStrokeThickness":
                    this.ae0((d) => d.es = this.abp);
                    break;
                case "XAxisMinorStroke":
                    this.aev((d) => d.jy = this.afv);
                    break;
                case "YAxisMinorStroke":
                    this.ae0((d) => d.jy = this.af2);
                    break;
                case "XAxisMinorStrokeThickness":
                    this.aev((d) => d.ev = this.aa9);
                    break;
                case "YAxisMinorStrokeThickness":
                    this.ae0((d) => d.ev = this.abq);
                    break;
                case "XAxisTickLength":
                    this.aev((d) => d.fi = this.abb);
                    break;
                case "YAxisTickLength":
                    this.ae0((d) => d.fi = this.abs);
                    break;
                case "XAxisTickStroke":
                    this.aev((d) => d.j1 = this.afy);
                    break;
                case "YAxisTickStroke":
                    this.ae0((d) => d.j1 = this.af5);
                    break;
                case "XAxisTickStrokeThickness":
                    this.aev((d) => d.fj = this.abc);
                    break;
                case "YAxisTickStrokeThickness":
                    this.ae0((d) => d.fj = this.abt);
                    break;
                case "XAxisStroke":
                    this.aev((d) => d.j0 = this.afx);
                    break;
                case "YAxisStroke":
                    this.ae0((d) => d.j0 = this.af4);
                    break;
                case "XAxisStrokeThickness":
                    this.aev((d) => d.fh = this.aba);
                    break;
                case "YAxisStrokeThickness":
                    this.ae0((d) => d.fh = this.abr);
                    break;
                case "XAxisExtent":
                    this.aex((d) => d.extent = this.aa2);
                    break;
                case "YAxisExtent":
                    this.ae2((d) => d.extent = this.abj);
                    break;
                case "XAxisStrip":
                    this.aev((d) => d.jz = this.afw);
                    break;
                case "YAxisStrip":
                    this.ae0((d) => d.jz = this.af3);
                    break;
                case "XAxisInverted":
                    this.aev((d) => d.ch = this.zy);
                    break;
                case "YAxisInverted":
                    this.ae0((d) => d.ch = this.zz);
                    break;
                case "YAxisLabelLocation":
                    this.ae3();
                    break;
                case "XAxisLabelLocation":
                    this.aey();
                    break;
            }
        }
        ae3() {
            let a = this.zr(this.zv);
            if (a == 2 || a == 7) {
                this.afa = 2;
            }
            else {
                this.afa = 0;
            }
            this.ae2((b) => b.location = a);
        }
        aey() {
            let a = this.zq(this.zt);
            if (a == 1 || a == 5) {
                this.aga = 0;
            }
            else {
                this.aga = 2;
            }
            this.aex((b) => b.location = a);
        }
        zr(a) {
            if (a == 0) {
                return 2;
            }
            else if (a == 1) {
                return 3;
            }
            else if (a == 3) {
                return 7;
            }
            else if (a == 2) {
                return 6;
            }
            else {
                if (this.cf == 1) {
                    return 3;
                }
                else {
                    return 2;
                }
            }
        }
        zq(a) {
            if (a == 1) {
                return 1;
            }
            else if (a == 0) {
                return 0;
            }
            else if (a == 3) {
                return 5;
            }
            else if (a == 2) {
                return 4;
            }
            else {
                return 1;
            }
        }
        get ab2() {
            return this.ab0;
        }
        set ab2(a) {
            let b = this.ab2;
            if (a != b) {
                this.ab0 = a;
                this.vl("XAxisLabel", b, this.ab2);
            }
        }
        get ab3() {
            return this.ab1;
        }
        set ab3(a) {
            let b = this.ab3;
            if (a != b) {
                this.ab1 = a;
                this.vl("YAxisLabel", b, this.ab3);
            }
        }
        get afu() {
            return this.afe;
        }
        set afu(a) {
            let b = this.afu;
            if (a != b) {
                this.afe = a;
                this.vl("XAxisMajorStroke", b, this.afu);
            }
        }
        get af1() {
            return this.afl;
        }
        set af1(a) {
            let b = this.af1;
            if (a != b) {
                this.afl = a;
                this.vl("YAxisMajorStroke", b, this.af1);
            }
        }
        get aa8() {
            return this.z6;
        }
        set aa8(a) {
            let b = this.aa8;
            if (a != b) {
                this.z6 = a;
                this.vl("XAxisMajorStrokeThickness", b, this.aa8);
            }
        }
        get abp() {
            return this.aan;
        }
        set abp(a) {
            let b = this.abp;
            if (a != b) {
                this.aan = a;
                this.vl("YAxisMajorStrokeThickness", b, this.abp);
            }
        }
        get aa9() {
            return this.z7;
        }
        set aa9(a) {
            let b = this.aa9;
            if (a != b) {
                this.z7 = a;
                this.vl("XAxisMinorStrokeThickness", b, this.aa9);
            }
        }
        get abq() {
            return this.aao;
        }
        set abq(a) {
            let b = this.abq;
            if (a != b) {
                this.aao = a;
                this.vl("YAxisMinorStrokeThickness", b, this.abq);
            }
        }
        get afw() {
            return this.afg;
        }
        set afw(a) {
            let b = this.afw;
            if (a != b) {
                this.afg = a;
                this.vl("XAxisStrip", b, this.afw);
            }
        }
        get af3() {
            return this.afn;
        }
        set af3(a) {
            let b = this.af3;
            if (a != b) {
                this.afn = a;
                this.vl("YAxisStrip", b, this.af3);
            }
        }
        get afx() {
            return this.afh;
        }
        set afx(a) {
            let b = this.afx;
            if (a != b) {
                this.afh = a;
                this.vl("XAxisStroke", b, this.afx);
            }
        }
        get af4() {
            return this.afo;
        }
        set af4(a) {
            let b = this.af4;
            if (a != b) {
                this.afo = a;
                this.vl("YAxisStroke", b, this.af4);
            }
        }
        get aba() {
            return this.z8;
        }
        set aba(a) {
            let b = this.aba;
            if (a != b) {
                this.z8 = a;
                this.vl("XAxisStrokeThickness", b, this.aba);
            }
        }
        get abr() {
            return this.aap;
        }
        set abr(a) {
            let b = this.abr;
            if (a != b) {
                this.aap = a;
                this.vl("YAxisStrokeThickness", b, this.abr);
            }
        }
        get abb() {
            return this.z9;
        }
        set abb(a) {
            let b = this.abb;
            if (a != b) {
                this.z9 = a;
                this.vl("XAxisTickLength", b, this.abb);
            }
        }
        get abs() {
            return this.aaq;
        }
        set abs(a) {
            let b = this.abs;
            if (a != b) {
                this.aaq = a;
                this.vl("YAxisTickLength", b, this.abs);
            }
        }
        get afy() {
            return this.afi;
        }
        set afy(a) {
            let b = this.afy;
            if (a != b) {
                this.afi = a;
                this.vl("XAxisTickStroke", b, this.afy);
            }
        }
        get af5() {
            return this.afp;
        }
        set af5(a) {
            let b = this.af5;
            if (a != b) {
                this.afp = a;
                this.vl("YAxisTickStroke", b, this.af5);
            }
        }
        get abc() {
            return this.aaa;
        }
        set abc(a) {
            let b = this.abc;
            if (a != b) {
                this.aaa = a;
                this.vl("XAxisTickStrokeThickness", b, this.abc);
            }
        }
        get abt() {
            return this.aar;
        }
        set abt(a) {
            let b = this.abt;
            if (a != b) {
                this.aar = a;
                this.vl("YAxisTickStrokeThickness", b, this.abt);
            }
        }
        get ac8() {
            return this.ab6;
        }
        set ac8(a) {
            let b = this.ac8;
            if (a != b) {
                this.ab6 = a;
                this.vl("XAxisTitle", b, this.ac8);
            }
        }
        get aed() {
            return this.aca;
        }
        set aed(a) {
            let b = this.aed;
            if (a != b) {
                this.aca = a;
                this.vl("YAxisTitle", b, this.aed);
            }
        }
        get afv() {
            return this.aff;
        }
        set afv(a) {
            let b = this.afv;
            if (a != b) {
                this.aff = a;
                this.vl("XAxisMinorStroke", b, this.afv);
            }
        }
        get af2() {
            return this.afm;
        }
        set af2(a) {
            let b = this.af2;
            if (a != b) {
                this.afm = a;
                this.vl("YAxisMinorStroke", b, this.af2);
            }
        }
        get aa3() {
            return this.z1;
        }
        set aa3(a) {
            let b = this.aa3;
            if (a != b) {
                this.z1 = a;
                this.vl("XAxisLabelAngle", b, this.aa3);
            }
        }
        get abk() {
            return this.aai;
        }
        set abk(a) {
            let b = this.abk;
            if (a != b) {
                this.aai = a;
                this.vl("YAxisLabelAngle", b, this.abk);
            }
        }
        get aa2() {
            return this.z0;
        }
        set aa2(a) {
            let b = this.aa2;
            if (a != b) {
                this.z0 = a;
                this.vl("XAxisExtent", b, this.aa2);
            }
        }
        get abj() {
            return this.aah;
        }
        set abj(a) {
            let b = this.abj;
            if (a != b) {
                this.aah = a;
                this.vl("YAxisExtent", b, this.abj);
            }
        }
        get abd() {
            return this.aab;
        }
        set abd(a) {
            let b = this.abd;
            if (a != b) {
                this.aab = a;
                this.vl("XAxisTitleAngle", b, this.abd);
            }
        }
        get abu() {
            return this.aas;
        }
        set abu(a) {
            let b = this.abu;
            if (a != b) {
                this.aas = a;
                this.vl("YAxisTitleAngle", b, this.abu);
            }
        }
        get zy() {
            return this.zw;
        }
        set zy(a) {
            let b = this.zy;
            if (a != b) {
                this.zw = a;
                this.vl("XAxisInverted", b, this.zy);
            }
        }
        get zz() {
            return this.zx;
        }
        set zz(a) {
            let b = this.zz;
            if (a != b) {
                this.zx = a;
                this.vl("YAxisInverted", b, this.zz);
            }
        }
        get ae9() {
            return this.ae6;
        }
        set ae9(a) {
            let b = this.ae9;
            if (a != b) {
                this.ae6 = a;
                this.vl("XAxisTitleAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.ae9));
            }
        }
        get agc() {
            return this.af9;
        }
        set agc(a) {
            let b = this.agc;
            if (a != b) {
                this.af9 = a;
                this.vl("YAxisTitleAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.agc));
            }
        }
        get ae8() {
            return this.ae5;
        }
        set ae8(a) {
            let b = this.ae8;
            if (a != b) {
                this.ae5 = a;
                this.vl("XAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.ae8));
            }
        }
        get_afa() {
            return this.ae7;
        }
        set_afa(a) {
            let b = this.afa;
            if (a != b) {
                this.ae7 = a;
                this.vl("YAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.afa));
            }
        }
        get afa() {
            return this.get_afa();
        }
        set afa(a) {
            this.set_afa(a);
        }
        get aga() {
            return this.af7;
        }
        set aga(a) {
            let b = this.aga;
            if (a != b) {
                this.af7 = a;
                this.vl("XAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.aga));
            }
        }
        get agb() {
            return this.af8;
        }
        set agb(a) {
            let b = this.agb;
            if (a != b) {
                this.af8 = a;
                this.vl("YAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.agb));
            }
        }
        get agf() {
            return this.agd;
        }
        set agf(a) {
            let b = this.agf;
            if (a != b) {
                this.agd = a;
                this.vl("XAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.agf));
            }
        }
        get agg() {
            return this.age;
        }
        set agg(a) {
            let b = this.agg;
            if (a != b) {
                this.age = a;
                this.vl("YAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.agg));
            }
        }
        get_zv() {
            return this.zu;
        }
        set_zv(a) {
            let b = this.zv;
            if (a != b) {
                this.zu = a;
                this.vl("YAxisLabelLocation", enumGetBox(YAxisLabelLocation_$type, b), enumGetBox(YAxisLabelLocation_$type, this.zv));
            }
        }
        get zv() {
            return this.get_zv();
        }
        set zv(a) {
            this.set_zv(a);
        }
        get_zt() {
            return this.zs;
        }
        set_zt(a) {
            let b = this.zt;
            if (a != b) {
                this.zs = a;
                this.vl("XAxisLabelLocation", enumGetBox(XAxisLabelLocation_$type, b), enumGetBox(XAxisLabelLocation_$type, this.zt));
            }
        }
        get zt() {
            return this.get_zt();
        }
        set zt(a) {
            this.set_zt(a);
        }
        get ack() {
            return this.ab4;
        }
        set ack(a) {
            let b = this.ab4;
            if (a != b) {
                this.ab4 = a;
                this.vl("XAxisLabelFormat", b, this.ab4);
            }
        }
        get zi() {
            return this.zg;
        }
        set zi(a) {
            let b = this.zg;
            if (a != b) {
                this.zg = a;
                this.vl("XAxisLabelFormatSpecifiers", b, this.zg);
            }
        }
        get adp() {
            return this.ab8;
        }
        set adp(a) {
            let b = this.ab8;
            if (a != b) {
                this.ab8 = a;
                this.vl("YAxisLabelFormat", b, this.ab8);
            }
        }
        get zj() {
            return this.zh;
        }
        set zj(a) {
            let b = this.zh;
            if (a != b) {
                this.zh = a;
                this.vl("YAxisLabelFormatSpecifiers", b, this.zh);
            }
        }
    }
    XYChart.$t = /*@__PURE__*/ markType(XYChart, 'XYChart', DomainChart.$);
    return XYChart;
})();
