scichart 3.1.346 → 3.2.0-beta

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 (316) hide show
  1. package/Charting/ChartModifiers/ChartModifierBase.d.ts +15 -1
  2. package/Charting/ChartModifiers/ChartModifierBase.js +65 -7
  3. package/Charting/ChartModifiers/CursorModifier.js +13 -1
  4. package/Charting/ChartModifiers/LegendModifier.d.ts +1 -1
  5. package/Charting/ChartModifiers/LegendModifier.js +8 -6
  6. package/Charting/ChartModifiers/PinchZoomModifier.d.ts +38 -8
  7. package/Charting/ChartModifiers/PinchZoomModifier.js +103 -40
  8. package/Charting/ChartModifiers/RolloverModifier.js +10 -3
  9. package/Charting/ChartModifiers/RubberBandXyZoomModifier.d.ts +1 -1
  10. package/Charting/ChartModifiers/SeriesSelectionModifier.js +32 -24
  11. package/Charting/ChartModifiers/ZoomPanModifier.d.ts +13 -38
  12. package/Charting/ChartModifiers/ZoomPanModifier.js +54 -99
  13. package/Charting/Drawing/BaseCache.d.ts +2 -1
  14. package/Charting/Drawing/BaseCache.js +40 -7
  15. package/Charting/Drawing/RenderSurface.d.ts +1 -0
  16. package/Charting/Drawing/RenderSurface.js +5 -1
  17. package/Charting/Drawing/SolidBrushCache.d.ts +2 -1
  18. package/Charting/Drawing/SolidBrushCache.js +23 -3
  19. package/Charting/Drawing/WebGlBrush.d.ts +2 -1
  20. package/Charting/Drawing/WebGlBrush.js +22 -3
  21. package/Charting/Drawing/WebGlPen.d.ts +2 -1
  22. package/Charting/Drawing/WebGlPen.js +23 -4
  23. package/Charting/Drawing/WebGlRenderContext2D.d.ts +4 -3
  24. package/Charting/Drawing/WebGlRenderContext2D.js +26 -7
  25. package/Charting/Model/BaseDataSeries.d.ts +67 -2
  26. package/Charting/Model/BaseDataSeries.js +193 -42
  27. package/Charting/Model/BaseHeatmapDataSeries.js +1 -1
  28. package/Charting/Model/ChartData/SeriesInfo.d.ts +16 -0
  29. package/Charting/Model/ChartData/SeriesInfo.js +7 -0
  30. package/Charting/Model/ChartData/XyzSeriesInfo.d.ts +8 -0
  31. package/Charting/Model/ChartData/XyzSeriesInfo.js +36 -0
  32. package/Charting/Model/DoubleVectorProvider.d.ts +19 -0
  33. package/Charting/Model/DoubleVectorProvider.js +95 -0
  34. package/Charting/Model/HlcDataSeries.d.ts +3 -0
  35. package/Charting/Model/HlcDataSeries.js +44 -15
  36. package/Charting/Model/IDataSeries.d.ts +23 -0
  37. package/Charting/Model/NonUniformHeatmapDataSeries.js +2 -0
  38. package/Charting/Model/OhlcDataSeries.d.ts +3 -0
  39. package/Charting/Model/OhlcDataSeries.js +56 -24
  40. package/Charting/Model/PointSeries/BasePointSeriesResampled.d.ts +4 -5
  41. package/Charting/Model/PointSeries/BasePointSeriesResampled.js +29 -21
  42. package/Charting/Model/PointSeries/BasePointSeriesWrapped.d.ts +2 -0
  43. package/Charting/Model/PointSeries/BasePointSeriesWrapped.js +2 -0
  44. package/Charting/Model/PointSeries/IPointSeries.d.ts +2 -1
  45. package/Charting/Model/PointSeries/OhlcPointSeriesResampled.js +1 -1
  46. package/Charting/Model/PointSeries/XyPointSeriesWrapped.d.ts +2 -1
  47. package/Charting/Model/PointSeries/XyPointSeriesWrapped.js +2 -2
  48. package/Charting/Model/PointSeries/XyyPointSeriesResampled.js +1 -1
  49. package/Charting/Model/UniformHeatmapDataSeries.d.ts +31 -11
  50. package/Charting/Model/UniformHeatmapDataSeries.js +72 -4
  51. package/Charting/Model/XyDataSeries.d.ts +0 -8
  52. package/Charting/Model/XyDataSeries.js +21 -5
  53. package/Charting/Model/XyTextDataSeries.d.ts +2 -0
  54. package/Charting/Model/XyTextDataSeries.js +35 -4
  55. package/Charting/Model/XyyDataSeries.d.ts +2 -0
  56. package/Charting/Model/XyyDataSeries.js +35 -10
  57. package/Charting/Model/XyzDataSeries.d.ts +3 -0
  58. package/Charting/Model/XyzDataSeries.js +36 -10
  59. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.d.ts +3 -5
  60. package/Charting/Numerics/CoordinateCalculators/CategoryCoordinateCalculator.js +5 -7
  61. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.d.ts +2 -1
  62. package/Charting/Numerics/CoordinateCalculators/CoordinateCalculatorBase.js +29 -9
  63. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.d.ts +3 -5
  64. package/Charting/Numerics/CoordinateCalculators/FlippedCategoryCoordinateCalculator.js +5 -7
  65. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.d.ts +14 -10
  66. package/Charting/Numerics/Resamplers/ExtremeResamplerHelper.js +105 -69
  67. package/Charting/Numerics/Resamplers/ResamplingParams.d.ts +4 -2
  68. package/Charting/Numerics/Resamplers/ResamplingParams.js +12 -7
  69. package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.d.ts +5 -0
  70. package/Charting/Numerics/TickCoordinateProviders/TickCoordinatesProvider.js +7 -0
  71. package/Charting/Numerics/TickProviders/NumericTickProvider.js +3 -4
  72. package/Charting/Numerics/TickProviders/TickProvider.d.ts +5 -0
  73. package/Charting/Numerics/TickProviders/TickProvider.js +7 -0
  74. package/Charting/Services/SciChartRenderer.js +15 -5
  75. package/Charting/Services/TitleRenderer.d.ts +2 -1
  76. package/Charting/Services/TitleRenderer.js +35 -14
  77. package/Charting/Visuals/Annotations/AdornerLayer.d.ts +1 -1
  78. package/Charting/Visuals/Annotations/AnnotationBase.d.ts +6 -6
  79. package/Charting/Visuals/Annotations/AnnotationBase.js +81 -61
  80. package/Charting/Visuals/Annotations/CursorTooltipSvgAnnotation.js +8 -0
  81. package/Charting/Visuals/Annotations/IAnnotation.d.ts +9 -4
  82. package/Charting/Visuals/Annotations/IAnnotation.js +6 -0
  83. package/Charting/Visuals/Annotations/LineAnnotation.js +3 -1
  84. package/Charting/Visuals/Annotations/RenderContextAnnotationBase.d.ts +5 -0
  85. package/Charting/Visuals/Annotations/RenderContextAnnotationBase.js +16 -0
  86. package/Charting/Visuals/Annotations/RolloverTooltipSvgAnnotation.js +6 -0
  87. package/Charting/Visuals/Annotations/constants.d.ts +1 -0
  88. package/Charting/Visuals/Annotations/constants.js +1 -0
  89. package/Charting/Visuals/Axis/AxisBase2D.d.ts +20 -5
  90. package/Charting/Visuals/Axis/AxisBase2D.js +46 -10
  91. package/Charting/Visuals/Axis/AxisCore.d.ts +4 -1
  92. package/Charting/Visuals/Axis/AxisCore.js +100 -54
  93. package/Charting/Visuals/Axis/AxisRenderer.d.ts +2 -1
  94. package/Charting/Visuals/Axis/AxisRenderer.js +40 -16
  95. package/Charting/Visuals/Axis/AxisTitleRenderer.d.ts +1 -0
  96. package/Charting/Visuals/Axis/AxisTitleRenderer.js +4 -0
  97. package/Charting/Visuals/Axis/CategoryAxisBase.js +4 -4
  98. package/Charting/Visuals/Axis/DeltaCalculator/DateTimeDeltaCalculator.js +14 -9
  99. package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.d.ts +5 -0
  100. package/Charting/Visuals/Axis/DeltaCalculator/DeltaCalculator.js +7 -0
  101. package/Charting/Visuals/Axis/LabelProvider/LabelCache.d.ts +2 -2
  102. package/Charting/Visuals/Axis/LabelProvider/LabelCache.js +8 -1
  103. package/Charting/Visuals/Axis/LabelProvider/LabelProvider.d.ts +7 -1
  104. package/Charting/Visuals/Axis/LabelProvider/LabelProvider.js +34 -8
  105. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.d.ts +4 -2
  106. package/Charting/Visuals/Axis/LabelProvider/LabelProviderBase2D.js +8 -2
  107. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.d.ts +1 -0
  108. package/Charting/Visuals/Axis/LabelProvider/PieLabelProvider.js +1 -0
  109. package/Charting/Visuals/HeatmapLegend.d.ts +3 -2
  110. package/Charting/Visuals/HeatmapLegend.js +33 -12
  111. package/Charting/Visuals/Helpers/NativeObject.d.ts +8 -5
  112. package/Charting/Visuals/Helpers/NativeObject.js +42 -21
  113. package/Charting/Visuals/Helpers/drawLabel.js +3 -1
  114. package/Charting/Visuals/I2DSurfaceOptions.d.ts +0 -15
  115. package/Charting/Visuals/Legend/SciChartLegendBase.d.ts +3 -1
  116. package/Charting/Visuals/Legend/SciChartLegendBase.js +35 -14
  117. package/Charting/Visuals/Legend/SciChartPieLegend.js +1 -1
  118. package/Charting/Visuals/PointMarkers/BasePointMarker.d.ts +13 -1
  119. package/Charting/Visuals/PointMarkers/BasePointMarker.js +72 -19
  120. package/Charting/Visuals/PointMarkers/Constants.d.ts +2 -1
  121. package/Charting/Visuals/PointMarkers/Constants.js +1 -0
  122. package/Charting/Visuals/PointMarkers/IPointMarker.d.ts +2 -0
  123. package/Charting/Visuals/RenderableSeries/Animations/SeriesAnimation.js +4 -1
  124. package/Charting/Visuals/RenderableSeries/Animations/animationHelpers.d.ts +1 -1
  125. package/Charting/Visuals/RenderableSeries/BaseBandRenderableSeries.js +8 -7
  126. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.d.ts +1 -0
  127. package/Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries.js +5 -0
  128. package/Charting/Visuals/RenderableSeries/BaseOhlcRenderableSeries.js +10 -9
  129. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.d.ts +2 -1
  130. package/Charting/Visuals/RenderableSeries/BaseRenderableSeries.js +101 -69
  131. package/Charting/Visuals/RenderableSeries/BaseStackedCollection.js +13 -4
  132. package/Charting/Visuals/RenderableSeries/BaseStackedRenderableSeries.js +12 -3
  133. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.d.ts +2 -0
  134. package/Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider.js +5 -0
  135. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider.js +6 -0
  136. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.d.ts +1 -0
  137. package/Charting/Visuals/RenderableSeries/DataLabels/DataLabelState.js +18 -5
  138. package/Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider.js +0 -1
  139. package/Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider.js +8 -2
  140. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.d.ts +1 -0
  141. package/Charting/Visuals/RenderableSeries/DrawingProviders/BandSeriesDrawingProvider.js +35 -16
  142. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.d.ts +2 -1
  143. package/Charting/Visuals/RenderableSeries/DrawingProviders/BaseSeriesDrawingProvider.js +62 -33
  144. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.d.ts +1 -0
  145. package/Charting/Visuals/RenderableSeries/DrawingProviders/BubbleSeriesDrawingProvider.js +30 -9
  146. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.d.ts +1 -0
  147. package/Charting/Visuals/RenderableSeries/DrawingProviders/ColumnSeriesDrawingProvider.js +37 -16
  148. package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.d.ts +47 -0
  149. package/Charting/Visuals/RenderableSeries/DrawingProviders/HeatmapHelpers.js +258 -0
  150. package/Charting/Visuals/RenderableSeries/DrawingProviders/LineSeriesDrawingProvider.js +26 -2
  151. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.d.ts +1 -0
  152. package/Charting/Visuals/RenderableSeries/DrawingProviders/MountainSeriesDrawingProvider.js +34 -15
  153. package/Charting/Visuals/RenderableSeries/DrawingProviders/NonUniformHeatmapDrawingProvider.js +5 -230
  154. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.d.ts +1 -0
  155. package/Charting/Visuals/RenderableSeries/DrawingProviders/OhlcSeriesDrawingProvider.js +62 -37
  156. package/Charting/Visuals/RenderableSeries/DrawingProviders/PointMarkerDrawingProvider.js +30 -3
  157. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.d.ts +1 -0
  158. package/Charting/Visuals/RenderableSeries/DrawingProviders/UniformHeatmapDrawingProvider.js +4 -1
  159. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.d.ts +0 -2
  160. package/Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries.js +0 -4
  161. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.d.ts +3 -0
  162. package/Charting/Visuals/RenderableSeries/FastTextRenderableSeries.js +10 -0
  163. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.d.ts +4 -0
  164. package/Charting/Visuals/RenderableSeries/HitTest/BubbleSeriesHitTestProvider.js +7 -0
  165. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.d.ts +4 -0
  166. package/Charting/Visuals/RenderableSeries/HitTest/HitTestInfo.js +9 -0
  167. package/Charting/Visuals/RenderableSeries/ShaderEffect.d.ts +3 -2
  168. package/Charting/Visuals/RenderableSeries/ShaderEffect.js +29 -9
  169. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +7 -0
  170. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +7 -0
  171. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +7 -0
  172. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +3 -0
  173. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.d.ts +0 -2
  174. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -4
  175. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +1 -0
  176. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +8 -0
  177. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +1 -2
  178. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +8 -3
  179. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.d.ts +3 -1
  180. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +30 -10
  181. package/Charting/Visuals/SciChartDefaults.d.ts +10 -0
  182. package/Charting/Visuals/SciChartDefaults.js +10 -0
  183. package/Charting/Visuals/SciChartOverview.d.ts +2 -1
  184. package/Charting/Visuals/SciChartOverview.js +28 -8
  185. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +10 -3
  186. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +118 -60
  187. package/Charting/Visuals/SciChartSurface.d.ts +4 -36
  188. package/Charting/Visuals/SciChartSurface.js +48 -61
  189. package/Charting/Visuals/SciChartSurfaceBase.d.ts +99 -13
  190. package/Charting/Visuals/SciChartSurfaceBase.js +155 -32
  191. package/Charting/Visuals/TextureManager/CanvasTexture.d.ts +2 -1
  192. package/Charting/Visuals/TextureManager/CanvasTexture.js +37 -17
  193. package/Charting/Visuals/TextureManager/TextureManager.d.ts +2 -1
  194. package/Charting/Visuals/TextureManager/TextureManager.js +27 -7
  195. package/Charting/Visuals/createMaster.d.ts +4 -2
  196. package/Charting/Visuals/createMaster.js +92 -28
  197. package/Charting/Visuals/createSingle.d.ts +0 -2
  198. package/Charting/Visuals/createSingle.js +44 -9
  199. package/Charting/Visuals/licenseManager2D.d.ts +7 -5
  200. package/Charting/Visuals/licenseManager2D.js +105 -53
  201. package/Charting/Visuals/loader.js +3 -1
  202. package/Charting/Visuals/sciChartInitCommon.d.ts +1 -1
  203. package/Charting/Visuals/sciChartInitCommon.js +5 -1
  204. package/Charting3D/CameraController.d.ts +1 -1
  205. package/Charting3D/CameraController.js +21 -7
  206. package/Charting3D/ChartModifiers/ChartModifierBase3D.d.ts +1 -0
  207. package/Charting3D/ChartModifiers/ChartModifierBase3D.js +4 -1
  208. package/Charting3D/ChartModifiers/OrbitModifier3D.d.ts +17 -5
  209. package/Charting3D/ChartModifiers/OrbitModifier3D.js +62 -26
  210. package/Charting3D/ChartModifiers/PinchZoomModifier3D.d.ts +81 -0
  211. package/Charting3D/ChartModifiers/PinchZoomModifier3D.js +164 -0
  212. package/Charting3D/ChartModifiers/TooltipModifier3D.d.ts +87 -0
  213. package/Charting3D/ChartModifiers/TooltipModifier3D.js +391 -0
  214. package/Charting3D/I3DSurfaceOptions.d.ts +10 -0
  215. package/Charting3D/I3DSurfaceOptions.js +2 -0
  216. package/Charting3D/Model/DataSeries/BaseDataSeries3D.d.ts +2 -1
  217. package/Charting3D/Model/DataSeries/BaseDataSeries3D.js +27 -6
  218. package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.d.ts +8 -0
  219. package/Charting3D/Model/DataSeries/UniformGridDataSeries3D.js +12 -0
  220. package/Charting3D/Model/DataSeries/XyzDataSeries3D.d.ts +2 -2
  221. package/Charting3D/Model/DataSeries/XyzDataSeries3D.js +1 -1
  222. package/Charting3D/Vector3.d.ts +5 -0
  223. package/Charting3D/Vector3.js +7 -0
  224. package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.d.ts +88 -0
  225. package/Charting3D/Visuals/Annotations/TooltipSvgAnnotation3D.js +291 -0
  226. package/Charting3D/Visuals/Axis/AxisBase3D.d.ts +21 -2
  227. package/Charting3D/Visuals/Axis/AxisBase3D.js +48 -18
  228. package/Charting3D/Visuals/Axis/AxisBase3DLabelStyle.js +2 -1
  229. package/Charting3D/Visuals/Axis/AxisCubeEntity.d.ts +0 -4
  230. package/Charting3D/Visuals/Axis/AxisCubeEntity.js +3 -6
  231. package/Charting3D/Visuals/Axis/IAxisDescriptor.d.ts +2 -2
  232. package/Charting3D/Visuals/Axis/IAxisDescriptor.js +2 -2
  233. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.d.ts +41 -30
  234. package/Charting3D/Visuals/Primitives/BaseSceneEntity3D.js +78 -26
  235. package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.d.ts +47 -0
  236. package/Charting3D/Visuals/Primitives/CrosshairLinesSceneEntity.js +106 -0
  237. package/Charting3D/Visuals/Primitives/EntityIdProvider.d.ts +29 -0
  238. package/Charting3D/Visuals/Primitives/EntityIdProvider.js +28 -0
  239. package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.d.ts +51 -0
  240. package/Charting3D/Visuals/Primitives/PointLine3DSceneEntity.js +188 -0
  241. package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.d.ts +12 -0
  242. package/Charting3D/Visuals/Primitives/RenderableSeriesSceneEntity.js +14 -0
  243. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +11 -0
  244. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +18 -0
  245. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.d.ts +3 -0
  246. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +15 -0
  247. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +16 -1
  248. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +64 -12
  249. package/Charting3D/Visuals/RenderableSeries/Constants.d.ts +2 -0
  250. package/Charting3D/Visuals/RenderableSeries/Constants.js +2 -0
  251. package/Charting3D/Visuals/RenderableSeries/ESeriesType.d.ts +2 -1
  252. package/Charting3D/Visuals/RenderableSeries/ESeriesType.js +1 -0
  253. package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.d.ts +37 -0
  254. package/Charting3D/Visuals/RenderableSeries/HitTestInfo3D.js +22 -0
  255. package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.d.ts +64 -0
  256. package/Charting3D/Visuals/RenderableSeries/PointLineRenderableSeries3D.js +105 -0
  257. package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.d.ts +51 -0
  258. package/Charting3D/Visuals/RenderableSeries/SeriesInfo3D.js +32 -0
  259. package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.d.ts +15 -0
  260. package/Charting3D/Visuals/RenderableSeries/SurfaceMeshSeriesInfo3D.js +112 -0
  261. package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.d.ts +20 -0
  262. package/Charting3D/Visuals/RenderableSeries/XyzSeriesInfo3D.js +60 -0
  263. package/Charting3D/Visuals/RootSceneEntity.d.ts +0 -4
  264. package/Charting3D/Visuals/RootSceneEntity.js +3 -8
  265. package/Charting3D/Visuals/SciChart3DRenderer.d.ts +2 -0
  266. package/Charting3D/Visuals/SciChart3DRenderer.js +49 -0
  267. package/Charting3D/Visuals/SciChart3DSurface.d.ts +44 -3
  268. package/Charting3D/Visuals/SciChart3DSurface.js +103 -9
  269. package/Charting3D/Visuals/ViewportManager3DBase.d.ts +4 -0
  270. package/Charting3D/Visuals/ViewportManager3DBase.js +7 -1
  271. package/Charting3D/Visuals/createMaster3d.d.ts +1 -2
  272. package/Charting3D/Visuals/createMaster3d.js +76 -14
  273. package/Charting3D/Visuals/createSingle3d.js +34 -4
  274. package/Charting3D/Visuals/licenseManager3D.js +29 -25
  275. package/Core/BuildStamp.d.ts +1 -1
  276. package/Core/BuildStamp.js +2 -2
  277. package/Core/DeletableEntity.d.ts +28 -0
  278. package/Core/DeletableEntity.js +141 -0
  279. package/Core/Globals.d.ts +11 -0
  280. package/Core/Globals.js +13 -0
  281. package/Core/Guard.d.ts +6 -0
  282. package/Core/Guard.js +10 -0
  283. package/Core/Mouse/MouseManager.d.ts +23 -0
  284. package/Core/Mouse/MouseManager.js +47 -0
  285. package/Core/ObservableArray.d.ts +11 -5
  286. package/Core/ObservableArray.js +25 -6
  287. package/Core/Telemetry.js +4 -6
  288. package/_wasm/scichart.browser.js +1 -1
  289. package/_wasm/scichart2d.data +0 -0
  290. package/_wasm/scichart2d.js +4 -294
  291. package/_wasm/scichart2d.wasm +0 -0
  292. package/_wasm/scichart3d.data +0 -0
  293. package/_wasm/scichart3d.js +4 -294
  294. package/_wasm/scichart3d.wasm +0 -0
  295. package/index.d.ts +43 -2
  296. package/index.js +89 -27
  297. package/index.min.js +1 -1
  298. package/package.json +3 -4
  299. package/types/ChartModifierType.d.ts +2 -0
  300. package/types/ChartModifierType.js +2 -0
  301. package/types/DefaultRenderLayer.d.ts +9 -8
  302. package/types/DefaultRenderLayer.js +9 -8
  303. package/types/NumberArray.d.ts +1 -0
  304. package/types/NumberArray.js +12 -1
  305. package/types/SceneEntityType.d.ts +13 -5
  306. package/types/SceneEntityType.js +13 -5
  307. package/types/TSciChart.d.ts +37 -8
  308. package/types/TSciChart3D.d.ts +126 -7
  309. package/types/licensingClasses.d.ts +2 -1
  310. package/types/licensingClasses.js +1 -0
  311. package/utils/MemoryUsageHelper.d.ts +45 -0
  312. package/utils/MemoryUsageHelper.js +171 -0
  313. package/utils/array.d.ts +8 -0
  314. package/utils/array.js +58 -1
  315. package/utils/logger.d.ts +2 -0
  316. package/utils/logger.js +11 -0
@@ -1,19 +1,38 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getAllFontKeys = exports.getFontKey = exports.getVector4 = exports.getNativeRect = exports.getTextBounds = exports.getVertex = exports.getVectorColorVertex = exports.getVectorRectVertex = exports.freeCache = exports.FontKey = void 0;
18
+ exports.getAllFontKeys = exports.getFontKey = exports.getVector4 = exports.getNativeRect = exports.getTextBounds = exports.getVertex = exports.getVectorColorVertex = exports.getVectorRectVertex = exports.freeCache = exports.deleteCache = exports.FontKey = void 0;
19
+ var DeletableEntity_1 = require("../../../Core/DeletableEntity");
4
20
  var Deleter_1 = require("../../../Core/Deleter");
5
21
  var LabelCache_1 = require("../Axis/LabelProvider/LabelCache");
6
22
  var SciChartDefaults_1 = require("../SciChartDefaults");
7
- var FontKey = /** @class */ (function () {
23
+ var FontKey = /** @class */ (function (_super) {
24
+ __extends(FontKey, _super);
8
25
  function FontKey(nativeKey) {
9
- this.firstLoadTime = Date.now();
10
- this.nativeKey = nativeKey;
26
+ var _this = _super.call(this) || this;
27
+ _this.firstLoadTime = Date.now();
28
+ _this.nativeKey = nativeKey;
29
+ return _this;
11
30
  }
12
31
  FontKey.prototype.delete = function () {
13
32
  (0, Deleter_1.deleteSafe)(this.nativeKey);
14
33
  };
15
34
  return FontKey;
16
- }());
35
+ }(DeletableEntity_1.DeletableEntity));
17
36
  exports.FontKey = FontKey;
18
37
  var objectCache = new Map();
19
38
  var getCache = function (wasmContext) {
@@ -32,24 +51,26 @@ var getCache = function (wasmContext) {
32
51
  }
33
52
  return objectCache.get(canvasId);
34
53
  };
54
+ var deleteCache = function (wasmContext) {
55
+ if (!wasmContext.canvas)
56
+ return;
57
+ var canvasId = wasmContext.canvas.id;
58
+ var cache = objectCache.get(canvasId);
59
+ if (cache) {
60
+ (0, Deleter_1.deleteSafe)(cache.vecRects);
61
+ (0, Deleter_1.deleteSafe)(cache.vecColorVertex);
62
+ (0, Deleter_1.deleteSafe)(cache.vertex);
63
+ (0, Deleter_1.deleteSafe)(cache.rect);
64
+ (0, Deleter_1.deleteSafe)(cache.vector4);
65
+ (0, Deleter_1.deleteSafe)(cache.textBounds);
66
+ cache.keyCache.forEach(function (key) { return (0, Deleter_1.deleteSafe)(key); });
67
+ }
68
+ objectCache.delete(canvasId);
69
+ };
70
+ exports.deleteCache = deleteCache;
35
71
  var freeCache = function (wasmContext) {
36
72
  return {
37
- delete: function () {
38
- if (!wasmContext.canvas)
39
- return;
40
- var canvasId = wasmContext.canvas.id;
41
- var cache = objectCache.get(canvasId);
42
- if (cache) {
43
- (0, Deleter_1.deleteSafe)(cache.vecRects);
44
- (0, Deleter_1.deleteSafe)(cache.vecColorVertex);
45
- (0, Deleter_1.deleteSafe)(cache.vertex);
46
- (0, Deleter_1.deleteSafe)(cache.rect);
47
- (0, Deleter_1.deleteSafe)(cache.vector4);
48
- (0, Deleter_1.deleteSafe)(cache.textBounds);
49
- cache.keyCache.forEach(function (key) { return (0, Deleter_1.deleteSafe)(key); });
50
- }
51
- objectCache.delete(canvasId);
52
- }
73
+ delete: function () { return (0, exports.deleteCache)(wasmContext); }
53
74
  };
54
75
  };
55
76
  exports.freeCache = freeCache;
@@ -42,7 +42,9 @@ var drawLineAnnotation = function (currentAxis, renderContext, labelPlacement, d
42
42
  var labelWidth = 0;
43
43
  var labelRect;
44
44
  var _a = getLineCoordinates(x1Coord, y1Coord, x2Coord, y2Coord, labelHeight, labelWidth, labelPlacement, currentAxis), x1LineCoord = _a.x1LineCoord, y1LineCoord = _a.y1LineCoord, x2LineCoord = _a.x2LineCoord, y2LineCoord = _a.y2LineCoord;
45
- renderContext.drawLine(x1LineCoord, y1LineCoord, x2LineCoord, y2LineCoord, strokePen, viewRect);
45
+ if (strokePen) {
46
+ renderContext.drawLine(x1LineCoord, y1LineCoord, x2LineCoord, y2LineCoord, strokePen, viewRect);
47
+ }
46
48
  if (showLabel) {
47
49
  var _b = currentAxis.axisRenderer.createAnnotationLabelTexture(text, labelTextStyle, labelBackgroundColor, displayVertically, displayMirrored, opacity), bitmapTexture = _b.bitmapTexture, textureHeight = _b.textureHeight, textureWidth = _b.textureWidth;
48
50
  var _c = (0, exports.getLabelCoordinates)(currentAxis, labelPlacement, x1Coord, x2Coord, y1Coord, y2Coord, textureHeight, textureWidth, horizontalAlignment, verticalAlignment), xPosition = _c.xPosition, yPosition = _c.yPosition;
@@ -10,21 +10,6 @@ import { ISurfaceOptionsBase } from "./SciChartSurfaceBase";
10
10
  * Options passed to a {@link SciChartSurface} in the {@link SciChartSurface.create} function
11
11
  */
12
12
  export interface I2DSurfaceOptions extends ISurfaceOptionsBase {
13
- /**
14
- * Optional - the width aspect ratio of the {@link SciChartSurface}. By default SciChart will scale to fit the parent Div.
15
- * However if height of the div is not provided it will use width/height aspect ratio to calculate the height. The default ratio is 3/2.
16
- */
17
- widthAspect?: number;
18
- /**
19
- * Optional - the height aspect ratio of the {@link SciChartSurface}. By default SciChart will scale to fit the parent Div.
20
- * However if height of the div is not provided it will use width/height aspect ratio to calculate the height. The default ratio is 3/2.
21
- */
22
- heightAspect?: number;
23
- /**
24
- * Optional - the option of disabling / enabling scaling of the {@link SciChartSurface}.
25
- * If false - the {@link SciChartSurface} will take the height and width of parent div without scaling.
26
- */
27
- disableAspect?: boolean;
28
13
  /**
29
14
  * Optional - Prove a layoutManager to customise the axis layout. Use CentralAxesLayoutManager for an easy way to configure central axes.
30
15
  */
@@ -1,3 +1,4 @@
1
+ import { DeletableEntity } from "../../../Core/DeletableEntity";
1
2
  import { GradientParams } from "../../../Core/GradientParams";
2
3
  import { IDeletable } from "../../../Core/IDeletable";
3
4
  import { Rect } from "../../../Core/Rect";
@@ -41,7 +42,7 @@ export declare enum ELegendType {
41
42
  /**
42
43
  * Base class for legends in the SciChart library
43
44
  */
44
- export declare abstract class SciChartLegendBase implements IDeletable {
45
+ export declare abstract class SciChartLegendBase extends DeletableEntity implements IDeletable {
45
46
  abstract readonly type: ELegendType;
46
47
  protected rootDiv: HTMLDivElement;
47
48
  protected parentDiv: HTMLDivElement;
@@ -121,6 +122,7 @@ export declare abstract class SciChartLegendBase implements IDeletable {
121
122
  * Gets or sets the parent div element reference or id for the Legend
122
123
  */
123
124
  set placementDivId(value: string | HTMLDivElement);
125
+ clear(): void;
124
126
  /** @inheritDoc */
125
127
  delete(): void;
126
128
  /**
@@ -1,7 +1,23 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
18
  exports.getLegendContainerHtml = exports.getLegendItemHtml = exports.SciChartLegendBase = exports.ELegendType = exports.ELegendPlacement = exports.ELegendOrientation = void 0;
4
19
  var app_1 = require("../../../constants/app");
20
+ var DeletableEntity_1 = require("../../../Core/DeletableEntity");
5
21
  var html_1 = require("../../../utils/html");
6
22
  /**
7
23
  * Enumeration constants to define legend orientation
@@ -33,19 +49,20 @@ var ELegendType;
33
49
  /**
34
50
  * Base class for legends in the SciChart library
35
51
  */
36
- var SciChartLegendBase = /** @class */ (function () {
52
+ var SciChartLegendBase = /** @class */ (function (_super) {
53
+ __extends(SciChartLegendBase, _super);
37
54
  function SciChartLegendBase() {
38
- var _this = this;
39
- this.orientationProperty = ELegendOrientation.Vertical;
40
- this.showLegendProperty = true;
41
- this.placementProperty = ELegendPlacement.TopLeft;
42
- this.marginProperty = 10;
43
- this.isDirty = true;
44
- this.eventListenersCollection = new Map();
55
+ var _this = _super !== null && _super.apply(this, arguments) || this;
56
+ _this.orientationProperty = ELegendOrientation.Vertical;
57
+ _this.showLegendProperty = true;
58
+ _this.placementProperty = ELegendPlacement.TopLeft;
59
+ _this.marginProperty = 10;
60
+ _this.isDirty = true;
61
+ _this.eventListenersCollection = new Map();
45
62
  /**
46
63
  * removes event listeners from a specific {@link IRenderableSeries} series
47
64
  */
48
- this.removeEventListenerFromSeries = function (renderableSeriesId) {
65
+ _this.removeEventListenerFromSeries = function (renderableSeriesId) {
49
66
  var _a;
50
67
  (_a = _this.eventListenersCollection.get(renderableSeriesId)) === null || _a === void 0 ? void 0 : _a.forEach(function (_a) {
51
68
  var element = _a.element, eventListener = _a.eventListener, eventType = _a.eventType;
@@ -53,6 +70,7 @@ var SciChartLegendBase = /** @class */ (function () {
53
70
  });
54
71
  _this.eventListenersCollection.delete(renderableSeriesId);
55
72
  };
73
+ return _this;
56
74
  }
57
75
  SciChartLegendBase.prototype.setInvalidateParentSurface = function (value) {
58
76
  this.invalidateParentSurface = value;
@@ -87,7 +105,7 @@ var SciChartLegendBase = /** @class */ (function () {
87
105
  if (!this.isDirty && this.div) {
88
106
  return;
89
107
  }
90
- this.delete();
108
+ this.clear();
91
109
  if (this.showLegend) {
92
110
  this.create();
93
111
  }
@@ -178,15 +196,14 @@ var SciChartLegendBase = /** @class */ (function () {
178
196
  * Gets or sets the parent div element reference or id for the Legend
179
197
  */
180
198
  set: function (value) {
181
- this.delete();
199
+ this.clear();
182
200
  this.placementDivIdProperty = value;
183
201
  this.notifyPropertyChanged();
184
202
  },
185
203
  enumerable: false,
186
204
  configurable: true
187
205
  });
188
- /** @inheritDoc */
189
- SciChartLegendBase.prototype.delete = function () {
206
+ SciChartLegendBase.prototype.clear = function () {
190
207
  var _a;
191
208
  if (this.div) {
192
209
  this.removeEventListeners();
@@ -195,6 +212,10 @@ var SciChartLegendBase = /** @class */ (function () {
195
212
  this.parentDiv = undefined;
196
213
  }
197
214
  };
215
+ /** @inheritDoc */
216
+ SciChartLegendBase.prototype.delete = function () {
217
+ this.clear();
218
+ };
198
219
  /**
199
220
  * Gets if the Legend in placed externally
200
221
  */
@@ -262,7 +283,7 @@ var SciChartLegendBase = /** @class */ (function () {
262
283
  return this.rootDiv;
263
284
  };
264
285
  return SciChartLegendBase;
265
- }());
286
+ }(DeletableEntity_1.DeletableEntity));
266
287
  exports.SciChartLegendBase = SciChartLegendBase;
267
288
  var getLegendItemHtml = function (orientation, showCheckboxes, showSeriesMarkers, item) {
268
289
  var display = orientation === ELegendOrientation.Vertical ? "flex" : "inline-flex";
@@ -84,7 +84,7 @@ var SciChartPieLegend = /** @class */ (function (_super) {
84
84
  * @inheritDoc
85
85
  */
86
86
  SciChartPieLegend.prototype.update = function () {
87
- this.delete();
87
+ this.clear();
88
88
  if (this.showLegend) {
89
89
  this.create();
90
90
  }
@@ -1,4 +1,5 @@
1
1
  import { TPointMarkerDefinition } from "../../../Builder/buildSeries";
2
+ import { DeletableEntity } from "../../../Core/DeletableEntity";
2
3
  import { ICacheable } from "../../../Core/ICacheable";
3
4
  import { EPointMarkerType } from "../../../types/PointMarkerType";
4
5
  import { TSciChart } from "../../../types/TSciChart";
@@ -36,6 +37,8 @@ export interface IPointMarkerOptions {
36
37
  * The opacity of the point-marker
37
38
  */
38
39
  opacity?: number;
40
+ /** Set true to make the point marker render only for the last point on the data series */
41
+ lastPointOnly?: boolean;
39
42
  }
40
43
  /**
41
44
  * The Base class for a PointMarker in SciChart - High Performance {@link https://www.scichart.com/javascript-chart-features | JavaScript Charts}.
@@ -45,7 +48,7 @@ export interface IPointMarkerOptions {
45
48
  * @remarks
46
49
  * See derived types of {@link BasePointMarker} for specific point-marker types.
47
50
  */
48
- export declare abstract class BasePointMarker implements IPointMarker, ICacheable {
51
+ export declare abstract class BasePointMarker extends DeletableEntity implements IPointMarker, ICacheable {
49
52
  abstract type: EPointMarkerType;
50
53
  /**
51
54
  * Callback to invalidate the parent 2D {@link SciChartSurface}
@@ -62,6 +65,7 @@ export declare abstract class BasePointMarker implements IPointMarker, ICacheabl
62
65
  private strokeProperty;
63
66
  private strokeThicknessProperty;
64
67
  private widthProperty;
68
+ private lastPointOnlyProperty;
65
69
  private spriteTextures;
66
70
  private isUpdateSuspended;
67
71
  /**
@@ -119,6 +123,14 @@ export declare abstract class BasePointMarker implements IPointMarker, ICacheabl
119
123
  * Gets or sets the opacity of the point-marker
120
124
  */
121
125
  set opacity(opacity: number);
126
+ /**
127
+ * Set true to make the point marker render only for the last point on the data series
128
+ */
129
+ get lastPointOnly(): boolean;
130
+ /**
131
+ * Set true to make the point marker render only for the last point on the data series
132
+ */
133
+ set lastPointOnly(lastPointOnly: boolean);
122
134
  /**
123
135
  * Gets a {@link CanvasTexture} object which represents the point-marker sprite instance to draw
124
136
  * @remarks note {@link CanvasTexture} implements {@link IDeletable} and must be deleted manually to free memory
@@ -1,8 +1,25 @@
1
1
  "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
2
17
  Object.defineProperty(exports, "__esModule", { value: true });
3
18
  exports.BasePointMarker = void 0;
4
19
  var app_1 = require("../../../constants/app");
20
+ var DeletableEntity_1 = require("../../../Core/DeletableEntity");
5
21
  var Deleter_1 = require("../../../Core/Deleter");
22
+ var MemoryUsageHelper_1 = require("../../../utils/MemoryUsageHelper");
6
23
  var WebGlRenderContext2D_1 = require("../../Drawing/WebGlRenderContext2D");
7
24
  var IThemeProvider_1 = require("../../Themes/IThemeProvider");
8
25
  var PointMarkerStyle_1 = require("../RenderableSeries/Animations/PointMarkerStyle");
@@ -18,7 +35,8 @@ var Constants_1 = require("./Constants");
18
35
  * @remarks
19
36
  * See derived types of {@link BasePointMarker} for specific point-marker types.
20
37
  */
21
- var BasePointMarker = /** @class */ (function () {
38
+ var BasePointMarker = /** @class */ (function (_super) {
39
+ __extends(BasePointMarker, _super);
22
40
  /**
23
41
  * Creates an instance of the {@link BasePointMarker}
24
42
  * @param webAssemblyContext The {@link TSciChart | SciChart 2D WebAssembly Context} containing native methods and
@@ -26,23 +44,28 @@ var BasePointMarker = /** @class */ (function () {
26
44
  * @param options Optional parameters of type {@link IPointMarkerOptions} used to configure the point-marker at instantiation time
27
45
  */
28
46
  function BasePointMarker(webAssemblyContext, options) {
29
- var _a, _b, _c, _d, _e, _f;
30
- this.fillProperty = "#5555FF";
31
- this.heightProperty = 5;
32
- this.opacityProperty = 1;
33
- this.strokeProperty = "#3333FF";
34
- this.strokeThicknessProperty = 1;
35
- this.widthProperty = 5;
36
- this.isUpdateSuspended = false;
37
- this.webAssemblyContext = webAssemblyContext;
38
- this.widthProperty = (_a = options === null || options === void 0 ? void 0 : options.width) !== null && _a !== void 0 ? _a : this.widthProperty;
39
- this.heightProperty = (_b = options === null || options === void 0 ? void 0 : options.height) !== null && _b !== void 0 ? _b : this.heightProperty;
40
- this.fillProperty = (_c = options === null || options === void 0 ? void 0 : options.fill) !== null && _c !== void 0 ? _c : this.fillProperty;
41
- this.strokeProperty = (_d = options === null || options === void 0 ? void 0 : options.stroke) !== null && _d !== void 0 ? _d : this.strokeProperty;
42
- this.strokeThicknessProperty = (_e = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _e !== void 0 ? _e : this.strokeThicknessProperty;
43
- this.opacityProperty = (_f = options === null || options === void 0 ? void 0 : options.opacity) !== null && _f !== void 0 ? _f : this.opacityProperty;
47
+ var _this = this;
48
+ var _a, _b, _c, _d, _e, _f, _g;
49
+ _this = _super.call(this) || this;
50
+ _this.fillProperty = "#5555FF";
51
+ _this.heightProperty = 5;
52
+ _this.opacityProperty = 1;
53
+ _this.strokeProperty = "#3333FF";
54
+ _this.strokeThicknessProperty = 1;
55
+ _this.widthProperty = 5;
56
+ _this.lastPointOnlyProperty = false;
57
+ _this.isUpdateSuspended = false;
58
+ _this.webAssemblyContext = webAssemblyContext;
59
+ _this.widthProperty = (_a = options === null || options === void 0 ? void 0 : options.width) !== null && _a !== void 0 ? _a : _this.widthProperty;
60
+ _this.heightProperty = (_b = options === null || options === void 0 ? void 0 : options.height) !== null && _b !== void 0 ? _b : _this.heightProperty;
61
+ _this.fillProperty = (_c = options === null || options === void 0 ? void 0 : options.fill) !== null && _c !== void 0 ? _c : _this.fillProperty;
62
+ _this.strokeProperty = (_d = options === null || options === void 0 ? void 0 : options.stroke) !== null && _d !== void 0 ? _d : _this.strokeProperty;
63
+ _this.strokeThicknessProperty = (_e = options === null || options === void 0 ? void 0 : options.strokeThickness) !== null && _e !== void 0 ? _e : _this.strokeThicknessProperty;
64
+ _this.opacityProperty = (_f = options === null || options === void 0 ? void 0 : options.opacity) !== null && _f !== void 0 ? _f : _this.opacityProperty;
65
+ _this.lastPointOnlyProperty = (_g = options === null || options === void 0 ? void 0 : options.lastPointOnly) !== null && _g !== void 0 ? _g : _this.lastPointOnlyProperty;
44
66
  // add to the list of objects that create and store WebGL resources
45
- WebGlRenderContext2D_1.WebGlRenderContext2D.webGlResourcesRefs.add(this);
67
+ WebGlRenderContext2D_1.WebGlRenderContext2D.webGlResourcesRefs.add(_this);
68
+ return _this;
46
69
  }
47
70
  Object.defineProperty(BasePointMarker.prototype, "fill", {
48
71
  /**
@@ -165,6 +188,24 @@ var BasePointMarker = /** @class */ (function () {
165
188
  enumerable: false,
166
189
  configurable: true
167
190
  });
191
+ Object.defineProperty(BasePointMarker.prototype, "lastPointOnly", {
192
+ /**
193
+ * Set true to make the point marker render only for the last point on the data series
194
+ */
195
+ get: function () {
196
+ return this.lastPointOnlyProperty;
197
+ },
198
+ /**
199
+ * Set true to make the point marker render only for the last point on the data series
200
+ */
201
+ set: function (lastPointOnly) {
202
+ var oldValue = this.lastPointOnlyProperty;
203
+ this.lastPointOnlyProperty = lastPointOnly;
204
+ this.notifyPropertyChanged(Constants_1.PROPERTY.LAST_POINT_ONLY, lastPointOnly, oldValue);
205
+ },
206
+ enumerable: false,
207
+ configurable: true
208
+ });
168
209
  /**
169
210
  * Gets a {@link CanvasTexture} object which represents the point-marker sprite instance to draw
170
211
  * @remarks note {@link CanvasTexture} implements {@link IDeletable} and must be deleted manually to free memory
@@ -221,8 +262,19 @@ var BasePointMarker = /** @class */ (function () {
221
262
  * @inheritDoc
222
263
  */
223
264
  BasePointMarker.prototype.delete = function () {
265
+ var _this = this;
224
266
  this.invalidateCache();
225
267
  WebGlRenderContext2D_1.WebGlRenderContext2D.webGlResourcesRefs.delete(this);
268
+ if (process.env.NODE_ENV !== "production") {
269
+ // resolve memory debug issue when comparing to proxy object
270
+ if (MemoryUsageHelper_1.MemoryUsageHelper.isMemoryUsageDebugEnabled) {
271
+ WebGlRenderContext2D_1.WebGlRenderContext2D.webGlResourcesRefs.forEach(function (ref) {
272
+ if (ref.resetCache === _this.resetCache) {
273
+ WebGlRenderContext2D_1.WebGlRenderContext2D.webGlResourcesRefs.delete(ref);
274
+ }
275
+ });
276
+ }
277
+ }
226
278
  };
227
279
  /**
228
280
  * Called internally - creates the {@link CanvasTexture} object and calls {@link drawSprite} for creating the cached texture to draw
@@ -266,7 +318,8 @@ var BasePointMarker = /** @class */ (function () {
266
318
  opacity: this.opacity,
267
319
  stroke: this.stroke,
268
320
  strokeThickness: this.strokeThickness,
269
- width: this.width
321
+ width: this.width,
322
+ lastPointOnly: this.lastPointOnly
270
323
  };
271
324
  // @ts-ignore
272
325
  return { type: this.type, options: options };
@@ -340,5 +393,5 @@ var BasePointMarker = /** @class */ (function () {
340
393
  }
341
394
  };
342
395
  return BasePointMarker;
343
- }());
396
+ }(DeletableEntity_1.DeletableEntity));
344
397
  exports.BasePointMarker = BasePointMarker;
@@ -6,5 +6,6 @@ export declare enum PROPERTY {
6
6
  STROKE = "stroke",
7
7
  STROKE_THICKNESS = "strokeThickness",
8
8
  WIDTH = "width",
9
- OPACITY = "opacity"
9
+ OPACITY = "opacity",
10
+ LAST_POINT_ONLY = "lastPointOnly"
10
11
  }
@@ -11,4 +11,5 @@ var PROPERTY;
11
11
  PROPERTY["STROKE_THICKNESS"] = "strokeThickness";
12
12
  PROPERTY["WIDTH"] = "width";
13
13
  PROPERTY["OPACITY"] = "opacity";
14
+ PROPERTY["LAST_POINT_ONLY"] = "lastPointOnly";
14
15
  })(PROPERTY = exports.PROPERTY || (exports.PROPERTY = {}));
@@ -46,6 +46,8 @@ export interface IPointMarker extends IDeletable, INotifyOnDpiChanged {
46
46
  * Gets or sets the stroke-thickness of the point-marker in pixels
47
47
  */
48
48
  strokeThickness: number;
49
+ /** Set true to make the point marker render only for the last point on the data series */
50
+ lastPointOnly: boolean;
49
51
  /**
50
52
  * When overridden in a derived class, draw once the point-marker to the {@link CanvasRenderingContext2D}. This
51
53
  * will create a sprite (image or bitmap) which will be repeated at each xy data-value using our fast WebGL WebAssembly
@@ -78,7 +78,10 @@ var SeriesAnimation = /** @class */ (function () {
78
78
  if (size !== finalValues.size()) {
79
79
  throw new Error("DoubleVectors with initialValues and finalValues must have the same length");
80
80
  }
81
- interpolatedValues.resize(size, 0);
81
+ // @ts-ignore
82
+ if (typeof interpolatedValues.getRaw !== "function") {
83
+ interpolatedValues.resize(size, 0);
84
+ }
82
85
  for (var i = 0; i < size; i++) {
83
86
  interpolatedValues.set(i, animationHelpers_1.animationHelpers.interpolateNumber(initialValues.get(i), finalValues.get(i), progress));
84
87
  }
@@ -14,7 +14,7 @@ export declare const animationHelpers: {
14
14
  checkCanDraw: (animationFSM: AnimationFiniteStateMachine) => boolean;
15
15
  checkIsAnimationRunning: (animationQueue: IAnimation[], animationFSM: AnimationFiniteStateMachine) => boolean;
16
16
  animationUpdate: (animationFSM: SeriesAnimationFiniteStateMachine, timeElapsed: number, beforeAnimationStart: () => void, afterAnimationComplete: () => void, updateAnimationProperties: (progress: number, animationFSM: SeriesAnimationFiniteStateMachine) => void) => void;
17
- createPointMarker: (wasmContext: TSciChart, pointMarkerStyle: BasePointMarkerStyle) => EllipsePointMarker | SpritePointMarker | CrossPointMarker | XPointMarker | SquarePointMarker | TrianglePointMarker;
17
+ createPointMarker: (wasmContext: TSciChart, pointMarkerStyle: BasePointMarkerStyle) => CrossPointMarker | EllipsePointMarker | SpritePointMarker | SquarePointMarker | TrianglePointMarker | XPointMarker;
18
18
  interpolateNumber: (from: number, to: number, progress: number) => number;
19
19
  interpolateColor: (from: number, to: number, progress: number) => number;
20
20
  copyVector: (sourceVector: SCRTDoubleVector, targetVector: SCRTDoubleVector) => void;
@@ -175,8 +175,8 @@ var BaseBandRenderableSeries = /** @class */ (function (_super) {
175
175
  };
176
176
  /** @inheritDoc */
177
177
  BaseBandRenderableSeries.prototype.delete = function () {
178
- _super.prototype.delete.call(this);
179
178
  this.xyyTempPointSeries = (0, Deleter_1.deleteSafe)(this.xyyTempPointSeries);
179
+ _super.prototype.delete.call(this);
180
180
  };
181
181
  /** @inheritDoc */
182
182
  BaseBandRenderableSeries.prototype.toPointSeries = function (rp) {
@@ -198,20 +198,21 @@ var BaseBandRenderableSeries = /** @class */ (function (_super) {
198
198
  var xValues = ds.getNativeXValues();
199
199
  var yValues = ds.getNativeYValues();
200
200
  var y1Values = ds.getNativeY1Values();
201
- this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rp, xValues, yValues, this.xyyTempPointSeries.intIndexes, this.xyyTempPointSeries.xValues, this.xyyTempPointSeries.yValues, false);
201
+ var result = this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rp, xValues, yValues, this.xyyTempPointSeries.intIndexes, undefined, this.xyyTempPointSeries.xValues, this.xyyTempPointSeries.yValues, false);
202
+ this.pointSeries.fifoStartIndex = result.OutputSplitIndex;
202
203
  var xySize = this.xyyTempPointSeries.intIndexes.size();
203
- this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rp, xValues, y1Values, this.xyyTempPointSeries.intIndexes, this.xyyTempPointSeries.xValues, this.xyyTempPointSeries.y1Values);
204
+ this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rp, xValues, y1Values, this.xyyTempPointSeries.intIndexes, undefined, this.xyyTempPointSeries.xValues, this.xyyTempPointSeries.y1Values);
204
205
  // Because intIndexes vector is not cleared indexes for rpLow are appended at the end of rpHigh indexes
205
206
  var xy1Size = this.xyyTempPointSeries.intIndexes.size() - xySize;
206
207
  // We merge indexes excluding duplicates for Y and Y1 into one vector
207
208
  var mergedSize = this.resamplerHelper.mergeIndexes(this.xyyTempPointSeries.intIndexes, xySize, xy1Size, ps.intIndexes);
208
209
  // Clear the intIndexes as long as we do not need them any more
209
210
  this.xyyTempPointSeries.intIndexes.clear();
211
+ ps.indexes.resizeFast(mergedSize + 1);
210
212
  // Get values by indexes for Y and Y1 values
211
- this.resamplerHelper.copyValuesByIndexes(ps.intIndexes, xValues, yValues, y1Values, mergedSize, rp.isCategoryAxis, ps.xValues, ps.yValues, ps.y1Values);
212
- if (rp.isCategoryAxis) {
213
- ps.updateIndexes();
214
- }
213
+ this.resamplerHelper.copyValuesByIndexes(ps.intIndexes, xValues, yValues, y1Values, mergedSize, rp.isCategoryAxis, this.dataSeries.fifoSweeping, ps.indexes, ps.xValues, ps.yValues, ps.y1Values);
214
+ // This is now done in the copy step above
215
+ //ps.updateIndexes();
215
216
  ps.clearIntIndexes();
216
217
  // ps.debugOutputForUnitTests();
217
218
  return ps;
@@ -119,6 +119,7 @@ export declare abstract class BaseHeatmapRenderableSeries extends BaseRenderable
119
119
  toPointSeries(resamplingParams?: ResamplingParams): IPointSeries;
120
120
  /** @inheritDoc */
121
121
  toJSON(excludeData?: boolean): import("../../..").TSeriesDefinition;
122
+ delete(): void;
122
123
  /**
123
124
  * Called when a property changes on {@link HeatmapColorMap}, and notifies the parent {@link SciChartSurface}
124
125
  * that a redraw is required.
@@ -16,6 +16,7 @@ var __extends = (this && this.__extends) || (function () {
16
16
  })();
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.BaseHeatmapRenderableSeries = exports.COLOR_MAP_PREFIX = void 0;
19
+ var Deleter_1 = require("../../../Core/Deleter");
19
20
  var AxisCore_1 = require("../Axis/AxisCore");
20
21
  var NumericLabelProvider_1 = require("../Axis/LabelProvider/NumericLabelProvider");
21
22
  var BaseRenderableSeries_1 = require("./BaseRenderableSeries");
@@ -188,6 +189,10 @@ var BaseHeatmapRenderableSeries = /** @class */ (function (_super) {
188
189
  Object.assign(json.options, options);
189
190
  return json;
190
191
  };
192
+ BaseHeatmapRenderableSeries.prototype.delete = function () {
193
+ this.zLabelProviderProperty = (0, Deleter_1.deleteSafe)(this.zLabelProviderProperty);
194
+ _super.prototype.delete.call(this);
195
+ };
191
196
  /**
192
197
  * Called when a property changes on {@link HeatmapColorMap}, and notifies the parent {@link SciChartSurface}
193
198
  * that a redraw is required.
@@ -128,10 +128,10 @@ var BaseOhlcRenderableSeries = /** @class */ (function (_super) {
128
128
  };
129
129
  /** @inheritDoc */
130
130
  BaseOhlcRenderableSeries.prototype.delete = function () {
131
- _super.prototype.delete.call(this);
132
131
  this.resamplerHelper = (0, Deleter_1.deleteSafe)(this.resamplerHelper);
133
132
  this.xyyTempPointSeries = (0, Deleter_1.deleteSafe)(this.xyyTempPointSeries);
134
133
  this.pointSeries = (0, Deleter_1.deleteSafe)(this.pointSeries);
134
+ _super.prototype.delete.call(this);
135
135
  };
136
136
  /**
137
137
  * Returns the {@link IDataSeries.getNativeOpenValues} for the associated {@link dataSeries}
@@ -196,9 +196,10 @@ var BaseOhlcRenderableSeries = /** @class */ (function (_super) {
196
196
  var rpHigh = rp.clone({
197
197
  resamplingMode: rp.resamplingMode === ResamplingMode_1.EResamplingMode.None ? ResamplingMode_1.EResamplingMode.None : ResamplingMode_1.EResamplingMode.Max
198
198
  });
199
- this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rpHigh, xValues, highValues, this.xyyTempPointSeries.intIndexes, // don't care
200
- this.xyyTempPointSeries.xValues, // don't care
199
+ var result = this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rpHigh, xValues, highValues, this.xyyTempPointSeries.intIndexes, // don't care
200
+ undefined, this.xyyTempPointSeries.xValues, // don't care
201
201
  ps.highValues);
202
+ this.pointSeries.fifoStartIndex = result.OutputSplitIndex;
202
203
  // console.log("high count ", ps.highValues.size());
203
204
  this.xyyTempPointSeries.clearIntIndexes();
204
205
  // 2) calc ps.lowValues
@@ -206,7 +207,7 @@ var BaseOhlcRenderableSeries = /** @class */ (function (_super) {
206
207
  resamplingMode: rp.resamplingMode === ResamplingMode_1.EResamplingMode.None ? ResamplingMode_1.EResamplingMode.None : ResamplingMode_1.EResamplingMode.Min
207
208
  });
208
209
  this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rpLow, xValues, lowValues, this.xyyTempPointSeries.intIndexes, // don't care
209
- this.xyyTempPointSeries.xValues, ps.lowValues);
210
+ undefined, this.xyyTempPointSeries.xValues, ps.lowValues);
210
211
  // console.log("low count ", ps.lowValues.size());
211
212
  // We don't want the indexes for high/low
212
213
  this.xyyTempPointSeries.clearIntIndexes();
@@ -216,7 +217,7 @@ var BaseOhlcRenderableSeries = /** @class */ (function (_super) {
216
217
  var rpOpenClose = rp.clone({
217
218
  resamplingMode: rp.resamplingMode === ResamplingMode_1.EResamplingMode.None ? ResamplingMode_1.EResamplingMode.None : ResamplingMode_1.EResamplingMode.Min
218
219
  });
219
- this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rpOpenClose, xValues, originalIndexes, ps.intIndexes, this.xyyTempPointSeries.xValues, // don't care
220
+ this.resamplerHelper.resampleIntoPointSeries(this.webAssemblyContext, rpOpenClose, xValues, originalIndexes, ps.intIndexes, undefined, this.xyyTempPointSeries.xValues, // don't care
220
221
  this.xyyTempPointSeries.y1Values // don't care
221
222
  );
222
223
  var openCloseSize = ps.intIndexes.size();
@@ -260,12 +261,12 @@ var BaseOhlcRenderableSeries = /** @class */ (function (_super) {
260
261
  // console.log("X Spacing ", rp.xVisibleRange.diff / rp.indexesRange.max);
261
262
  // console.log("original points / resampled points ", xValues.size() / openCloseSize);
262
263
  // console.log("lastIndexOfFirstBatch ", lastIndexOfFirstBatch);
264
+ ps.indexes.resizeFast(openCloseSize + 1);
263
265
  // Get values by indexes for Open values
264
- this.resamplerHelper.copyValuesByIndexes(ps.intIndexes, xValues, openValues, closeValues, openCloseSize, rp.isCategoryAxis, ps.xValues, ps.openValues, ps.closeValues, lastIndexOfFirstBatch);
266
+ this.resamplerHelper.copyValuesByIndexes(ps.intIndexes, xValues, openValues, closeValues, openCloseSize, rp.isCategoryAxis, this.dataSeries.fifoSweeping, ps.indexes, ps.xValues, ps.openValues, ps.closeValues, lastIndexOfFirstBatch);
265
267
  // Last close value is handled in c++;
266
- // 5) update indexes for category axis
267
- if (rp.isCategoryAxis)
268
- ps.updateIndexes();
268
+ // This is now done in the copy step above
269
+ //ps.updateIndexes();
269
270
  ps.clearIntIndexes();
270
271
  // ps.debugOutputForUnitTests();
271
272
  return ps;