UNPKG

igniteui-react-charts

Version:

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

1,424 lines (1,423 loc) 749 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 { Control } from "igniteui-react-core"; import { INotifyPropertyChanged_$type, Base, Type, EventArgs, PropertyChangedEventArgs, IEnumerable_$type, callStaticConstructors, Point_$type, runOn, delegateCombine, fromEnum, delegateRemove, fromEn, typeCast, enumGetBox, EnumUtil, Boolean_$type, Number_$type, typeGetValue, toEnum, String_$type, markType, markDep, PointUtil, TypeRegistrar, Delegate_$type, Array_$type, Date_$type, getInstanceType } from "igniteui-react-core"; import { ILegendOwner_$type } from "igniteui-react-core"; import { IInternalLegendOwner_$type } from "igniteui-react-core"; import { IDataLegendTarget_$type } from "igniteui-react-core"; import { IToolbarTarget_$type } from "igniteui-react-core"; import { ISupportsAnimation_$type } from "igniteui-react-core"; import { SRProvider } from "igniteui-react-core"; import { HashSet$1 } from "igniteui-react-core"; import { IToolbarContextAccessor_$type } from "igniteui-react-core"; import { DVContainer } from "igniteui-react-core"; import { SeriesPlotAreaMarginHorizontalMode_$type } from "./SeriesPlotAreaMarginHorizontalMode"; import { SeriesPlotAreaMarginVerticalMode_$type } from "./SeriesPlotAreaMarginVerticalMode"; import { SeriesViewerScrollbarMode_$type } from "./SeriesViewerScrollbarMode"; import { DoubleAnimator } from "igniteui-react-core"; import { BrushCollection } from "igniteui-react-core"; import { DependencyProperty } from "igniteui-react-core"; import { DependencyObject } from "igniteui-react-core"; import { MarkerAutomaticBehavior_$type } from "./MarkerAutomaticBehavior"; import { IChartLegend_$type } from "igniteui-react-core"; import { SeriesHighlightingMode_$type } from "./SeriesHighlightingMode"; import { SeriesSelectionMode_$type } from "./SeriesSelectionMode"; import { SeriesSelectionBehavior_$type } from "./SeriesSelectionBehavior"; import { SeriesViewerHorizontalScrollbarPosition_$type } from "./SeriesViewerHorizontalScrollbarPosition"; import { SeriesViewerVerticalScrollbarPosition_$type } from "./SeriesViewerVerticalScrollbarPosition"; import { Brush } from "igniteui-react-core"; import { SeriesHighlightingBehavior_$type } from "./SeriesHighlightingBehavior"; import { LegendHighlightingMode_$type } from "./LegendHighlightingMode"; import { LegendItemBadgeShape_$type } from "igniteui-react-core"; import { LegendItemBadgeMode_$type } from "igniteui-react-core"; import { Rect } from "igniteui-react-core"; import { ChartHitTestMode_$type } from "./ChartHitTestMode"; import { InteractionState_$type } from "igniteui-react-core"; import { WindowResponse_$type } from "./WindowResponse"; import { Visibility_$type } from "igniteui-react-core"; import { SeriesViewerComponentsFromView } from "./SeriesViewerComponentsFromView"; import { ZoomCoercionMode_$type } from "./ZoomCoercionMode"; import { ModifierKeys_$type } from "igniteui-react-core"; import { SeriesHighlightedValuesDisplayMode_$type } from "igniteui-react-core"; import { DataTemplate } from "igniteui-react-core"; import { HorizontalAlignment_$type } from "igniteui-react-core"; import { CanvasRenderScheduler } from "igniteui-react-core"; import { SyncSettings } from "./SyncSettings"; import { PropertyMetadata } from "igniteui-react-core"; import { ICommandStateChangedListener_$type } from "igniteui-react-core"; import { List$1 } from "igniteui-react-core"; import { SeriesViewerComponentsForView } from "./SeriesViewerComponentsForView"; import { VersionQueueHelper } from "igniteui-react-core"; import { Dictionary$2 } from "igniteui-react-core"; import { IDataLegend_$type } from "igniteui-react-core"; import { PropertyUpdatedEventArgs } from "igniteui-react-core"; import { NotifyCollectionChangedEventArgs } from "igniteui-react-core"; import { ObservableCollection$1 } from "igniteui-react-core"; import { Size } from "igniteui-react-core"; import { FrameworkElement } from "igniteui-react-core"; import { MouseEventArgs } from "igniteui-react-core"; import { MouseButtonEventArgs } from "igniteui-react-core"; import { Tuple$2 } from "igniteui-react-core"; import { ScalerParams } from "./ScalerParams"; import { SeriesViewerManipulationEventArgs } from "./SeriesViewerManipulationEventArgs"; import { IFastItemsSource_$type } from "igniteui-react-core"; import { ChartResizeIdleEventArgs } from "./ChartResizeIdleEventArgs"; import { RectChangedEventArgs } from "igniteui-react-core"; import { MathUtil } from "igniteui-react-core"; import { DeviceUtils } from "igniteui-react-core"; import { RefreshCompletedEventArgs } from "./RefreshCompletedEventArgs"; import { Thickness } from "igniteui-react-core"; import { AxisTitlePosition_$type } from "./AxisTitlePosition"; import { FontInfo } from "igniteui-react-core"; import { CoercionInfo } from "./CoercionInfo"; import { FastItemsSource } from "igniteui-react-core"; import { FontUtil } from "igniteui-react-core"; import { IDataLegendSeries_$type } from "igniteui-react-core"; import { CaptureImageSettings } from "igniteui-react-core"; import { ImageCapturedEventArgs } from "igniteui-react-core"; import { truncate, intDivide, isNaN_, isInfinity, logBase, log10 } from "igniteui-react-core"; import { ChartContentType_$type } from "./ChartContentType"; import { defaultDVDateParse, dateNow, dateMinValue } from "igniteui-react-core"; import { stringIsNullOrEmpty, stringEmpty, stringEndsWith, stringStartsWith, stringIsNullOrWhiteSpace } from "igniteui-react-core"; import { timeSpanTotalMilliseconds } from "igniteui-react-core"; import { ISchedulableRender_$type } from "igniteui-react-core"; import { Rectangle } from "igniteui-react-core"; import { Path } from "igniteui-react-core"; import { Line } from "igniteui-react-core"; import { RenderingContext } from "igniteui-react-core"; import { TextBlock } from "igniteui-react-core"; import { ITileZoomTile_$type } from "./ITileZoomTile"; import { DOMExecutionContext } from "igniteui-react-core"; import { RenderSurface } from "./RenderSurface"; import { PathFigureCollection } from "igniteui-react-core"; import { PathFigure } from "igniteui-react-core"; import { LineSegment } from "igniteui-react-core"; import { PathGeometry } from "igniteui-react-core"; import { GeometryGroup } from "igniteui-react-core"; import { DataContext } from "igniteui-react-core"; import { LabelPanelsArrangeState } from "./LabelPanelsArrangeState"; import { MarkerTemplates } from "./MarkerTemplates"; import { DataTemplateRenderInfo } from "igniteui-react-core"; import { DataTemplateMeasureInfo } from "igniteui-react-core"; import { AxisLabelsLocation_$type } from "./AxisLabelsLocation"; import { IProvidesViewport_$type } from "./IProvidesViewport"; import { ArgumentNullException } from "igniteui-react-core"; import { ActualLegendItemBadgeShape_$type } from "./ActualLegendItemBadgeShape"; import { CanvasViewRenderer } from "igniteui-react-core"; import { Defaults } from "./Defaults"; import { EllipseGeometry } from "igniteui-react-core"; import { DataTemplatePassInfo } from "igniteui-react-core"; import { BrushUtil } from "igniteui-react-core"; import { LegendItemHelper } from "igniteui-react-core"; import { DomWrapper_$type } from "igniteui-react-core"; import { PointerTooltipStyle } from "./PointerTooltipStyle"; import { DefaultPaletteInfo } from "./DefaultPaletteInfo"; import { CssGradientUtil } from "igniteui-react-core"; import { AxisDefaults } from "./AxisDefaults"; import { BrushUtilCore } from "igniteui-react-core"; import { AxisRange } from "./AxisRange"; import { LinearNumericSnapper } from "./LinearNumericSnapper"; import { AxisAnnotationCollection } from "./AxisAnnotationCollection"; import { VerticalAlignment_$type } from "igniteui-react-core"; import { Canvas } from "igniteui-react-core"; import { IFastItemsSourceProvider_$type } from "igniteui-react-core"; import { DoubleCollection } from "igniteui-react-core"; import { LabelPosition } from "./LabelPosition"; import { BindingFormatter } from "igniteui-react-core"; import { LabelFontHeuristics } from "./LabelFontHeuristics"; import { Pool$1 } from "igniteui-react-core"; import { AxisComponentsFromView } from "./AxisComponentsFromView"; import { FastReflectionHelper } from "igniteui-react-core"; import { AxisRangeChangedEventArgs } from "./AxisRangeChangedEventArgs"; import { RectangleGeometry } from "igniteui-react-core"; import { PathRenderingInfo } from "./PathRenderingInfo"; import { LineGeometry } from "igniteui-react-core"; import { RenderRequestedEventArgs } from "./RenderRequestedEventArgs"; import { CategoryMode_$type } from "./CategoryMode"; import { GridMode_$type } from "./GridMode"; import { Panel } from "igniteui-react-core"; import { UIElement } from "igniteui-react-core"; import { RectUtil } from "igniteui-react-core"; import { TickmarkValues } from "./TickmarkValues"; import { TransformGroup } from "igniteui-react-core"; import { RotateTransform } from "igniteui-react-core"; import { TranslateTransform } from "igniteui-react-core"; import { AngleSimplifier } from "igniteui-react-core"; import { TransformMatrixHelpler } from "igniteui-react-core"; import { ICategoryScaler_$type } from "./ICategoryScaler"; import { AxisRangeBufferMode_$type } from "./AxisRangeBufferMode"; import { NumericAxisRenderingParameters } from "./NumericAxisRenderingParameters"; import { LogarithmicTickmarkValues } from "./LogarithmicTickmarkValues"; import { LinearTickmarkValues } from "./LinearTickmarkValues"; import { CategoryAxisRenderingParameters } from "./CategoryAxisRenderingParameters"; import { TickmarkValuesInitializationParameters } from "./TickmarkValuesInitializationParameters"; import { NumberAbbreviatorFactory } from "./NumberAbbreviatorFactory"; import { AutomaticSeriesPurpose_$type } from "./AutomaticSeriesPurpose"; import { SeriesMatcher } from "./SeriesMatcher"; import { Stack$1 } from "igniteui-react-core"; import { RenderValidEventArgs } from "./RenderValidEventArgs"; import { ArrayExtension } from "igniteui-react-core"; import { SeriesLayerPropertyOverlayValueResolvingEventArgs } from "./SeriesLayerPropertyOverlayValueResolvingEventArgs"; import { PlatformAPIHelper } from "igniteui-react-core"; import { Marker } from "./Marker"; import { ContentControl } from "igniteui-react-core"; import { AutoMarginsAndAngleUpdateMode_$type } from "./AutoMarginsAndAngleUpdateMode"; import { ComputedPlotAreaMarginMode_$type } from "./ComputedPlotAreaMarginMode"; import { PolygonUtil } from "igniteui-react-core"; import { ILegendSeries_$type } from "igniteui-react-core"; import { ILegendSeriesInternal_$type } from "igniteui-react-core"; import { ILegendTemplateProvider_$type } from "igniteui-react-core"; import { PenLineJoin_$type } from "igniteui-react-core"; import { PenLineCap_$type } from "igniteui-react-core"; import { Color } from "igniteui-react-core"; import { SeriesVisibleRangeMode_$type } from "./SeriesVisibleRangeMode"; import { SeriesOutlineMode_$type } from "./SeriesOutlineMode"; import { TransitionInSpeedType_$type } from "./TransitionInSpeedType"; import { TransitionOutSpeedType_$type } from "./TransitionOutSpeedType"; import { SeriesHitTestMode_$type } from "./SeriesHitTestMode"; import { SeriesComponentsForView } from "./SeriesComponentsForView"; import { Binding } from "igniteui-react-core"; import { MarkerOutlineMode_$type } from "./MarkerOutlineMode"; import { MarkerFillMode_$type } from "./MarkerFillMode"; import { SeriesPointOfInterest } from "./SeriesPointOfInterest"; import { FastItemColumn } from "igniteui-react-core"; import { TransitionOutCompletedEventArgs } from "./TransitionOutCompletedEventArgs"; import { IChartItemLegend_$type } from "igniteui-react-core"; import { SeriesComponentsFromView } from "./SeriesComponentsFromView"; import { DataLegendSeriesValueInfo } from "igniteui-react-core"; import { DataLegendSeriesContext } from "igniteui-react-core"; import { MarkerType_$type } from "./MarkerType"; import { Style } from "igniteui-react-core"; import { FastItemsSourceReference } from "igniteui-react-core"; import { stringFormat } from "igniteui-react-core"; import { EasingFunctions } from "igniteui-react-core"; /** * @hidden */ export let SeriesViewer = /*@__PURE__*/ (() => { class SeriesViewer extends Control { get widget() { return this._widget; } set widget(a) { this._widget = a; } static staticInit() { SeriesViewer.w6 = new Rect(0, 0, 0, 1, 1); } get dw() { if (this.dv == null) { this.dv = new SRProvider(this.dc.j.ae); } return this.dv; } ao(a) { if (this.an == null) { this.an = new AutomaticSeriesManager(this); } return this.an; } getDesiredToolbarActions() { if (!this.fm) { return null; } return this.ba.getDesiredToolbarActions(this); } onToolCommandExecuting(a) { if (!this.fm) { return 1; } return this.ba.onToolCommandExecuting(this, a); } addCommandAvailabilityListener(a) { } removeCommandAvailabilityListener(a) { } addCommandStateChangedListener(a) { if (!this.gt.contains(a)) { this.gt.add(a); } } removeCommandStateChangedListener(a) { if (this.gt.contains(a)) { this.gt.remove(a); } } get commandCompleted() { return this._commandCompleted; } set commandCompleted(a) { this._commandCompleted = a; } get invalidateActions() { return this._invalidateActions; } set invalidateActions(a) { this._invalidateActions = a; } get gr() { return this.gq; } provideContextAccessor(a) { if (this.gq == null) { this.gq = new HashSet$1(IToolbarContextAccessor_$type, 0); } this.gq.add_1(a); } dismissContextAccessor(a) { if (this.gq == null) { return; } this.gq.remove(a); } om() { if (this.invalidateActions != null) { this.invalidateActions(); } } get ba() { if (this.a9 == null) { this.a9 = DVContainer.instance.createInstance(IDataChartToolbarProvider_$type, () => this.dw.n); this.a9.container = this.dc.bi; } return this.a9; } get fm() { return DVContainer.instance.checkLoaded("DataChartToolbarFactoryManager"); } get bc() { if (this.bb == null) { this.bb = DVContainer.instance.createInstance(ISeriesViewerInteractionManager_$type, () => this.dw.n); } return this.bb; } get fe() { return DVContainer.instance.checkLoaded("InteractivityFactoryManager"); } constructor() { super(); this._widget = null; this.dc = null; this.dv = null; this.an = null; this.gt = new List$1(ICommandStateChangedListener_$type, 0); this._commandCompleted = null; this._invalidateActions = null; this.gq = null; this.a9 = null; this.bb = null; this.ef = false; this.ee = false; this.c4 = null; this.bs = new SeriesCollection(); this.i7 = 0; this.b0 = 0; this.b2 = 0; this._skipDataCleanup = false; this.de = null; this.dg = null; this.dd = null; this.df = null; this.ar = null; this.wj = null; this.plotAreaMouseLeftButtonDown = null; this.plotAreaMouseLeftButtonUp = null; this.plotAreaClicked = null; this.plotAreaMouseEnter = null; this.plotAreaMouseLeave = null; this.plotAreaMouseOver = null; this.cg = 0; this.ch = 0; this.bv = 1; this.b8 = 1; this.b4 = 3; this.propertyChanged = null; this.propertyUpdated = null; this.jn = null; this.ea = false; this.seriesCursorMouseMove = null; this.seriesMouseLeftButtonDown = null; this.seriesMouseLeftButtonUp = null; this.seriesClick = null; this.seriesMouseMove = null; this.seriesMouseEnter = null; this.seriesMouseLeave = null; this.d3 = false; this.d2 = false; this.ws = Rect.empty; this.wq = Rect.empty; this.d0 = true; this.wp = null; this.ek = false; this.i6 = 30; this.resizeIdle = null; this.fu = false; this.em = false; this.cd = new SeriesViewerComponentsForView(); this.d7 = false; this.at = 0; this.as = 1; this.seriesAnimating = null; this.dx = new VersionQueueHelper(); this.d6 = false; this.d4 = false; this.cy = 0; this.ec = false; this.eu = false; this.d1 = false; this.mv = null; this.viewerManipulationStarting = null; this.viewerManipulationEnding = null; this.ei = false; this.ed = false; this.windowRectChanged = null; this.sizeChanged = null; this.e5 = false; this.actualWindowRectChanged = null; this.gridAreaRectChanged = null; this.ew = false; this.g7 = 0.0001; this.g6 = 0.0001; this._syncChannel = null; this.cn = null; this.gf = false; this.eh = false; this.e4 = false; this.gl = false; this.cr = 1; this.xd = null; this.i9 = 0; this.br = null; this.eg = false; this.gg = false; this.wr = Rect.empty; this._selectedSeriesItems = null; this._focusedSeriesItems = null; this.selectedSeriesItemsChanged = null; this.focusedSeriesItemsChanged = null; this.g1 = new Date(); this.go = false; this.refreshCompleted = null; this.js = null; this.jr = null; this.vu = null; this.vt = null; this.hm = NaN; this.hk = NaN; this.hl = NaN; this.hj = NaN; this.hi = NaN; this.hg = NaN; this.hh = NaN; this.hf = NaN; this.jp = null; this.al = null; this.am = null; this.ak = null; this.eb = false; this.dz = false; this._syncSettings = null; this.destroyed = false; this.jm = null; this.gp = new Dictionary$2(String_$type, Base.$, 0); this.fs = false; this.hn = NaN; this.hc = NaN; this.he = NaN; this.ha = NaN; this.g9 = 30; this.g8 = NaN; this.d5 = true; this.hd = NaN; this.hb = NaN; this.jq = null; this.g3 = 1; this.g2 = NaN; this.wo = null; this.e3 = false; this.g4 = 0; this.g5 = 0; this.sv = null; this.a0 = null; this.e8 = false; this.e9 = false; this.e6 = false; this.d8 = false; this.i8 = 0; this.es = false; this.fc = false; this.seriesDataUpdated = null; this.gu = new List$1(IDataLegend_$type, 0); this.dy = null; this.seriesDataChanged = null; this.gx = null; this.imageCaptured = null; this.cw = null; this.g0 = dateMinValue(); this.d9 = false; DVContainer.instance.registerIfLoaded("AnnotationFactoryManager"); DVContainer.instance.registerIfLoaded("InteractivityFactoryManager"); DVContainer.instance.registerIfLoaded("DataChartToolbarFactoryManager"); DVContainer.instance.registerIfLoaded("VisualDataFactoryManager"); this.wo = Rect.empty; this.wj = { $type: Point_$type, x: NaN, y: NaN }; this.g1 = dateNow(); this.e8 = false; this.e9 = false; this.al = new CanvasRenderScheduler(); this.al.a = runOn(this, this.nw); this.am = new CanvasRenderScheduler(); this.ak = new CanvasRenderScheduler(); SeriesViewer.w6 = new Rect(0, 0, 0, 1, 1); this.syncSettings = ((() => { let $ret = new SyncSettings(); $ret.synchronizeHorizontally = true; $ret.synchronizeVertically = true; return $ret; })()); this.dc = this.db(); this.qo(this.dc); this.dc.c4(); this.r6(); this.oh(); this.actualSyncLink = new SyncLink(); this.sd(null, this.actualSyncLink); this.ar = new ChartContentManager(this); this.propertyUpdated = delegateCombine(this.propertyUpdated, (a, b) => this.q0(a, b.propertyName, b.oldValue, b.newValue)); this.selectedSeriesItems = new ChartSelectedItemCollection(); let a = this.selectedSeriesItems; a.collectionChanged = delegateCombine(a.collectionChanged, runOn(this, this.qb)); let b = this.selectedSeriesItems; b.collectionResetting = delegateCombine(b.collectionResetting, runOn(this, this.rt)); this.focusedSeriesItems = new ChartSelectedItemCollection(); let c = this.focusedSeriesItems; c.collectionChanged = delegateCombine(c.collectionChanged, runOn(this, this.po)); let d = this.focusedSeriesItems; d.collectionResetting = delegateCombine(d.collectionResetting, runOn(this, this.oa)); let e = this.series; e.collectionChanged = delegateCombine(e.collectionChanged, runOn(this, this.rv)); let f = this.series; f.collectionResetting = delegateCombine(f.collectionResetting, runOn(this, this.rw)); this.df = new DoubleAnimator(0, 1, this.ji); this.de = new DoubleAnimator(0, 1, this.jg); let g = this.de; g.propertyChanged = delegateCombine(g.propertyChanged, runOn(this, this.og)); this.dg = new DoubleAnimator(0, 1, this.jk); this.dd = new DoubleAnimator(0, 1, this.jd); let h = this.dg; h.propertyChanged = delegateCombine(h.propertyChanged, runOn(this, this.ru)); let i = this.dd; i.propertyChanged = delegateCombine(i.propertyChanged, runOn(this, this.ob)); this.dc.bx(); this.oj(); this.oi(); } rt(a, b) { for (let c = 0; c < this.selectedSeriesItems.count; c++) { this.pu(this.selectedSeriesItems._inner[c]); } } oa(a, b) { for (let c = 0; c < this.focusedSeriesItems.count; c++) { this.pt(this.focusedSeriesItems._inner[c]); } } qb(a, b) { if (b.action == 4 && b.newItems == null && b.oldItems == null) { return; } if (this.ef) { return; } if (b.oldItems != null) { for (let c = 0; c < b.oldItems.count; c++) { let d = b.oldItems.item(c); this.pu(d); } } if (b.newItems != null) { for (let e = 0; e < b.newItems.count; e++) { let f = b.newItems.item(e); f.g(this); } for (let g = 0; g < b.newItems.count; g++) { let h = b.newItems.item(g); this.pw(h); } } let i = new ChartSelectedItemCollection(); if (b.oldItems != null) { for (let j = 0; j < b.oldItems.count; j++) { i.add(b.oldItems.item(j)); } } let k = new ChartSelectedItemCollection(); if (b.newItems != null) { for (let l = 0; l < b.newItems.count; l++) { k.add(b.newItems.item(l)); } } let m = this.selectedSeriesItems; this.qa(this, new SeriesViewerSelectedSeriesItemsChangedEventArgs(i, k, m)); } po(a, b) { if (b.action == 4 && b.newItems == null && b.oldItems == null) { return; } if (this.ee) { return; } if (b.oldItems != null) { for (let c = 0; c < b.oldItems.count; c++) { let d = b.oldItems.item(c); this.pt(d); } } if (b.newItems != null) { for (let e = 0; e < b.newItems.count; e++) { let f = b.newItems.item(e); this.pv(f); } } let g = new ChartSelectedItemCollection(); if (b.oldItems != null) { for (let h = 0; h < b.oldItems.count; h++) { g.add(b.oldItems.item(h)); } } let i = new ChartSelectedItemCollection(); if (b.newItems != null) { for (let j = 0; j < b.newItems.count; j++) { i.add(b.newItems.item(j)); } } let k = this.selectedSeriesItems; this.pn(this, new SeriesViewerSelectedSeriesItemsChangedEventArgs(g, i, k)); } pv(a) { this.oc((b) => { let c = a; if (c.series != null && c.series != b) { return; } b.pt(c.item); }); } pt(a) { this.oc((b) => { let c = a; if (c.series != null && c.series != b) { return; } b.pr(c.item); }); } oc(a) { for (let b of fromEnum(this.series)) { a(b); if (b.isStacked) { b.p5((c) => { a(c); if (c.ei) { c.p3((d) => { a(d); return true; }); } return true; }); } if (b.ei) { b.p3((c) => { a(c); return true; }); } } } pw(a) { this.oc((b) => { let c = a; if (c.series != null && c.series != b) { return; } if (c.item == null) { b.pz(); } else { b.pu(c.item); } }); } pu(a) { this.oc((b) => { let c = a; if (c.series != null && c.series != b) { return; } if (c.item == null) { b.px(); } else { b.ps(c.item); } }); } oh() { if (this.c4 != null && this.c5 == null) { let a = this.c5; a.thumbnailSizeChanged = delegateRemove(a.thumbnailSizeChanged, runOn(this, this.qw)); } if (this.c5 != null) { let b = this.c5; b.thumbnailSizeChanged = delegateCombine(b.thumbnailSizeChanged, runOn(this, this.qw)); } if (this.jq != null) { this.c5.backgroundImageUri = this.jq; } if (this.c5 != null) { this.c5.initializeScalingRatio(this.hp); } if (this.c4 == null && this.c5 != null) { this.o0(); } this.c4 = this.c5; } qw(a, b) { this.c5.surfaceIsDirty = true; for (let c of fromEnum(this.series)) { c.g1 = true; } } get_fx() { return false; } get fx() { return this.get_fx(); } get_fw() { return false; } get fw() { return this.get_fw(); } oi() { this.dc.co(); if (this.c5 != null) { this.c5.initializeScalingRatio(this.hp); } } get series() { return this.bs; } rv(a, b) { let c = this.es; this.es = this.ey(); if (b.oldItems != null) { let d = this.i7; for (let e of fromEn(b.oldItems)) { if (e != null && e.eq) { this.i7--; if (this.i7 < 0) { this.i7 = 0; } } e.c4 = null; e.dc = null; this.rm(e); this.dc.dy(e); } if (this.i7 < d) { for (let f of fromEnum(this.series)) { if (f.eu) { continue; } f.pw(); } } } if (b.newItems != null) { let g = this.i7; for (let h of fromEn(b.newItems)) { if (h != null && h.eq) { this.i7++; } if (!this.dc.aq(h)) { this.r7(h); this.dc.bp(h); h.dc = this; h.c4 = this.actualSyncLink; h.st(); } } if (this.i7 > g) { for (let i of fromEnum(this.series)) { if (i.eu || b.newItems.contains(i)) { continue; } i.pw(); } } } if (this.es != c && !this.xb.isEmpty) { this.qz(this.xb, this.xb); } this.oz(); this.o9(); this.pr(); this.ot(); } get b1() { return this.b0; } set b1(a) { this.b0 = a; } get b3() { return this.b2; } set b3(a) { this.b2 = a; } ok() { this.o9(); } o9() { } get skipDataCleanup() { return this._skipDataCleanup; } set skipDataCleanup(a) { this._skipDataCleanup = a; } rm(a) { if (!this.skipDataCleanup) { if (typeCast(Series.$, a) !== null) { a.itemsSource = null; } else if (typeCast(CategoryAxisBase.$, a) !== null) { a.itemsSource = null; } } this.ro(a.name, true); } get e0() { return this.i7 > 0; } rw(a, b) { this.es = this.ey(); for (let c of fromEnum(this.series)) { c.c4 = null; c.dc = null; this.rm(c); this.dc.dy(c); } this.i7 = 0; this.ot(); } oo(a, b, c, d) { let e = this.xb; let f = e.width; let g = e.height; let h = 1; let i = a / b; if (isNaN_(h)) { return { p0: a, p1: b }; } if (isNaN_(i) || c || d || Math.abs(h - i) > 0.0001) { if (c && d) { if (a > b) { b = a / h; } else { a = b * h; } } else if (c) { b = a / h; } else { a = b * h; } } if (b > 1) { let j = 1 / b; b = 1; a = a * j; } if (a > 1) { let k = 1 / a; a = 1; b = b * k; } return { p0: a, p1: b }; } ey() { return false; } get gc() { return this.fn; } get fa() { return this.bb != null; } get er() { return this.bb != null; } get eq() { return this.cg != 0 || this.ch != 0; } get ep() { return this.er && this.eq; } get dn() { let a = this.bc.f$e; if (a.executionContext == null) { a.executionContext = this.dc.l(); } if (a.ensureAnimator == null) { a.ensureAnimator = runOn(this, this.n6); } a.dismissHighlightDelay = this.jf; return a; } get dp() { let a = this.bc.f$f; if (a.executionContext == null) { a.executionContext = this.dc.l(); } if (a.ensureAnimator == null) { a.ensureAnimator = runOn(this, this.n7); } return a; } get dm() { let a = this.bc.f$d; if (a.executionContext == null) { a.executionContext = this.dc.l(); } if (a.ensureAnimator == null) { a.ensureAnimator = runOn(this, this.n5); } return a; } get bd() { let a = this.bc.f$b; if (a.executionContext == null) { a.executionContext = this.dc.l(); } if (a.animator == null) { a.animator = this.df; a.owner = this; } return a; } n6() { { let a = this.de; if (!a.f() && a.r > 0) { a.v(); } if (a.r == 0) { let b = this.gi(1); while (b) { b = this.gi(0); b = this.gi(1); } } } } n7() { { let a = this.dg; if (!a.f() && a.r > 0) { a.v(); } if (a.r == 0) { let b = this.gj(1); while (b) { b = this.gj(0); b = this.gj(1); } } } } n5() { { let a = this.dd; if (!a.f() && a.r > 0) { a.v(); } if (a.r == 0) { let b = this.gh(1); while (b) { b = this.gh(0); b = this.gh(1); } } } } og(a, b) { this.gi(this.de.o); } ru(a, b) { this.gj(this.dg.o); } ob(a, b) { this.gh(this.dd.o); } gi(a) { let b = this.dn.tick(a); if (a == 1 && b && this.de.r > 0) { this.de.v(); } let c = this.dn.dirtyContexts; if (this.dn.allDirty) { let d = this.series; for (let e = 0; e < d.count; e++) { let f = d._inner[e]; f.q6(); } } else { for (let g = 0; g < c.count; g++) { let h = c._inner[g]; h.q6(); } } if (!b) { this.de.w(); this.pq(); } return b; } gj(a) { let b = this.dp.tick(a); if (a == 1 && b && this.dg.r > 0) { this.dg.v(); } let c = this.dp.dirtyContexts; if (this.dp.allDirty) { let d = this.series; for (let e = 0; e < d.count; e++) { let f = d._inner[e]; f.q6(); } } else { for (let g = 0; g < c.count; g++) { let h = c._inner[g]; h.q6(); } } if (!b) { this.dg.w(); } return b; } gh(a) { let b = this.dm.tick(a); if (a == 1 && b && this.dd.r > 0) { this.dd.v(); } let c = this.dm.dirtyContexts; if (this.dm.allDirty) { let d = this.series; for (let e = 0; e < d.count; e++) { let f = d._inner[e]; f.q6(); } } else { for (let g = 0; g < c.count; g++) { let h = c._inner[g]; h.q6(); } } if (!b) { this.dd.w(); } return b; } of() { this.dc.ck(); this.oe(); for (let a = 0; a < this.series.count; a++) { if (this.series._inner[a].eu) { this.series._inner[a].p9(); } } } vz(a) { return this.vy(this.ag, a); } v5(a) { return this.vy(this.aj, a); } v3(a) { return this.vy(this.ah, a); } v4(a) { return this.vy(this.ai, a); } vy(a, b) { if (a == null || a.count == 0) { return null; } else { return a.item(b % a.count); } } get wk() { return this.wj; } set wk(a) { if (PointUtil.notEquals(this.wj, a)) { let b = this.wj; this.wj = a; this.q5("CrosshairPoint", b, this.wj); } } ri() { } get fd() { return this.c3 == 1 || this.c3 == 2 || this.c3 == 3; } get legend() { return this.c(SeriesViewer.t0); } set legend(a) { this.h(SeriesViewer.t0, a); } get en() { return this.c(SeriesViewer.sx); } set en(a) { this.h(SeriesViewer.sx, a); } get f6() { return this.c(SeriesViewer.up); } set f6(a) { this.h(SeriesViewer.up, a); } p6(a, b) { this.ea = false; let c = false; c = false; if (this.dc.k.al) { return; } if (this.plotAreaMouseLeftButtonDown != null) { let d = this.bi(a, b, c); this.plotAreaMouseLeftButtonDown(this, d); } } bi(a, b, c) { let d = { $type: Point_$type, x: a.x, y: a.y }; let e = { $type: Point_$type, x: a.x, y: a.y }; if (!this.xb.isEmpty) { if (c) { e.x -= this.xb.left; e.y -= this.xb.top; } else { d.x += this.xb.left; d.y += this.xb.top; } } let f = new PlotAreaMouseButtonEventArgs(this, d, e); f.manipulationOccurred = this.ea; return f; } bm(a, b, c) { let d = { $type: Point_$type, x: a.x, y: a.y }; let e = { $type: Point_$type, x: a.x, y: a.y }; if (!this.xb.isEmpty) { if (c) { e.x -= this.xb.left; e.y -= this.xb.top; } else { d.x += this.xb.left; d.y += this.xb.top; } } let f = new PlotAreaMouseEventArgs(this, d, e); return f; } p7(a, b, c) { let d = false; d = false; if (this.dc.k.al) { return; } if (this.plotAreaMouseLeftButtonUp != null) { let e = this.bi(a, b, d); this.plotAreaMouseLeftButtonUp(this, e); } if (!this.ea && !c) { if (this.plotAreaClicked != null) { let f = this.bi(a, b, d); this.plotAreaClicked(this, f); } } this.ea = false; } get fn() { return this.c(SeriesViewer.tw); } set fn(a) { this.h(SeriesViewer.tw, a); } get gb() { return this.c(SeriesViewer.us); } set gb(a) { this.h(SeriesViewer.us, a); } get bz() { return EnumUtil.getEnumValue(SeriesHighlightingMode_$type, this.c(SeriesViewer.te)); } set bz(a) { this.h(SeriesViewer.te, enumGetBox(SeriesHighlightingMode_$type, a)); } get cc() { return EnumUtil.getEnumValue(SeriesSelectionMode_$type, this.c(SeriesViewer.um)); } set cc(a) { this.h(SeriesViewer.um, enumGetBox(SeriesSelectionMode_$type, a)); } get b7() { return EnumUtil.getEnumValue(SeriesSelectionBehavior_$type, this.c(SeriesViewer.uj)); } set b7(a) { this.h(SeriesViewer.uj, enumGetBox(SeriesSelectionBehavior_$type, a)); } get ca() { return EnumUtil.getEnumValue(SeriesSelectionMode_$type, this.c(SeriesViewer.s7)); } set ca(a) { this.h(SeriesViewer.s7, enumGetBox(SeriesSelectionMode_$type, a)); } get ci() { return EnumUtil.getEnumValue(SeriesViewerScrollbarMode_$type, this.c(SeriesViewer.tm)); } set ci(a) { this.h(SeriesViewer.tm, enumGetBox(SeriesViewerScrollbarMode_$type, a)); } get cj() { return EnumUtil.getEnumValue(SeriesViewerScrollbarMode_$type, this.c(SeriesViewer.u6)); } set cj(a) { this.h(SeriesViewer.u6, enumGetBox(SeriesViewerScrollbarMode_$type, a)); } get cf() { return EnumUtil.getEnumValue(SeriesViewerHorizontalScrollbarPosition_$type, this.c(SeriesViewer.to)); } set cf(a) { this.h(SeriesViewer.to, enumGetBox(SeriesViewerHorizontalScrollbarPosition_$type, a)); } get cm() { return EnumUtil.getEnumValue(SeriesViewerVerticalScrollbarPosition_$type, this.c(SeriesViewer.u8)); } set cm(a) { this.h(SeriesViewer.u8, enumGetBox(SeriesViewerVerticalScrollbarPosition_$type, a)); } get v7() { return this.c(SeriesViewer.ti); } set v7(a) { this.h(SeriesViewer.ti, a); } get v8() { return this.c(SeriesViewer.tn); } set v8(a) { this.h(SeriesViewer.tn, a); } get h7() { return this.c(SeriesViewer.tq); } set h7(a) { this.h(SeriesViewer.tq, a); } get h6() { return this.c(SeriesViewer.tl); } set h6(a) { this.h(SeriesViewer.tl, a); } get h3() { return this.c(SeriesViewer.th); } set h3(a) { this.h(SeriesViewer.th, a); } get h4() { return this.c(SeriesViewer.tj); } set h4(a) { this.h(SeriesViewer.tj, a); } get h5() { return this.c(SeriesViewer.tk); } set h5(a) { this.h(SeriesViewer.tk, a); } get h9() { return this.c(SeriesViewer.ts); } set h9(a) { this.h(SeriesViewer.ts, a); } get h8() { return this.c(SeriesViewer.tr); } set h8(a) { this.h(SeriesViewer.tr, a); } get e2() { return this.c(SeriesViewer.tp); } set e2(a) { this.h(SeriesViewer.tp, a); } get wh() { return this.c(SeriesViewer.u3); } set wh(a) { this.h(SeriesViewer.u3, a); } get wi() { return this.c(SeriesViewer.u7); } set wi(a) { this.h(SeriesViewer.u7, a); } get iv() { return this.c(SeriesViewer.va); } set iv(a) { this.h(SeriesViewer.va, a); } get iu() { return this.c(SeriesViewer.u5); } set iu(a) { this.h(SeriesViewer.u5, a); } get is() { return this.c(SeriesViewer.u2); } set is(a) { this.h(SeriesViewer.u2, a); } get iy() { return this.c(SeriesViewer.vd); } set iy(a) { this.h(SeriesViewer.vd, a); } nw() { if (!this.al.g && !this.al.f && !this.dc.a.g && !this.dc.a.f) { this.p9(); } } p9() { this.nu(); } get it() { return this.c(SeriesViewer.u4); } set it(a) { this.h(SeriesViewer.u4, a); } get ix() { return this.c(SeriesViewer.vc); } set ix(a) { this.h(SeriesViewer.vc, a); } get iw() { return this.c(SeriesViewer.vb); } set iw(a) { this.h(SeriesViewer.vb, a); } get gn() { return this.c(SeriesViewer.u9); } set gn(a) { this.h(SeriesViewer.u9, a); } cb() { if (this.cc == 0) { return 1; } return this.cc; } b6() { if (this.b7 == 0) { return 3; } return this.b7; } by() { if (this.bx == 0) { return 1; } if (this.bz == 3 || this.bz == 5) { if (this.bx == 2) { return 4; } } return this.bx; } get bw() { return this.bv; } get b9() { return this.b8; } get b5() { return this.b4; } get bx() { return EnumUtil.getEnumValue(SeriesHighlightingBehavior_$type, this.c(SeriesViewer.tc)); } set bx(a) { this.h(SeriesViewer.tc, enumGetBox(SeriesHighlightingBehavior_$type, a)); } get be() { return EnumUtil.getEnumValue(LegendHighlightingMode_$type, this.c(SeriesViewer.tx)); } set be(a) { this.h(SeriesViewer.tx, enumGetBox(LegendHighlightingMode_$type, a)); } get bg() { return EnumUtil.getEnumValue(LegendItemBadgeShape_$type, this.c(SeriesViewer.tz)); } set bg(a) { this.h(SeriesViewer.tz, enumGetBox(LegendItemBadgeShape_$type, a)); } get bf() { return EnumUtil.getEnumValue(LegendItemBadgeMode_$type, this.c(SeriesViewer.ty)); } set bf(a) { this.h(SeriesViewer.ty, enumGetBox(LegendItemBadgeMode_$type, a)); } get ez() { return this.c(SeriesViewer.s4); }