/*
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-angular-core";
import { HorizontalAlignment_$type } from "igniteui-angular-core";
import { VerticalAlignment_$type } from "igniteui-angular-core";
import { Visibility_$type } from "igniteui-angular-core";
import { ValueAxisLabelLocation_$type } from "./ValueAxisLabelLocation";
import { AngleAxisLabelLocation_$type } from "./AngleAxisLabelLocation";
import { AxisLabelSettings } from "./AxisLabelSettings";
import { AxisDefaults } from "./AxisDefaults";
import { TitleSettings } from "./TitleSettings";
import { ScalerParams } from "./ScalerParams";
import { DeviceUtils } from "igniteui-angular-core";
/**
 * @hidden
 */
export let RadialBaseChart = /*@__PURE__*/ (() => {
    class RadialBaseChart extends DomainChart {
        constructor() {
            super(...arguments);
            this.z6 = null;
            this.z7 = null;
            this.aal = 0;
            this.aan = 5;
            this.aam = 0;
            this.aak = 5;
            this.aa2 = 5;
            this.aa4 = 0;
            this.aa3 = 5;
            this.aa1 = 0;
            this.afv = null;
            this.af2 = null;
            this.aft = null;
            this.afu = null;
            this.aaw = 0;
            this.abd = 0;
            this.aav = NaN;
            this.abc = NaN;
            this.aay = NaN;
            this.abf = NaN;
            this.aax = NaN;
            this.abe = NaN;
            this.aau = NaN;
            this.abb = NaN;
            this.af1 = null;
            this.af8 = null;
            this.acn = null;
            this.acr = null;
            this.acp = null;
            this.act = null;
            this.aci = null;
            this.acj = null;
            this.afw = null;
            this.af3 = null;
            this.aao = DeviceUtils.g(1);
            this.aa5 = DeviceUtils.g(1);
            this.aap = DeviceUtils.g(1);
            this.aa6 = DeviceUtils.g(1);
            this.afy = null;
            this.af5 = null;
            this.afz = null;
            this.af6 = null;
            this.aaq = DeviceUtils.g(1);
            this.aa7 = DeviceUtils.g(1);
            this.aar = DeviceUtils.g(8);
            this.aa8 = 0;
            this.af0 = null;
            this.af7 = null;
            this.aas = DeviceUtils.g(1);
            this.aa9 = DeviceUtils.g(1);
            this.aco = null;
            this.acs = null;
            this.afx = null;
            this.af4 = null;
            this.aaj = 0;
            this.aa0 = 0;
            this.aai = NaN;
            this.aaz = NaN;
            this.aat = 0;
            this.aba = -90;
            this.aae = false;
            this.aaf = false;
            this.afo = 1;
            this.agr = 1;
            this.afn = 1;
            this.afp = 2;
            this.agp = 0;
            this.agq = 1;
            this.agv = 0;
            this.agw = 0;
            this.aac = 4;
            this.z2 = 4;
            this.acm = null;
            this.zy = null;
            this.acq = null;
            this.zz = null;
        }
        provideContainer(a) {
            if (a != null) {
                let b = this.z4();
                let c = this.z5();
                if (b != null) {
                    b.provideRenderer(a);
                }
                if (c != null) {
                    c.provideRenderer(a);
                }
            }
            super.provideContainer(a);
        }
        u5() {
            super.u5();
            let a = this.z4();
            let b = this.z5();
            if (a != null && a.az != null) {
                this.agb = a.az.textColor;
            }
            if (b != null && b.az != null) {
                this.agi = b.az.textColor;
            }
            this.agg = AxisDefaults.j;
            this.agn = AxisDefaults.j;
            this.agc = AxisDefaults.h;
            this.agj = AxisDefaults.h;
            this.agf = AxisDefaults.g;
            this.agm = AxisDefaults.g;
        }
        vx(a, b, c) {
            super.vx(a, b, c);
            switch (a) {
                case "AngleAxisLabelLeftMargin":
                    this.aff((d) => d.leftMargin = this.abj);
                    break;
                case "AngleAxisLabelTopMargin":
                    this.aff((d) => d.topMargin = this.abl);
                    break;
                case "AngleAxisLabelRightMargin":
                    this.aff((d) => d.rightMargin = this.abk);
                    break;
                case "AngleAxisLabelBottomMargin":
                    this.aff((d) => d.bottomMargin = this.abi);
                    break;
                case "ValueAxisLabelLeftMargin":
                    this.afk((d) => d.leftMargin = this.ab4);
                    break;
                case "ValueAxisLabelTopMargin":
                    this.afk((d) => d.topMargin = this.ab6);
                    break;
                case "ValueAxisLabelRightMargin":
                    this.afk((d) => d.rightMargin = this.ab5);
                    break;
                case "ValueAxisLabelBottomMargin":
                    this.afk((d) => d.bottomMargin = this.ab3);
                    break;
                case "ActualItemsSource":
                case "ShouldDisplayMockData":
                case "ShouldUseSkeletonStyleForMockData":
                    this.af9 = this.yw(this.agb);
                    this.aga = this.yw(this.agi);
                    break;
                case "AngleAxisLabelTextColor":
                    this.af9 = this.yw(this.agb);
                    break;
                case "ValueAxisLabelTextColor":
                    this.aga = this.yw(this.agi);
                    break;
                case "ActualAngleAxisLabelTextColor":
                    this.aff((d) => d.textColor = this.af9);
                    break;
                case "ActualValueAxisLabelTextColor":
                    this.afk((d) => d.textColor = this.aga);
                    break;
                case "AngleAxisTitleMargin":
                    this.afh((d) => d.margin = this.abu);
                    break;
                case "ValueAxisTitleMargin":
                    this.afm((d) => d.margin = this.acf);
                    break;
                case "AngleAxisTitleLeftMargin":
                    this.afh((d) => d.leftMargin = this.abt);
                    break;
                case "ValueAxisTitleLeftMargin":
                    this.afm((d) => d.leftMargin = this.ace);
                    break;
                case "AngleAxisTitleTopMargin":
                    this.afh((d) => d.topMargin = this.abw);
                    break;
                case "ValueAxisTitleTopMargin":
                    this.afm((d) => d.topMargin = this.ach);
                    break;
                case "AngleAxisTitleRightMargin":
                    this.afh((d) => d.rightMargin = this.abv);
                    break;
                case "ValueAxisTitleRightMargin":
                    this.afm((d) => d.rightMargin = this.acg);
                    break;
                case "AngleAxisTitleBottomMargin":
                    this.afh((d) => d.bottomMargin = this.abs);
                    break;
                case "ValueAxisTitleBottomMargin":
                    this.afm((d) => d.bottomMargin = this.acd);
                    break;
                case "AngleAxisTitleTextColor":
                    this.afh((d) => d.textColor = this.agh);
                    break;
                case "ValueAxisTitleTextColor":
                    this.afm((d) => d.textColor = this.ago);
                    break;
                case "AngleAxisFormatLabel":
                    this.afd((d) => d.au = this.z8);
                    break;
                case "ValueAxisFormatLabel":
                    this.afi((d) => d.au = this.z9);
                    break;
            }
        }
        get z8() {
            return this.z6;
        }
        set z8(a) {
            let b = this.z8;
            if (a != b) {
                this.z6 = a;
                this.vu("AngleAxisFormatLabel", b, this.z8);
            }
        }
        get z9() {
            return this.z7;
        }
        set z9(a) {
            let b = this.z9;
            if (a != b) {
                this.z7 = a;
                this.vu("ValueAxisFormatLabel", b, this.z9);
            }
        }
        get abj() {
            return this.aal;
        }
        set abj(a) {
            let b = this.abj;
            if (a != b) {
                this.aal = a;
                this.vu("AngleAxisLabelLeftMargin", b, this.abj);
            }
        }
        get abl() {
            return this.aan;
        }
        set abl(a) {
            let b = this.abl;
            if (a != b) {
                this.aan = a;
                this.vu("AngleAxisLabelTopMargin", b, this.abl);
            }
        }
        get abk() {
            return this.aam;
        }
        set abk(a) {
            let b = this.abk;
            if (a != b) {
                this.aam = a;
                this.vu("AngleAxisLabelRightMargin", b, this.abk);
            }
        }
        get abi() {
            return this.aak;
        }
        set abi(a) {
            let b = this.abi;
            if (a != b) {
                this.aak = a;
                this.vu("AngleAxisLabelBottomMargin", b, this.abi);
            }
        }
        get ab4() {
            return this.aa2;
        }
        set ab4(a) {
            let b = this.ab4;
            if (a != b) {
                this.aa2 = a;
                this.vu("ValueAxisLabelLeftMargin", b, this.ab4);
            }
        }
        get ab6() {
            return this.aa4;
        }
        set ab6(a) {
            let b = this.ab6;
            if (a != b) {
                this.aa4 = a;
                this.vu("ValueAxisLabelTopMargin", b, this.ab6);
            }
        }
        get ab5() {
            return this.aa3;
        }
        set ab5(a) {
            let b = this.ab5;
            if (a != b) {
                this.aa3 = a;
                this.vu("ValueAxisLabelRightMargin", b, this.ab5);
            }
        }
        get ab3() {
            return this.aa1;
        }
        set ab3(a) {
            let b = this.ab3;
            if (a != b) {
                this.aa1 = a;
                this.vu("ValueAxisLabelBottomMargin", b, this.ab3);
            }
        }
        get agb() {
            return this.afv;
        }
        set agb(a) {
            let b = this.agb;
            if (a != b) {
                this.afv = a;
                this.vu("AngleAxisLabelTextColor", b, this.agb);
            }
        }
        get agi() {
            return this.af2;
        }
        set agi(a) {
            let b = this.agi;
            if (a != b) {
                this.af2 = a;
                this.vu("ValueAxisLabelTextColor", b, this.agi);
            }
        }
        get af9() {
            return this.aft;
        }
        set af9(a) {
            let b = this.aft;
            if (a != b) {
                this.aft = a;
                this.vu("ActualAngleAxisLabelTextColor", b, this.af9);
            }
        }
        get aga() {
            return this.afu;
        }
        set aga(a) {
            let b = this.afu;
            if (a != b) {
                this.afu = a;
                this.vu("ActualValueAxisLabelTextColor", b, this.aga);
            }
        }
        get abu() {
            return this.aaw;
        }
        set abu(a) {
            let b = this.abu;
            if (a != b) {
                this.aaw = a;
                this.vu("AngleAxisTitleMargin", b, this.abu);
            }
        }
        get acf() {
            return this.abd;
        }
        set acf(a) {
            let b = this.acf;
            if (a != b) {
                this.abd = a;
                this.vu("ValueAxisTitleMargin", b, this.acf);
            }
        }
        get abt() {
            return this.aav;
        }
        set abt(a) {
            let b = this.abt;
            if (a != b) {
                this.aav = a;
                this.vu("AngleAxisTitleLeftMargin", b, this.abt);
            }
        }
        get ace() {
            return this.abc;
        }
        set ace(a) {
            let b = this.ace;
            if (a != b) {
                this.abc = a;
                this.vu("ValueAxisTitleLeftMargin", b, this.ace);
            }
        }
        get abw() {
            return this.aay;
        }
        set abw(a) {
            let b = this.abw;
            if (a != b) {
                this.aay = a;
                this.vu("AngleAxisTitleTopMargin", b, this.abw);
            }
        }
        get ach() {
            return this.abf;
        }
        set ach(a) {
            let b = this.ach;
            if (a != b) {
                this.abf = a;
                this.vu("ValueAxisTitleTopMargin", b, this.ach);
            }
        }
        get abv() {
            return this.aax;
        }
        set abv(a) {
            let b = this.abv;
            if (a != b) {
                this.aax = a;
                this.vu("AngleAxisTitleRightMargin", b, this.abv);
            }
        }
        get acg() {
            return this.abe;
        }
        set acg(a) {
            let b = this.acg;
            if (a != b) {
                this.abe = a;
                this.vu("ValueAxisTitleRightMargin", b, this.acg);
            }
        }
        get abs() {
            return this.aau;
        }
        set abs(a) {
            let b = this.abs;
            if (a != b) {
                this.aau = a;
                this.vu("AngleAxisTitleBottomMargin", b, this.abs);
            }
        }
        get acd() {
            return this.abb;
        }
        set acd(a) {
            let b = this.acd;
            if (a != b) {
                this.abb = a;
                this.vu("ValueAxisTitleBottomMargin", b, this.acd);
            }
        }
        get agh() {
            return this.af1;
        }
        set agh(a) {
            let b = this.agh;
            if (a != b) {
                this.af1 = a;
                this.vu("AngleAxisTitleTextColor", b, this.agh);
            }
        }
        get ago() {
            return this.af8;
        }
        set ago(a) {
            let b = this.ago;
            if (a != b) {
                this.af8 = a;
                this.vu("ValueAxisTitleTextColor", b, this.ago);
            }
        }
        vy(a, b, c) {
            super.vy(a, b, c);
            switch (a) {
                case "AngleAxisLabelTextStyle":
                    this.aff((d) => d.textStyle = this.ada);
                    break;
                case "ValueAxisLabelTextStyle":
                    this.afk((d) => d.textStyle = this.aeg);
                    break;
                case "AngleAxisTitleTextStyle":
                    this.afh((d) => d.textStyle = this.ady);
                    break;
                case "ValueAxisTitleTextStyle":
                    this.afm((d) => d.textStyle = this.ae4);
                    break;
            }
        }
        get ada() {
            return this.acn;
        }
        set ada(a) {
            let b = this.ada;
            if (a != b) {
                this.acn = a;
                this.vu("AngleAxisLabelTextStyle", b, this.ada);
            }
        }
        get aeg() {
            return this.acr;
        }
        set aeg(a) {
            let b = this.aeg;
            if (a != b) {
                this.acr = a;
                this.vu("ValueAxisLabelTextStyle", b, this.aeg);
            }
        }
        get ady() {
            return this.acp;
        }
        set ady(a) {
            let b = this.ady;
            if (a != b) {
                this.acp = a;
                this.vu("AngleAxisTitleTextStyle", b, this.ady);
            }
        }
        get ae4() {
            return this.act;
        }
        set ae4(a) {
            let b = this.ae4;
            if (a != b) {
                this.act = a;
                this.vu("ValueAxisTitleTextStyle", b, this.ae4);
            }
        }
        afa(a) {
            this.ae7(a, (b) => b.leftMargin = this.abj);
            this.ae7(a, (b) => b.topMargin = this.abl);
            this.ae7(a, (b) => b.rightMargin = this.abk);
            this.ae7(a, (b) => b.bottomMargin = this.abi);
            this.ae7(a, (b) => b.textColor = this.af9);
            this.ae8(a, (b) => b.textColor = this.agh);
            this.ae8(a, (b) => b.leftMargin = this.abt);
            this.ae8(a, (b) => b.topMargin = this.abw);
            this.ae8(a, (b) => b.rightMargin = this.abv);
            this.ae8(a, (b) => b.bottomMargin = this.abs);
            this.ae7(a, (b) => b.textStyle = this.ada);
            this.ae8(a, (b) => b.textStyle = this.ady);
        }
        afc(a) {
            this.ae7(a, (b) => b.leftMargin = this.ab4);
            this.ae7(a, (b) => b.topMargin = this.ab6);
            this.ae7(a, (b) => b.rightMargin = this.ab5);
            this.ae7(a, (b) => b.bottomMargin = this.ab3);
            this.ae7(a, (b) => b.textColor = this.aga);
            this.ae8(a, (b) => b.textColor = this.ago);
            this.ae8(a, (b) => b.leftMargin = this.ace);
            this.ae8(a, (b) => b.topMargin = this.ach);
            this.ae8(a, (b) => b.rightMargin = this.acg);
            this.ae8(a, (b) => b.bottomMargin = this.acd);
            this.ae7(a, (b) => b.textStyle = this.aeg);
            this.ae8(a, (b) => b.textStyle = this.ae4);
        }
        wo(a) {
            let b = this.be(a);
            let c = this.dc(a, b);
            if (c == null) {
                return;
            }
            c.itemsSource = this.h1(a);
            if (a.highlightedData != null) {
                c.highlightedItemsSource = this.h2(a);
            }
            c.name = this.qo(a);
            c.title = this.qp(a, b);
            this.dataChart.series.add(c);
        }
        afd(a) {
            this.afe(a, null);
        }
        afe(a, b) {
            a(this.z4());
        }
        afj(a, b) {
            a(this.z5());
        }
        afi(a) {
            this.afj(a, true);
        }
        uo(a, b) {
            this.afd(a);
            this.afj(a, b);
        }
        afh(a) {
            this.ae8(this.z4(), a);
        }
        afm(a) {
            this.ae8(this.z5(), a);
        }
        afk(a) {
            this.ae7(this.z5(), a);
        }
        aff(a) {
            this.ae7(this.z4(), a);
        }
        abx(a) {
            let b = this.z4();
            return b.el(a, new ScalerParams(1, this.y5, this.y4, b.ch));
        }
        abz(a) {
            let b = this.z4();
            return b.eo(a, new ScalerParams(1, this.y5, this.y4, b.ch));
        }
        aby(a) {
            let b = this.z5();
            return b.el(a, new ScalerParams(1, this.y5, this.y4, b.ch));
        }
        ab0(a) {
            let b = this.z5();
            return b.eo(a, new ScalerParams(1, this.y5, this.y4, b.ch));
        }
        wl(a) {
            super.wl(a);
            if (a == null) {
                return;
            }
            if (a.axes != null) {
                let b = this.z4();
                let c = this.z5();
                if (a.axes.contains(b)) {
                    a.axes.remove(b);
                }
                if (a.axes.contains(c)) {
                    a.axes.remove(c);
                }
            }
        }
        static ad1(a, b) {
            for (let c of fromEnum(b)) {
                let d = c.findMatchingHint(16);
                if (d != null) {
                    let e = d.path;
                    return e;
                }
            }
            return null;
        }
        u0(a, b) {
            super.u0(a, b);
            if (a == this.dataChart) {
                this.dataChart.axes.add(this.z4());
                this.dataChart.axes.add(this.z5());
            }
        }
        ae9(a) {
            if (a != null && this.lt != null && a.fn == null) {
                a.provideRenderer(this.lt);
            }
            a.jz = this.agc;
            a.et = this.abm;
            a.j0 = this.agd;
            a.ew = this.abn;
            a.j2 = this.agf;
            a.fi = this.abo;
            a.j1 = this.age;
            a.fj = this.abp;
            a.j3 = this.agg;
            a.fk = this.abq;
            a.c4 = true;
            a.cu = this.shouldAvoidAxisAnnotationCollisions;
            a.cw = this.shouldAvoidAxisAnnotationCollisions;
            let b = a == this.z4();
            if (b) {
                a.g8 = this.adp;
            }
            a.f2 = this.ack;
            a.gi = this.ac1;
            a.ah = this.z0;
            this.ae7(a, (c) => c.angle = this.abh);
            this.ae7(a, (c) => {
                if (c.extent != this.abg) {
                    c.extent = this.abg;
                }
            });
            this.ae7(a, (c) => c.horizontalAlignment = this.afq);
            this.ae7(a, (c) => c.verticalAlignment = this.ags);
            this.ae7(a, (c) => c.visibility = this.agx);
            this.ae7(a, (c) => c.location = this.aaa(this.z3));
            this.ae8(a, (c) => c.horizontalAlignment = this.afr);
            this.ae8(a, (c) => c.angle = this.abr);
            this.afa(a);
        }
        afb(a) {
            if (a == null) {
                return;
            }
            if (this.lt != null && a.fn == null) {
                a.provideRenderer(this.lt);
            }
            a.cu = this.shouldAvoidAxisAnnotationCollisions;
            a.cw = this.shouldAvoidAxisAnnotationCollisions;
            this.ae7(a, (b) => b.angle = this.ab2);
            this.ae7(a, (b) => {
                if (b.extent != this.ab1) {
                    b.extent = this.ab1;
                }
            });
            this.ae7(a, (b) => b.horizontalAlignment = this.afs);
            this.ae7(a, (b) => b.verticalAlignment = this.agt);
            this.ae7(a, (b) => b.visibility = this.agy);
            this.ae7(a, (b) => b.location = this.aab(this.aad));
            this.ae8(a, (b) => b.verticalAlignment = this.agu);
            this.ae8(a, (b) => b.angle = this.acc);
            a.jz = this.agj;
            a.et = this.ab7;
            a.j0 = this.agk;
            a.ew = this.ab8;
            a.j2 = this.agm;
            a.fi = this.ab9;
            a.j1 = this.agl;
            a.fj = this.aca;
            a.j3 = this.agn;
            a.fk = this.acb;
            let b = a == this.z5();
            if (b) {
                a.g8 = this.aev;
            }
            a.gi = this.ad7;
            a.ah = this.z1;
            this.afc(a);
        }
        ux() {
            super.ux();
            this.ae9(this.z4());
            this.afb(this.z5());
        }
        ae7(a, b) {
            if (a == null) {
                return;
            }
            if (a.az == null) {
                a.az = new AxisLabelSettings();
                a.az.angle = a.d7();
                a.az.bottomMargin = a.d8();
                a.az.leftMargin = a.d9();
                a.az.rightMargin = a.ea();
                a.az.topMargin = a.eb();
                a.az.horizontalAlignment = a.ju();
                a.az.location = a.a0();
                a.az.verticalAlignment = a.ko();
            }
            b(a.az);
        }
        ae8(a, b) {
            if (a == null) {
                return;
            }
            if (a.bf == null) {
                a.bf = new TitleSettings();
                a.bf.bottomMargin = a.ed();
                a.bf.leftMargin = a.ee();
                a.bf.rightMargin = a.ef();
                a.bf.topMargin = a.eg();
                a.bf.location = a.a1();
                a.bf.angle = a.ec();
                a.bf.horizontalAlignment = a.jv();
                a.bf.verticalAlignment = a.kp();
            }
            b(a.bf);
        }
        vu(a, b, c) {
            super.vu(a, b, c);
            switch (a) {
                case "AngleAxisLabelAngle":
                    this.aff((d) => d.angle = this.abh);
                    break;
                case "ValueAxisLabelAngle":
                    this.afk((d) => d.angle = this.ab2);
                    break;
                case "AngleAxisLabelHorizontalAlignment":
                    this.aff((d) => d.horizontalAlignment = this.afq);
                    break;
                case "ValueAxisLabelHorizontalAlignment":
                    this.afk((d) => d.horizontalAlignment = this.afs);
                    break;
                case "AngleAxisLabelVerticalAlignment":
                    this.aff((d) => d.verticalAlignment = this.ags);
                    break;
                case "ValueAxisLabelVerticalAlignment":
                    this.afk((d) => d.verticalAlignment = this.agt);
                    break;
                case "AngleAxisLabelVisibility":
                    this.aff((d) => d.visibility = this.agx);
                    break;
                case "ValueAxisLabelVisibility":
                    this.afk((d) => d.visibility = this.agy);
                    break;
                case "AngleAxisLabel":
                    this.afd((d) => d.f2 = this.ack);
                    break;
                case "ValueAxisLabel":
                    this.afi((d) => d.f2 = this.acl);
                    break;
                case "AngleAxisLabelFormat":
                    this.afd((d) => d.gi = this.ac1);
                    break;
                case "AngleAxisLabelFormatSpecifiers":
                    this.afd((d) => d.ah = this.z0);
                    break;
                case "ValueAxisLabelFormat":
                    this.afi((d) => d.gi = this.ad7);
                    break;
                case "ValueAxisLabelFormatSpecifiers":
                    this.afi((d) => d.ah = this.z1);
                    break;
                case "AngleAxisTitleAngle":
                    this.afh((d) => d.angle = this.abr);
                    break;
                case "ValueAxisTitleAngle":
                    this.afm((d) => d.angle = this.acc);
                    break;
                case "AngleAxisTitleAlignment":
                    this.afh((d) => d.horizontalAlignment = this.afr);
                    break;
                case "ValueAxisTitleAlignment":
                    this.afm((d) => d.verticalAlignment = this.agu);
                    break;
                case "AngleAxisTitle":
                    this.afd((d) => d.g8 = this.adp);
                    break;
                case "ValueAxisTitle":
                    this.afj((d) => d.g8 = this.aev, false);
                    break;
                case "AngleAxisMajorStroke":
                    this.afe((d) => d.jz = this.agc, a);
                    break;
                case "ValueAxisMajorStroke":
                    this.afi((d) => d.jz = this.agj);
                    break;
                case "AngleAxisMajorStrokeThickness":
                    this.afe((d) => d.et = this.abm, a);
                    break;
                case "ValueAxisMajorStrokeThickness":
                    this.afi((d) => d.et = this.ab7);
                    break;
                case "AngleAxisMinorStroke":
                    this.afd((d) => d.j0 = this.agd);
                    break;
                case "ValueAxisMinorStroke":
                    this.afi((d) => d.j0 = this.agk);
                    break;
                case "AngleAxisMinorStrokeThickness":
                    this.afd((d) => d.ew = this.abn);
                    break;
                case "ValueAxisMinorStrokeThickness":
                    this.afi((d) => d.ew = this.ab8);
                    break;
                case "AngleAxisTickLength":
                    this.afd((d) => d.fj = this.abp);
                    break;
                case "ValueAxisTickLength":
                    this.afi((d) => d.fj = this.aca);
                    break;
                case "AngleAxisTickStroke":
                    this.afd((d) => d.j3 = this.agg);
                    break;
                case "ValueAxisTickStroke":
                    this.afi((d) => d.j3 = this.agn);
                    break;
                case "AngleAxisTickStrokeThickness":
                    this.afd((d) => d.fk = this.abq);
                    break;
                case "ValueAxisTickStrokeThickness":
                    this.afi((d) => d.fk = this.acb);
                    break;
                case "AngleAxisStroke":
                    this.afd((d) => d.j2 = this.agf);
                    break;
                case "ValueAxisStroke":
                    this.afi((d) => d.j2 = this.agm);
                    break;
                case "AngleAxisStrokeThickness":
                    this.afd((d) => d.fi = this.abo);
                    break;
                case "ValueAxisStrokeThickness":
                    this.afi((d) => d.fi = this.ab9);
                    break;
                case "AngleAxisExtent":
                    this.aff((d) => d.extent = this.abg);
                    break;
                case "ValueAxisExtent":
                    this.afk((d) => d.extent = this.ab1);
                    break;
                case "AngleAxisStrip":
                    this.afd((d) => d.j1 = this.age);
                    break;
                case "ValueAxisStrip":
                    this.afi((d) => d.j1 = this.agl);
                    break;
                case "AngleAxisInverted":
                    this.afd((d) => d.ch = this.aag);
                    break;
                case "ValueAxisInverted":
                    this.afi((d) => d.ch = this.aah);
                    break;
                case "ValueAxisLabelLocation":
                    this.afl();
                    break;
                case "AngleAxisLabelLocation":
                    this.afg();
                    break;
            }
        }
        afl() {
            let a = this.aab(this.aad);
            if (a == 2 || a == 7) {
                this.afs = 2;
            }
            else {
                this.afs = 0;
            }
            this.afk((b) => b.location = a);
        }
        afg() {
            let a = this.aaa(this.z3);
            if (a == 1 || a == 5) {
                this.ags = 0;
            }
            else {
                this.ags = 2;
            }
            this.aff((b) => b.location = a);
        }
        aab(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.cb == 1) {
                    return 3;
                }
                else {
                    return 2;
                }
            }
        }
        aaa(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 ack() {
            return this.aci;
        }
        set ack(a) {
            let b = this.ack;
            if (a != b) {
                this.aci = a;
                this.vu("AngleAxisLabel", b, this.ack);
            }
        }
        get acl() {
            return this.acj;
        }
        set acl(a) {
            let b = this.acl;
            if (a != b) {
                this.acj = a;
                this.vu("ValueAxisLabel", b, this.acl);
            }
        }
        get agc() {
            return this.afw;
        }
        set agc(a) {
            let b = this.agc;
            if (a != b) {
                this.afw = a;
                this.vu("AngleAxisMajorStroke", b, this.agc);
            }
        }
        get agj() {
            return this.af3;
        }
        set agj(a) {
            let b = this.agj;
            if (a != b) {
                this.af3 = a;
                this.vu("ValueAxisMajorStroke", b, this.agj);
            }
        }
        get abm() {
            return this.aao;
        }
        set abm(a) {
            let b = this.abm;
            if (a != b) {
                this.aao = a;
                this.vu("AngleAxisMajorStrokeThickness", b, this.abm);
            }
        }
        get ab7() {
            return this.aa5;
        }
        set ab7(a) {
            let b = this.ab7;
            if (a != b) {
                this.aa5 = a;
                this.vu("ValueAxisMajorStrokeThickness", b, this.ab7);
            }
        }
        get abn() {
            return this.aap;
        }
        set abn(a) {
            let b = this.abn;
            if (a != b) {
                this.aap = a;
                this.vu("AngleAxisMinorStrokeThickness", b, this.abn);
            }
        }
        get ab8() {
            return this.aa6;
        }
        set ab8(a) {
            let b = this.ab8;
            if (a != b) {
                this.aa6 = a;
                this.vu("ValueAxisMinorStrokeThickness", b, this.ab8);
            }
        }
        get age() {
            return this.afy;
        }
        set age(a) {
            let b = this.age;
            if (a != b) {
                this.afy = a;
                this.vu("AngleAxisStrip", b, this.age);
            }
        }
        get agl() {
            return this.af5;
        }
        set agl(a) {
            let b = this.agl;
            if (a != b) {
                this.af5 = a;
                this.vu("ValueAxisStrip", b, this.agl);
            }
        }
        get agf() {
            return this.afz;
        }
        set agf(a) {
            let b = this.agf;
            if (a != b) {
                this.afz = a;
                this.vu("AngleAxisStroke", b, this.agf);
            }
        }
        get agm() {
            return this.af6;
        }
        set agm(a) {
            let b = this.agm;
            if (a != b) {
                this.af6 = a;
                this.vu("ValueAxisStroke", b, this.agm);
            }
        }
        get abo() {
            return this.aaq;
        }
        set abo(a) {
            let b = this.abo;
            if (a != b) {
                this.aaq = a;
                this.vu("AngleAxisStrokeThickness", b, this.abo);
            }
        }
        get ab9() {
            return this.aa7;
        }
        set ab9(a) {
            let b = this.ab9;
            if (a != b) {
                this.aa7 = a;
                this.vu("ValueAxisStrokeThickness", b, this.ab9);
            }
        }
        get abp() {
            return this.aar;
        }
        set abp(a) {
            let b = this.abp;
            if (a != b) {
                this.aar = a;
                this.vu("AngleAxisTickLength", b, this.abp);
            }
        }
        get aca() {
            return this.aa8;
        }
        set aca(a) {
            let b = this.aca;
            if (a != b) {
                this.aa8 = a;
                this.vu("ValueAxisTickLength", b, this.aca);
            }
        }
        get agg() {
            return this.af0;
        }
        set agg(a) {
            let b = this.agg;
            if (a != b) {
                this.af0 = a;
                this.vu("AngleAxisTickStroke", b, this.agg);
            }
        }
        get agn() {
            return this.af7;
        }
        set agn(a) {
            let b = this.agn;
            if (a != b) {
                this.af7 = a;
                this.vu("ValueAxisTickStroke", b, this.agn);
            }
        }
        get abq() {
            return this.aas;
        }
        set abq(a) {
            let b = this.abq;
            if (a != b) {
                this.aas = a;
                this.vu("AngleAxisTickStrokeThickness", b, this.abq);
            }
        }
        get acb() {
            return this.aa9;
        }
        set acb(a) {
            let b = this.acb;
            if (a != b) {
                this.aa9 = a;
                this.vu("ValueAxisTickStrokeThickness", b, this.acb);
            }
        }
        get adp() {
            return this.aco;
        }
        set adp(a) {
            let b = this.adp;
            if (a != b) {
                this.aco = a;
                this.vu("AngleAxisTitle", b, this.adp);
            }
        }
        get aev() {
            return this.acs;
        }
        set aev(a) {
            let b = this.aev;
            if (a != b) {
                this.acs = a;
                this.vu("ValueAxisTitle", b, this.aev);
            }
        }
        get agd() {
            return this.afx;
        }
        set agd(a) {
            let b = this.agd;
            if (a != b) {
                this.afx = a;
                this.vu("AngleAxisMinorStroke", b, this.agd);
            }
        }
        get agk() {
            return this.af4;
        }
        set agk(a) {
            let b = this.agk;
            if (a != b) {
                this.af4 = a;
                this.vu("ValueAxisMinorStroke", b, this.agk);
            }
        }
        get abh() {
            return this.aaj;
        }
        set abh(a) {
            let b = this.abh;
            if (a != b) {
                this.aaj = a;
                this.vu("AngleAxisLabelAngle", b, this.abh);
            }
        }
        get ab2() {
            return this.aa0;
        }
        set ab2(a) {
            let b = this.ab2;
            if (a != b) {
                this.aa0 = a;
                this.vu("ValueAxisLabelAngle", b, this.ab2);
            }
        }
        get abg() {
            return this.aai;
        }
        set abg(a) {
            let b = this.abg;
            if (a != b) {
                this.aai = a;
                this.vu("AngleAxisExtent", b, this.abg);
            }
        }
        get ab1() {
            return this.aaz;
        }
        set ab1(a) {
            let b = this.ab1;
            if (a != b) {
                this.aaz = a;
                this.vu("ValueAxisExtent", b, this.ab1);
            }
        }
        get abr() {
            return this.aat;
        }
        set abr(a) {
            let b = this.abr;
            if (a != b) {
                this.aat = a;
                this.vu("AngleAxisTitleAngle", b, this.abr);
            }
        }
        get acc() {
            return this.aba;
        }
        set acc(a) {
            let b = this.acc;
            if (a != b) {
                this.aba = a;
                this.vu("ValueAxisTitleAngle", b, this.acc);
            }
        }
        get aag() {
            return this.aae;
        }
        set aag(a) {
            let b = this.aag;
            if (a != b) {
                this.aae = a;
                this.vu("AngleAxisInverted", b, this.aag);
            }
        }
        get aah() {
            return this.aaf;
        }
        set aah(a) {
            let b = this.aah;
            if (a != b) {
                this.aaf = a;
                this.vu("ValueAxisInverted", b, this.aah);
            }
        }
        get afr() {
            return this.afo;
        }
        set afr(a) {
            let b = this.afr;
            if (a != b) {
                this.afo = a;
                this.vu("AngleAxisTitleAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.afr));
            }
        }
        get agu() {
            return this.agr;
        }
        set agu(a) {
            let b = this.agu;
            if (a != b) {
                this.agr = a;
                this.vu("ValueAxisTitleAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.agu));
            }
        }
        get afq() {
            return this.afn;
        }
        set afq(a) {
            let b = this.afq;
            if (a != b) {
                this.afn = a;
                this.vu("AngleAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.afq));
            }
        }
        get_afs() {
            return this.afp;
        }
        set_afs(a) {
            let b = this.afs;
            if (a != b) {
                this.afp = a;
                this.vu("ValueAxisLabelHorizontalAlignment", enumGetBox(HorizontalAlignment_$type, b), enumGetBox(HorizontalAlignment_$type, this.afs));
            }
        }
        get afs() {
            return this.get_afs();
        }
        set afs(a) {
            this.set_afs(a);
        }
        get ags() {
            return this.agp;
        }
        set ags(a) {
            let b = this.ags;
            if (a != b) {
                this.agp = a;
                this.vu("AngleAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.ags));
            }
        }
        get agt() {
            return this.agq;
        }
        set agt(a) {
            let b = this.agt;
            if (a != b) {
                this.agq = a;
                this.vu("ValueAxisLabelVerticalAlignment", enumGetBox(VerticalAlignment_$type, b), enumGetBox(VerticalAlignment_$type, this.agt));
            }
        }
        get agx() {
            return this.agv;
        }
        set agx(a) {
            let b = this.agx;
            if (a != b) {
                this.agv = a;
                this.vu("AngleAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.agx));
            }
        }
        get agy() {
            return this.agw;
        }
        set agy(a) {
            let b = this.agy;
            if (a != b) {
                this.agw = a;
                this.vu("ValueAxisLabelVisibility", enumGetBox(Visibility_$type, b), enumGetBox(Visibility_$type, this.agy));
            }
        }
        get_aad() {
            return this.aac;
        }
        set_aad(a) {
            let b = this.aad;
            if (a != b) {
                this.aac = a;
                this.vu("ValueAxisLabelLocation", enumGetBox(ValueAxisLabelLocation_$type, b), enumGetBox(ValueAxisLabelLocation_$type, this.aad));
            }
        }
        get aad() {
            return this.get_aad();
        }
        set aad(a) {
            this.set_aad(a);
        }
        get_z3() {
            return this.z2;
        }
        set_z3(a) {
            let b = this.z3;
            if (a != b) {
                this.z2 = a;
                this.vu("AngleAxisLabelLocation", enumGetBox(AngleAxisLabelLocation_$type, b), enumGetBox(AngleAxisLabelLocation_$type, this.z3));
            }
        }
        get z3() {
            return this.get_z3();
        }
        set z3(a) {
            this.set_z3(a);
        }
        get ac1() {
            return this.acm;
        }
        set ac1(a) {
            let b = this.acm;
            if (a != b) {
                this.acm = a;
                this.vu("AngleAxisLabelFormat", b, this.acm);
            }
        }
        get z0() {
            return this.zy;
        }
        set z0(a) {
            let b = this.zy;
            if (a != b) {
                this.zy = a;
                this.vu("AngleAxisLabelFormatSpecifiers", b, this.zy);
            }
        }
        get ad7() {
            return this.acq;
        }
        set ad7(a) {
            let b = this.acq;
            if (a != b) {
                this.acq = a;
                this.vu("ValueAxisLabelFormat", b, this.acq);
            }
        }
        get z1() {
            return this.zz;
        }
        set z1(a) {
            let b = this.zz;
            if (a != b) {
                this.zz = a;
                this.vu("ValueAxisLabelFormatSpecifiers", b, this.zz);
            }
        }
    }
    RadialBaseChart.$t = markType(RadialBaseChart, 'RadialBaseChart', DomainChart.$);
    return RadialBaseChart;
})();
