igniteui-angular-charts
Version:
Ignite UI Angular charting components for building rich data visualizations for modern web apps.
1,479 lines (1,478 loc) • 179 kB
JavaScript
/*
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 { Base, INotifyPropertyChanged_$type, BaseError, PropertyChangedEventArgs, runOn, delegateCombine, delegateRemove, Delegate_$type, fromEnum, String_$type, EnumUtil, enumGetBox, typeCast, markType, TypeRegistrar, getInstanceType } from "igniteui-angular-core";
import { IDataLegendTarget_$type } from "igniteui-angular-core";
import { IToolbarTarget_$type } from "igniteui-angular-core";
import { IDomainChartLike_$type } from "./IDomainChartLike";
import { ArrayExtension } from "igniteui-angular-core";
import { List$1 } from "igniteui-angular-core";
import { Brush } from "igniteui-angular-core";
import { XamDataChart } from "./XamDataChart";
import { DataSeriesType_$type } from "igniteui-angular-core";
import { MarkerType_$type } from "./MarkerType";
import { Color } from "igniteui-angular-core";
import { ColorUtil } from "igniteui-angular-core";
import { IDomainChartToolbarProvider_$type } from "./IDomainChartToolbarProvider";
import { DVContainer } from "igniteui-angular-core";
import { DataToolTipLayerGroupingMode_$type } from "igniteui-angular-core";
import { DataTooltipGroupedPositionX_$type } from "igniteui-angular-core";
import { DataTooltipGroupedPositionY_$type } from "igniteui-angular-core";
import { DataAbbreviationMode_$type } from "igniteui-angular-core";
import { DataLegendValueMode_$type } from "igniteui-angular-core";
import { Thickness } from "igniteui-angular-core";
import { DataLegendHeaderDateMode_$type } from "igniteui-angular-core";
import { DataLegendHeaderTimeMode_$type } from "igniteui-angular-core";
import { DataLegendSummaryType_$type } from "igniteui-angular-core";
import { LegendItemBadgeShape_$type } from "igniteui-angular-core";
import { DataLegendUnitsMode_$type } from "igniteui-angular-core";
import { DataLegendLabelMode_$type } from "igniteui-angular-core";
import { ChartSortDescriptionCollection } from "./ChartSortDescriptionCollection";
import { FilterExpressionCollection } from "igniteui-angular-core";
import { ChartSummaryDescriptionCollection } from "./ChartSummaryDescriptionCollection";
import { SeriesSelectionMode_$type } from "./SeriesSelectionMode";
import { SeriesSelectionBehavior_$type } from "./SeriesSelectionBehavior";
import { ChartSelectedItemCollection } from "./ChartSelectedItemCollection";
import { SortGroupParser } from "igniteui-angular-core";
import { FilterExpressionParsingHelper } from "igniteui-angular-core";
import { FilterStringErrorsParsingEventArgs } from "./FilterStringErrorsParsingEventArgs";
import { SummaryParser } from "igniteui-angular-core";
import { BrushCollection } from "igniteui-angular-core";
import { SeriesHighlightedValuesDisplayMode_$type } from "igniteui-angular-core";
import { Visibility_$type } from "igniteui-angular-core";
import { Rect } from "igniteui-angular-core";
import { HorizontalAlignment_$type } from "igniteui-angular-core";
import { UnknownValuePlotting_$type } from "igniteui-angular-core";
import { SeriesOutlineMode_$type } from "./SeriesOutlineMode";
import { MarkerOutlineMode_$type } from "./MarkerOutlineMode";
import { MarkerFillMode_$type } from "./MarkerFillMode";
import { MarkerAutomaticBehavior_$type } from "./MarkerAutomaticBehavior";
import { TrendLineType_$type } from "igniteui-angular-core";
import { TrendLineTypeCollection } from "./TrendLineTypeCollection";
import { ComputedPlotAreaMarginMode_$type } from "./ComputedPlotAreaMarginMode";
import { SeriesPlotAreaMarginHorizontalMode_$type } from "./SeriesPlotAreaMarginHorizontalMode";
import { SeriesPlotAreaMarginVerticalMode_$type } from "./SeriesPlotAreaMarginVerticalMode";
import { SeriesHighlightingMode_$type } from "./SeriesHighlightingMode";
import { SeriesHighlightingBehavior_$type } from "./SeriesHighlightingBehavior";
import { LegendHighlightingMode_$type } from "./LegendHighlightingMode";
import { LegendItemBadgeMode_$type } from "igniteui-angular-core";
import { ToolTipType_$type } from "./ToolTipType";
import { CrosshairsDisplayMode_$type } from "./CrosshairsDisplayMode";
import { CalloutCollisionMode_$type } from "igniteui-angular-core";
import { SeriesViewerScrollbarMode_$type } from "./SeriesViewerScrollbarMode";
import { SeriesViewerHorizontalScrollbarPosition_$type } from "./SeriesViewerHorizontalScrollbarPosition";
import { SeriesViewerVerticalScrollbarPosition_$type } from "./SeriesViewerVerticalScrollbarPosition";
import { Defaults } from "./Defaults";
import { Series } from "./Series";
import { CaptureImageSettings } from "igniteui-angular-core";
import { Dictionary$2 } from "igniteui-angular-core";
import { DataSeries } from "igniteui-angular-core";
import { ICommandStateChangedListener_$type } from "igniteui-angular-core";
import { DeviceUtils } from "igniteui-angular-core";
import { ObservableCollection$1 } from "igniteui-angular-core";
import { DataSeriesAdapter } from "igniteui-angular-core";
import { ChartSortDescription } from "./ChartSortDescription";
import { ChartSummaryDescription } from "./ChartSummaryDescription";
import { Random } from "igniteui-angular-core";
import { ValueLayerValueMode_$type } from "./ValueLayerValueMode";
import { ObservableColorCollection } from "igniteui-angular-core";
import { BrushCollectionUtil } from "igniteui-angular-core";
import { DomainChartTestingInfo } from "./DomainChartTestingInfo";
import { IToolbarContextAccessor_$type } from "igniteui-angular-core";
import { HashSet$1 } from "igniteui-angular-core";
import { ChartSeriesEventArgs } from "./ChartSeriesEventArgs";
import { DomainChartSeriesPointerEventArgs } from "./DomainChartSeriesPointerEventArgs";
import { DomainChartPlotAreaPointerEventArgs } from "./DomainChartPlotAreaPointerEventArgs";
import { BrushUtil } from "igniteui-angular-core";
import { IUnknownValuePlotting_$type } from "igniteui-angular-core";
import { ITrendLineSeries_$type } from "./ITrendLineSeries";
import { IDataSource_$type } from "igniteui-angular-core";
import { isNaN_ } from "igniteui-angular-core";
import { stringIsNullOrEmpty, stringEmpty, stringStartsWith } from "igniteui-angular-core";
/**
* @hidden
*/
export let DomainChart = /*@__PURE__*/ (() => {
class DomainChart extends Base {
constructor() {
super();
this.mi = null;
this.mf = null;
this.h8 = null;
this.i6 = NaN;
this.me = null;
this.jj = 0;
this.jk = 0;
this.jl = 0;
this.ji = 0;
this.je = 0;
this.jg = 0;
this.jf = 0;
this.jd = 0;
this.ze = null;
this.zf = null;
this.i3 = NaN;
this.jm = NaN;
this.jc = NaN;
this.io = NaN;
this.lt = 0;
this.ex = null;
this.lo = 300;
this.lr = 300;
this.lm = 300;
this.ld = null;
this.hq = false;
this.cm = null;
this.nf = null;
this.nh = null;
this.el = null;
this.f7 = false;
this.fn = null;
this.gb = false;
this.ga = false;
this.ic = null;
this.propertyChanged = null;
this.seriesDataChanged = null;
this.ls = 0;
this.hi = false;
this.hh = false;
this.h3 = new Dictionary$2(String_$type, DataSeries.$, 0);
this.cf = null;
this.hy = false;
this.h7 = null;
this.cj = null;
this.gd = false;
this.ck = null;
this._commandCompleted = null;
this._invalidateActions = null;
this.h4 = null;
this.h5 = new List$1(ICommandStateChangedListener_$type, 0);
this.bz = 0;
this.it = NaN;
this.iu = NaN;
this.ir = DeviceUtils.g(10);
this.is = DeviceUtils.g(10);
this.bv = 0;
this.bx = 0;
this.f3 = true;
this.e = null;
this.b = null;
this.d = null;
this.a = null;
this.bd = 0;
this.li = -1;
this.lj = -1;
this.bt = 0;
this.m5 = stringEmpty();
this.f4 = true;
this.m6 = null;
this.f = null;
this.aax = new Thickness(0, DeviceUtils.g(5));
this.f5 = true;
this.m7 = "N/A";
this.f6 = false;
this.aay = new Thickness(1, DeviceUtils.g(2), DeviceUtils.g(0), DeviceUtils.g(2), DeviceUtils.g(0));
this.y7 = null;
this.e9 = null;
this.mz = null;
this.c = null;
this.my = stringEmpty();
this.bj = 0;
this.bl = 0;
this.m0 = null;
this.yz = null;
this.aar = new Thickness(1, DeviceUtils.g(2), DeviceUtils.g(0), DeviceUtils.g(0), DeviceUtils.g(0));
this.aaq = new Thickness(0, DeviceUtils.g(5));
this.f2 = true;
this.e1 = null;
this.yy = null;
this.aap = new Thickness(1, DeviceUtils.g(2), DeviceUtils.g(0), DeviceUtils.g(0), DeviceUtils.g(0));
this.aao = new Thickness(0, DeviceUtils.g(5));
this.f1 = false;
this.e0 = null;
this.y2 = null;
this.e4 = null;
this.bp = 0;
this.m2 = null;
this.aau = new Thickness(1, DeviceUtils.g(2), DeviceUtils.g(0), DeviceUtils.g(0), DeviceUtils.g(0));
this.aat = new Thickness(0, DeviceUtils.g(5));
this.y4 = null;
this.e6 = null;
this.m1 = null;
this.y1 = null;
this.e3 = null;
this.m3 = null;
this.y3 = null;
this.e5 = null;
this.aan = new Thickness(0, DeviceUtils.g(0));
this.cs = 0;
this.br = 0;
this.m4 = null;
this.y6 = null;
this.aaw = new Thickness(0, DeviceUtils.g(0));
this.e8 = null;
this.aav = new Thickness(0, DeviceUtils.g(0));
this.y5 = null;
this.e7 = null;
this.bn = 0;
this.y0 = null;
this.aas = new Thickness(1, DeviceUtils.g(8), DeviceUtils.g(0), DeviceUtils.g(0), DeviceUtils.g(0));
this.e2 = null;
this.userAnnotationInformationRequested = null;
this.userAnnotationToolTipContentUpdating = null;
this.seriesAdded = null;
this.seriesRemoved = null;
this.seriesPointerEnter = null;
this.seriesPointerLeave = null;
this.seriesPointerMove = null;
this.seriesPointerDown = null;
this.seriesPointerUp = null;
this.seriesClick = null;
this.plotAreaPointerEnter = null;
this.plotAreaPointerLeave = null;
this.plotAreaPointerMove = null;
this.plotAreaPointerDown = null;
this.plotAreaPointerUp = null;
this.calloutStyleUpdating = null;
this.calloutRenderStyleUpdating = null;
this.calloutLabelUpdating = null;
this.selectedSeriesItemsChanged = null;
this.focusedSeriesItemsChanged = null;
this.ib = null;
this.fm = null;
this.fq = false;
this.h2 = new Dictionary$2(String_$type, Base.$, 0);
this.h6 = new List$1(String_$type, 0);
this.ay = null;
this.au = null;
this.at = null;
this.en = null;
this.eo = null;
this.a6 = null;
this.ev = null;
this.ew = null;
this.ax = null;
this.aw = null;
this.av = null;
this.eq = null;
this.ep = null;
this.a5 = null;
this.dy = 0;
this.dx = 0;
this.zd = null;
this.za = null;
this.dv = 0;
this.ao = new ChartSelectedItemCollection();
this.an = new ChartSelectedItemCollection();
this.nc = null;
this.m8 = null;
this.na = null;
this.m9 = null;
this.nb = null;
this.filterStringErrorsParsing = null;
this.nd = null;
this.md = null;
this.mb = null;
this.mc = null;
this.ma = null;
this.h = null;
this.g = null;
this.r = null;
this.u = null;
this.p = null;
this.q = null;
this.ch = null;
this.gc = true;
this.gg = true;
this.gj = false;
this.gm = false;
this.gl = false;
this.di = 1;
this.ge = false;
this.abb = 0;
this.abc = 0;
this.aak = new Rect(0, 0, 0, 1, 1);
this.ng = null;
this.ne = null;
this.yj = 1;
this.yi = 1;
this.eg = 0;
this.jb = NaN;
this.jh = NaN;
this.dp = 0;
this.c0 = 0;
this.cy = 0;
this.i4 = NaN;
this.i5 = NaN;
this.c6 = null;
this.cw = 4;
this.s = null;
this.t = null;
this.lp = 400;
this.im = NaN;
this.fp = false;
this.v = null;
this.ed = 0;
this.jn = DeviceUtils.g(1.5);
this.ef = null;
this.gn = false;
this.fo = true;
this.i8 = NaN;
this.ja = NaN;
this.i9 = NaN;
this.i7 = NaN;
this.ln = 200;
this.ll = 200;
this.lq = 200;
this.a9 = 0;
this.dr = 0;
this.dt = 0;
this.dm = 0;
this.dk = 0;
this.iv = NaN;
this.co = 0;
this.ct = 0;
this.cq = 0;
this.lu = 7;
this.eb = 4;
this.bc = 0;
this.f0 = false;
this.yx = null;
this.iq = NaN;
this.yw = null;
this.fx = true;
this.fz = false;
this.fy = false;
this.ys = null;
this.yu = null;
this.yt = null;
this.yv = null;
this.lg = -1;
this.lh = -1;
this.gi = false;
this.gk = true;
this.f8 = false;
this.y8 = null;
this.y9 = null;
this.lk = -1;
this.fr = false;
this.fw = false;
this.fs = false;
this.go = true;
this.ag = 0;
this.fu = false;
this.fv = false;
this.ft = false;
this.ip = NaN;
this.ym = null;
this.yq = null;
this.yr = null;
this.yp = null;
this.yn = null;
this.yo = null;
this.lf = -1;
this.ih = null;
this.aj = null;
this.mw = null;
this.mx = null;
this.mv = "CalloutLabel";
this.mu = "CalloutContent";
this.ez = null;
this.ek = null;
this.w = null;
this.jo = NaN;
this.gh = false;
this.d3 = 0;
this.d4 = 0;
this.d1 = 0;
this.d9 = 0;
this.zb = null;
this.zc = null;
this.i0 = NaN;
this.iz = NaN;
this.iw = NaN;
this.ix = NaN;
this.iy = NaN;
this.i2 = NaN;
this.i1 = NaN;
this.f9 = true;
this.zg = null;
this.zh = null;
this.js = NaN;
this.jr = NaN;
this.jp = NaN;
this.jv = NaN;
this.jq = NaN;
this.ju = NaN;
this.jt = NaN;
this.gp = true;
this.jx = NaN;
this.jw = NaN;
this.jz = NaN;
this.jy = NaN;
this.gf = false;
this.ib = new List$1(Delegate_$type, 0);
this.v7();
this.vi();
}
provideContainer(a) {
if (a == null) {
this.wp((b) => {
b.destroy();
b.provideContainer(null);
});
return;
}
let b = this.mi;
this.mi = a;
if (this.fm != null && this.mi != null && b == null) {
this.mi.setTimeout(this.fm, 0);
this.fm = null;
}
let c = ((() => {
let $ret = new XamDataChart();
$ret.fz = true;
return $ret;
})());
c.kh = this;
c.dw.b7(a);
this.dataChart = c;
this.v8();
}
destroy() {
this.ga = true;
this.provideContainer(null);
}
v8() {
if (this.dataChart == null) {
return;
}
let a = this.dataChart.dw.j.e();
this.z = a.a;
this.ad = a.f;
this.ab = a.b;
this.ac = a.c;
this.af = a.g;
this.j3 = Defaults.crosshairLineThickness;
this.v9();
}
v9() {
}
v5(a) {
if (a == null) {
return;
}
a.jk = this.ky;
a.ji = this.kw;
a.jj = this.kx;
a.jh = this.kv;
a.yd = this.aag;
a.je = this.kr;
a.jg = this.kt;
a.jf = this.ks;
a.jd = this.kq;
a.yc = this.aaf;
if (!isNaN_(this.kj)) {
a.i8 = this.kj;
}
}
v2() {
}
wb(a, b) {
a.km = this.l8;
a.de = this.ey;
}
w5(a, b, c) {
switch (a) {
case "TitleTopMargin":
if (this.dataChart != null) {
this.dataChart.jk = this.ky;
}
break;
case "TitleLeftMargin":
if (this.dataChart != null) {
this.dataChart.ji = this.kw;
}
break;
case "PixelScalingRatio":
if (this.dataChart != null) {
this.wp((d) => d.i8 = this.kj);
}
break;
case "TitleRightMargin":
if (this.dataChart != null) {
this.dataChart.jj = this.kx;
}
break;
case "TitleBottomMargin":
if (this.dataChart != null) {
this.dataChart.jh = this.kv;
}
break;
case "TitleTextColor":
if (this.dataChart != null) {
this.dataChart.yd = this.aag;
}
break;
case "SubtitleLeftMargin":
if (this.dataChart != null) {
this.dataChart.je = this.kr;
}
break;
case "SubtitleTopMargin":
if (this.dataChart != null) {
this.dataChart.jg = this.kt;
}
break;
case "SubtitleRightMargin":
if (this.dataChart != null) {
this.dataChart.jf = this.ks;
}
break;
case "SubtitleBottomMargin":
if (this.dataChart != null) {
this.dataChart.jd = this.kq;
}
break;
case "SubtitleTextColor":
if (this.dataChart != null) {
this.dataChart.yc = this.aaf;
}
break;
case "LeftMargin":
if (this.dataChart != null) {
this.dataChart.i7 = this.kg;
}
break;
case "TopMargin":
if (this.dataChart != null) {
this.dataChart.jl = this.kz;
}
break;
case "RightMargin":
if (this.dataChart != null) {
this.dataChart.jc = this.kp;
}
break;
case "BottomMargin":
if (this.dataChart != null) {
this.dataChart.ir = this.j1;
}
break;
case "TransitionDuration":
this.vy((d) => d.km = this.l8);
break;
case "TransitionEasingFunction":
this.vy((d) => d.de = this.ey);
break;
}
}
get tooltipTemplate() {
return ArrayExtension.getModulus$1(Base.$, this.tooltipTemplates, 0);
}
set tooltipTemplate(a) {
this.tooltipTemplates = a == null ? null : new List$1(Base.$, 1, [a]);
}
get tooltipTemplates() {
return this.h8;
}
set tooltipTemplates(a) {
let b = this.tooltipTemplates;
if (a != b) {
this.h8 = a;
this.w1("TooltipTemplates", b, this.tooltipTemplates);
}
}
get kj() {
return this.i6;
}
set kj(a) {
let b = this.i6;
if (a != b) {
this.i6 = a;
this.w1("PixelScalingRatio", b, this.kj);
}
}
get toolTip() {
return this.me;
}
set toolTip(a) {
let b = this.toolTip;
if (b != a) {
this.me = a;
this.w1("ToolTip", b, this.toolTip);
}
}
get kw() {
return this.jj;
}
set kw(a) {
let b = this.kw;
if (a != b) {
this.jj = a;
this.w1("TitleLeftMargin", b, this.kw);
}
}
get kx() {
return this.jk;
}
set kx(a) {
let b = this.kx;
if (a != b) {
this.jk = a;
this.w1("TitleRightMargin", b, this.kx);
}
}
get ky() {
return this.jl;
}
set ky(a) {
let b = this.ky;
if (a != b) {
this.jl = a;
this.w1("TitleTopMargin", b, this.ky);
}
}
get kv() {
return this.ji;
}
set kv(a) {
let b = this.kv;
if (a != b) {
this.ji = a;
this.w1("TitleBottomMargin", b, this.kv);
}
}
get kr() {
return this.je;
}
set kr(a) {
let b = this.kr;
if (a != b) {
this.je = a;
this.w1("SubtitleLeftMargin", b, this.kr);
}
}
get kt() {
return this.jg;
}
set kt(a) {
let b = this.kt;
if (a != b) {
this.jg = a;
this.w1("SubtitleTopMargin", b, this.kt);
}
}
get ks() {
return this.jf;
}
set ks(a) {
let b = this.ks;
if (a != b) {
this.jf = a;
this.w1("SubtitleRightMargin", b, this.ks);
}
}
get kq() {
return this.jd;
}
set kq(a) {
let b = this.kq;
if (a != b) {
this.jd = a;
this.w1("SubtitleBottomMargin", b, this.kq);
}
}
get aaf() {
return this.ze;
}
set aaf(a) {
let b = this.aaf;
if (a != b) {
this.ze = a;
this.w1("SubtitleTextColor", b, this.aaf);
}
}
get aag() {
return this.zf;
}
set aag(a) {
let b = this.aag;
if (a != b) {
this.zf = a;
this.w1("TitleTextColor", b, this.aag);
}
}
get_kg() {
return this.i3;
}
set_kg(a) {
let b = this.kg;
if (a != b) {
this.i3 = a;
this.w1("LeftMargin", b, this.kg);
}
}
get kg() {
return this.get_kg();
}
set kg(a) {
this.set_kg(a);
}
get kz() {
return this.jm;
}
set kz(a) {
let b = this.kz;
if (a != b) {
this.jm = a;
this.w1("TopMargin", b, this.kz);
}
}
get kp() {
return this.jc;
}
set kp(a) {
let b = this.kp;
if (a != b) {
this.jc = a;
this.w1("RightMargin", b, this.kp);
}
}
get j1() {
return this.io;
}
set j1(a) {
let b = this.j1;
if (a != b) {
this.io = a;
this.w1("BottomMargin", b, this.j1);
}
}
get l8() {
return this.lt;
}
set l8(a) {
let b = this.l8;
if (a != b) {
this.lt = a;
this.w1("TransitionDuration", b, this.l8);
}
}
get ey() {
return this.ex;
}
set ey(a) {
let b = this.ey;
if (a != b) {
this.ex = a;
this.w1("TransitionEasingFunction", b, this.ey);
}
}
get l4() {
return this.lo;
}
set l4(a) {
let b = this.l4;
if (a != b) {
this.lo = a;
this.w1("HighlightingTransitionDuration", b, this.l4);
}
}
get l7() {
return this.lr;
}
set l7(a) {
let b = this.l7;
if (a != b) {
this.lr = a;
this.w1("SelectionTransitionDuration", b, this.l7);
}
}
get l2() {
return this.lm;
}
set l2(a) {
let b = this.l2;
if (a != b) {
this.lm = a;
this.w1("FocusTransitionDuration", b, this.l2);
}
}
v6(a) {
if (this.dataChart == null) {
return;
}
a.np = this.t4;
a.nd = this.tt;
}
wc(a, b) {
this.wd(a, b);
}
v3() {
}
wd(a, b) {
if (a == null) {
return;
}
if (this.ec == 3) {
return;
}
let toolTipTemplate_ = ArrayExtension.getModulus$1(Base.$, this.tooltipTemplates, b);
if (toolTipTemplate_ == null) {
a.gv = true;
}
else {
let series_ = a;
a.gv = false;
series_.externalObject.tooltipTemplate = toolTipTemplate_;
}
}
ya(a, b, c) {
}
mk(a) {
return a;
return null;
}
le(a) {
return null;
}
w6(a, b, c) {
switch (a) {
case "SubtitleTextStyle":
if (this.dataChart != null) {
this.dataChart.nd = this.tt;
}
break;
case "TitleTextStyle":
if (this.dataChart != null) {
this.dataChart.np = this.t4;
}
break;
case "TooltipTemplate":
if (this.hq) {
return;
}
this.hq = true;
this.tooltipTemplate = this.mk(this.tooltipTemplate);
this.hq = false;
if (this.dataChart != null) {
this.dataChart.kj = this.tooltipTemplate;
}
this.toolTip = this.tooltipTemplate;
break;
case "ToolTip":
this.vz((d, e) => this.wd(d, e));
break;
case "TooltipTemplates":
if (this.tooltipTemplates == null) {
break;
}
this.hq = true;
this.vz((d, e) => {
let f = this.mk(ArrayExtension.getModulus$1(Base.$, this.tooltipTemplates, e));
let series_ = d;
let templ_ = f;
series_.externalObject.tooltipTemplate = templ_;
});
this.hq = false;
break;
}
}
get cn() {
return this.cm;
}
set cn(a) {
let b = this.cn;
if (a != b) {
this.cm = a;
this.w1("Widget", b, this.cn);
}
}
get tt() {
return this.nf;
}
set tt(a) {
let b = this.tt;
if (a != b) {
this.nf = a;
this.w1("SubtitleTextStyle", b, this.tt);
}
}
get t4() {
return this.nh;
}
set t4(a) {
let b = this.t4;
if (a != b) {
this.nh = a;
this.w1("TitleTextStyle", b, this.t4);
}
}
get dataChart() {
return this.el;
}
set dataChart(a) {
let b = this.dataChart;
if (b != a) {
this.el = a;
this.w1("DataChart", b, this.dataChart);
}
}
get currentDataAdapter() {
return this.bg;
}
sendCommandCompleted(a) {
if (this.commandCompleted != null) {
this.commandCompleted(a);
}
}
captureTargetImageToClipboard(a) {
if (this.f7) {
return;
}
this.f7 = true;
this.fn = a;
let b = new CaptureImageSettings();
b.b = true;
b.a = 0;
let c = this.dataChart;
c.imageCaptured = delegateCombine(c.imageCaptured, runOn(this, this.wy));
this.dataChart.ot(b);
this.dataChart.al.q();
}
wy(a, b) {
this.f7 = false;
let c = this.dataChart;
c.imageCaptured = delegateRemove(c.imageCaptured, runOn(this, this.wy));
if (this.fn != null) {
this.fn(this, b);
this.fn = null;
}
}
get isDetached() {
return this.gb || this.ga;
}
onDetachedFromUI() {
this.gb = true;
this.wp((a) => a.onDetachedFromUI());
}
onAttachedToUI() {
this.gb = false;
this.wp((a) => a.onAttachedToUI());
}
vo() {
this.v7();
}
v7() {
if (this.bg == null) {
this.bg = this.bi(true);
let a = this.bg.dataSeries;
a.collectionChanged = delegateCombine(a.collectionChanged, runOn(this, this.ws));
}
if (this.bh == null) {
this.bh = this.bi(false);
let b = this.bh.dataSeries;
b.collectionChanged = delegateCombine(b.collectionChanged, runOn(this, this.wx));
}
}
x8(a, b, c) {
if (a) {
b.e = c;
}
else {
b.n(c);
}
}
x7(a, b, c) {
if (a) {
b.syncTarget = c;
}
else {
b.o(c);
}
}
x9(a, b, c) {
if (a) {
b.e = c;
}
else {
b.n(c);
}
}
bi(a) {
this.ic = new List$1(MarkerType_$type, 0);
let b = new DataSeriesAdapter().e;
if (a) {
this.ay = new ChartSortDescriptionCollection();
this.au = new ChartSortDescriptionCollection();
this.at = new ChartSortDescriptionCollection();
this.a6 = new ChartSummaryDescriptionCollection();
this.en = new FilterExpressionCollection();
this.eo = new FilterExpressionCollection();
}
this.x8(a, this.a4, b.sortDescriptions);
this.x8(a, this.az, b.groupDescriptions);
this.x7(a, this.er, b.filterExpressions);
this.x7(a, this.es, b.highlightFilterExpressions);
this.x9(a, this.a8, b.summaryDescriptions);
this.x8(a, this.a0, b.postSortDescriptions);
if (a) {
this.ev = new SortGroupParser();
this.ew = new SummaryParser();
this.ax = ((() => {
let $ret = new ChartSortDescriptionCollection();
$ret.i = true;
return $ret;
})());
this.aw = ((() => {
let $ret = new ChartSortDescriptionCollection();
$ret.i = true;
return $ret;
})());
this.av = ((() => {
let $ret = new ChartSortDescriptionCollection();
$ret.i = true;
return $ret;
})());
this.a5 = ((() => {
let $ret = new ChartSummaryDescriptionCollection();
$ret.i = true;
return $ret;
})());
this.ep = ((() => {
let $ret = new FilterExpressionCollection();
$ret.shouldDetachOnTargetChange = true;
return $ret;
})());
this.eq = ((() => {
let $ret = new FilterExpressionCollection();
$ret.shouldDetachOnTargetChange = true;
return $ret;
})());
}
{
if (this.er.k.count == 0) {
this.x7(a, this.ep, b.filterExpressions);
}
}
{
if (this.es.k.count == 0) {
this.x7(a, this.eq, b.highlightFilterExpressions);
}
}
{
if (this.a4.j.count == 0) {
this.x8(a, this.ax, b.sortDescriptions);
}
if (this.a0.j.count == 0) {
this.x8(a, this.aw, b.postSortDescriptions);
}
}
{
if (this.az.j.count == 0) {
this.x8(a, this.av, b.groupDescriptions);
}
}
{
if (this.a8.j.count == 0) {
this.x9(a, this.a5, b.summaryDescriptions);
}
}
if (this.includedProperties != null) {
b.includedProperties = this.includedProperties;
}
if (this.excludedProperties != null) {
b.excludedProperties = this.excludedProperties;
}
b.supportedSeriesTypes = this.ie.toArray();
b.rules.clear();
for (let c of fromEnum(this.id)) {
b.rules.add(c);
}
let d = new List$1(String_$type, 0);
for (let e of fromEnum(b.rules)) {
d.add(getInstanceType(e).typeName);
}
return b;
}
yc(a) {
if (this.dataChart != null) {
this.dataChart.tp(a);
}
}
ye(a) {
if (this.dataChart != null) {
this.dataChart.tt(a);
}
}
yd(a) {
if (this.dataChart != null) {
this.dataChart.ts(a);
}
}
yb(a) {
if (this.dataChart != null) {
this.dataChart.to(a);
}
}
hk(a) {
return a != 24 && this.ie.contains(a);
}
notifyResized() {
this.wp((a) => a.notifyContainerResized());
}
wn() {
this.wp((a) => {
for (let b = 0; b < a.b9.count; b++) {
a.b9._inner[b].q1();
}
});
}
vr() {
if (this.dataChart == null) {
return;
}
if (this.bg != null) {
this.bg.flush();
}
if (this.bh != null) {
this.bh.flush();
}
if (this.hi) {
this.vm();
}
this.dataChart.flush();
}
v0() {
if (this.dataChart == null) {
return;
}
this.dataChart.pl();
}
xk(a) {
if (this.propertyChanged != null) {
this.propertyChanged(this, new PropertyChangedEventArgs(a));
}
}
vt(a) {
this.vu((b, c) => a(b));
}
vu(a) {
if (this.dataChart == null) {
return;
}
for (let b = 0; b < this.dataChart.b9.count; b++) {
a(this.dataChart.b9._inner[b], b);
}
}
vy(a) {
this.vz((b, c) => a(b));
}
vz(a) {
if (this.dataChart == null) {
return;
}
for (let b = 0; b < this.dataChart.b9.count; b++) {
let c = this.dataChart.b9._inner[b];
if (!c.eu) {
a(c, b);
}
}
}
vw(a) {
this.vx((b, c) => a(b));
}
vx(a) {
if (this.dataChart == null) {
return;
}
for (let b = 0; b < this.dataChart.b9.count; b++) {
let c = this.dataChart.b9._inner[b];
if (c.ev) {
a(c, b);
}
}
}
xy() {
this.vt((a) => a.sc());
}
wp(a) {
this.wq(a, true);
}
wq(a, b) {
this.wr(a, b, null);
}
wr(a, b, c) {
if (this.dataChart == null) {
return;
}
a(this.dataChart);
}
hn(a) {
if (!this.hk(a.suggestedSeries)) {
return false;
}
let b = a.data;
if (b == null) {
return false;
}
return true;
}
hc() {
if (this.dataChart == null) {
return false;
}
return true;
}
rg(a) {
let b = EnumUtil.getName(DataSeriesType_$type, a.suggestedSeries);
let c = "series_" + (a.index + 1) + "_" + b;
return c;
}
rh(a, b) {
if (this.hf && this.hx) {
let c = "";
let d = 5 + Math.round(DomainChart.ms.nextDouble() * 4);
for (let e = 0; e < d; e++) {
c = c + "\u2588";
}
return c;
}
if (stringIsNullOrEmpty(a.title)) {
let f = EnumUtil.getName(DataSeriesType_$type, b);
return f + (this.dataChart.b9.count + 1);
}
else {
return a.title;
}
}
rf() {
return stringEmpty();
}
w8() {
let a = this.xa(runOn(this, this.vm), this.hi);
this.hi = a.p1;
}
vg() {
if (this.dataChart == null) {
return;
}
this.hh = false;
let a = false;
if (this.g8()) {
a = true;
this.ve();
}
if (a) {
this.vp();
this.yf();
}
}
yf() {
this.h3.clear();
}
ve() {
let a = 0;
for (let b of fromEnum(this.bh.dataSeries)) {
if (b.index == -1) {
b.index = a;
}
if (!stringIsNullOrEmpty(this.rg(b))) {
this.h3.item(this.rg(b), b);
}
a++;
}
}
ij(a) {
return a.data;
}
ik(a) {
return a.highlightedData;
}
vp() {
if (this.hi) {
let a = 0;
for (let b of fromEnum(this.bg.dataSeries)) {
if (b.index == -1) {
b.index = a;
}
if (!stringIsNullOrEmpty(this.rg(b))) {
if (this.h3.containsKey(this.rg(b))) {
let c = this.h3.item(this.rg(b));
b.highlightedData = c.data;
}
}
a++;
}
}
if (!this.hi && this.dataChart != null) {
for (let d = 0; d < this.dataChart.b9.count; d++) {
let e = this.dataChart.b9._inner[d];
if (this.h3.containsKey(e.name)) {
e.highlightedItemsSource = this.ij(this.h3.item(e.name));
}
}
}
}
g8() {
if (this.actualHighlightedItemsSource == null) {
return false;
}
if (this.bh.dataSeries.count != this.bg.dataSeries.count) {
return false;
}
if (this.bh.dataSeries.count == 0) {
return false;
}
for (let a = 0; a < this.bh.dataSeries.count; a++) {
if (!(this.bh.dataSeries._inner[a].isMatch(this.bg.dataSeries._inner[a]))) {
let b = false;
for (let c = 0; c < this.bg.dataSeries.count; c++) {
if (c == a) {
continue;
}
if (this.bh.dataSeries._inner[a].isMatch(this.bg.dataSeries._inner[c])) {
b = true;
break;
}
}
if (!b) {
return false;
}
}
}
return true;
}
x1() {
if (this.dataChart == null) {
return;
}
this.hi = false;
this.x3();
if (this.actualItemsSource == null) {
return;
}
let a = new List$1(MarkerType_$type, 0);
for (let b of fromEnum(this.bg.dataSeries)) {
a.add(this.c2(b.suggestedMarker));
}
this.ic = a;
let c = 0;
for (let d of fromEnum(this.bg.dataSeries)) {
if (!this.hn(d)) {
continue;
}
if (d.index < 0) {
d.index = c;
}
this.xz(d);
this.x0(d);
c++;
}
this.yg();
this.vu(runOn(this, this.wa));
}
dh(seriesType_) {
return (this.externalObject.createSeries(seriesType_).i);
}
c8() {
return this.dh(28);
}
da() {
return this.dh(27);
}
dc() {
return this.dh(29);
}
dd() {
return this.dh(25);
}
c9() {
return this.dh(26);
}
db() {
return this.dh(32);
}
dg() {
return this.dh(33);
}
df() {
return this.dh(34);
}
get cg() {
if (TypeRegistrar.isRegistered("AnnotationLayerProxy")) {
return TypeRegistrar.create("AnnotationLayerProxy");
}
else {
throw new BaseError(1, "annotation layer module is not loaded, but is required.");
}
}
get g7() {
return (TypeRegistrar.isRegistered("AnnotationLayerProxy"));
}
ha(a) {
if (!this.g7) {
return false;
}
return this.cg.matchesType(a);
}
yg() {
let a = this.ia("", true);
if (a != null) {
for (let b = 0; b < a.count; b++) {
this.dataChart.series.add(a._inner[b]);
}
}
}
hd() {
return this.crosshairsDisplayMode == 0 || this.crosshairsDisplayMode == 4 || this.crosshairsDisplayMode == 2;
}
he() {
return this.crosshairsDisplayMode == 0 || this.crosshairsDisplayMode == 4 || this.crosshairsDisplayMode == 3;
}
get_hb() {
return this.autoCalloutsVisible;
}
get hb() {
return this.get_hb();
}
ia(a, b) {
if (!this.g7) {
return null;
}
let c = new List$1(Series.$, 0);
if (b) {
let d = 1;
if (this.fw) {
if (this.ih == null) {
if (this.mw != null || this.mx != null || this.mv != null || this.mu != null) {
for (let e of fromEnum(this.dataChart.b9)) {
let f = this.c8();
this.cg.setTargetSeries(f, e);
this.cg.setCollisionChannel(f, "MainChartCollisionChannel");
this.x6(f, e, this.bg.dataSeries._inner[d - 1]);
f.name = a + getInstanceType(f).typeName + d.toString();
c.add(f);
d++;
}
;
}
}
else {
let g = this.c8();
this.x6(g, null, this.bg.dataSeries._inner[d - 1]);
g.name = a + getInstanceType(g).typeName + d.toString();
if (this.fw && this.fr) {
this.cg.setCollisionChannel(g, "MainChartCollisionChannel");
}
c.add(g);
}
}
if (this.fr) {
let h = this.c8();
this.vh(h, this.hw);
h.name = a + getInstanceType(h).typeName + d.toString();