scichart 2.0.0-alpha.1930 → 2.0.0-alpha.1991

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/Builder/buildAxis.d.ts +3 -3
  2. package/Builder/buildDataSeries.d.ts +44 -4
  3. package/Builder/buildDataSeries.js +66 -0
  4. package/Builder/buildSeries.d.ts +7 -5
  5. package/Builder/buildSeries.js +3 -4
  6. package/Builder/buildSurface.d.ts +14 -6
  7. package/Builder/buildSurface.js +13 -8
  8. package/Builder/chartBuilder.d.ts +14 -8
  9. package/Builder/chartBuilder.js +6 -6
  10. package/Charting/ChartModifiers/ChartModifierBase.d.ts +37 -81
  11. package/Charting/ChartModifiers/ChartModifierBase.js +28 -73
  12. package/Charting/ChartModifiers/ChartModifierBase2D.d.ts +5 -1
  13. package/Charting/ChartModifiers/ChartModifierBase2D.js +6 -17
  14. package/Charting/ChartModifiers/CursorModifier.d.ts +4 -2
  15. package/Charting/ChartModifiers/CursorModifier.js +1 -1
  16. package/Charting/ChartModifiers/DataPointSelectionModifier.d.ts +3 -1
  17. package/Charting/ChartModifiers/DataPointSelectionModifier.js +62 -27
  18. package/Charting/ChartModifiers/LegendModifier.d.ts +5 -1
  19. package/Charting/ChartModifiers/LegendModifier.js +2 -1
  20. package/Charting/ChartModifiers/MouseWheelZoomModifier.d.ts +1 -1
  21. package/Charting/ChartModifiers/PinchZoomModifier.d.ts +1 -1
  22. package/Charting/ChartModifiers/RolloverModifier.d.ts +1 -1
  23. package/Charting/ChartModifiers/RolloverModifier.js +44 -58
  24. package/Charting/ChartModifiers/RubberBandXyZoomModifier.d.ts +1 -1
  25. package/Charting/ChartModifiers/SeriesSelectionModifier.d.ts +15 -7
  26. package/Charting/ChartModifiers/SeriesSelectionModifier.js +10 -10
  27. package/Charting/ChartModifiers/XAxisDragModifier.d.ts +1 -1
  28. package/Charting/ChartModifiers/YAxisDragModifier.d.ts +1 -1
  29. package/Charting/ChartModifiers/ZoomExtentsModifier.d.ts +14 -1
  30. package/Charting/ChartModifiers/ZoomExtentsModifier.js +16 -4
  31. package/Charting/Drawing/BrushCache.js +6 -8
  32. package/Charting/Drawing/Pen2DCache.d.ts +4 -6
  33. package/Charting/Drawing/Pen2DCache.js +14 -11
  34. package/Charting/Drawing/WebGlPen.d.ts +2 -1
  35. package/Charting/Drawing/WebGlPen.js +3 -2
  36. package/Charting/LayoutManager/BottomAlignedOuterAxisLayoutStrategy.js +1 -1
  37. package/Charting/LayoutManager/BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +3 -2
  38. package/Charting/LayoutManager/LeftAlignedOuterAxisLayoutStrategy.js +1 -1
  39. package/Charting/LayoutManager/LeftAlignedOuterVerticallyStackedAxisLayoutStrategy.js +3 -2
  40. package/Charting/LayoutManager/RightAlignedOuterAxisLayoutStrategy.js +1 -1
  41. package/Charting/LayoutManager/RightAlignedOuterVerticallyStackedAxisLayoutStrategy.js +3 -2
  42. package/Charting/LayoutManager/TopAlignedOuterAxisLayoutStrategy.js +1 -1
  43. package/Charting/LayoutManager/TopAlignedOuterHorizontallyStackedAxisLayoutStrategy.js +3 -2
  44. package/Charting/Model/BaseDataSeries.d.ts +64 -52
  45. package/Charting/Model/BaseDataSeries.js +158 -84
  46. package/Charting/Model/BaseHeatmapDataSeries.d.ts +2 -2
  47. package/Charting/Model/DataPointSelectionPaletteProvider.d.ts +22 -10
  48. package/Charting/Model/DataPointSelectionPaletteProvider.js +35 -5
  49. package/Charting/Model/Filters/OhlcScaleOffsetFilter.d.ts +106 -0
  50. package/Charting/Model/Filters/OhlcScaleOffsetFilter.js +21 -0
  51. package/Charting/Model/Filters/XyLinearTrendFilter.d.ts +112 -1
  52. package/Charting/Model/Filters/XyLinearTrendFilter.js +21 -0
  53. package/Charting/Model/Filters/XyMovingAverageFilter.d.ts +110 -1
  54. package/Charting/Model/Filters/XyMovingAverageFilter.js +21 -0
  55. package/Charting/Model/Filters/XyRatioFilter.d.ts +111 -2
  56. package/Charting/Model/Filters/XyRatioFilter.js +34 -3
  57. package/Charting/Model/Filters/XyScaleOffsetFilter.d.ts +112 -1
  58. package/Charting/Model/Filters/XyScaleOffsetFilter.js +21 -0
  59. package/Charting/Model/Filters/XyyScaleOffsetFilter.d.ts +116 -0
  60. package/Charting/Model/Filters/XyyScaleOffsetFilter.js +21 -0
  61. package/Charting/Model/Filters/XyzScaleOffsetFilter.d.ts +116 -0
  62. package/Charting/Model/Filters/XyzScaleOffsetFilter.js +21 -0
  63. package/Charting/Model/IDataSeries.d.ts +18 -3
  64. package/Charting/Model/IDataSeries.js +12 -1
  65. package/Charting/Model/IPaletteProvider.d.ts +8 -8
  66. package/Charting/Model/OhlcDataSeries.d.ts +39 -10
  67. package/Charting/Model/OhlcDataSeries.js +106 -19
  68. package/Charting/Model/UniformHeatmapDataSeries.d.ts +2 -2
  69. package/Charting/Model/XyyDataSeries.d.ts +21 -12
  70. package/Charting/Model/XyyDataSeries.js +70 -16
  71. package/Charting/Model/XyzDataSeries.d.ts +20 -5
  72. package/Charting/Model/XyzDataSeries.js +63 -7
  73. package/Charting/Numerics/TickProviders/LogarithmicTickProvider.d.ts +24 -0
  74. package/Charting/Numerics/TickProviders/LogarithmicTickProvider.js +26 -4
  75. package/Charting/Services/SciChartRenderer.js +4 -2
  76. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +7 -21
  77. package/Charting/Visuals/Annotations/AnnotationBase.js +28 -42
  78. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.d.ts +1 -1
  79. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.js +2 -4
  80. package/Charting/Visuals/Annotations/BoxAnnotation.d.ts +1 -1
  81. package/Charting/Visuals/Annotations/BoxAnnotation.js +3 -2
  82. package/Charting/Visuals/Annotations/CustomAnnotation.d.ts +1 -1
  83. package/Charting/Visuals/Annotations/CustomAnnotation.js +2 -2
  84. package/Charting/Visuals/Annotations/HorizontalLineAnnotation.js +0 -3
  85. package/Charting/Visuals/Annotations/IAnnotation.d.ts +4 -0
  86. package/Charting/Visuals/Annotations/LineAnnotation.d.ts +1 -1
  87. package/Charting/Visuals/Annotations/LineAnnotation.js +2 -4
  88. package/Charting/Visuals/Annotations/OverviewCustomResizableAnnotation.js +3 -2
  89. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +1 -1
  90. package/Charting/Visuals/Annotations/SvgAnnotationBase.d.ts +1 -1
  91. package/Charting/Visuals/Annotations/SvgAnnotationBase.js +3 -2
  92. package/Charting/Visuals/Annotations/TextAnnotation.d.ts +1 -1
  93. package/Charting/Visuals/Annotations/TextAnnotation.js +1 -1
  94. package/Charting/Visuals/Annotations/VerticalLineAnnotation.js +0 -3
  95. package/Charting/Visuals/Annotations/annotationHelpers.d.ts +21 -0
  96. package/Charting/Visuals/Annotations/annotationHelpers.js +19 -0
  97. package/Charting/Visuals/Axis/AxisBase2D.d.ts +21 -0
  98. package/Charting/Visuals/Axis/AxisBase2D.js +81 -14
  99. package/Charting/Visuals/Axis/AxisCore.d.ts +5 -5
  100. package/Charting/Visuals/Axis/AxisCore.js +50 -55
  101. package/Charting/Visuals/Axis/AxisRenderer.js +1 -1
  102. package/Charting/Visuals/Axis/IAxisCoreOptions.d.ts +13 -0
  103. package/Charting/Visuals/Axis/LabelProvider/LabelProvider.d.ts +1 -1
  104. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +3 -2
  105. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +13 -0
  106. package/Charting/Visuals/Axis/LabelProvider/TextLabelProvider.d.ts +1 -1
  107. package/Charting/Visuals/Axis/LogarithmicAxis.d.ts +53 -0
  108. package/Charting/Visuals/Axis/LogarithmicAxis.js +107 -3
  109. package/Charting/Visuals/Axis/constants.d.ts +2 -1
  110. package/Charting/Visuals/Axis/constants.js +1 -0
  111. package/Charting/Visuals/Legend/SciChartLegend.js +1 -1
  112. package/Charting/Visuals/Legend/SciChartLegendBase.d.ts +11 -0
  113. package/Charting/Visuals/Legend/SciChartLegendBase.js +45 -16
  114. package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +4 -0
  115. package/Charting/Visuals/RenderableSeries/Animations/BaseAnimation.d.ts +1 -1
  116. package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.d.ts +1 -1
  117. package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.d.ts +1 -1
  118. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +9 -2
  119. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.js +65 -4
  120. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +0 -11
  121. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +0 -29
  122. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +1 -1
  123. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +0 -37
  124. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +0 -120
  125. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +4 -24
  126. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +65 -91
  127. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +26 -2
  128. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +55 -3
  129. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +3 -1
  130. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +1 -1
  131. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +7 -1
  132. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +66 -64
  133. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.d.ts +7 -0
  134. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +12 -0
  135. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.d.ts +2 -1
  136. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +6 -6
  137. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +6 -0
  138. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +12 -0
  139. package/Charting/Visuals/RenderableSeries/FastBandRenderableSeries.d.ts +0 -6
  140. package/Charting/Visuals/RenderableSeries/FastBandRenderableSeries.js +0 -42
  141. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +0 -17
  142. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +0 -71
  143. package/Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries.js +1 -1
  144. package/Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries.js +1 -1
  145. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.d.ts +4 -0
  146. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +7 -0
  147. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +2 -1
  148. package/Charting/Visuals/RenderableSeries/HitTest/ColumnSeriesHitTestProvider.d.ts +4 -0
  149. package/Charting/Visuals/RenderableSeries/HitTest/ColumnSeriesHitTestProvider.js +7 -0
  150. package/Charting/Visuals/RenderableSeries/HitTest/IHitTestProvider.d.ts +13 -0
  151. package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.d.ts +4 -0
  152. package/Charting/Visuals/RenderableSeries/HitTest/OhlcSeriesHitTestProvider.js +7 -0
  153. package/Charting/Visuals/RenderableSeries/HitTest/StackedColumnSeriesHitTestProvider.d.ts +4 -0
  154. package/Charting/Visuals/RenderableSeries/HitTest/StackedColumnSeriesHitTestProvider.js +7 -0
  155. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +17 -5
  156. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +2 -2
  157. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +3 -0
  158. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +10 -32
  159. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +4 -0
  160. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +11 -21
  161. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +3 -0
  162. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +10 -21
  163. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.d.ts +18 -5
  164. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +16 -35
  165. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.js +4 -5
  166. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +2 -5
  167. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +2 -35
  168. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +3 -1
  169. package/Charting/Visuals/SciChartOverview.d.ts +1 -1
  170. package/Charting/Visuals/SciChartOverview.js +1 -1
  171. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.d.ts +3 -1
  172. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.js +9 -8
  173. package/Charting/Visuals/SciChartSurface.d.ts +20 -3
  174. package/Charting/Visuals/SciChartSurface.js +36 -8
  175. package/Charting/Visuals/SciChartSurfaceBase.d.ts +3 -3
  176. package/Charting/Visuals/SciChartSurfaceBase.js +2 -6
  177. package/Charting/Visuals/TextureManager/DpiHelper.d.ts +1 -1
  178. package/Charting/Visuals/TextureManager/DpiHelper.js +5 -3
  179. package/Charting/Visuals/TextureManager/TextureManager.d.ts +7 -1
  180. package/Charting/Visuals/TextureManager/TextureManager.js +14 -7
  181. package/Charting/Visuals/licenseManager2D.js +35 -28
  182. package/Charting/Visuals/loader.d.ts +3 -0
  183. package/Charting/Visuals/loader.js +3 -0
  184. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.d.ts +21 -45
  185. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.js +15 -36
  186. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +35 -73
  187. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +25 -66
  188. package/Charting3D/Visuals/SciChart3DRenderer.js +1 -1
  189. package/Charting3D/Visuals/SciChart3DSurface.d.ts +13 -1
  190. package/Charting3D/Visuals/SciChart3DSurface.js +13 -1
  191. package/Core/ObservableArray.d.ts +8 -1
  192. package/Core/ObservableArray.js +7 -0
  193. package/_wasm/scichart.browser.js +1 -1
  194. package/_wasm/scichart2d.js +95 -95
  195. package/_wasm/scichart2d.wasm +0 -0
  196. package/_wasm/scichart3d.js +1 -1
  197. package/_wasm/scichart3d.wasm +0 -0
  198. package/package.json +1 -1
  199. package/types/AnchorPoint.d.ts +0 -3
  200. package/types/AnchorPoint.js +0 -3
  201. package/types/BaseType.d.ts +3 -1
  202. package/types/BaseType.js +2 -0
  203. package/types/DataFilterType.d.ts +9 -0
  204. package/types/DataFilterType.js +13 -0
  205. package/types/HelperTypes.d.ts +5 -0
  206. package/types/HelperTypes.js +2 -0
  207. package/types/SeriesType.d.ts +17 -17
  208. package/types/SeriesType.js +17 -17
  209. package/utils/font.d.ts +8 -0
  210. package/utils/font.js +15 -0
  211. package/utils/imageUtil.d.ts +6 -0
  212. package/utils/imageUtil.js +11 -1
@@ -59,26 +59,6 @@ export declare abstract class BaseRenderableSeries implements IRenderableSeries
59
59
  selected: EventHandler<SeriesSelectedArgs>;
60
60
  /** @inheritDoc */
61
61
  hovered: EventHandler<SeriesHoveredArgs>;
62
- /**
63
- * Y vector with animation values
64
- */
65
- yAnimationValues: DoubleVector;
66
- /**
67
- * X vector with initial animation values
68
- */
69
- protected xInitialAnimationValues: DoubleVector;
70
- /**
71
- * Y vector with initial animation values
72
- */
73
- protected yInitialAnimationValues: DoubleVector;
74
- /**
75
- * X vector with final animation values
76
- */
77
- protected xFinalAnimationValues: DoubleVector;
78
- /**
79
- * Y vector with final animation values
80
- */
81
- protected yFinalAnimationValues: DoubleVector;
82
62
  protected webAssemblyContext: TSciChart;
83
63
  protected dataSeriesProperty: IDataSeries;
84
64
  protected animationFSM: AnimationFiniteStateMachine;
@@ -236,6 +216,10 @@ export declare abstract class BaseRenderableSeries implements IRenderableSeries
236
216
  set animation(value: BaseAnimation);
237
217
  /** @inheritDoc */
238
218
  get isRunningAnimation(): boolean;
219
+ /**
220
+ * gets if a data animation is currently running
221
+ */
222
+ get isRunningDataAnimation(): boolean;
239
223
  /** @inheritDoc */
240
224
  onAnimate(timeElapsed: number): void;
241
225
  /**
@@ -261,10 +245,6 @@ export declare abstract class BaseRenderableSeries implements IRenderableSeries
261
245
  * @protected
262
246
  */
263
247
  protected updateAnimationProperties(progress: number, animationFSM: AnimationFiniteStateMachine): void;
264
- protected setXInitialAnimationValues(values: DoubleVector): void;
265
- protected setYInitialAnimationValues(values: DoubleVector): void;
266
- protected setXFinalAnimationValues(values: DoubleVector): void;
267
- protected setYFinalAnimationValues(values: DoubleVector): void;
268
248
  /**
269
249
  * Factory function to create a {@link IHitTestProvider | Hit Test Provider}; a class which performs hit-test
270
250
  * and checks mouse-over and nearest point.
@@ -43,9 +43,7 @@ var BaseRenderableSeries = /** @class */ (function () {
43
43
  * @param options optional parameters of type {@link IBaseRenderableSeriesOptions} applied when constructing the series type
44
44
  */
45
45
  function BaseRenderableSeries(webAssemblyContext, options) {
46
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
47
- /** @inheritDoc */
48
- this.id = guid_1.generateGuid();
46
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r;
49
47
  /** @inheritDoc */
50
48
  this.isStacked = false;
51
49
  /** @inheritDoc */
@@ -71,6 +69,7 @@ var BaseRenderableSeries = /** @class */ (function () {
71
69
  this.paletteProviderProperty = IPaletteProvider_1.DefaultPaletteProvider.createEmpty();
72
70
  this.isDigitalLineProperty = false;
73
71
  this.webAssemblyContext = webAssemblyContext;
72
+ this.id = (_a = options === null || options === void 0 ? void 0 : options.id) !== null && _a !== void 0 ? _a : guid_1.generateGuid();
74
73
  // It is very important to add bind(this) first line in constructor,
75
74
  // otherwise dataSeries passed through the options does not work!
76
75
  this.dataSeriesDataChanged = this.dataSeriesDataChanged.bind(this);
@@ -80,13 +79,8 @@ var BaseRenderableSeries = /** @class */ (function () {
80
79
  this.updateAnimationProperties = this.updateAnimationProperties.bind(this);
81
80
  this.beforeAnimationStart = this.beforeAnimationStart.bind(this);
82
81
  this.afterAnimationComplete = this.afterAnimationComplete.bind(this);
83
- this.yAnimationValues = new webAssemblyContext.DoubleVector();
84
- this.xInitialAnimationValues = new webAssemblyContext.DoubleVector();
85
- this.yInitialAnimationValues = new webAssemblyContext.DoubleVector();
86
- this.xFinalAnimationValues = new webAssemblyContext.DoubleVector();
87
- this.yFinalAnimationValues = new webAssemblyContext.DoubleVector();
88
82
  // Need to set dataSeries (not just dataSeriesProperty) because of dataChanged.subscribe
89
- this.dataSeries = (_a = options === null || options === void 0 ? void 0 : options.dataSeries) !== null && _a !== void 0 ? _a : this.dataSeriesProperty;
83
+ this.dataSeries = (_b = options === null || options === void 0 ? void 0 : options.dataSeries) !== null && _b !== void 0 ? _b : this.dataSeriesProperty;
90
84
  if (options === null || options === void 0 ? void 0 : options.pointMarker) {
91
85
  if (!("drawSprite" in options.pointMarker)) {
92
86
  if (options.pointMarker.type === PointMarkerType_1.EPointMarkerType.Custom) {
@@ -97,14 +91,14 @@ var BaseRenderableSeries = /** @class */ (function () {
97
91
  }
98
92
  }
99
93
  }
100
- this.pointMarkerProperty = (_b = options === null || options === void 0 ? void 0 : options.pointMarker) !== null && _b !== void 0 ? _b : this.pointMarkerProperty;
101
- this.strokeProperty = (_c = options === null || options === void 0 ? void 0 : options.stroke) !== null && _c !== void 0 ? _c : this.strokeProperty;
102
- this.strokeThicknessProperty = (_d = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _d !== void 0 ? _d : this.strokeThicknessProperty;
103
- this.opacityProperty = (_e = options === null || options === void 0 ? void 0 : options.opacity) !== null && _e !== void 0 ? _e : this.opacityProperty;
104
- this.xAxisIdProperty = (_f = options === null || options === void 0 ? void 0 : options.xAxisId) !== null && _f !== void 0 ? _f : this.xAxisIdProperty;
105
- this.yAxisIdProperty = (_g = options === null || options === void 0 ? void 0 : options.yAxisId) !== null && _g !== void 0 ? _g : this.yAxisIdProperty;
106
- this.isVisibleProperty = (_h = options === null || options === void 0 ? void 0 : options.isVisible) !== null && _h !== void 0 ? _h : this.isVisibleProperty;
107
- this.isDigitalLineProperty = (_j = options === null || options === void 0 ? void 0 : options.isDigitalLine) !== null && _j !== void 0 ? _j : this.isDigitalLineProperty;
94
+ this.pointMarkerProperty = (_c = options === null || options === void 0 ? void 0 : options.pointMarker) !== null && _c !== void 0 ? _c : this.pointMarkerProperty;
95
+ this.strokeProperty = (_d = options === null || options === void 0 ? void 0 : options.stroke) !== null && _d !== void 0 ? _d : this.strokeProperty;
96
+ this.strokeThicknessProperty = (_e = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _e !== void 0 ? _e : this.strokeThicknessProperty;
97
+ this.opacityProperty = (_f = options === null || options === void 0 ? void 0 : options.opacity) !== null && _f !== void 0 ? _f : this.opacityProperty;
98
+ this.xAxisIdProperty = (_g = options === null || options === void 0 ? void 0 : options.xAxisId) !== null && _g !== void 0 ? _g : this.xAxisIdProperty;
99
+ this.yAxisIdProperty = (_h = options === null || options === void 0 ? void 0 : options.yAxisId) !== null && _h !== void 0 ? _h : this.yAxisIdProperty;
100
+ this.isVisibleProperty = (_j = options === null || options === void 0 ? void 0 : options.isVisible) !== null && _j !== void 0 ? _j : this.isVisibleProperty;
101
+ this.isDigitalLineProperty = (_k = options === null || options === void 0 ? void 0 : options.isDigitalLine) !== null && _k !== void 0 ? _k : this.isDigitalLineProperty;
108
102
  if (options === null || options === void 0 ? void 0 : options.effect) {
109
103
  if (!("getNativeEffect" in options.effect)) {
110
104
  options.effect = classFactory_1.createType(BaseType_1.EBaseType.ShaderEffect, options.effect.type, webAssemblyContext, options.effect.options);
@@ -121,36 +115,38 @@ var BaseRenderableSeries = /** @class */ (function () {
121
115
  }
122
116
  }
123
117
  }
124
- this.paletteProviderProperty = (_k = options === null || options === void 0 ? void 0 : options.paletteProvider) !== null && _k !== void 0 ? _k : this.paletteProviderProperty;
125
- if ((_l = this.paletteProviderProperty) === null || _l === void 0 ? void 0 : _l.onAttached) {
126
- (_m = this.paletteProviderProperty) === null || _m === void 0 ? void 0 : _m.onAttached(this);
118
+ this.paletteProviderProperty = (_l = options === null || options === void 0 ? void 0 : options.paletteProvider) !== null && _l !== void 0 ? _l : this.paletteProviderProperty;
119
+ if ((_m = this.paletteProviderProperty) === null || _m === void 0 ? void 0 : _m.onAttached) {
120
+ (_o = this.paletteProviderProperty) === null || _o === void 0 ? void 0 : _o.onAttached(this);
127
121
  }
128
- this.drawNaNAsProperty = (_o = options === null || options === void 0 ? void 0 : options.drawNaNAs) !== null && _o !== void 0 ? _o : this.drawNaNAsProperty;
122
+ this.drawNaNAsProperty = (_p = options === null || options === void 0 ? void 0 : options.drawNaNAs) !== null && _p !== void 0 ? _p : this.drawNaNAsProperty;
129
123
  this.hitTestProvider = this.newHitTestProvider();
130
- this.isSelected = (_p = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _p !== void 0 ? _p : false;
131
- this.isHovered = (_q = options === null || options === void 0 ? void 0 : options.isHovered) !== null && _q !== void 0 ? _q : false;
124
+ this.isSelected = (_q = options === null || options === void 0 ? void 0 : options.isSelected) !== null && _q !== void 0 ? _q : false;
125
+ this.isHovered = (_r = options === null || options === void 0 ? void 0 : options.isHovered) !== null && _r !== void 0 ? _r : false;
132
126
  if (options === null || options === void 0 ? void 0 : options.onSelectedChanged) {
133
127
  if (typeof options.onSelectedChanged === "string") {
134
128
  this.typeMap.set("onSelectedChanged", options.onSelectedChanged);
135
- // @ts-ignore
136
- var selectionChanged_1 = getFunction(BaseType_1.EBaseType.OptionFunction, options.onSelectedChanged);
137
- this.selected.subscribe(function (arg) { return selectionChanged_1(arg.sourceSeries, arg.isSelected); });
129
+ var selectionChanged_1 = classFactory_1.getFunction(BaseType_1.EBaseType.OptionFunction, options.onSelectedChanged);
130
+ this.selected.subscribe(function (args) {
131
+ return selectionChanged_1(args.sourceSeries, args.isSelected);
132
+ });
138
133
  }
139
134
  else {
140
- // @ts-ignore
141
- this.selected.subscribe(function (arg) { return options === null || options === void 0 ? void 0 : options.onSelectedChanged(arg.sourceSeries, arg.isSelected); });
135
+ var onSelectedChangedCallback_1 = options === null || options === void 0 ? void 0 : options.onSelectedChanged;
136
+ this.selected.subscribe(function (args) {
137
+ return onSelectedChangedCallback_1(args.sourceSeries, args.isSelected);
138
+ });
142
139
  }
143
140
  }
144
141
  if (options === null || options === void 0 ? void 0 : options.onHoveredChanged) {
145
142
  if (typeof options.onHoveredChanged === "string") {
146
143
  this.typeMap.set("onHoveredChanged", options.onHoveredChanged);
147
- // @ts-ignore
148
- var hoveredChanged_1 = getFunction(BaseType_1.EBaseType.OptionFunction, options.onHoveredChanged);
149
- this.hovered.subscribe(function (arg) { return hoveredChanged_1(arg.sourceSeries, arg.hovered); });
144
+ var hoveredChanged_1 = classFactory_1.getFunction(BaseType_1.EBaseType.OptionFunction, options.onHoveredChanged);
145
+ this.hovered.subscribe(function (args) { return hoveredChanged_1(args.sourceSeries, args.hovered); });
150
146
  }
151
147
  else {
152
- // @ts-ignore
153
- this.hovered.subscribe(function (arg) { return options === null || options === void 0 ? void 0 : options.onHoveredChanged(arg.sourceSeries, arg.hovered); });
148
+ var hoveredChanged_2 = options === null || options === void 0 ? void 0 : options.onHoveredChanged;
149
+ this.hovered.subscribe(function (args) { return hoveredChanged_2(args.sourceSeries, args.hovered); });
154
150
  }
155
151
  }
156
152
  if (options === null || options === void 0 ? void 0 : options.animation) {
@@ -441,22 +437,20 @@ var BaseRenderableSeries = /** @class */ (function () {
441
437
  this.drawingProviders.forEach(function (dp) { return dp.delete(); });
442
438
  this.drawingProviders = [];
443
439
  this.dataSeries = Deleter_1.deleteSafe(this.dataSeries);
444
- this.xInitialAnimationValues = Deleter_1.deleteSafe(this.xInitialAnimationValues);
445
- this.yInitialAnimationValues = Deleter_1.deleteSafe(this.yInitialAnimationValues);
446
- this.xFinalAnimationValues = Deleter_1.deleteSafe(this.xFinalAnimationValues);
447
- this.yFinalAnimationValues = Deleter_1.deleteSafe(this.yFinalAnimationValues);
448
- this.yAnimationValues = Deleter_1.deleteSafe(this.yAnimationValues);
449
440
  this.effect = Deleter_1.deleteSafe(this.effect);
450
441
  (_a = this.pointMarker) === null || _a === void 0 ? void 0 : _a.delete();
451
442
  };
452
443
  /** @inheritDoc */
453
444
  BaseRenderableSeries.prototype.getXRange = function () {
454
- return this.dataSeries.xRange;
445
+ return this.dataSeries.getXRange(IDataSeries_1.EDataSeriesValueType.Default);
455
446
  };
456
447
  /** @inheritDoc */
457
448
  BaseRenderableSeries.prototype.getYRange = function (xVisibleRange, isXCategoryAxis) {
458
449
  if (isXCategoryAxis === void 0) { isXCategoryAxis = false; }
459
- return this.dataSeries.getWindowedYRange(xVisibleRange, true, isXCategoryAxis);
450
+ var dataSeriesValueType = this.isRunningDataAnimation
451
+ ? IDataSeries_1.EDataSeriesValueType.FinalAnimationValues
452
+ : IDataSeries_1.EDataSeriesValueType.Default;
453
+ return this.dataSeries.getWindowedYRange(xVisibleRange, true, isXCategoryAxis, dataSeriesValueType);
460
454
  };
461
455
  /** @inheritDoc */
462
456
  BaseRenderableSeries.prototype.notifyPropertyChanged = function (propertyName) {
@@ -582,6 +576,7 @@ var BaseRenderableSeries = /** @class */ (function () {
582
576
  }
583
577
  }
584
578
  var options = {
579
+ id: this.id,
585
580
  drawNaNAs: this.drawNaNAs,
586
581
  effect: (_a = this.effect) === null || _a === void 0 ? void 0 : _a.toJSON(),
587
582
  isDigitalLine: this.isDigitalLine,
@@ -594,7 +589,9 @@ var BaseRenderableSeries = /** @class */ (function () {
594
589
  stroke: this.stroke,
595
590
  strokeThickness: this.strokeThickness,
596
591
  xAxisId: this.xAxisId,
597
- yAxisId: this.yAxisId
592
+ yAxisId: this.yAxisId,
593
+ animation: this.animation
594
+ // onSelectedChanged: this.onSelectedChanged
598
595
  };
599
596
  if (((_c = this.dataSeries) === null || _c === void 0 ? void 0 : _c.type) === IDataSeries_1.EDataSeriesType.Xy) {
600
597
  // @ts-ignore
@@ -654,6 +651,18 @@ var BaseRenderableSeries = /** @class */ (function () {
654
651
  enumerable: false,
655
652
  configurable: true
656
653
  });
654
+ Object.defineProperty(BaseRenderableSeries.prototype, "isRunningDataAnimation", {
655
+ /**
656
+ * gets if a data animation is currently running
657
+ */
658
+ get: function () {
659
+ return (this.isRunningAnimation &&
660
+ this.animationFSM &&
661
+ (this.animationFSM.animation.isDataSeriesAnimation || this.animationFSM.animation.isOnStartAnimation));
662
+ },
663
+ enumerable: false,
664
+ configurable: true
665
+ });
657
666
  /** @inheritDoc */
658
667
  BaseRenderableSeries.prototype.onAnimate = function (timeElapsed) {
659
668
  var _a;
@@ -676,21 +685,14 @@ var BaseRenderableSeries = /** @class */ (function () {
676
685
  * @protected
677
686
  */
678
687
  BaseRenderableSeries.prototype.setAnimationVectors = function (animation) {
688
+ var ds = this.dataSeries;
679
689
  if (animation.isOnStartAnimation) {
680
- this.setXFinalAnimationValues(this.getNativeXValues());
681
- this.setYFinalAnimationValues(this.getNativeYValues());
690
+ ds.setFinalAnimationVectors(ds);
682
691
  }
683
692
  else if (animation.isDataSeriesAnimation) {
684
- this.setXInitialAnimationValues(this.getNativeXValues());
685
- this.setYInitialAnimationValues(this.getNativeYValues());
686
- this.setXFinalAnimationValues(animation.dataSeries.getNativeXValues());
687
- this.setYFinalAnimationValues(animation.dataSeries.getNativeYValues());
688
- var size = this.xInitialAnimationValues.size();
689
- if (size !== this.yInitialAnimationValues.size() ||
690
- size !== this.xFinalAnimationValues.size() ||
691
- size !== this.yFinalAnimationValues.size()) {
692
- throw Error("initialAnimationValues and finalAnimationValues must have the same length");
693
- }
693
+ ds.setInitialAnimationVectors(ds);
694
+ ds.setFinalAnimationVectors(animation.dataSeries);
695
+ ds.validateAnimationVectors();
694
696
  }
695
697
  };
696
698
  /**
@@ -710,7 +712,13 @@ var BaseRenderableSeries = /** @class */ (function () {
710
712
  * Runs after the animation is complete
711
713
  * @protected
712
714
  */
713
- BaseRenderableSeries.prototype.afterAnimationComplete = function () { };
715
+ BaseRenderableSeries.prototype.afterAnimationComplete = function () {
716
+ if (this.dataSeries) {
717
+ var ds = this.dataSeries;
718
+ ds.setInitialAnimationVectors(undefined);
719
+ ds.setFinalAnimationVectors(undefined);
720
+ }
721
+ };
714
722
  /**
715
723
  * Internal method that runs on each animation tick
716
724
  * @param progress The current animation progress, a value from 0 to 1
@@ -720,48 +728,14 @@ var BaseRenderableSeries = /** @class */ (function () {
720
728
  BaseRenderableSeries.prototype.updateAnimationProperties = function (progress, animationFSM) {
721
729
  var animation = animationFSM.animation;
722
730
  animation.updateSeriesProperties(this, animationFSM.initialStyles, animationFSM.animationProgress);
723
- if (animation.isOnStartAnimation) {
724
- var dataSeries = this.dataSeries;
725
- if (dataSeries) {
726
- animation.calculateAnimationValues(this.webAssemblyContext, this.yFinalAnimationValues, dataSeries.getNativeYValues(), progress);
727
- }
728
- }
729
- else if (animation.isDataSeriesAnimation) {
730
- animation.calculateDataSeriesAnimationValues(this.webAssemblyContext, this.xInitialAnimationValues, this.xFinalAnimationValues, this.getNativeXValues(), progress);
731
- animation.calculateDataSeriesAnimationValues(this.webAssemblyContext, this.yInitialAnimationValues, this.yFinalAnimationValues, this.getNativeYValues(), progress);
731
+ var dataSeries = this.dataSeries;
732
+ if (dataSeries) {
733
+ dataSeries.updateAnimationProperties(progress, animation);
732
734
  }
733
735
  if (this.invalidateParentCallback) {
734
736
  this.invalidateParentCallback();
735
737
  }
736
738
  };
737
- BaseRenderableSeries.prototype.setXInitialAnimationValues = function (values) {
738
- var size = values.size();
739
- this.xInitialAnimationValues.resize(size, 0);
740
- for (var i = 0; i < size; i++) {
741
- this.xInitialAnimationValues.set(i, values.get(i));
742
- }
743
- };
744
- BaseRenderableSeries.prototype.setYInitialAnimationValues = function (values) {
745
- var size = values.size();
746
- this.yInitialAnimationValues.resize(size, 0);
747
- for (var i = 0; i < size; i++) {
748
- this.yInitialAnimationValues.set(i, values.get(i));
749
- }
750
- };
751
- BaseRenderableSeries.prototype.setXFinalAnimationValues = function (values) {
752
- var size = values.size();
753
- this.xFinalAnimationValues.resize(size, 0);
754
- for (var i = 0; i < size; i++) {
755
- this.xFinalAnimationValues.set(i, values.get(i));
756
- }
757
- };
758
- BaseRenderableSeries.prototype.setYFinalAnimationValues = function (values) {
759
- var size = values.size();
760
- this.yFinalAnimationValues.resize(size, 0);
761
- for (var i = 0; i < size; i++) {
762
- this.yFinalAnimationValues.set(i, values.get(i));
763
- }
764
- };
765
739
  /**
766
740
  * Is being called when the data for the underlying DataSeries changes
767
741
  * @protected
@@ -26,6 +26,29 @@ import { RolloverModifierRenderableSeriesProps } from "./RolloverModifier/Rollov
26
26
  import { SeriesHoveredArgs } from "./SeriesHoveredArgs";
27
27
  import { SeriesSelectedArgs } from "./SeriesSelectedArgs";
28
28
  import { ShaderEffect } from "./ShaderEffect";
29
+ /**
30
+ * Options to pass to the {@link BaseStackedCollection} constructor
31
+ */
32
+ export interface IBaseStackedCollectionOptions {
33
+ /**
34
+ * When true, the series is visible and drawn
35
+ */
36
+ isVisible?: boolean;
37
+ /**
38
+ * Sets the bound {@link AxisCore | XAxis} for this {@link BaseRenderableSeries}.
39
+ * @remarks Does a lookup search on {@link SciChartSurface.xAxes} collection by Id matching {@link xAxisId | this.xAxisId}
40
+ */
41
+ xAxisId?: string;
42
+ /**
43
+ * Sets the bound {@link AxisCore | YAxis} for this {@link BaseRenderableSeries}.
44
+ * @remarks Does a lookup search on {@link SciChartSurface.yAxes} collection by Id matching {@link yAxisId | this.yAxisId}
45
+ */
46
+ yAxisId?: string;
47
+ /**
48
+ * Sets 100% mode. When true, the stacked group becomes a 100% stacked chart
49
+ */
50
+ isOneHundredPercent?: boolean;
51
+ }
29
52
  /**
30
53
  * A base class for stacked collections, which are used to create stacked mountain or column chart types.
31
54
  * Concrete types are {@link StackedColumnCollection} and {@link StackedMountainCollection}
@@ -60,7 +83,7 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
60
83
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
61
84
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
62
85
  */
63
- protected constructor(webAssemblyContext: TSciChart);
86
+ protected constructor(webAssemblyContext: TSciChart, options?: IBaseStackedCollectionOptions);
64
87
  /** @inheritDoc */
65
88
  get selected(): EventHandler<SeriesSelectedArgs>;
66
89
  /** @inheritDoc */
@@ -225,7 +248,7 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
225
248
  /** @inheritDoc */
226
249
  abstract getXRange(): NumberRange;
227
250
  /** @inheritDoc */
228
- abstract getYRange(xVisibleRange: NumberRange, isXCategoryAxis: boolean): NumberRange;
251
+ getYRange(xVisibleRange: NumberRange, isXCategoryAxis: boolean): NumberRange;
229
252
  /** @inheritDoc */
230
253
  hasDataSeries(): boolean;
231
254
  /** @inheritDoc */
@@ -299,4 +322,5 @@ export declare abstract class BaseStackedCollection<T extends BaseStackedRendera
299
322
  */
300
323
  protected updateAnimationProperties(progress: number, animationFSM: AnimationFiniteStateMachine): void;
301
324
  protected updateHitTestProviders(renderPassData: RenderPassData): void;
325
+ protected isEnoughDataToDraw(): boolean;
302
326
  }
@@ -16,8 +16,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
16
16
  exports.BaseStackedCollection = void 0;
17
17
  var AnimationFiniteStateMachine_1 = require("../../../Core/Animations/AnimationFiniteStateMachine");
18
18
  var Deleter_1 = require("../../../Core/Deleter");
19
+ var NumberRange_1 = require("../../../Core/NumberRange");
19
20
  var ObservableArray_1 = require("../../../Core/ObservableArray");
20
21
  var guid_1 = require("../../../utils/guid");
22
+ var BaseDataSeries_1 = require("../../Model/BaseDataSeries");
21
23
  var AxisCore_1 = require("../Axis/AxisCore");
22
24
  var animationHelpers_1 = require("./Animations/animationHelpers");
23
25
  var constants_1 = require("./constants");
@@ -32,7 +34,8 @@ var BaseStackedCollection = /** @class */ (function (_super) {
32
34
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
33
35
  * native methods and access to our WebGL2 WebAssembly Drawing Engine
34
36
  */
35
- function BaseStackedCollection(webAssemblyContext) {
37
+ function BaseStackedCollection(webAssemblyContext, options) {
38
+ var _a, _b, _c, _d;
36
39
  var _this = _super.call(this) || this;
37
40
  _this.id = guid_1.generateGuid();
38
41
  _this.isStacked = true;
@@ -45,6 +48,10 @@ var BaseStackedCollection = /** @class */ (function (_super) {
45
48
  _this.isOneHundredPercentProperty = false;
46
49
  _this.animationQueue = [];
47
50
  _this.webAssemblyContext = webAssemblyContext;
51
+ _this.isVisibleProperty = (_a = options === null || options === void 0 ? void 0 : options.isVisible) !== null && _a !== void 0 ? _a : _this.isVisibleProperty;
52
+ _this.xAxisIdProperty = (_b = options === null || options === void 0 ? void 0 : options.xAxisId) !== null && _b !== void 0 ? _b : _this.xAxisIdProperty;
53
+ _this.yAxisIdProperty = (_c = options === null || options === void 0 ? void 0 : options.yAxisId) !== null && _c !== void 0 ? _c : _this.yAxisIdProperty;
54
+ _this.isOneHundredPercentProperty = (_d = options === null || options === void 0 ? void 0 : options.isOneHundredPercent) !== null && _d !== void 0 ? _d : _this.isOneHundredPercentProperty;
48
55
  _this.updateAnimationProperties = _this.updateAnimationProperties.bind(_this);
49
56
  _this.notifyPropertyChanged = _this.notifyPropertyChanged.bind(_this);
50
57
  _this.getParentSurface = _this.getParentSurface.bind(_this);
@@ -437,6 +444,26 @@ var BaseStackedCollection = /** @class */ (function (_super) {
437
444
  return (_a = this.get(0).dataSeries) === null || _a === void 0 ? void 0 : _a.getNativeXValues();
438
445
  };
439
446
  /** @inheritDoc */
447
+ BaseStackedCollection.prototype.getYRange = function (xVisibleRange, isXCategoryAxis) {
448
+ var _this = this;
449
+ if (!this.isEnoughDataToDraw()) {
450
+ return new NumberRange_1.NumberRange();
451
+ }
452
+ var maxRange;
453
+ this.getVisibleSeries().forEach(function (rs) {
454
+ if (rs.accumulatedValues.size() === _this.getNativeXValues().size()) {
455
+ // TODO: calc isSorted flag
456
+ var range = BaseDataSeries_1.getWindowedYRange(_this.webAssemblyContext, _this.getNativeXValues(), rs.accumulatedValues, xVisibleRange, true, isXCategoryAxis, true);
457
+ if (range) {
458
+ maxRange = maxRange ? maxRange.union(range) : range;
459
+ }
460
+ }
461
+ });
462
+ if (maxRange)
463
+ return maxRange;
464
+ return new NumberRange_1.NumberRange();
465
+ };
466
+ /** @inheritDoc */
440
467
  BaseStackedCollection.prototype.hasDataSeries = function () {
441
468
  return !!this.getNativeXValues();
442
469
  };
@@ -539,8 +566,14 @@ var BaseStackedCollection = /** @class */ (function (_super) {
539
566
  var subSeries = _a[_i];
540
567
  series.push(subSeries.toJSON(excludeData));
541
568
  }
542
- // TODO: options, when they are added
543
- return { type: this.type, series: series };
569
+ var options = {
570
+ isVisible: this.isVisible,
571
+ isOneHundredPercent: this.isOneHundredPercent,
572
+ xAxisId: this.xAxisId,
573
+ yAxisId: this.yAxisId
574
+ };
575
+ // @ts-ignore
576
+ return { type: this.type, series: series, options: options };
544
577
  };
545
578
  // Un-Supported PROPERTIES END
546
579
  BaseStackedCollection.prototype.isAllDataSeriesSet = function () {
@@ -622,6 +655,25 @@ var BaseStackedCollection = /** @class */ (function (_super) {
622
655
  (_a = el.hitTestProvider) === null || _a === void 0 ? void 0 : _a.update(renderPassData);
623
656
  });
624
657
  };
658
+ BaseStackedCollection.prototype.isEnoughDataToDraw = function () {
659
+ var stackedSeriesCount = this.getVisibleSeries().length;
660
+ if (stackedSeriesCount < 1) {
661
+ return false;
662
+ }
663
+ // All renderableSeries should have dataSeries property
664
+ for (var i = 0; i < stackedSeriesCount; i++) {
665
+ if (!this.get(i).dataSeries) {
666
+ return false;
667
+ }
668
+ }
669
+ // All dataSeries should have some values
670
+ for (var i = 0; i < stackedSeriesCount; i++) {
671
+ if (this.get(i).dataSeries.count() === 0) {
672
+ return false;
673
+ }
674
+ }
675
+ return true;
676
+ };
625
677
  return BaseStackedCollection;
626
678
  }(ObservableArray_1.ObservableArray));
627
679
  exports.BaseStackedCollection = BaseStackedCollection;