UNPKG

igniteui-react-charts

Version:

Ignite UI React charting components for building rich data visualizations using TypeScript APIs.

1,401 lines (1,400 loc) 74.7 kB
/* 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 { EventArgs, Base, markType, typeCast, runOn, delegateCombine, enumGetBox, Point_$type, String_$type, Number_$type, fromEnum, toEnum, Date_$type, markDep, Delegate_$type } from "igniteui-react-core"; import { IBucketizer_$type } from "./IBucketizer"; import { ArgumentNullException } from "igniteui-react-core"; import { IFastItemColumn$1_$type } from "igniteui-react-core"; import { Series } from "./Series"; import { Rect } from "igniteui-react-core"; import { ScalerParams } from "./ScalerParams"; import { ISortingAxis_$type } from "./ISortingAxis"; import { SeriesView } from "./SeriesView"; import { truncate, intDivide, isInfinity, isNaN_ } from "igniteui-react-core"; import { IHasCategoryAxis_$type } from "./IHasCategoryAxis"; import { IHasCategoryModePreference_$type } from "./IHasCategoryModePreference"; import { Brush } from "igniteui-react-core"; import { DependencyProperty } from "igniteui-react-core"; import { CategoryAxisBase } from "./CategoryAxisBase"; import { NumericYAxis } from "./NumericYAxis"; import { HighlightingInfo } from "igniteui-react-core"; import { CategoryTransitionInMode_$type } from "./CategoryTransitionInMode"; import { CategoryTransitionSourceFramePreparer } from "./CategoryTransitionSourceFramePreparer"; import { CategoryFrame } from "./CategoryFrame"; import { CategoryMode_$type } from "./CategoryMode"; import { ITimeRangeSelectorAxis_$type } from "./ITimeRangeSelectorAxis"; import { FastReflectionHelper } from "igniteui-react-core"; import { List$1 } from "igniteui-react-core"; import { SeriesLayerPropertyOverlay } from "./SeriesLayerPropertyOverlay"; import { Dictionary$2 } from "igniteui-react-core"; import { CategorySeriesRenderManager } from "./CategorySeriesRenderManager"; import { IFastItemsSource_$type } from "igniteui-react-core"; import { FinancialValueList } from "./FinancialValueList"; import { CategoryXAxis } from "./CategoryXAxis"; import { SafeSortedReadOnlyDoubleCollection } from "./SafeSortedReadOnlyDoubleCollection"; import { SafeReadOnlyDoubleCollection } from "./SafeReadOnlyDoubleCollection"; import { SafeEnumerable } from "./SafeEnumerable"; import { CalculatedColumn } from "./CalculatedColumn"; import { TrendCalculators } from "igniteui-react-core"; import { ColumnSupportingCalculation } from "./ColumnSupportingCalculation"; import { IDateTimeAxis_$type } from "./IDateTimeAxis"; import { PropertyMetadata } from "igniteui-react-core"; import { stringIsNullOrEmpty } from "igniteui-react-core"; import { dateToStringFormat } from "igniteui-react-core"; import { SupportingCalculation$1 } from "./SupportingCalculation$1"; import { SRProvider } from "igniteui-react-core"; import { Color } from "igniteui-react-core"; /** * @hidden */ export let FinancialEventArgs = /*@__PURE__*/ (() => { class FinancialEventArgs extends EventArgs { constructor(a, b, c, d, e) { super(); this._position = 0; this._count = 0; this._dataSource = null; this._supportingCalculations = null; this._basedOn = null; this.position = a; this.count = b; this.dataSource = c; this.supportingCalculations = d; if (c != null) { c.series = e; } } get position() { return this._position; } set position(a) { this._position = a; } get count() { return this._count; } set count(a) { this._count = a; } get dataSource() { return this._dataSource; } set dataSource(a) { this._dataSource = a; } get supportingCalculations() { return this._supportingCalculations; } set supportingCalculations(a) { this._supportingCalculations = a; } get basedOn() { return this._basedOn; } set basedOn(a) { this._basedOn = a; } } FinancialEventArgs.$t = /*@__PURE__*/ markType(FinancialEventArgs, 'FinancialEventArgs', EventArgs.$); return FinancialEventArgs; })(); /** * @hidden */ export let FinancialBucketCalculator = /*@__PURE__*/ (() => { class FinancialBucketCalculator extends Base { constructor(a) { super(); this.a = null; this.c = 0; this.d = 0; this.b = 0; if (a == null) { throw new ArgumentNullException(0, "view"); } this.a = a; this.c = -1; this.d = this.d; this.b = 0; } getBucket(a) { return null; } getBucketWithoutUnknowns(a) { return this.getBucket(a); } getErrorBucket(a, b) { return NaN; } getBucketInfo(a, b, c, d) { a = this.c; b = this.d; c = this.b; d = this.a.cf.ik; return { p0: a, p1: b, p2: c, p3: d }; } e(a) { let b = this.a.ca; let c = this.a.b9; let d = this.a.b9; if (this.a.cf != null) { d = this.a.cf.getEffectiveViewport1(this.a); } if (b.isEmpty || c.isEmpty || this.a.cf.xr == null) { this.b = 0; return; } let e = (this.a.cf.xr != null) ? this.a.cf.xr.dn : false; let f = new ScalerParams(0, b, c, e, d); let g = this.a.cf.w4(this.a); let h = typeCast(ISortingAxis_$type, this.a.cf.xr); if (h == null || h.i$b == null) { let i = Math.floor(this.a.cf.xr.f9(g.left, f)); let j = Math.ceil(this.a.cf.xr.f9(g.right, f)); if (this.a.cf.xr.dn) { j = Math.ceil(this.a.cf.xr.f9(g.left, f)); i = Math.floor(this.a.cf.xr.f9(g.right, f)); } let k = Math.floor((j - i + 1) * a / g.width); this.b = truncate(Math.max(1, k)); this.c = truncate(Math.floor(i / this.b)); this.d = truncate(Math.ceil(j / this.b)); } else { this.c = h.i$e(b, c, d, g); this.d = h.i$g(b, c, d, g); this.b = 1; } } cacheValues() { } unCacheValues() { } } FinancialBucketCalculator.$t = /*@__PURE__*/ markType(FinancialBucketCalculator, 'FinancialBucketCalculator', Base.$, [IBucketizer_$type]); return FinancialBucketCalculator; })(); /** * @hidden */ export let FinancialSeries = /*@__PURE__*/ (() => { class FinancialSeries extends Series { hz() { let a = super.hz(); { let b = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.ad = "OpenMemberPath"; $ret.p = true; $ret.y = "HighlightedOpenMemberPath"; $ret.q = true; return $ret; })()); b.valueResolving = delegateCombine(b.valueResolving, runOn(this, this.aau)); a.add(b); } { let c = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.ad = "HighMemberPath"; $ret.p = true; $ret.y = "HighlightedHighMemberPath"; $ret.q = true; return $ret; })()); c.valueResolving = delegateCombine(c.valueResolving, runOn(this, this.aas)); a.add(c); } { let d = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.ad = "LowMemberPath"; $ret.p = true; $ret.y = "HighlightedLowMemberPath"; $ret.q = true; return $ret; })()); d.valueResolving = delegateCombine(d.valueResolving, runOn(this, this.aat)); a.add(d); } { let e = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.ad = "CloseMemberPath"; $ret.p = true; $ret.y = "HighlightedCloseMemberPath"; $ret.q = true; return $ret; })()); e.valueResolving = delegateCombine(e.valueResolving, runOn(this, this.aar)); a.add(e); } { let f = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.ad = "VolumeMemberPath"; $ret.p = true; $ret.y = "HighlightedVolumeMemberPath"; $ret.q = true; return $ret; })()); f.valueResolving = delegateCombine(f.valueResolving, runOn(this, this.aav)); a.add(f); } { let g = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.r = true; $ret.ad = "Brush"; $ret.p = true; $ret.y = "ActualBrush"; $ret.q = true; return $ret; })()); g.valueResolving = delegateCombine(g.valueResolving, runOn(this, this.si)); a.add(g); } { let h = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.r = true; $ret.ad = "Outline"; $ret.p = true; $ret.y = "ActualOutline"; $ret.q = true; return $ret; })()); h.valueResolving = delegateCombine(h.valueResolving, runOn(this, this.si)); a.add(h); } { let i = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.r = true; $ret.ad = "NegativeBrush"; $ret.p = true; $ret.q = true; return $ret; })()); i.valueResolving = delegateCombine(i.valueResolving, runOn(this, this.si)); a.add(i); } { let j = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.r = true; $ret.ad = "NegativeOutline"; $ret.p = true; $ret.q = true; return $ret; })()); j.valueResolving = delegateCombine(j.valueResolving, runOn(this, this.si)); a.add(j); } let k = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.p = true; $ret.ad = "IsTransitionInEnabled"; $ret.x = true; $ret.q = true; return $ret; })()); a.add(k); let l = ((() => { let $ret = new SeriesLayerPropertyOverlay(); $ret.p = true; $ret.ad = "TransitionInMode"; $ret.x = enumGetBox(CategoryTransitionInMode_$type, 20); $ret.q = true; return $ret; })()); a.add(l); return a; } aau(a, b) { if (this.z4 != null) { b.value = this.z4; return; } b.value = this.aah; } aas(a, b) { if (this.z0 != null) { b.value = this.z0; return; } b.value = this.z8; } aat(a, b) { if (this.z2 != null) { b.value = this.z2; return; } b.value = this.aad; } aar(a, b) { if (this.zy != null) { b.value = this.zy; return; } b.value = this.zv; } aav(a, b) { if (this.z6 != null) { b.value = this.z6; return; } b.value = this.aal; } k4() { if (this.d4()) { return this.bo.xx; } else { return this.bo.xt; } } rh(a) { super.rh(a); this.x8 = a; } get_fa() { return true; } ai() { return [this.xr, this.ya]; } kz(a, b) { let c = this.no(b); if (c == FinancialSeries.$$p[11]) { return this.k0(a, b, this.aah); } if (c == FinancialSeries.$$p[1]) { return this.k0(a, b, this.z8); } if (c == FinancialSeries.$$p[9]) { return this.k0(a, b, this.aad); } if (c == FinancialSeries.$$p[0]) { return this.k0(a, b, this.zv); } if (c == FinancialSeries.$$p[13]) { return this.k0(a, b, this.aal); } if (c == FinancialSeries.$$p[5]) { return this.k0(a, b, this.z4); } if (c == FinancialSeries.$$p[3]) { return this.k0(a, b, this.z0); } if (c == FinancialSeries.$$p[4]) { return this.k0(a, b, this.z2); } if (c == FinancialSeries.$$p[2]) { return this.k0(a, b, this.zy); } if (c == FinancialSeries.$$p[6]) { return this.k0(a, b, this.z6); } return super.kz(a, b); } mo(a) { let b = this.no(a); if (b == FinancialSeries.$$p[11]) { return this.aah; } if (b == FinancialSeries.$$p[1]) { return this.z8; } if (b == FinancialSeries.$$p[9]) { return this.aad; } if (b == FinancialSeries.$$p[0]) { return this.zv; } if (b == FinancialSeries.$$p[13]) { return this.aal; } if (b == FinancialSeries.$$p[5]) { return this.z4; } if (b == FinancialSeries.$$p[3]) { return this.z0; } if (b == FinancialSeries.$$p[4]) { return this.z2; } if (b == FinancialSeries.$$p[2]) { return this.zy; } if (b == FinancialSeries.$$p[6]) { return this.z6; } return super.mo(a); } zr() { return 2; } zp() { return 4; } aj(a) { let b = this.an(this.xr, this.xt.k, this.zo(this.cw), this.zq(this.cw), this.w2(a), true); if (b == null) { return null; } let c = b[0]; let d = b[1]; let e = new Array(1); let f = new Array(2); let g = this.zr(); f[0] = { $type: Point_$type, x: c[0], y: c[g] }; f[1] = { $type: Point_$type, x: d[0], y: d[g] }; e[0] = f; return e; } al(a) { let b = this.an(this.xr, this.xt.k, this.zo(this.cw), this.zq(this.cw), this.w2(a), true); if (b == null) { return null; } let c = b[0]; let d = b[1]; let e = new Array(1); let f = new Array(2); f[0] = { $type: Point_$type, x: c[0], y: c[1] }; f[1] = { $type: Point_$type, x: d[0], y: d[1] }; e[0] = f; return e; } constructor() { super(); this.yi = null; this.yg = null; this.yh = null; this.yf = null; this.yj = null; this.ys = false; this.assigningCategoryStyle = null; this.x0 = null; this.y2 = new Dictionary$2(IFastItemColumn$1_$type.specialize(Number_$type), String_$type, 0); this.y3 = new Dictionary$2(String_$type, String_$type, 0); this.yr = false; this.ye = null; this.xv = null; this.xx = null; this.xt = null; this.x3 = null; this.typical = null; this.typicalBasedOn = null; this.yq = false; this.zf = null; this.zd = null; this.ze = null; this.zc = null; this.zg = null; this.xw = null; this.xs = null; this.xy = 0; this.x9 = null; this.yb = null; this.x0 = new CategorySeriesRenderManager(); this.ys = false; this.x3 = new CategoryTransitionSourceFramePreparer(); this.xw = new CategoryFrame(3); this.ab = FinancialSeries.$; this.xz = 0; } wg() { return this.abh; } wh() { return this.abh; } pf() { super.pf(); this.xr = null; this.ya = null; } get_em() { return true; } get_gb() { return this.ya != null && this.ya.dn; } get yn() { return this.yi; } set yn(a) { if (this.yi != a) { let b = this.yi; this.yi = a; this.raisePropertyChanged("OpenColumn", b, this.yi); } } get yl() { return this.yg; } set yl(a) { if (this.yg != a) { let b = this.yg; this.yg = a; this.raisePropertyChanged("HighColumn", b, this.yg); } } get ym() { return this.yh; } set ym(a) { if (this.yh != a) { let b = this.yh; this.yh = a; this.raisePropertyChanged("LowColumn", b, this.yh); } } get yk() { return this.yf; } set yk(a) { if (this.yf != a) { let b = this.yf; this.yf = a; this.raisePropertyChanged("CloseColumn", b, this.yf); } } get yp() { return this.yj; } set yp(a) { if (this.yj != a) { let b = this.yj; this.yj = a; this.raisePropertyChanged("VolumeColumn", b, this.yj); } } gh() { return this.highlightedItemsSource != null || (this.z4 != null && this.z0 != null && this.z2 != null && this.zy != null); } yz() { return (this.assigningCategoryStyle != null && this.ys) || this.by != 1 || this.cq != 1 || this.cp != 1; } aay(a) { if (this.assigningCategoryStyle != null && this.ys) { this.assigningCategoryStyle(this, a); } } aaw(a, b, c, d, e, f, g) { let h = this.by != 1; let i = this.cq != 1; let j = this.cp != 1; this.x0.a3(this.x0.b, d.dv, a, b, c, d, e, f, false, g); this.x0.ab(this.ii); let k = this.x0.ay; let l = null; let m = null; let n = null; let o = this.dp; if (h && this.dc != null) { l = this.dc.d7.getHighlightingInfo(this, o, k.z, k.y, false); k.c = l; } if (i && this.dc != null) { m = this.dc.d8.getHighlightingInfo(this, o, k.z, k.y, false); if (m == null && this.bo != null) { m = this.dc.d8.getHighlightingInfo(this.bo, this.bo.dp, k.z, k.y, false); } k.d = m; } if (j && this.dc != null) { n = this.dc.d6.getHighlightingInfo(this, o, k.z, k.y, false); k.b = n; } k.h = f; this.aay(k); this.x0.z(this, l, m, n, f, h, i, j, b < 0); } zh(a) { return this.i0(a, this.xr); } kj(a, b) { return this.kk(a, b, this.xr, runOn(this, this.zh), new FinancialValueList(this.yn, this.yl, this.ym, this.yk, this.yp)); } kh(a, b) { return this.ki(a, b, this.xr, runOn(this, this.zh), new FinancialValueList(this.yn, this.yl, this.ym, this.yk, this.yp)); } iw(a, b, c, d, e) { if (c == null) { return Number.POSITIVE_INFINITY; } let f = this.xr.qa; return this.ix(a, b, this.xr, d, e, f, runOn(this, this.zh)); } getOffsetValue() { return this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)); } getCategoryWidth() { return this.xr.getCategorySize(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)); } ww(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, null, null, null); } jd(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(new FinancialValueList(this.yn, this.yl, this.ym, this.yk, this.yp), a, this.xr, f, e, runOn(this, this.zh), b, c); } i9(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(this.yl, a, this.xr, f, e, runOn(this, this.zh), b, c); } jb(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(this.ym, a, this.xr, f, e, runOn(this, this.zh), b, c); } zj(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(this.yk, a, this.xr, f, e, runOn(this, this.zh), b, c); } zk(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(this.yn, a, this.xr, f, e, runOn(this, this.zh), b, c); } zl(a, b, c) { let d = this.getEffectiveViewport1(this.cw); let e = this.zi(this.cw.ca, this.cw.b9, d); let f = new ScalerParams(0, this.cw.ca, this.cw.b9, this.xr.dn, d); return this.jf(this.yp, a, this.xr, f, e, runOn(this, this.zh), b, c); } ws(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, runOn(this, this.i9), (d, e) => this.kk(d, e, this.xr, runOn(this, this.zh), this.yl), (d, e) => this.ki(d, e, this.xr, runOn(this, this.zh), this.yl)); } wu(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, runOn(this, this.jb), (d, e) => this.kk(d, e, this.xr, runOn(this, this.zh), this.ym), (d, e) => this.ki(d, e, this.xr, runOn(this, this.zh), this.ym)); } abj(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, runOn(this, this.zk), (d, e) => this.kk(d, e, this.xr, runOn(this, this.zh), this.yn), (d, e) => this.ki(d, e, this.xr, runOn(this, this.zh), this.yn)); } abi(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, runOn(this, this.zj), (d, e) => this.kk(d, e, this.xr, runOn(this, this.zh), this.yk), (d, e) => this.ki(d, e, this.xr, runOn(this, this.zh), this.yk)); } abk(a, b, c) { return this.wy(a, b, c, this.zi(this.cw.ca, this.cw.b9, this.getEffectiveViewport1(this.cw)), this.ya, this.xr, runOn(this, this.zl), (d, e) => this.kk(d, e, this.xr, runOn(this, this.zh), this.yp), (d, e) => this.ki(d, e, this.xr, runOn(this, this.zh), this.yp)); } qp() { super.qp(); if (this.xr != null) { this.xr.ly(false); } if (this.ya != null) { this.ya.ly(false); } } s9(a, b) { this.x8.cd.e(this.ik); this.r8(false); } s8(a, b) { if (this.g7 && this.jz < 0.05) { this.g8 = true; this.hb = false; this.gq = false; } this.x8.cd.e(this.ik); this.r8(false); } yo(a, b, c) { let d = this.dl(b); this.y2.addItem(d, b); this.y3.addItem(b, c); return d; } aaq(a, b) { if (b == null) { return; } a.deregisterColumn(b); let c = this.y2.item(b); this.y3.removeItem(c); this.y2.removeItem(b); } rq(a, b, c, d) { super.rq(a, b, c, d); switch (b) { case "SyncLink": if (this.c4 != null && this.dc != null) { this.x8.cd.e(this.ik); this.r8(false); } break; case "SeriesViewer": if (c != null && d == null) { if (this.xr != null) { this.xr.cx(this); } if (this.ya != null) { this.ya.cx(this); } } if (c == null && d != null) { if (this.xr != null) { this.xr.d3(this); } if (this.ya != null) { this.ya.d3(this); } } this.x8.cd.e(this.ik); this.r8(false); break; case "FastItemsSource": this.yr = true; if (typeCast(IFastItemsSource_$type, c) != null) { this.aaq(typeCast(IFastItemsSource_$type, c), this.yn); this.aaq(typeCast(IFastItemsSource_$type, c), this.yl); this.aaq(typeCast(IFastItemsSource_$type, c), this.ym); this.aaq(typeCast(IFastItemsSource_$type, c), this.yk); this.aaq(typeCast(IFastItemsSource_$type, c), this.yp); this.yn = null; this.yl = null; this.ym = null; this.yk = null; this.yp = null; } if (typeCast(IFastItemsSource_$type, d) != null) { if (stringIsNullOrEmpty(this.aah) == false) { this.yn = this.yo(typeCast(IFastItemsSource_$type, d), this.aah, "OpenColumn"); } if (stringIsNullOrEmpty(this.z8) == false) { this.yl = this.yo(typeCast(IFastItemsSource_$type, d), this.z8, "HighColumn"); } if (stringIsNullOrEmpty(this.aad) == false) { this.ym = this.yo(typeCast(IFastItemsSource_$type, d), this.aad, "LowColumn"); } if (stringIsNullOrEmpty(this.zv) == false) { this.yk = this.yo(typeCast(IFastItemsSource_$type, d), this.zv, "CloseColumn"); } if (stringIsNullOrEmpty(this.aal) == false) { this.yp = this.yo(typeCast(IFastItemsSource_$type, d), this.aal, "VolumeColumn"); } } this.yr = false; if (this.ya != null && !this.ya.ed()) { this.x8.cd.e(this.ik); this.r8(this.gm && c != null); } break; case FinancialSeries.$$p[11]: if (this.dp != null) { this.aaq(this.dp, this.yn); this.yn = this.yo(this.dp, this.aah, "OpenColumn"); } break; case "OpenColumn": if (this.ya != null && !this.ya.ed() && !this.yr) { this.x8.cd.e(this.ik); this.r8(this.gm && this.d9); } break; case FinancialSeries.$$p[1]: if (this.dp != null) { this.aaq(this.dp, this.yl); this.yl = this.yo(this.dp, this.z8, "HighColumn"); } break; case "HighColumn": if (this.ya != null && !this.ya.ed() && !this.yr) { this.x8.cd.e(this.ik); this.r8(this.gm && this.d9); } break; case FinancialSeries.$$p[9]: if (this.dp != null) { this.aaq(this.dp, this.ym); this.ym = this.yo(this.dp, this.aad, "LowColumn"); } break; case "LowColumn": if (this.ya != null && !this.ya.ed() && !this.yr) { this.x8.cd.e(this.ik); this.r8(this.gm && this.d9); } break; case FinancialSeries.$$p[0]: if (this.dp != null) { this.aaq(this.dp, this.yk); this.yk = this.yo(this.dp, this.zv, "CloseColumn"); } break; case "CloseColumn": if (this.ya != null && !this.ya.ed() && !this.yr) { this.x8.cd.e(this.ik); this.r8(this.gm && this.d9); } this.aa0(); break; case FinancialSeries.$$p[13]: if (this.dp != null) { this.aaq(this.dp, this.yp); this.yp = this.yo(this.dp, this.aal, "VolumeColumn"); } break; case "VolumeColumn": if (this.ya != null && !this.ya.ed() && !this.yr) { this.x8.cd.e(this.ik); this.r8(this.gm && this.d9); } break; case FinancialSeries.$$p[14]: if (c != null) { c.cx(this); } if (d != null) { d.d3(this); } this.x8.cd.e(this.ik); this.r8(false); this.q0(); this.x9 = typeCast(ITimeRangeSelectorAxis_$type, this.xr); break; case FinancialSeries.$$p[15]: if (c != null) { c.cx(this); } if (d != null) { d.d3(this); } this.x8.cd.e(this.ik); if (this.ya != null) { this.ya.ed(); } { this.r8(false); } this.q0(); break; case "TransitionProgress": this.xx.d(this.jz, this.xv, this.xt); if (this.d7(this.cw)) { return; } if (this.jz == 1) { this.xt.ab(); this.aaz(this.xt, this.x8); if (this.g7) { this.g7 = false; this.pj(); this.dd.r = truncate(this.jh()); this.dd.b = this.de; } if (this.ha) { this.ha = false; this.pj(); this.dd.r = truncate(this.jh()); this.dd.b = this.de; this.rg(); } this.q3(); } else { this.aaz(this.xx, this.x8); } if (this.dc != null) { this.dc.st(this); } break; case FinancialSeries.$$p[10]: this.r8(false); break; case "IsCustomCategoryStyleAllowed": this.ys = this.yv(); this.r8(false); break; case "CategoryMode": if (this.xr != null) { this.xr.q1(true); } break; } } yu(a) { if (typeCast(NumericYAxis.$, a) !== null) { return true; } return false; } yt(a) { if (typeCast(CategoryXAxis.$, a) !== null || a.dj) { return true; } return false; } xk(a, b, c) { if (b < a || a < 0 || a > this.dp.count || b < 0 || b > this.dp.count || c == null) { return null; } let d = new Array((b - a) + 1); let e = c.dv; let f = null; if (e) { f = c.i$b; } for (let g = a; g <= b; g++) { let h = g; if (e) { h = f._inner[h]; } d[g - a] = this.dp.item(g); } return d; } zo(a) { return a.cd.b; } zq(a) { return a.cd.c; } xj(a, b) { return this.xk(a, b, this.ya); } get_fh() { return true; } pg() { super.pg(); this.ye = null; } dh(a, b, c) { if (this.ef && this.f2(this.by) && !c) { let d = this.yd(a, b, this.ye); this.ye = d; return d; } else { let e = this.yc(a, b, this.ye); this.ye = e; return e; } } zs(a) { let b = this.xu(); let c = this.cw.b9; let d = this.cw.ca; let e = this.xr; let f = 0; if (e.dy) { let g = (a.y - d.top) / d.height; f = g * c.height + c.top; } else { let h = (a.x - d.left) / d.width; f = h * c.width + c.left; } let i = b.k.count; let j = 0; for (j = 0; j < i; j++) { let k = b.k._inner[j]; let l = null; if (j < i - 1) { l = b.k._inner[j + 1]; } if (k[0] <= f && l == null || l[0] >= f) { if (l != null) { if (Math.abs(k[0] - f) < Math.abs(l[0] - f)) { return j; } else { return j + 1; } } else { return j; } } } return j; } yd(a, b, c) { if (this.dp == null) { return null; } let d = this.dp.count; let e = this.x8.cd.c; let f = this.x8.cd.d; let g = this.x8.cd.b; let h = this.xr; let i = -1; let j = -1; if (h.dv) { let k = this.xu(); let l = this.zs(b); if (k.r != null && l >= 0 && l < k.r.count) { l = truncate(Math.round(k.r._inner[l])); } i = l; j = l; } else { let m = this.kc(b); i = truncate(Math.floor((intDivide(m, g)))) * g; j = i + (g - 1); } if (c != null && c.g == i && c.f == j) { return c; } let n = new HighlightingInfo(); n.i = this; n.g = i; n.f = j; return n; } yc(a, b, c) { let d = new HighlightingInfo(); d.i = this; d.g = 0; d.f = this.dp.count - 1; d.c = true; if (c != null && c.g == d.g && c.f == d.f) { return c; } return d; } yv() { return this.yx; } iy(a) { let b = this.cw.ca; let c = this.cw.b9; let d = -1; if (!b.isEmpty && !c.isEmpty && this.xr != null) { let e = this.getEffectiveViewport1(this.cw); let f = new ScalerParams(0, b, c, this.xr.dn, e); let g = this.w4(this.cw); let h = this.xr.f9(g.left, f); let i = this.xr.f9(g.right, f); let j = (a.x - b.left) / b.width; let k = h + (j * (i - h)); if (this.xr.categoryMode != 0) { k -= 0.5; } d = k; } return d; } kc(a) { return truncate(Math.round(this.iy(a))); } get_fv() { return typeCast(ISortingAxis_$type, this.xr) !== null; } a0() { return this.xr; } ke(a) { let b = this.cw.ca; let c = this.cw.b9; let d = this.getEffectiveViewport1(this.cw); if (b.isEmpty || c.isEmpty) { return -1; } let e = new Rect(0, 0, 0, 1, 1); let f = new ScalerParams(0, b, c, this.xr.dn, d); let g = typeCast(ISortingAxis_$type, this.xr); let h = this.w4(this.cw); let i = h.left; let j = h.right; let k = this.wr(a).x; let l = this.xr.f9(k, f); let m = this.xr.f9(i, f); let n = this.xr.f9(j, f); l = Math.max(m, Math.min(n, l)); let o = g.i$f(l); return o; } kw(a) { let b = 0; if (typeCast(ISortingAxis_$type, this.xr) !== null) { b = this.ke(a); if (b == -1) { return null; } } else { b = this.kc(a); } return b >= 0 && this.dp != null && b < this.dp.count ? this.dp.item(b) : null; } xu() { let a = this.xt; if (this.d4()) { if (this.dd.g) { this.dd.t(); } a = this.xx; } return a; } zi(a, b, c) { if (this.xr == null) { return 0; } return this.xr.p0(a, b, c, this.index); } gt() { return this.yy; } x1() { return 11; } c5() { return 3; } c8() { return 3; } aaz(a, b) { this.rd(); this.w3 = a.ag; b.a6(); } aax(a, b) { a.aa(); } hk(a, b, c) { let d = super.hk(a, b, c); let e = c; if (this.dp == null || this.dp.count == 0 || !c.r() || b.isEmpty || a.isEmpty || this.xr == null || this.ya == null || e.cd.b < 1 || this.xr.b7 == null || this.ya.b7 == null || this.ya.qw == this.ya.qv || this.xr.itemsSource == null || this.xr.qa < 1) { e.cd.b = 0; d = false; } return d; } getViewInfo(a, b) { b = this.cw.ca; a = this.cw.b9; return { p0: a, p1: b }; } zm(a) { let b = 0; let c = a.ca; let d = a.b9; let e = this.getEffectiveViewport1(this.cw); if (!c.isEmpty && !d.isEmpty && this.ya != null) { let f = new ScalerParams(0, c, d, this.ya.dn, e); f.b = this.i5(); b = this.ya.f6(this.ya.rb, f); } return b; } pj() { super.pj(); this.xv.ab(); this.xt.ab(); this.xx.ab(); } r9(a) { super.r9(a); this.x8.cd.e(this.ik); if (this.d7(this.cw)) { return; } if (this.gx) { if (this.d4()) { this.aaz(this.xx, this.x8); } else { this.aaz(this.xt, this.x8); } return; } if (this.gl(a)) { let b = this.xv; if (this.d4()) { if (this.dd.g) { this.dd.t(); } this.xv = this.xx; this.xx = b; } else { this.xv = this.xt; this.xt = b; } this.aax(this.xt, this.x8); let c = false; if (this.g9) { this.dd.w(); this.dd.r = truncate(this.ji()); this.dd.b = this.df != null ? this.df : this.de; if (this.ha) { let d = this.xx; this.xx = this.xv; this.xv = d; c = true; } this.x3.x(this, this.xv, this.xt, this.isVertical, this.xr, this.ya, this.x2, this.x1(), this.c6, this.c5(), () => this.zm(this.x8), this.x8.b9); if (this.ha) { let e = this.xx; this.xx = this.xv; this.xv = e; } this.ha = false; } if (this.hc) { this.dd.w(); this.dd.r = truncate(this.jj()); this.dd.b = this.dg != null ? this.dg : this.de; if (this.g7) { let f = this.xx; this.xx = this.xv; this.xv = f; c = true; } this.x3.x(this, this.xv, this.xt, this.isVertical, this.xr, this.ya, this.x2, this.x1(), this.c6, this.c5(), () => this.zm(this.x8), this.x8.b9); let g = this.xt; this.xt = this.xv; this.xv = g; if (this.g7) { let h = this.xx; this.xx = this.xv; this.xv = h; } this.g7 = false; } this.eb = false; if (!c) { this.pe(); } this.sp(); if (this.g9) { this.g8 = false; this.hb = false; this.gq = false; this.g7 = true; } if (this.hc) { this.hb = false; this.ha = true; } } else { this.aax(this.xt, this.x8); this.aaz(this.xt, this.x8); } } gu() { return true; } y0(a) { for (let b of fromEnum(a)) { switch (b) { case "HighColumn": if (this.yl == null) { return false; } break; case "LowColumn": if (this.ym == null) { return false; } break; case "OpenColumn": if (this.yn == null) { return false; } break; case "CloseColumn": if (this.yk == null) { return false; } break; case "VolumeColumn": if (this.yp == null) { return false; } break; } } return true; } get y1() { return this.xr != null && typeCast(ISortingAxis_$type, this.xr) !== null; } yw() { return this.typical != null; } aap(a) { this.typical(this, a); } get y9() { return this.y6(); } *_y6() { let a = false; if (this.yw()) { let b = this.x4(0, this.dp.count); this.aap(new FinancialEventArgs(0, this.dp.count, b, this.x5(b), this)); if (b.typicalColumn != null) { a = true; for (let c of fromEnum(b.typicalColumn)) { yield c; } } } if (!a) { if (this.y1 && this.xr.i$b != null) { let d = this.dp.count; let e = this.xr.i$b; for (let f = 0; f < d; ++f) { yield (this.yl.item(e.item(f)) + this.ym.item(e.item(f)) + this.yk.item(e.item(f))) / 3; } } else { let g = this.dp.count; for (let h = 0; h < g; ++h) { yield (this.yl.item(h) + this.ym.item(h) + this.yk.item(h)) / 3; } } } } y6() { return toEnum(() => this._y6()); } get y8() { return this.y5(); } *_y5() { if (this.y1 && this.xr.i$b != null) { let a = this.yl.count; let b = this.xr.i$b; if (a > 0) { yield this.zn(this.yl.item(b.item(0)) - this.ym.item(b.item(0))); } for (let c = 1; c < a; ++c) { yield Math.max(this.zn(this.yl.item(b.item(c)) - this.ym.item(b.item(c))), Math.max(this.zn(Math.abs(this.yl.item(b.item(c)) - this.yk.item(b.item(c - 1)))), this.zn(Math.abs(this.ym.item(b.item(c)) - this.yk.item(b.item(c - 1)))))); } } else { let d = this.yl.count; if (d > 0) { yield this.zn(this.yl.item(0) - this.ym.item(0)); }