scichart 2.2.2417 → 3.0.0-beta.224

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 (389) hide show
  1. package/Builder/buildDataSeries.d.ts +16 -1
  2. package/Builder/buildDataSeries.js +24 -1
  3. package/Builder/buildSeries.d.ts +60 -3
  4. package/Builder/buildSeries.js +28 -1
  5. package/Builder/buildSurface.d.ts +28 -2
  6. package/Builder/buildSurface.js +53 -31
  7. package/Builder/chartBuilder.d.ts +20 -7
  8. package/Builder/chartBuilder.js +37 -3
  9. package/Charting/ChartModifiers/ChartModifierBase.d.ts +21 -0
  10. package/Charting/ChartModifiers/ChartModifierBase.js +12 -0
  11. package/Charting/ChartModifiers/ChartModifierBase2D.js +2 -1
  12. package/Charting/ChartModifiers/CursorModifier.d.ts +83 -10
  13. package/Charting/ChartModifiers/CursorModifier.js +147 -58
  14. package/Charting/ChartModifiers/DataPointSelectionModifier.js +2 -1
  15. package/Charting/ChartModifiers/LegendModifier.js +2 -1
  16. package/Charting/ChartModifiers/ModifierMouseArgs.d.ts +6 -1
  17. package/Charting/ChartModifiers/ModifierMouseArgs.js +13 -3
  18. package/Charting/ChartModifiers/MouseWheelZoomModifier.d.ts +2 -2
  19. package/Charting/ChartModifiers/MouseWheelZoomModifier.js +16 -4
  20. package/Charting/ChartModifiers/OverviewRangeSelectionModifier.d.ts +2 -1
  21. package/Charting/ChartModifiers/OverviewRangeSelectionModifier.js +8 -4
  22. package/Charting/ChartModifiers/PinchZoomModifier.js +2 -1
  23. package/Charting/ChartModifiers/RolloverModifier.d.ts +40 -0
  24. package/Charting/ChartModifiers/RolloverModifier.js +40 -3
  25. package/Charting/ChartModifiers/RubberBandXyZoomModifier.js +2 -1
  26. package/Charting/ChartModifiers/SeriesSelectionModifier.js +2 -1
  27. package/Charting/ChartModifiers/XAxisDragModifier.d.ts +1 -1
  28. package/Charting/ChartModifiers/XAxisDragModifier.js +2 -1
  29. package/Charting/ChartModifiers/YAxisDragModifier.d.ts +1 -1
  30. package/Charting/ChartModifiers/YAxisDragModifier.js +2 -1
  31. package/Charting/ChartModifiers/ZoomExtentsModifier.js +2 -1
  32. package/Charting/ChartModifiers/ZoomPanModifier.js +2 -1
  33. package/Charting/ChartModifiers/constants.d.ts +3 -1
  34. package/Charting/ChartModifiers/constants.js +2 -0
  35. package/Charting/Drawing/BatchRenderContext.d.ts +6 -0
  36. package/Charting/Drawing/BatchRenderContext.js +40 -0
  37. package/Charting/Drawing/RenderSurface.d.ts +2 -1
  38. package/Charting/Drawing/RenderSurface.js +3 -2
  39. package/Charting/Drawing/WebGlRenderContext2D.d.ts +19 -4
  40. package/Charting/Drawing/WebGlRenderContext2D.js +70 -41
  41. package/Charting/LayoutManager/BaseCenteredAxisLayoutStrategy.js +2 -1
  42. package/Charting/LayoutManager/BottomAlignedInnerAxisLayoutStrategy.js +1 -1
  43. package/Charting/LayoutManager/CentralAxesLayoutManager.js +2 -1
  44. package/Charting/LayoutManager/LayoutManager.d.ts +2 -1
  45. package/Charting/LayoutManager/LayoutManager.js +6 -5
  46. package/Charting/LayoutManager/LeftAlignedInnerAxisLayoutStrategy.js +1 -1
  47. package/Charting/LayoutManager/RightAlignedInnerAxisLayoutStrategy.js +1 -1
  48. package/Charting/LayoutManager/TopAlignedInnerAxisLayoutStrategy.js +1 -1
  49. package/Charting/Model/BaseDataSeries.d.ts +10 -1
  50. package/Charting/Model/BaseDataSeries.js +9 -8
  51. package/Charting/Model/BaseHeatmapDataSeries.d.ts +18 -5
  52. package/Charting/Model/BaseHeatmapDataSeries.js +21 -13
  53. package/Charting/Model/ChartData/SeriesInfo.d.ts +6 -0
  54. package/Charting/Model/ChartData/SeriesInfo.js +5 -0
  55. package/Charting/Model/ChartData/XyySeriesInfo.d.ts +2 -0
  56. package/Charting/Model/ChartData/XyySeriesInfo.js +2 -0
  57. package/Charting/Model/DataDistributionCalculator/DataDistributionCalculator.js +4 -3
  58. package/Charting/Model/Filters/HlcCustomFilter.js +12 -9
  59. package/Charting/Model/Filters/HlcFilterBase.js +2 -1
  60. package/Charting/Model/Filters/HlcScaleOffsetFilter.js +2 -1
  61. package/Charting/Model/Filters/OhlcCustomFilter.js +12 -9
  62. package/Charting/Model/Filters/OhlcScaleOffsetFilter.js +2 -1
  63. package/Charting/Model/Filters/XyCustomFilter.js +12 -9
  64. package/Charting/Model/Filters/XyFilterBase.d.ts +14 -5
  65. package/Charting/Model/Filters/XyFilterBase.js +47 -15
  66. package/Charting/Model/Filters/XyMovingAverageFilter.js +2 -1
  67. package/Charting/Model/Filters/XyRatioFilter.js +2 -1
  68. package/Charting/Model/Filters/XyScaleOffsetFilter.js +2 -1
  69. package/Charting/Model/Filters/XyyCustomFilter.js +12 -9
  70. package/Charting/Model/Filters/XyyFilterBase.js +2 -1
  71. package/Charting/Model/Filters/XyyScaleOffsetFilter.js +2 -1
  72. package/Charting/Model/Filters/XyzCustomFilter.js +12 -9
  73. package/Charting/Model/Filters/XyzFilterBase.js +2 -1
  74. package/Charting/Model/Filters/XyzScaleOffsetFilter.js +2 -1
  75. package/Charting/Model/IDataSeries.d.ts +9 -1
  76. package/Charting/Model/IDataSeries.js +8 -0
  77. package/Charting/Model/NonUniformHeatmapDataSeries.d.ts +112 -0
  78. package/Charting/Model/NonUniformHeatmapDataSeries.js +261 -0
  79. package/Charting/Model/PaletteFactory.d.ts +40 -4
  80. package/Charting/Model/PaletteFactory.js +37 -11
  81. package/Charting/Model/XyTextDataSeries.d.ts +121 -0
  82. package/Charting/Model/XyTextDataSeries.js +274 -0
  83. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.d.ts +1 -1
  84. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +1 -1
  85. package/Charting/Services/RenderPassData.d.ts +15 -5
  86. package/Charting/Services/RenderPassData.js +27 -5
  87. package/Charting/Services/SciChartRenderer.d.ts +2 -1
  88. package/Charting/Services/SciChartRenderer.js +92 -29
  89. package/Charting/Themes/IThemeProvider.d.ts +61 -0
  90. package/Charting/Themes/IThemeProvider.js +67 -1
  91. package/Charting/Themes/SciChartJSDarkTheme.d.ts +4 -0
  92. package/Charting/Themes/SciChartJSDarkTheme.js +6 -2
  93. package/Charting/Themes/SciChartJSDarkv2Theme.js +3 -0
  94. package/Charting/Themes/SciChartJSLightTheme.d.ts +8 -0
  95. package/Charting/Themes/SciChartJSLightTheme.js +8 -0
  96. package/Charting/Themes/SciChartJsNavyTheme.d.ts +10 -0
  97. package/Charting/Themes/SciChartJsNavyTheme.js +49 -0
  98. package/Charting/Visuals/Annotations/AdornerLayer.js +4 -8
  99. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +80 -7
  100. package/Charting/Visuals/Annotations/AnnotationBase.js +238 -28
  101. package/Charting/Visuals/Annotations/AnnotationClickEventArgs.d.ts +11 -0
  102. package/Charting/Visuals/Annotations/AnnotationClickEventArgs.js +12 -0
  103. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.d.ts +1 -0
  104. package/Charting/Visuals/Annotations/AxisMarkerAnnotation.js +18 -19
  105. package/Charting/Visuals/Annotations/BoxAnnotation.d.ts +1 -0
  106. package/Charting/Visuals/Annotations/BoxAnnotation.js +69 -67
  107. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.d.ts +2 -2
  108. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +20 -20
  109. package/Charting/Visuals/Annotations/CustomAnnotation.d.ts +1 -1
  110. package/Charting/Visuals/Annotations/CustomAnnotation.js +3 -2
  111. package/Charting/Visuals/Annotations/HorizontalLineAnnotation.js +6 -3
  112. package/Charting/Visuals/Annotations/IAdornerProvider.d.ts +12 -0
  113. package/Charting/Visuals/Annotations/IAnnotation.d.ts +9 -0
  114. package/Charting/Visuals/Annotations/IAnnotation.js +9 -0
  115. package/Charting/Visuals/Annotations/LineAnnotation.d.ts +1 -0
  116. package/Charting/Visuals/Annotations/LineAnnotation.js +29 -35
  117. package/Charting/Visuals/Annotations/NativeTextAnnotation.d.ts +193 -0
  118. package/Charting/Visuals/Annotations/NativeTextAnnotation.js +536 -0
  119. package/Charting/Visuals/Annotations/OverviewCustomResizableAnnotation.d.ts +4 -2
  120. package/Charting/Visuals/Annotations/OverviewCustomResizableAnnotation.js +19 -14
  121. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.d.ts +2 -2
  122. package/Charting/Visuals/Annotations/RolloverLegendSvgAnnotation.js +9 -8
  123. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.d.ts +2 -2
  124. package/Charting/Visuals/Annotations/RolloverMarkerSvgAnnotation.js +6 -6
  125. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.d.ts +2 -2
  126. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +16 -17
  127. package/Charting/Visuals/Annotations/SvgAnnotationBase.d.ts +13 -2
  128. package/Charting/Visuals/Annotations/SvgAnnotationBase.js +34 -42
  129. package/Charting/Visuals/Annotations/TextAnnotation.d.ts +2 -2
  130. package/Charting/Visuals/Annotations/TextAnnotation.js +41 -22
  131. package/Charting/Visuals/Annotations/VerticalLineAnnotation.js +6 -3
  132. package/Charting/Visuals/Annotations/annotationHelpers.d.ts +6 -6
  133. package/Charting/Visuals/Annotations/annotationHelpers.js +7 -6
  134. package/Charting/Visuals/Annotations/constants.d.ts +13 -1
  135. package/Charting/Visuals/Annotations/constants.js +12 -0
  136. package/Charting/Visuals/Axis/AxisBase2D.d.ts +24 -4
  137. package/Charting/Visuals/Axis/AxisBase2D.js +115 -38
  138. package/Charting/Visuals/Axis/AxisCore.d.ts +10 -5
  139. package/Charting/Visuals/Axis/AxisCore.js +11 -10
  140. package/Charting/Visuals/Axis/AxisRenderer.js +114 -20
  141. package/Charting/Visuals/Axis/CategoryAxis.js +2 -1
  142. package/Charting/Visuals/Axis/CategoryAxisBase.d.ts +15 -15
  143. package/Charting/Visuals/Axis/CategoryAxisBase.js +14 -12
  144. package/Charting/Visuals/Axis/DateTimeNumericAxis.js +2 -1
  145. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +2 -1
  146. package/Charting/Visuals/Axis/LabelProvider/DateLabelProvider.js +2 -1
  147. package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +2 -0
  148. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +14 -0
  149. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +140 -33
  150. package/Charting/Visuals/Axis/LabelProvider/LogarithmicLabelProvider.js +2 -1
  151. package/Charting/Visuals/Axis/LabelProvider/NumericLabelProvider.js +2 -1
  152. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +2 -1
  153. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.d.ts +31 -1
  154. package/Charting/Visuals/Axis/LabelProvider/SmartDateLabelProvider.js +64 -42
  155. package/Charting/Visuals/Axis/LabelProvider/TextLabelProvider.d.ts +2 -2
  156. package/Charting/Visuals/Axis/LabelProvider/TextLabelProvider.js +16 -19
  157. package/Charting/Visuals/Axis/LogarithmicAxis.js +9 -6
  158. package/Charting/Visuals/Axis/NumericAxis.js +3 -3
  159. package/Charting/Visuals/Axis/constants.d.ts +1 -0
  160. package/Charting/Visuals/Axis/constants.js +1 -0
  161. package/Charting/Visuals/HeatmapLegend.d.ts +95 -0
  162. package/Charting/Visuals/HeatmapLegend.js +192 -0
  163. package/Charting/Visuals/Helpers/NativeObject.d.ts +15 -2
  164. package/Charting/Visuals/Helpers/NativeObject.js +72 -6
  165. package/Charting/Visuals/I2DSurfaceOptions.d.ts +46 -0
  166. package/Charting/Visuals/PointMarkers/BasePointMarker.d.ts +5 -0
  167. package/Charting/Visuals/PointMarkers/BasePointMarker.js +28 -0
  168. package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +8 -0
  169. package/Charting/Visuals/RenderableSeries/Animations/BandAnimation.js +2 -1
  170. package/Charting/Visuals/RenderableSeries/Animations/BandAnimationStyle.js +2 -1
  171. package/Charting/Visuals/RenderableSeries/Animations/BubbleAnimation.js +2 -1
  172. package/Charting/Visuals/RenderableSeries/Animations/CandlestickAnimation.js +2 -1
  173. package/Charting/Visuals/RenderableSeries/Animations/CandlestickAnimationStyle.js +2 -1
  174. package/Charting/Visuals/RenderableSeries/Animations/ColumnAnimation.js +2 -1
  175. package/Charting/Visuals/RenderableSeries/Animations/ColumnAnimationStyle.js +2 -1
  176. package/Charting/Visuals/RenderableSeries/Animations/CustomPointMarkerStyle.js +2 -1
  177. package/Charting/Visuals/RenderableSeries/Animations/FadeAnimation.js +2 -1
  178. package/Charting/Visuals/RenderableSeries/Animations/LineAnimation.js +2 -1
  179. package/Charting/Visuals/RenderableSeries/Animations/MountainAnimation.js +2 -1
  180. package/Charting/Visuals/RenderableSeries/Animations/MountainAnimationStyle.js +2 -1
  181. package/Charting/Visuals/RenderableSeries/Animations/OhlcAnimation.js +2 -1
  182. package/Charting/Visuals/RenderableSeries/Animations/OhlcAnimationStyle.js +2 -1
  183. package/Charting/Visuals/RenderableSeries/Animations/PointMarkerStyle.js +2 -1
  184. package/Charting/Visuals/RenderableSeries/Animations/ScaleAnimation.js +2 -1
  185. package/Charting/Visuals/RenderableSeries/Animations/ScatterAnimation.js +2 -1
  186. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.d.ts +8 -2
  187. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.js +3 -3
  188. package/Charting/Visuals/RenderableSeries/Animations/WaveAnimation.js +2 -1
  189. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.d.ts +7 -0
  190. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +42 -10
  191. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.d.ts +128 -0
  192. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.js +201 -0
  193. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.d.ts +26 -0
  194. package/Charting/Visuals/RenderableSeries/BaseLineRenderableSeries.js +39 -3
  195. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.d.ts +7 -0
  196. package/Charting/Visuals/RenderableSeries/BaseMountainRenderableSeries.js +17 -2
  197. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.d.ts +2 -0
  198. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +15 -2
  199. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +10 -0
  200. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +93 -17
  201. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.d.ts +8 -1
  202. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +21 -1
  203. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.d.ts +1 -0
  204. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +4 -0
  205. package/Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider.d.ts +43 -0
  206. package/Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider.js +142 -0
  207. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.d.ts +92 -0
  208. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.js +129 -0
  209. package/Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider.d.ts +17 -0
  210. package/Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider.js +62 -0
  211. package/Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider.d.ts +47 -0
  212. package/Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider.js +125 -0
  213. package/Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider.d.ts +71 -0
  214. package/Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider.js +221 -0
  215. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelLayoutManager.d.ts +5 -0
  216. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelLayoutManager.js +2 -0
  217. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.d.ts +208 -0
  218. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +410 -0
  219. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.d.ts +40 -0
  220. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.js +141 -0
  221. package/Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider.d.ts +63 -0
  222. package/Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider.js +198 -0
  223. package/Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider.d.ts +35 -0
  224. package/Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider.js +92 -0
  225. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.d.ts +12 -0
  226. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.js +134 -0
  227. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.d.ts +56 -0
  228. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.js +167 -0
  229. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +0 -1
  230. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +1 -2
  231. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +5 -2
  232. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +47 -40
  233. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +1 -1
  234. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.d.ts +1 -0
  235. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +18 -5
  236. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.d.ts +0 -1
  237. package/Charting/Visuals/RenderableSeries/DrawingProviders/ErrorSeriesDrawingProvider.js +14 -27
  238. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.d.ts +17 -4
  239. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +34 -11
  240. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.d.ts +36 -0
  241. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js +493 -0
  242. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.d.ts +5 -2
  243. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +8 -5
  244. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformContoursDrawingProvider.js +4 -4
  245. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.d.ts +3 -0
  246. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +15 -4
  247. package/Charting/Visuals/RenderableSeries/FastBandRenderableSeries.js +2 -1
  248. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +21 -0
  249. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +40 -4
  250. package/Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries.d.ts +2 -0
  251. package/Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries.js +18 -3
  252. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.d.ts +36 -2
  253. package/Charting/Visuals/RenderableSeries/FastColumnRenderableSeries.js +77 -8
  254. package/Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries.js +2 -1
  255. package/Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries.d.ts +7 -0
  256. package/Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries.js +16 -4
  257. package/Charting/Visuals/RenderableSeries/FastLineRenderableSeries.js +2 -1
  258. package/Charting/Visuals/RenderableSeries/FastMountainRenderableSeries.js +2 -1
  259. package/Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries.js +2 -1
  260. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.d.ts +17 -0
  261. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.js +45 -0
  262. package/Charting/Visuals/RenderableSeries/HeatmapColorMap.js +3 -2
  263. package/Charting/Visuals/RenderableSeries/HitTest/BandSeriesHitTestProvider.js +35 -5
  264. package/Charting/Visuals/RenderableSeries/HitTest/BaseHitTestProvider.js +17 -1
  265. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.d.ts +8 -0
  266. package/Charting/Visuals/RenderableSeries/HitTest/MountainSeriesHitTestProvider.js +7 -1
  267. package/Charting/Visuals/RenderableSeries/HitTest/NonUniformHeatmapHitTestProvider.d.ts +20 -0
  268. package/Charting/Visuals/RenderableSeries/HitTest/NonUniformHeatmapHitTestProvider.js +86 -0
  269. package/Charting/Visuals/RenderableSeries/HitTest/TextSeriesHitTestProvider.d.ts +6 -0
  270. package/Charting/Visuals/RenderableSeries/HitTest/TextSeriesHitTestProvider.js +56 -0
  271. package/Charting/Visuals/RenderableSeries/HitTest/UniformHeatmapHitTestProvider.js +1 -1
  272. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.d.ts +7 -1
  273. package/Charting/Visuals/RenderableSeries/HitTest/hitTestHelpers.js +34 -2
  274. package/Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions.d.ts +6 -1
  275. package/Charting/Visuals/RenderableSeries/IRenderableSeries.d.ts +12 -0
  276. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.d.ts +74 -0
  277. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.js +99 -0
  278. package/Charting/Visuals/RenderableSeries/ShaderEffect.js +2 -2
  279. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +2 -1
  280. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +2 -3
  281. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +2 -1
  282. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +2 -1
  283. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +2 -1
  284. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.d.ts +3 -0
  285. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.js +13 -2
  286. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -1
  287. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +7 -0
  288. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +33 -9
  289. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
  290. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +7 -1
  291. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +2 -75
  292. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +8 -130
  293. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -0
  294. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +7 -1
  295. package/Charting/Visuals/RenderableSeries/constants.d.ts +5 -1
  296. package/Charting/Visuals/RenderableSeries/constants.js +4 -0
  297. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +3 -3
  298. package/Charting/Visuals/SciChartDefaults.d.ts +4 -0
  299. package/Charting/Visuals/SciChartDefaults.js +4 -0
  300. package/Charting/Visuals/SciChartOverview.js +5 -3
  301. package/Charting/Visuals/SciChartPieSurface/PieSegment/IPieSegment.d.ts +4 -0
  302. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.d.ts +13 -0
  303. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.js +22 -4
  304. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.d.ts +2 -1
  305. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.js +1 -0
  306. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +5 -0
  307. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +17 -19
  308. package/Charting/Visuals/SciChartSurface.d.ts +225 -7
  309. package/Charting/Visuals/SciChartSurface.js +782 -28
  310. package/Charting/Visuals/SciChartSurfaceBase.d.ts +16 -1
  311. package/Charting/Visuals/SciChartSurfaceBase.js +34 -2
  312. package/Charting/Visuals/TextureManager/CanvasTexture.js +1 -1
  313. package/Charting/Visuals/TextureManager/DpiHelper.js +3 -7
  314. package/Charting/Visuals/TextureManager/TextureManager.d.ts +11 -0
  315. package/Charting/Visuals/TextureManager/TextureManager.js +37 -1
  316. package/Charting/Visuals/createMaster.js +7 -10
  317. package/Charting/Visuals/createSingle.js +2 -0
  318. package/Charting/Visuals/licenseManager2D.js +9 -9
  319. package/Charting/Visuals/sciChartInitCommon.js +16 -12
  320. package/Charting3D/CameraController.d.ts +5 -0
  321. package/Charting3D/CameraController.js +6 -0
  322. package/Charting3D/ChartModifiers/ResetCamera3DModifier.js +2 -1
  323. package/Charting3D/Visuals/Axis/AxisBase3D.js +7 -5
  324. package/Charting3D/Visuals/Axis/NumericAxis3D.js +2 -1
  325. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +4 -0
  326. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +7 -0
  327. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +6 -4
  328. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +7 -2
  329. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +3 -2
  330. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.d.ts +0 -5
  331. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.js +12 -11
  332. package/Charting3D/Visuals/SciChart3DSurface.d.ts +2 -2
  333. package/Charting3D/Visuals/SciChart3DSurface.js +18 -11
  334. package/Charting3D/Visuals/createMaster3d.js +10 -18
  335. package/Charting3D/Visuals/createSingle3d.js +12 -10
  336. package/Core/Animations/GenericAnimation.d.ts +2 -0
  337. package/Core/Animations/GenericAnimation.js +3 -0
  338. package/Core/Animations/NumberRangeAnimator.js +7 -2
  339. package/Core/BuildStamp.d.ts +1 -1
  340. package/Core/BuildStamp.js +2 -2
  341. package/Core/Mouse/MouseManager.d.ts +20 -0
  342. package/Core/Mouse/MouseManager.js +199 -30
  343. package/README.md +91 -403
  344. package/_wasm/scichart.browser.js +1 -1
  345. package/_wasm/scichart2d.data +0 -0
  346. package/_wasm/scichart2d.js +280 -267
  347. package/_wasm/scichart2d.wasm +0 -0
  348. package/_wasm/scichart3d.data +0 -0
  349. package/_wasm/scichart3d.js +280 -268
  350. package/_wasm/scichart3d.wasm +0 -0
  351. package/constants/performanceWarnings.d.ts +2 -0
  352. package/constants/performanceWarnings.js +3 -1
  353. package/package.json +2 -2
  354. package/types/AutoColorMode.d.ts +9 -0
  355. package/types/AutoColorMode.js +13 -0
  356. package/types/BaseType.d.ts +3 -1
  357. package/types/BaseType.js +2 -0
  358. package/types/DataLabelProviderType.d.ts +15 -0
  359. package/types/DataLabelProviderType.js +19 -0
  360. package/types/DataLabelSkipMode.d.ts +21 -0
  361. package/types/DataLabelSkipMode.js +25 -0
  362. package/types/DefaultRenderLayer.d.ts +10 -0
  363. package/types/DefaultRenderLayer.js +14 -0
  364. package/types/SeriesType.d.ts +7 -1
  365. package/types/SeriesType.js +6 -0
  366. package/types/SvgClippingMode.d.ts +17 -0
  367. package/types/SvgClippingMode.js +21 -0
  368. package/types/TDataLabelStyle.d.ts +16 -0
  369. package/types/TDataLabelStyle.js +2 -0
  370. package/types/TSciChart.d.ts +214 -118
  371. package/types/TSciChart3D.d.ts +104 -70
  372. package/types/TextPosition.d.ts +17 -0
  373. package/types/TextPosition.js +39 -0
  374. package/types/ThemeProviderType.d.ts +3 -1
  375. package/types/ThemeProviderType.js +2 -0
  376. package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +10 -1
  377. package/utils/ccall/appendDoubleVectorFromJsArray.js +24 -1
  378. package/utils/memoize.d.ts +1 -0
  379. package/utils/memoize.js +26 -0
  380. package/utils/number.d.ts +1 -0
  381. package/utils/number.js +5 -1
  382. package/utils/parseColor.d.ts +2 -0
  383. package/utils/parseColor.js +3 -3
  384. package/utils/text.d.ts +5 -0
  385. package/utils/text.js +48 -0
  386. package/utils/translate.d.ts +8 -0
  387. package/utils/translate.js +27 -5
  388. package/utils/zeroArray2D.d.ts +5 -0
  389. package/utils/zeroArray2D.js +5 -0
@@ -1,13 +1,22 @@
1
1
  import { ICacheable } from "../../Core/ICacheable";
2
2
  import { Rect } from "../../Core/Rect";
3
- import { ERenderLayer } from "../../types/RenderLayer";
3
+ import { EDefaultRenderLayer } from "../../types/DefaultRenderLayer";
4
4
  import { Size } from "../../types/Size";
5
- import { SCRTBrush, SCRTPen, SCRTRenderContext, TSciChart, VectorColorVertex, VectorRectVertex } from "../../types/TSciChart";
5
+ import { SCRTBrush, SCRTFont, SCRTPen, SCRTRenderContext, TSciChart, VectorColorVertex, VectorRectVertex } from "../../types/TSciChart";
6
+ import { TTextStyle } from "../Visuals/Axis/AxisCore";
6
7
  import { ShaderEffect } from "../Visuals/RenderableSeries/ShaderEffect";
7
8
  import { IBrush2D } from "./IBrush2D";
8
9
  import { IPen2D } from "./IPen2D";
9
10
  import { IRenderContext2D } from "./IRenderContext2D";
10
11
  declare type TDrawFunction = () => void;
12
+ /**
13
+ *
14
+ * @param step specifies the capacity of layers that could be potentially added between the default chart layers
15
+ * @param offset layer z-order offset of the surface
16
+ * @param relativeRenderLayer layer number relative to the specific surface layers
17
+ * @returns absolute order of the layer on the chart (considering parent chart and previous subChart surface layers)
18
+ */
19
+ export declare const calculateAbsoluteRenderLayer: (offset: number, step: number, relativeRenderLayer: EDefaultRenderLayer) => number;
11
20
  /**
12
21
  * Defines enumeration constants for Line Drawing modes
13
22
  */
@@ -36,6 +45,8 @@ export declare class WebGlRenderContext2D implements IRenderContext2D {
36
45
  * Gets the current viewport {@link Size}
37
46
  */
38
47
  readonly viewportSize: Size;
48
+ /** The id of the canvas of the calling surface. Used to allow this to call a redraw */
49
+ readonly canvasId: string;
39
50
  private readonly layers;
40
51
  private readonly webAssemblyContext;
41
52
  private readonly effects;
@@ -45,7 +56,7 @@ export declare class WebGlRenderContext2D implements IRenderContext2D {
45
56
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing native methods and access to our WebGL2 Engine
46
57
  * @param viewportSize The Viewport {@link Size}
47
58
  */
48
- constructor(webAssemblyContext: TSciChart, viewportSize: Size);
59
+ constructor(webAssemblyContext: TSciChart, viewportSize: Size, canvasId: string);
49
60
  /**
50
61
  * Get the native {@link SCRTRenderContext} for direct access to SciChart's WebAssembly Visual Xccelerator engine
51
62
  */
@@ -72,7 +83,7 @@ export declare class WebGlRenderContext2D implements IRenderContext2D {
72
83
  * @param drawFunction the {@link TDrawFunction | Draw Function} to enqueue
73
84
  * @param layer the {@link ERenderLayer | Layer} to draw to
74
85
  */
75
- enqueueLayeredDraw(drawFunction: TDrawFunction, layer?: ERenderLayer): void;
86
+ enqueueLayeredDraw(drawFunction: TDrawFunction, layer?: number): void;
76
87
  /**
77
88
  * Flushes the {@link layers} which have been enqueued with drawing operations in order.
78
89
  * Use this in combination with {@link enqueueLayeredDraw} to draw in layers
@@ -113,5 +124,9 @@ export declare class WebGlRenderContext2D implements IRenderContext2D {
113
124
  */
114
125
  drawRect(rect: Rect, viewRect: Rect, strokePen?: IPen2D, fillBrush?: IBrush2D): void;
115
126
  printBlendMode(): void;
127
+ /** Get a native font. Pass advanced: true if you are planning to rotate the text */
128
+ getFont(labelStyle: TTextStyle, advanced?: boolean, transformed?: boolean): SCRTFont;
129
+ /** End all fonts, causing text to be drawn */
130
+ endFonts(force?: boolean): void;
116
131
  }
117
132
  export {};
@@ -1,14 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WebGlRenderContext2D = exports.ELineDrawMode = void 0;
3
+ exports.WebGlRenderContext2D = exports.ELineDrawMode = exports.calculateAbsoluteRenderLayer = void 0;
4
4
  var app_1 = require("../../constants/app");
5
5
  var Guard_1 = require("../../Core/Guard");
6
- var RenderLayer_1 = require("../../types/RenderLayer");
7
6
  var parseColor_1 = require("../../utils/parseColor");
8
7
  var createNativeRect_1 = require("../Visuals/Helpers/createNativeRect");
9
8
  var NativeObject_1 = require("../Visuals/Helpers/NativeObject");
10
9
  var WebGlBrush_1 = require("./WebGlBrush");
11
10
  var WebGlPen_1 = require("./WebGlPen");
11
+ /**
12
+ *
13
+ * @param step specifies the capacity of layers that could be potentially added between the default chart layers
14
+ * @param offset layer z-order offset of the surface
15
+ * @param relativeRenderLayer layer number relative to the specific surface layers
16
+ * @returns absolute order of the layer on the chart (considering parent chart and previous subChart surface layers)
17
+ */
18
+ var calculateAbsoluteRenderLayer = function (offset, step, relativeRenderLayer) {
19
+ return offset + relativeRenderLayer * step;
20
+ };
21
+ exports.calculateAbsoluteRenderLayer = calculateAbsoluteRenderLayer;
12
22
  /**
13
23
  * Defines enumeration constants for Line Drawing modes
14
24
  */
@@ -34,11 +44,12 @@ var WebGlRenderContext2D = /** @class */ (function () {
34
44
  * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing native methods and access to our WebGL2 Engine
35
45
  * @param viewportSize The Viewport {@link Size}
36
46
  */
37
- function WebGlRenderContext2D(webAssemblyContext, viewportSize) {
38
- this.layers = { first: [], second: [], third: [], fourth: [] };
47
+ function WebGlRenderContext2D(webAssemblyContext, viewportSize, canvasId) {
48
+ this.layers = {};
39
49
  this.effects = [];
40
50
  this.webAssemblyContext = webAssemblyContext;
41
51
  this.viewportSize = viewportSize;
52
+ this.canvasId = canvasId;
42
53
  }
43
54
  /**
44
55
  * Get the native {@link SCRTRenderContext} for direct access to SciChart's WebAssembly Visual Xccelerator engine
@@ -77,15 +88,12 @@ var WebGlRenderContext2D = /** @class */ (function () {
77
88
  WebGlRenderContext2D.prototype.drawRects = function (vertices, brush, left, top) {
78
89
  if (left === void 0) { left = 0; }
79
90
  if (top === void 0) { top = 0; }
80
- var anchorParams = new this.webAssemblyContext.TSRVector4();
81
- anchorParams.x = 0;
82
- anchorParams.y = 0;
91
+ var anchorParams = (0, NativeObject_1.getVector4)(this.webAssemblyContext, 0, 0, 0, 0);
83
92
  var nativeContext = this.getNativeContext();
84
93
  nativeContext.PushMatrix();
85
94
  nativeContext.Translate(left, top);
86
95
  nativeContext.DrawRectsBatchVec(vertices, brush, anchorParams);
87
96
  nativeContext.PopMatrix();
88
- anchorParams.delete();
89
97
  };
90
98
  /**
91
99
  * Enqueues a draw operation to the specified layer. Use in combination with {@link drawLayers} to flush layered draws
@@ -93,29 +101,19 @@ var WebGlRenderContext2D = /** @class */ (function () {
93
101
  * @param layer the {@link ERenderLayer | Layer} to draw to
94
102
  */
95
103
  WebGlRenderContext2D.prototype.enqueueLayeredDraw = function (drawFunction, layer) {
96
- switch (layer) {
97
- case RenderLayer_1.ERenderLayer.First:
98
- this.layers.first.push(drawFunction);
99
- break;
100
- case RenderLayer_1.ERenderLayer.Second:
101
- this.layers.second.push(drawFunction);
102
- break;
103
- case RenderLayer_1.ERenderLayer.Third:
104
- this.layers.third.push(drawFunction);
105
- break;
106
- default:
107
- this.layers.fourth.push(drawFunction);
104
+ if (!this.layers[layer]) {
105
+ this.layers[layer] = [];
108
106
  }
107
+ this.layers[layer].push(drawFunction);
109
108
  };
110
109
  /**
111
110
  * Flushes the {@link layers} which have been enqueued with drawing operations in order.
112
111
  * Use this in combination with {@link enqueueLayeredDraw} to draw in layers
113
112
  */
114
113
  WebGlRenderContext2D.prototype.drawLayers = function () {
115
- this.layers.first.forEach(function (drawFunc) { return drawFunc(); });
116
- this.layers.second.forEach(function (drawFunc) { return drawFunc(); });
117
- this.layers.third.forEach(function (drawFunc) { return drawFunc(); });
118
- this.layers.fourth.forEach(function (drawFunc) { return drawFunc(); });
114
+ Object.values(this.layers).forEach(function (layerDrawFunctions) {
115
+ layerDrawFunctions.forEach(function (drawFunc) { return drawFunc(); });
116
+ });
119
117
  };
120
118
  /**
121
119
  * Applies a {@link ShaderEffect} to the rendering pipeline. Calling {@link WebGL2RenderingContext.popShaderEffect} pops the effect from the stack
@@ -245,23 +243,16 @@ var WebGlRenderContext2D = /** @class */ (function () {
245
243
  var scrtBrush = fillBrush.scrtBrush;
246
244
  Guard_1.Guard.notNull(scrtBrush, "WebGlBrush.scrtBrush");
247
245
  var vertices = (0, NativeObject_1.getVectorRectVertex)(this.webAssemblyContext);
248
- var anchorParams = new this.webAssemblyContext.TSRVector4();
249
- try {
250
- anchorParams.x = 0;
251
- anchorParams.y = 0;
252
- var nativeRect = (0, createNativeRect_1.createNativeRect)(this.webAssemblyContext, rect.x, rect.y, rect.right, rect.bottom);
253
- vertices.push_back(nativeRect);
254
- nativeContext.PushMatrix();
255
- nativeContext.PushState();
256
- nativeContext.Translate(viewRect.x, viewRect.y);
257
- nativeContext.SetClipRect(viewRect.x, viewRect.y, viewRect.width, viewRect.height);
258
- nativeContext.DrawRectsBatchVec(vertices, scrtBrush, anchorParams);
259
- nativeContext.PopMatrix();
260
- nativeContext.PopState();
261
- }
262
- finally {
263
- anchorParams.delete();
264
- }
246
+ var anchorParams = (0, NativeObject_1.getVector4)(this.webAssemblyContext, 0, 0, 0, 0);
247
+ var nativeRect = (0, createNativeRect_1.createNativeRect)(this.webAssemblyContext, rect.x, rect.y, rect.right, rect.bottom);
248
+ vertices.push_back(nativeRect);
249
+ nativeContext.PushMatrix();
250
+ nativeContext.PushState();
251
+ nativeContext.Translate(viewRect.x, viewRect.y);
252
+ nativeContext.SetClipRect(viewRect.x, viewRect.y, viewRect.width, viewRect.height);
253
+ nativeContext.DrawRectsBatchVec(vertices, scrtBrush, anchorParams);
254
+ nativeContext.PopMatrix();
255
+ nativeContext.PopState();
265
256
  }
266
257
  if (strokePen) {
267
258
  this.drawLines([
@@ -300,6 +291,44 @@ var WebGlRenderContext2D = /** @class */ (function () {
300
291
  throw new Error("Unhandled blendmode ");
301
292
  }
302
293
  };
294
+ /** Get a native font. Pass advanced: true if you are planning to rotate the text */
295
+ WebGlRenderContext2D.prototype.getFont = function (labelStyle, advanced, transformed) {
296
+ var _a;
297
+ if (advanced === void 0) { advanced = false; }
298
+ if (transformed === void 0) { transformed = false; }
299
+ var fontKey = (0, NativeObject_1.getFontKey)(this.webAssemblyContext, labelStyle, advanced, transformed);
300
+ var nativeContext = this.getNativeContext();
301
+ var nativeFont = nativeContext.AquireFont(fontKey);
302
+ if (!nativeFont) {
303
+ throw new Error("Could not create font " + fontKey.m_strName);
304
+ }
305
+ else {
306
+ if (!nativeFont.m_isDrawing) {
307
+ nativeFont.Begin();
308
+ }
309
+ }
310
+ var currentFontName = nativeFont.GetFaceName();
311
+ if (currentFontName === "SCRT_Loading") {
312
+ this.webAssemblyContext.TSRRequestCanvasDraw((_a = this.canvasId) !== null && _a !== void 0 ? _a : "undefinedCanvasId");
313
+ }
314
+ else if (currentFontName !== fontKey.m_strName) {
315
+ console.warn("Font ".concat(fontKey.m_strName, ".ttf could not be found on the server. Falling back to Arial"));
316
+ }
317
+ return nativeFont;
318
+ };
319
+ /** End all fonts, causing text to be drawn */
320
+ WebGlRenderContext2D.prototype.endFonts = function (force) {
321
+ if (force === void 0) { force = false; }
322
+ var nativeContext = this.getNativeContext();
323
+ var keys = (0, NativeObject_1.getAllFontKeys)(this.webAssemblyContext);
324
+ for (var _i = 0, keys_1 = keys; _i < keys_1.length; _i++) {
325
+ var fontKey = keys_1[_i];
326
+ var nativeFont = nativeContext.AquireFont(fontKey);
327
+ if (nativeFont && nativeFont.m_isDrawing) {
328
+ nativeFont.End();
329
+ }
330
+ }
331
+ };
303
332
  /**
304
333
  * Should store Stores references to all cached WebGlResources {@link ICacheable}
305
334
  * Is used to invalidate the resources when the WebGL context is lost.
@@ -30,8 +30,9 @@ var BaseCenteredAxisLayoutStrategy = /** @class */ (function (_super) {
30
30
  * param options {@link IInnerAxisLayoutStrategyOptions}
31
31
  */
32
32
  function BaseCenteredAxisLayoutStrategy(options) {
33
+ var _this = this;
33
34
  var _a, _b, _c;
34
- var _this = _super.call(this) || this;
35
+ _this = _super.call(this) || this;
35
36
  _this.orthogonalAxisIdProperty = AxisBase2D_1.AxisBase2D.DEFAULT_AXIS_ID;
36
37
  _this.coordinateModeProperty = EInnerAxisPlacementCoordinateMode_1.EInnerAxisPlacementCoordinateMode.DataValue;
37
38
  _this.orthogonalAxisIdProperty = (_a = options === null || options === void 0 ? void 0 : options.orthogonalAxisId) !== null && _a !== void 0 ? _a : _this.orthogonalAxisIdProperty;
@@ -52,7 +52,7 @@ var BottomAlignedInnerAxisLayoutStrategy = /** @class */ (function (_super) {
52
52
  if (!verticalAxis || verticalAxis.isHorizontalAxis) {
53
53
  throw new Error("orthogonalAxisId should be a valid id of vertical axis on the surface!");
54
54
  }
55
- var coordinateCalculator = verticalAxis.getCurrentCoordinateCalculator(true);
55
+ var coordinateCalculator = verticalAxis.getCurrentCoordinateCalculator();
56
56
  var absoluteAxisPosition = (0, AxisLayoutHelpers_1.getCoordinateWithCoordinateMode)(this.axisPosition, coordinateCalculator, this.coordinateMode);
57
57
  var offset = verticalAxis.viewRect.top;
58
58
  bottomCoord = absoluteAxisPosition + offset;
@@ -31,8 +31,9 @@ var TopAlignedInnerAxisLayoutStrategy_1 = require("./TopAlignedInnerAxisLayoutSt
31
31
  var CentralAxesLayoutManager = /** @class */ (function (_super) {
32
32
  __extends(CentralAxesLayoutManager, _super);
33
33
  function CentralAxesLayoutManager(options) {
34
+ var _this = this;
34
35
  var _a, _b, _c, _d;
35
- var _this = _super.call(this, options) || this;
36
+ _this = _super.call(this, options) || this;
36
37
  _this.type = LayoutMangerType_1.ELayoutManagerType.CentralAxes;
37
38
  _this.horizontalAxisPositionCoordinateModeProperty = EInnerAxisPlacementCoordinateMode_1.EInnerAxisPlacementCoordinateMode.Relative;
38
39
  _this.verticalAxisPositionCoordinateModeProperty = EInnerAxisPlacementCoordinateMode_1.EInnerAxisPlacementCoordinateMode.Relative;
@@ -1,5 +1,6 @@
1
1
  import { TLayoutManagerDefinition } from "../../Builder/buildSurface";
2
2
  import { Rect } from "../../Core/Rect";
3
+ import { Thickness } from "../../Core/Thickness";
3
4
  import { ELayoutManagerType } from "../../types/LayoutMangerType";
4
5
  import { ELayoutStrategyType } from "../../types/LayoutStrategyType";
5
6
  import { Size } from "../../types/Size";
@@ -73,7 +74,7 @@ export declare class LayoutManager {
73
74
  protected chartLayoutState: ChartLayoutState;
74
75
  protected axesGroupedByLayoutStrategy: LayoutStrategyAxes;
75
76
  constructor(options?: ILayoutManagerOptions);
76
- layoutChart(viewportSize: Size): Rect;
77
+ layoutChart(viewportSize: Size, padding?: Thickness): Rect;
77
78
  toJSON(): TLayoutManagerDefinition;
78
79
  protected measureLeftOuterAxes(): void;
79
80
  protected measureRightOuterAxes(): void;
@@ -69,13 +69,14 @@ var LayoutManager = /** @class */ (function () {
69
69
  this.topInnerAxesLayoutStrategy = this.createStrategy(options === null || options === void 0 ? void 0 : options.TopInner, this.topInnerAxesLayoutStrategy);
70
70
  this.bottomInnerAxesLayoutStrategy = this.createStrategy(options === null || options === void 0 ? void 0 : options.BottomInner, this.bottomInnerAxesLayoutStrategy);
71
71
  }
72
- LayoutManager.prototype.layoutChart = function (viewportSize) {
72
+ LayoutManager.prototype.layoutChart = function (viewportSize, padding) {
73
+ var _a, _b, _c, _d;
73
74
  this.groupAxesByLayoutStrategy();
74
75
  // Padding are hardcoded for now
75
- var paddingRight = 0;
76
- var paddingLeft = 0;
77
- var paddingTop = 0;
78
- var paddingBottom = 0;
76
+ var paddingRight = (_a = padding === null || padding === void 0 ? void 0 : padding.right) !== null && _a !== void 0 ? _a : 0;
77
+ var paddingLeft = (_b = padding === null || padding === void 0 ? void 0 : padding.left) !== null && _b !== void 0 ? _b : 0;
78
+ var paddingTop = (_c = padding === null || padding === void 0 ? void 0 : padding.top) !== null && _c !== void 0 ? _c : 0;
79
+ var paddingBottom = (_d = padding === null || padding === void 0 ? void 0 : padding.bottom) !== null && _d !== void 0 ? _d : 0;
79
80
  var availableWidth = viewportSize.width - paddingLeft - paddingRight;
80
81
  var availableHeight = viewportSize.height - paddingTop - paddingBottom;
81
82
  try {
@@ -52,7 +52,7 @@ var LeftAlignedInnerAxisLayoutStrategy = /** @class */ (function (_super) {
52
52
  if (!horizontalAxis || !horizontalAxis.isHorizontalAxis) {
53
53
  throw new Error("orthogonalAxisId should be a valid id of horizontal axis on the surface!");
54
54
  }
55
- var coordinateCalculator = horizontalAxis.getCurrentCoordinateCalculator(true);
55
+ var coordinateCalculator = horizontalAxis.getCurrentCoordinateCalculator();
56
56
  var absoluteAxisPosition = (0, AxisLayoutHelpers_1.getCoordinateWithCoordinateMode)(this.axisPosition, coordinateCalculator, this.coordinateMode);
57
57
  var offset = horizontalAxis.parentSurface.seriesViewRect.left;
58
58
  leftCoord = absoluteAxisPosition + offset;
@@ -52,7 +52,7 @@ var RightAlignedInnerAxisLayoutStrategy = /** @class */ (function (_super) {
52
52
  if (!horizontalAxis || !horizontalAxis.isHorizontalAxis) {
53
53
  throw new Error("orthogonalAxisId should be a valid id of horizontal axis on the surface!");
54
54
  }
55
- var coordinateCalculator = horizontalAxis.getCurrentCoordinateCalculator(true);
55
+ var coordinateCalculator = horizontalAxis.getCurrentCoordinateCalculator();
56
56
  var absoluteAxisPosition = (0, AxisLayoutHelpers_1.getCoordinateWithCoordinateMode)(this.axisPosition, coordinateCalculator, this.coordinateMode);
57
57
  var offset = horizontalAxis.parentSurface.seriesViewRect.left;
58
58
  rightCoord = absoluteAxisPosition + offset;
@@ -52,7 +52,7 @@ var TopAlignedInnerAxisLayoutStrategy = /** @class */ (function (_super) {
52
52
  if (!verticalAxis || verticalAxis.isHorizontalAxis) {
53
53
  throw new Error("orthogonalAxisId should be a valid id of vertical axis on the surface!");
54
54
  }
55
- var coordinateCalculator = verticalAxis.getCurrentCoordinateCalculator(true);
55
+ var coordinateCalculator = verticalAxis.getCurrentCoordinateCalculator();
56
56
  var absoluteAxisPosition = (0, AxisLayoutHelpers_1.getCoordinateWithCoordinateMode)(this.axisPosition, coordinateCalculator, this.coordinateMode);
57
57
  var offset = verticalAxis.viewRect.top;
58
58
  topCoord = absoluteAxisPosition + offset;
@@ -19,12 +19,19 @@ export interface IBaseDataSeriesOptions {
19
19
  */
20
20
  dataSeriesName?: string;
21
21
  /**
22
- * When true, the Data is sorted in X.
22
+ * When true, the Data is sorted in X. Same as isSorted.
23
23
  * @remarks The user must specify this parameter if the data is not sorted in X
24
24
  * in order to have correct rendering. This parameter is used to choose the correct
25
25
  * algorithms for zooming, panning and ranging and ensure best performance.
26
26
  */
27
27
  dataIsSortedInX?: boolean;
28
+ /**
29
+ * When true, the Data is sorted in X. Same as dataIsSortedInX.
30
+ * @remarks The user must specify this parameter if the data is not sorted in X
31
+ * in order to have correct rendering. This parameter is used to choose the correct
32
+ * algorithms for zooming, panning and ranging and ensure best performance.
33
+ */
34
+ isSorted?: boolean;
28
35
  /**
29
36
  * When true, the Data is evenly spaced in X.
30
37
  * @remarks
@@ -209,4 +216,6 @@ export declare abstract class BaseDataSeries implements IDataSeries {
209
216
  private fillMetadataIfUndefined;
210
217
  private getYValues;
211
218
  }
219
+ /** @ignore */
220
+ export declare const getIndicesRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, xRange: NumberRange, isSorted: boolean) => NumberRange;
212
221
  export declare const getWindowedYRange: (webAssemblyContext: TSciChart, xValues: SCRTDoubleVector, yValues: SCRTDoubleVector, xRange: NumberRange, getPositiveRange: boolean, isXCategoryAxis: boolean, isSorted: boolean) => NumberRange;
@@ -20,7 +20,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
20
20
  return to.concat(ar || Array.prototype.slice.call(from));
21
21
  };
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
- exports.getWindowedYRange = exports.BaseDataSeries = void 0;
23
+ exports.getWindowedYRange = exports.getIndicesRange = exports.BaseDataSeries = void 0;
24
24
  var classFactory_1 = require("../../Builder/classFactory");
25
25
  var Deleter_1 = require("../../Core/Deleter");
26
26
  var EventHandler_1 = require("../../Core/EventHandler");
@@ -51,7 +51,7 @@ var BaseDataSeries = /** @class */ (function () {
51
51
  * @param options the {@link IBaseDataSeriesOptions} which can be passed to config the DataSeries at construct time
52
52
  */
53
53
  function BaseDataSeries(webAssemblyContext, options) {
54
- var _a, _b, _c, _d, _e;
54
+ var _a, _b, _c, _d, _e, _f, _g;
55
55
  /** @inheritDoc */
56
56
  this.dataChanged = new EventHandler_1.EventHandler();
57
57
  /** @inheritDoc */
@@ -72,13 +72,13 @@ var BaseDataSeries = /** @class */ (function () {
72
72
  this.xFinalAnimationValues = new webAssemblyContext.SCRTDoubleVector();
73
73
  this.yFinalAnimationValues = new webAssemblyContext.SCRTDoubleVector();
74
74
  this.dataSeriesNameProperty = (_b = options === null || options === void 0 ? void 0 : options.dataSeriesName) !== null && _b !== void 0 ? _b : this.dataSeriesNameProperty;
75
- this.isSorted = (options === null || options === void 0 ? void 0 : options.dataIsSortedInX) !== undefined ? options === null || options === void 0 ? void 0 : options.dataIsSortedInX : this.isSortedProperty;
76
- this.containsNaN = (_c = options === null || options === void 0 ? void 0 : options.containsNaN) !== null && _c !== void 0 ? _c : this.containsNaNProperty;
77
- this.isEvenlySpaced = (_d = options === null || options === void 0 ? void 0 : options.dataEvenlySpacedInX) !== null && _d !== void 0 ? _d : this.isEvenlySpacedProperty;
75
+ this.isSorted = (_d = (_c = options === null || options === void 0 ? void 0 : options.dataIsSortedInX) !== null && _c !== void 0 ? _c : options === null || options === void 0 ? void 0 : options.isSorted) !== null && _d !== void 0 ? _d : this.isSortedProperty;
76
+ this.containsNaN = (_e = options === null || options === void 0 ? void 0 : options.containsNaN) !== null && _e !== void 0 ? _e : this.containsNaNProperty;
77
+ this.isEvenlySpaced = (_f = options === null || options === void 0 ? void 0 : options.dataEvenlySpacedInX) !== null && _f !== void 0 ? _f : this.isEvenlySpacedProperty;
78
78
  if (options === null || options === void 0 ? void 0 : options.metadata) {
79
79
  if ("type" in options.metadata) {
80
80
  this.metadataGeneratorProperty = (0, classFactory_1.createType)(BaseType_1.EBaseType.MetadataGenerator, options.metadata.type, webAssemblyContext, options.metadata.data);
81
- options.metadata = (_e = this.metadataGeneratorProperty) === null || _e === void 0 ? void 0 : _e.getMetadata();
81
+ options.metadata = (_g = this.metadataGeneratorProperty) === null || _g === void 0 ? void 0 : _g.getMetadata();
82
82
  }
83
83
  else if (!Array.isArray(options === null || options === void 0 ? void 0 : options.metadata)) {
84
84
  this.metadataGeneratorProperty = new IPointMetadata_1.TemplateMetadataGenerator(options === null || options === void 0 ? void 0 : options.metadata);
@@ -260,7 +260,7 @@ var BaseDataSeries = /** @class */ (function () {
260
260
  if (upSearchMode === void 0) { upSearchMode = SearchMode_1.ESearchMode.RoundUp; }
261
261
  // TODO SearchMode downSearchMode = SearchMode.RoundDown, SearchMode upSearchMode = SearchMode.RoundUp
262
262
  var vector = isCategoryData ? this.getNativeIndexes() : this.xValues;
263
- return getIndicesRange(this.webAssemblyContext, vector, xRange, this.dataDistributionCalculator.isSortedAscending);
263
+ return (0, exports.getIndicesRange)(this.webAssemblyContext, vector, xRange, this.dataDistributionCalculator.isSortedAscending);
264
264
  };
265
265
  Object.defineProperty(BaseDataSeries.prototype, "hasValues", {
266
266
  /** @inheritDoc */
@@ -519,6 +519,7 @@ var getIndicesRange = function (webAssemblyContext, xValues, xRange, isSorted) {
519
519
  }
520
520
  return result;
521
521
  };
522
+ exports.getIndicesRange = getIndicesRange;
522
523
  var getWindowedYRange = function (webAssemblyContext, xValues, yValues, xRange, getPositiveRange, isXCategoryAxis, // false
523
524
  isSorted) {
524
525
  // TODO: getPositiveRange
@@ -529,7 +530,7 @@ isSorted) {
529
530
  var max = yValues.get(0) + 1;
530
531
  return new NumberRange_1.NumberRange(min, max);
531
532
  }
532
- var indicesRange = isXCategoryAxis ? xRange : getIndicesRange(webAssemblyContext, xValues, xRange, isSorted);
533
+ var indicesRange = isXCategoryAxis ? xRange : (0, exports.getIndicesRange)(webAssemblyContext, xValues, xRange, isSorted);
533
534
  var iMin = Math.max(Math.floor(indicesRange.min), 0);
534
535
  var iMax = Math.min(Math.ceil(indicesRange.max), count - 1);
535
536
  if (iMax < iMin) {
@@ -1,8 +1,7 @@
1
- import { TSeriesDataDefinition } from "../../Builder/buildDataSeries";
2
1
  import { EventHandler } from "../../Core/EventHandler";
3
2
  import { NumberRange } from "../../Core/NumberRange";
4
3
  import { ESearchMode } from "../../types/SearchMode";
5
- import { FloatVector, SCRTDoubleVector, TSciChart } from "../../types/TSciChart";
4
+ import { SCRTDoubleVector, SCRTFloatVector, TSciChart } from "../../types/TSciChart";
6
5
  import { IColorMapParams } from "../Visuals/RenderableSeries/HeatmapColorMap";
7
6
  import { IDataDistributionCalculator } from "./DataDistributionCalculator/IDataDistributionCalculator";
8
7
  import { EDataChangeType, EDataSeriesType, IDataChangeArgs, IDataSeries } from "./IDataSeries";
@@ -33,6 +32,10 @@ export interface IBaseHeatmapSeriesOptions {
33
32
  type: string;
34
33
  data?: any;
35
34
  };
35
+ /**
36
+ * The flag whether this Heatmap has NaN value, to display them as transparent tiles
37
+ */
38
+ containsNaN?: boolean;
36
39
  }
37
40
  /**
38
41
  * Defines the interface to a Heatmap DataSeries in SciChart's High Performance Real-time
@@ -83,7 +86,7 @@ export declare abstract class BaseHeatmapDataSeries implements IHeatmapSeries {
83
86
  * A normalized {@link FloatVector} is a native / WebAssembly vector (array) of Float32 values with normalized
84
87
  * values ready for drawing in SciChart's WebGL2 Rendering Engine
85
88
  */
86
- protected normalizedVector: FloatVector;
89
+ protected normalizedVector: SCRTFloatVector;
87
90
  private dataSeriesNameProperty;
88
91
  private isDeleted;
89
92
  private zValuesProperty;
@@ -243,6 +246,16 @@ export declare abstract class BaseHeatmapDataSeries implements IHeatmapSeries {
243
246
  * @inheritDoc
244
247
  */
245
248
  getWindowedYRange(xRange: NumberRange, getPositiveRange: boolean, isCategoryAxis: boolean): NumberRange;
249
+ /**
250
+ * Gets the X-value at the specified index.
251
+ * @param xIndex
252
+ */
253
+ abstract getXValue(xIndex: number): number;
254
+ /**
255
+ * Gets the Y-value at the specified index.
256
+ * @param xIndex
257
+ */
258
+ abstract getYValue(yIndex: number): number;
246
259
  /**
247
260
  * Notify subscribers to dataChanged that data has changed. Also sets internal flags.
248
261
  * This will trigger a redraw on a parent SciChartSurface
@@ -253,7 +266,7 @@ export declare abstract class BaseHeatmapDataSeries implements IHeatmapSeries {
253
266
  * @param colorMap the {@link IColorMapParams} provides properties used to map heatmap Z-values into colors
254
267
  * for rendering in SciChart's {@link https://www.scichart.com/javascript-chart-features | Realtime JavaScript Charts}
255
268
  */
256
- getNormalizedVector(colorMap: IColorMapParams, fillValuesOutOfRange?: boolean): FloatVector;
269
+ getNormalizedVector(colorMap: IColorMapParams, fillValuesOutOfRange?: boolean): SCRTFloatVector;
257
270
  /**
258
271
  * Recreates the normalized vector (internally used for drawing heatmap) according to zMin and zMax values
259
272
  * @param zMin
@@ -274,7 +287,7 @@ export declare abstract class BaseHeatmapDataSeries implements IHeatmapSeries {
274
287
  * Gets the metadata matrix width
275
288
  */
276
289
  getMetadataWidth(): number;
277
- toJSON(excludeData?: boolean): TSeriesDataDefinition;
290
+ toJSON(excludeData?: boolean): any;
278
291
  /**
279
292
  * Gets the range in the X-direction for this DataSeries
280
293
  */
@@ -7,6 +7,7 @@ var EventHandler_1 = require("../../Core/EventHandler");
7
7
  var Guard_1 = require("../../Core/Guard");
8
8
  var NumberRange_1 = require("../../Core/NumberRange");
9
9
  var BaseType_1 = require("../../types/BaseType");
10
+ var appendDoubleVectorFromJsArray_1 = require("../../utils/ccall/appendDoubleVectorFromJsArray");
10
11
  var guid_1 = require("../../utils/guid");
11
12
  var isRealNumber_1 = require("../../utils/isRealNumber");
12
13
  var IDataSeries_1 = require("./IDataSeries");
@@ -29,7 +30,7 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
29
30
  * @param options the {@link IBaseHeatmapSeriesOptions} which can be passed to configure the DataSeries at construct time
30
31
  */
31
32
  function BaseHeatmapDataSeries(webAssemblyContext, options) {
32
- var _a, _b;
33
+ var _a, _b, _c, _d;
33
34
  /** @inheritDoc */
34
35
  this.dataChanged = new EventHandler_1.EventHandler();
35
36
  /** @inheritDoc */
@@ -54,11 +55,13 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
54
55
  this.changeCountProperty = 0;
55
56
  this.webAssemblyContext = webAssemblyContext;
56
57
  this.id = (_a = options === null || options === void 0 ? void 0 : options.id) !== null && _a !== void 0 ? _a : (0, guid_1.generateGuid)();
57
- this.normalizedVector = new this.webAssemblyContext.FloatVector();
58
+ this.dataSeriesNameProperty = (_b = options === null || options === void 0 ? void 0 : options.dataSeriesName) !== null && _b !== void 0 ? _b : this.dataSeriesNameProperty;
59
+ this.hasNaNsProperty = (_c = options === null || options === void 0 ? void 0 : options.containsNaN) !== null && _c !== void 0 ? _c : this.hasNaNsProperty;
60
+ this.normalizedVector = new this.webAssemblyContext.SCRTFloatVector();
58
61
  if (options === null || options === void 0 ? void 0 : options.metadata) {
59
62
  if ("type" in options.metadata) {
60
63
  this.metadataGeneratorProperty = (0, classFactory_1.createType)(BaseType_1.EBaseType.MetadataGenerator, options.metadata.type, webAssemblyContext, options.metadata.data);
61
- options.metadata = (_b = this.metadataGeneratorProperty) === null || _b === void 0 ? void 0 : _b.getMetadata();
64
+ options.metadata = (_d = this.metadataGeneratorProperty) === null || _d === void 0 ? void 0 : _d.getMetadata();
62
65
  }
63
66
  else if (!Array.isArray(options === null || options === void 0 ? void 0 : options.metadata)) {
64
67
  this.metadataGeneratorProperty = new IPointMetadata_1.TemplateMetadataGenerator(options === null || options === void 0 ? void 0 : options.metadata);
@@ -428,7 +431,7 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
428
431
  BaseHeatmapDataSeries.prototype.recreateNormalizedVector = function (zMin, zMax, fillValuesOutOfRange) {
429
432
  var size = this.arrayWidth * this.arrayHeight;
430
433
  this.normalizedVector.clear();
431
- this.normalizedVector.resize(size, 0);
434
+ this.normalizedVector.resizeFast(size);
432
435
  // We need to offset newMinValue which is being used for NaN values
433
436
  // for the double distance of the texture, which is 256
434
437
  var newZMin = this.hasNaNs ? zMin - (zMax - zMin) / 128 : zMin;
@@ -437,11 +440,15 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
437
440
  }
438
441
  var index = 0;
439
442
  var normalizationFactor = 1.0 / (zMax - newZMin);
443
+ var rowArray = new Float32Array(this.arrayWidth);
440
444
  for (var y = 0; y < this.arrayHeight; y++) {
441
445
  for (var x = 0; x < this.arrayWidth; x++) {
442
446
  // normalized value from 0..1 = (zValue - zMin) / ((zMax - zMin))
443
- var zValue = this.zValuesProperty[y][x] - newZMin;
444
- if (isNaN(this.zValuesProperty[y][x])) {
447
+ var zValueRaw = this.zValuesProperty[y][x];
448
+ var zValue = zValueRaw - newZMin;
449
+ // if value !== value is a simple but fast isNaN check
450
+ // equivalent to isNaN(zValueRaw)
451
+ if (zValueRaw !== zValueRaw) {
445
452
  zValue = 0;
446
453
  }
447
454
  else if (zValue < zMin - newZMin) {
@@ -451,8 +458,10 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
451
458
  zValue = fillValuesOutOfRange ? zMax - newZMin : 0;
452
459
  }
453
460
  var normalizedZValue = zValue * normalizationFactor;
454
- this.normalizedVector.set(index++, normalizedZValue);
461
+ rowArray[x] = normalizedZValue;
455
462
  }
463
+ (0, appendDoubleVectorFromJsArray_1.memCopyFloat32)(this.webAssemblyContext, rowArray, this.normalizedVector, index);
464
+ index += this.arrayWidth;
456
465
  }
457
466
  };
458
467
  /**
@@ -488,14 +497,13 @@ var BaseHeatmapDataSeries = /** @class */ (function () {
488
497
  BaseHeatmapDataSeries.prototype.toJSON = function (excludeData) {
489
498
  if (excludeData === void 0) { excludeData = false; }
490
499
  var options = {
500
+ id: this.id,
501
+ containsNaN: this.hasNaNs,
491
502
  dataSeriesName: this.dataSeriesName,
492
- // @ts-ignore
493
- metadata: this.metadataGeneratorProperty ? this.metadataGeneratorProperty.toJSON() : this.metadataProperty,
494
503
  zValues: excludeData ? undefined : this.zValuesProperty,
495
- xStart: null,
496
- xStep: null,
497
- yStart: null,
498
- yStep: null
504
+ metadata: this.metadataGeneratorProperty
505
+ ? this.metadataGeneratorProperty.toJSON()
506
+ : this.metadataProperty
499
507
  };
500
508
  return options;
501
509
  };
@@ -1,3 +1,4 @@
1
+ import { Point } from "../../../Core/Point";
1
2
  import { HitTestInfo } from "../../Visuals/RenderableSeries/HitTest/HitTestInfo";
2
3
  import { IRenderableSeries } from "../../Visuals/RenderableSeries/IRenderableSeries";
3
4
  import { EDataSeriesType } from "../IDataSeries";
@@ -7,10 +8,15 @@ export declare class SeriesInfo {
7
8
  dataSeriesType: EDataSeriesType;
8
9
  stroke: string;
9
10
  seriesName: string;
11
+ hitTestPointValues: Point;
10
12
  xValue: number;
13
+ point2xValue: number;
11
14
  yValue: number;
15
+ point2yValue: number;
12
16
  xCoordinate: number;
13
17
  yCoordinate: number;
18
+ point2xCoordinate: number;
19
+ point2yCoordinate: number;
14
20
  isHit: boolean;
15
21
  dataSeriesIndex: number;
16
22
  /**
@@ -12,10 +12,15 @@ var SeriesInfo = /** @class */ (function () {
12
12
  this.dataSeriesIndex = hitTestInfo.dataSeriesIndex;
13
13
  this.isHit = hitTestInfo.isHit;
14
14
  this.isWithinDataBounds = hitTestInfo.isWithinDataBounds;
15
+ this.hitTestPointValues = hitTestInfo.hitTestPointValues;
15
16
  this.xValue = hitTestInfo.isCategoryAxis ? hitTestInfo.xCategoryValue : hitTestInfo.xValue;
17
+ this.point2xValue = hitTestInfo.point2xValue;
16
18
  this.yValue = hitTestInfo.yValue;
19
+ this.point2yValue = hitTestInfo.point2yValue;
17
20
  this.xCoordinate = hitTestInfo.xCoord;
18
21
  this.yCoordinate = hitTestInfo.yCoord;
22
+ this.point2xCoordinate = hitTestInfo.point2xCoord;
23
+ this.point2yCoordinate = hitTestInfo.point2yCoord;
19
24
  this.pointMetadata = hitTestInfo.metadata;
20
25
  if (renderableSeries.type === SeriesType_1.ESeriesType.ColumnSeries) {
21
26
  this.fill = renderableSeries.fill;
@@ -5,6 +5,8 @@ export declare class XyySeriesInfo extends SeriesInfo {
5
5
  y1Value: number;
6
6
  y1Coordinate: number;
7
7
  isFirstSeries: boolean;
8
+ point2y1Value: number;
9
+ point2y1Coordinate: number;
8
10
  constructor(renderableSeries: IRenderableSeries, hitTestInfo: HitTestInfo);
9
11
  get formattedY1Value(): string;
10
12
  }