scichart 2.2.2416 → 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 (394) 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/ISpline.d.ts +2 -0
  277. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.d.ts +74 -0
  278. package/Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries.js +99 -0
  279. package/Charting/Visuals/RenderableSeries/ShaderEffect.js +2 -2
  280. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.d.ts +5 -0
  281. package/Charting/Visuals/RenderableSeries/SplineBandRenderableSeries.js +29 -10
  282. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.d.ts +7 -3
  283. package/Charting/Visuals/RenderableSeries/SplineLineRenderableSeries.js +28 -8
  284. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.d.ts +5 -0
  285. package/Charting/Visuals/RenderableSeries/SplineMountainRenderableSeries.js +28 -8
  286. package/Charting/Visuals/RenderableSeries/StackedColumnCollection.js +2 -1
  287. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.d.ts +3 -0
  288. package/Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries.js +13 -2
  289. package/Charting/Visuals/RenderableSeries/StackedMountainCollection.js +4 -1
  290. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.d.ts +7 -0
  291. package/Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries.js +33 -9
  292. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.d.ts +5 -0
  293. package/Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries.js +7 -1
  294. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.d.ts +2 -75
  295. package/Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries.js +8 -130
  296. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.d.ts +5 -0
  297. package/Charting/Visuals/RenderableSeries/XyScatterRenderableSeries.js +7 -1
  298. package/Charting/Visuals/RenderableSeries/constants.d.ts +5 -1
  299. package/Charting/Visuals/RenderableSeries/constants.js +4 -0
  300. package/Charting/Visuals/RubberBandSvgRect/RubberBandSvgRect.js +3 -3
  301. package/Charting/Visuals/SciChartDefaults.d.ts +4 -0
  302. package/Charting/Visuals/SciChartDefaults.js +4 -0
  303. package/Charting/Visuals/SciChartOverview.js +5 -3
  304. package/Charting/Visuals/SciChartPieSurface/PieSegment/IPieSegment.d.ts +4 -0
  305. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.d.ts +13 -0
  306. package/Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment.js +22 -4
  307. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.d.ts +2 -1
  308. package/Charting/Visuals/SciChartPieSurface/PieSegment/constants.js +1 -0
  309. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.d.ts +5 -0
  310. package/Charting/Visuals/SciChartPieSurface/SciChartPieSurface.js +17 -19
  311. package/Charting/Visuals/SciChartSurface.d.ts +225 -7
  312. package/Charting/Visuals/SciChartSurface.js +782 -28
  313. package/Charting/Visuals/SciChartSurfaceBase.d.ts +16 -1
  314. package/Charting/Visuals/SciChartSurfaceBase.js +34 -2
  315. package/Charting/Visuals/TextureManager/CanvasTexture.js +1 -1
  316. package/Charting/Visuals/TextureManager/DpiHelper.js +3 -7
  317. package/Charting/Visuals/TextureManager/TextureManager.d.ts +11 -0
  318. package/Charting/Visuals/TextureManager/TextureManager.js +37 -1
  319. package/Charting/Visuals/createMaster.js +7 -10
  320. package/Charting/Visuals/createSingle.js +2 -0
  321. package/Charting/Visuals/licenseManager2D.js +9 -9
  322. package/Charting/Visuals/sciChartInitCommon.js +16 -12
  323. package/Charting3D/CameraController.d.ts +5 -0
  324. package/Charting3D/CameraController.js +6 -0
  325. package/Charting3D/ChartModifiers/ResetCamera3DModifier.js +2 -1
  326. package/Charting3D/Visuals/Axis/AxisBase3D.js +7 -5
  327. package/Charting3D/Visuals/Axis/NumericAxis3D.js +2 -1
  328. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.d.ts +4 -0
  329. package/Charting3D/Visuals/Primitives/ScatterPointsSceneEntity.js +7 -0
  330. package/Charting3D/Visuals/Primitives/SurfaceMeshSceneEntity.js +6 -4
  331. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.d.ts +7 -2
  332. package/Charting3D/Visuals/RenderableSeries/BaseRenderableSeries3D.js +3 -2
  333. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.d.ts +0 -5
  334. package/Charting3D/Visuals/RenderableSeries/SurfaceMesh/SurfaceMeshRenderableSeries3D.js +12 -11
  335. package/Charting3D/Visuals/SciChart3DSurface.d.ts +2 -2
  336. package/Charting3D/Visuals/SciChart3DSurface.js +18 -11
  337. package/Charting3D/Visuals/createMaster3d.js +10 -18
  338. package/Charting3D/Visuals/createSingle3d.js +12 -10
  339. package/Core/Animations/GenericAnimation.d.ts +2 -0
  340. package/Core/Animations/GenericAnimation.js +3 -0
  341. package/Core/Animations/NumberRangeAnimator.js +7 -2
  342. package/Core/BuildStamp.d.ts +1 -1
  343. package/Core/BuildStamp.js +2 -2
  344. package/Core/Mouse/MouseManager.d.ts +20 -0
  345. package/Core/Mouse/MouseManager.js +199 -30
  346. package/README.md +91 -403
  347. package/_wasm/scichart.browser.js +1 -1
  348. package/_wasm/scichart2d.data +0 -0
  349. package/_wasm/scichart2d.js +280 -267
  350. package/_wasm/scichart2d.wasm +0 -0
  351. package/_wasm/scichart3d.data +0 -0
  352. package/_wasm/scichart3d.js +280 -268
  353. package/_wasm/scichart3d.wasm +0 -0
  354. package/constants/performanceWarnings.d.ts +2 -0
  355. package/constants/performanceWarnings.js +3 -1
  356. package/package.json +2 -2
  357. package/types/AutoColorMode.d.ts +9 -0
  358. package/types/AutoColorMode.js +13 -0
  359. package/types/BaseType.d.ts +3 -1
  360. package/types/BaseType.js +2 -0
  361. package/types/DataLabelProviderType.d.ts +15 -0
  362. package/types/DataLabelProviderType.js +19 -0
  363. package/types/DataLabelSkipMode.d.ts +21 -0
  364. package/types/DataLabelSkipMode.js +25 -0
  365. package/types/DefaultRenderLayer.d.ts +10 -0
  366. package/types/DefaultRenderLayer.js +14 -0
  367. package/types/SeriesType.d.ts +7 -1
  368. package/types/SeriesType.js +6 -0
  369. package/types/SvgClippingMode.d.ts +17 -0
  370. package/types/SvgClippingMode.js +21 -0
  371. package/types/TDataLabelStyle.d.ts +16 -0
  372. package/types/TDataLabelStyle.js +2 -0
  373. package/types/TSciChart.d.ts +214 -118
  374. package/types/TSciChart3D.d.ts +104 -70
  375. package/types/TextPosition.d.ts +17 -0
  376. package/types/TextPosition.js +39 -0
  377. package/types/ThemeProviderType.d.ts +3 -1
  378. package/types/ThemeProviderType.js +2 -0
  379. package/utils/ccall/appendDoubleVectorFromJsArray.d.ts +10 -1
  380. package/utils/ccall/appendDoubleVectorFromJsArray.js +24 -1
  381. package/utils/copyVector.d.ts +2 -0
  382. package/utils/copyVector.js +10 -0
  383. package/utils/memoize.d.ts +1 -0
  384. package/utils/memoize.js +26 -0
  385. package/utils/number.d.ts +1 -0
  386. package/utils/number.js +5 -1
  387. package/utils/parseColor.d.ts +2 -0
  388. package/utils/parseColor.js +3 -3
  389. package/utils/text.d.ts +5 -0
  390. package/utils/text.js +48 -0
  391. package/utils/translate.d.ts +8 -0
  392. package/utils/translate.js +27 -5
  393. package/utils/zeroArray2D.d.ts +5 -0
  394. package/utils/zeroArray2D.js +5 -0
@@ -8,9 +8,11 @@ import { IXyyScaleOffsetFilterOptions } from "../Charting/Model/Filters/XyyScale
8
8
  import { IXyzScaleOffsetFilterOptions } from "../Charting/Model/Filters/XyzScaleOffsetFilter";
9
9
  import { IHlcDataSeriesOptions } from "../Charting/Model/HlcDataSeries";
10
10
  import { IDataSeries } from "../Charting/Model/IDataSeries";
11
+ import { INonUniformHeatmapSeriesOptions } from "../Charting/Model/NonUniformHeatmapDataSeries";
11
12
  import { IOhlcDataSeriesOptions } from "../Charting/Model/OhlcDataSeries";
12
13
  import { IUniformHeatmapSeriesOptions } from "../Charting/Model/UniformHeatmapDataSeries";
13
14
  import { IXyDataSeriesOptions } from "../Charting/Model/XyDataSeries";
15
+ import { IXyTextDataSeriesOptions } from "../Charting/Model/XyTextDataSeries";
14
16
  import { IXyyDataSeriesOptions } from "../Charting/Model/XyyDataSeries";
15
17
  import { IXyzDataSeriesOptions } from "../Charting/Model/XyzDataSeries";
16
18
  import { EDataFilterType } from "../types/DataFilterType";
@@ -118,8 +120,21 @@ export declare type THlcSeriesData = {
118
120
  } & IHlcDataSeriesOptions & {
119
121
  filter?: TFilterDefinition;
120
122
  };
123
+ /** Definition of XYText data */
124
+ export declare type TXyTextSeriesData = {
125
+ /** The id of sharedData to use for X data.
126
+ * You must either specify all of xDataId, yDataId and textValues, or all of xValues, yValues and textValues
127
+ */
128
+ xDataId?: number | string;
129
+ /** The id of sharedData to use for Y data.
130
+ * You must either specify all of xDataId, yDataId and textValues, or all of xValues, yValues and textValues
131
+ */
132
+ yDataId?: number | string;
133
+ } & IXyTextDataSeriesOptions & {
134
+ filter?: TFilterDefinition;
135
+ };
121
136
  /** Definition of series data, which can take various shapes */
122
- export declare type TSeriesDataDefinition = TXySeriesData | TXyySeriesData | TXyzSeriesData | THlcSeriesData | TOhlcSeriesData | IUniformHeatmapSeriesOptions;
137
+ export declare type TSeriesDataDefinition = TXySeriesData | TXyySeriesData | TXyzSeriesData | THlcSeriesData | TOhlcSeriesData | TXyTextSeriesData | IUniformHeatmapSeriesOptions | INonUniformHeatmapSeriesOptions;
123
138
  /**
124
139
  * Build a data series from a definition that can be pure data.
125
140
  * @param wasmContext A {@link TSciChart | SciChart 2D WebAssembly Context} or {@link TSciChart | SciChart 3D WebAssembly Context}
@@ -21,12 +21,15 @@ var XyScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyScaleOffsetFilt
21
21
  var XyyScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyyScaleOffsetFilter");
22
22
  var XyzScaleOffsetFilter_1 = require("../Charting/Model/Filters/XyzScaleOffsetFilter");
23
23
  var HlcDataSeries_1 = require("../Charting/Model/HlcDataSeries");
24
+ var NonUniformHeatmapDataSeries_1 = require("../Charting/Model/NonUniformHeatmapDataSeries");
24
25
  var OhlcDataSeries_1 = require("../Charting/Model/OhlcDataSeries");
25
26
  var UniformHeatmapDataSeries_1 = require("../Charting/Model/UniformHeatmapDataSeries");
26
27
  var XyDataSeries_1 = require("../Charting/Model/XyDataSeries");
28
+ var XyTextDataSeries_1 = require("../Charting/Model/XyTextDataSeries");
27
29
  var XyyDataSeries_1 = require("../Charting/Model/XyyDataSeries");
28
30
  var XyzDataSeries_1 = require("../Charting/Model/XyzDataSeries");
29
31
  var DataFilterType_1 = require("../types/DataFilterType");
32
+ var SeriesType_1 = require("../types/SeriesType");
30
33
  var chartBuilder_1 = require("./chartBuilder");
31
34
  function hasOwnProperty(obj, prop) {
32
35
  return obj.hasOwnProperty(prop);
@@ -91,6 +94,20 @@ var buildDataSeries = function (wasmContext, seriesDefinition, sharedData) {
91
94
  filterDef = data.filter;
92
95
  }
93
96
  }
97
+ else if (hasOwnProperty(seriesDefinition, "xyTextData")) {
98
+ var data = seriesDefinition.xyTextData;
99
+ if (sharedData && data.xDataId) {
100
+ var xValues = sharedData[data.xDataId];
101
+ var yValues = sharedData[data.yDataId];
102
+ dataSeries = new XyTextDataSeries_1.XyTextDataSeries(wasmContext, __assign({ xValues: xValues, yValues: yValues }, data));
103
+ }
104
+ else {
105
+ dataSeries = new XyTextDataSeries_1.XyTextDataSeries(wasmContext, data);
106
+ }
107
+ if (hasOwnProperty(data, "filter")) {
108
+ filterDef = data.filter;
109
+ }
110
+ }
94
111
  else if (hasOwnProperty(seriesDefinition, "hlcData")) {
95
112
  var data = seriesDefinition.hlcData;
96
113
  if (sharedData && data.xDataId) {
@@ -124,9 +141,15 @@ var buildDataSeries = function (wasmContext, seriesDefinition, sharedData) {
124
141
  filterDef = data.filter;
125
142
  }
126
143
  }
127
- else if (hasOwnProperty(seriesDefinition, "heatmapData")) {
144
+ else if (hasOwnProperty(seriesDefinition, "heatmapData") &&
145
+ (seriesDefinition.type === SeriesType_1.ESeriesType.UniformHeatmapSeries ||
146
+ seriesDefinition.type === SeriesType_1.ESeriesType.UniformContoursSeries)) {
128
147
  dataSeries = new UniformHeatmapDataSeries_1.UniformHeatmapDataSeries(wasmContext, seriesDefinition.heatmapData);
129
148
  }
149
+ else if (hasOwnProperty(seriesDefinition, "heatmapData") &&
150
+ seriesDefinition.type === SeriesType_1.ESeriesType.NonUniformHeatmapSeries) {
151
+ dataSeries = new NonUniformHeatmapDataSeries_1.NonUniformHeatmapDataSeries(wasmContext, seriesDefinition.heatmapData);
152
+ }
130
153
  if (filterDef) {
131
154
  if ("dataSeries" in seriesDefinition.options) {
132
155
  dataSeries = seriesDefinition.options.dataSeries;
@@ -1,5 +1,7 @@
1
1
  import { ISelectedPointOptions } from "../Charting/Model/DataPointSelectionPaletteProvider";
2
+ import { INonUniformHeatmapSeriesOptions } from "../Charting/Model/NonUniformHeatmapDataSeries";
2
3
  import { IUniformHeatmapSeriesOptions } from "../Charting/Model/UniformHeatmapDataSeries";
4
+ import { IXyTextDataSeriesOptions } from "../Charting/Model/XyTextDataSeries";
3
5
  import { IPointMarkerOptions } from "../Charting/Visuals/PointMarkers/BasePointMarker";
4
6
  import { ISpritePointMarkerOptions } from "../Charting/Visuals/PointMarkers/SpritePointMarker";
5
7
  import { IFadeAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/FadeAnimation";
@@ -7,17 +9,29 @@ import { IScaleAnimationOptions } from "../Charting/Visuals/RenderableSeries/Ani
7
9
  import { IBaseAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/SeriesAnimation";
8
10
  import { ISweepAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/SweepAnimation";
9
11
  import { IWaveAnimationOptions } from "../Charting/Visuals/RenderableSeries/Animations/WaveAnimation";
12
+ import { IHeatmapRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/BaseHeatmapRenderableSeries";
10
13
  import { IBaseStackedCollectionOptions } from "../Charting/Visuals/RenderableSeries/BaseStackedCollection";
14
+ import { IBandSeriesDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider";
15
+ import { IBaseDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/BaseDataLabelProvider";
16
+ import { IBubbleSeriesDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider";
17
+ import { IColumnSeriesDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider";
18
+ import { IContoursDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider";
19
+ import { IDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider";
20
+ import { IHeatmapDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider";
21
+ import { ILineSeriesDataLabelProviderOptions } from "../Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider";
11
22
  import { IBandRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastBandRenderableSeries";
12
23
  import { IBubbleRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries";
13
24
  import { ICandlestickRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries";
14
25
  import { IColumnRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastColumnRenderableSeries";
15
26
  import { IFastErrorBarsRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries";
27
+ import { IImpulseRenderableSeries } from "../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries";
16
28
  import { IFastLineRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastLineRenderableSeries";
17
29
  import { IMountainRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastMountainRenderableSeries";
18
30
  import { IOhlcRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries";
19
31
  import { IGlowEffectOptions } from "../Charting/Visuals/RenderableSeries/GlowEffect";
32
+ import { IBaseRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/IBaseRenderableSeriesOptions";
20
33
  import { IRenderableSeries } from "../Charting/Visuals/RenderableSeries/IRenderableSeries";
34
+ import { INonUniformHeatmapRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries";
21
35
  import { IShadowEffectOptions } from "../Charting/Visuals/RenderableSeries/ShadowEffect";
22
36
  import { ISplineBandRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/SplineBandRenderableSeries";
23
37
  import { ISplineLineRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/SplineLineRenderableSeries";
@@ -26,17 +40,16 @@ import { IStackedColumnCollectionOptions } from "../Charting/Visuals/RenderableS
26
40
  import { IStackedColumnRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/StackedColumnRenderableSeries";
27
41
  import { IStackedMountainRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/StackedMountainRenderableSeries";
28
42
  import { IContoursRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/UniformContoursRenderableSeries";
29
- import { IHeatmapRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/UniformHeatmapRenderableSeries";
30
43
  import { IXyScatterRenderableSeriesOptions } from "../Charting/Visuals/RenderableSeries/XyScatterRenderableSeries";
31
44
  import { GradientParams } from "../Core/GradientParams";
32
45
  import { EAnimationType } from "../types/AnimationType";
46
+ import { EDataLabelProviderType } from "../types/DataLabelProviderType";
33
47
  import { EPaletteProviderType } from "../types/PaletteProviderType";
34
48
  import { EPointMarkerType } from "../types/PointMarkerType";
35
49
  import { ESeriesType } from "../types/SeriesType";
36
50
  import { EShaderEffectType } from "../types/ShaderEffectType";
37
51
  import { TSciChart } from "../types/TSciChart";
38
- import { THlcSeriesData, TOhlcSeriesData, TSharedDataDefinition, TXySeriesData, TXyySeriesData, TXyzSeriesData } from "./buildDataSeries";
39
- import { IImpulseRenderableSeries } from "../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries";
52
+ import { THlcSeriesData, TOhlcSeriesData, TSharedDataDefinition, TXySeriesData, TXyTextSeriesData, TXyySeriesData, TXyzSeriesData } from "./buildDataSeries";
40
53
  /** Definition of a pointmarker, comprising a {@link EPointMarkerType} and the relevant options */
41
54
  export declare type TPointMarkerDefinition = {
42
55
  type: EPointMarkerType.Cross;
@@ -99,6 +112,38 @@ export declare type TAnimationDefinition = {
99
112
  customType?: string;
100
113
  options?: IBaseAnimationOptions;
101
114
  };
115
+ export declare type TDataLabelProviderDefinition = {
116
+ type: EDataLabelProviderType.Default;
117
+ options?: IDataLabelProviderOptions;
118
+ } | {
119
+ type: EDataLabelProviderType.Line;
120
+ options?: ILineSeriesDataLabelProviderOptions;
121
+ } | {
122
+ type: EDataLabelProviderType.Column;
123
+ options?: IColumnSeriesDataLabelProviderOptions;
124
+ } | {
125
+ type: EDataLabelProviderType.Text;
126
+ options?: IBaseDataLabelProviderOptions;
127
+ } | {
128
+ type: EDataLabelProviderType.Heatmap;
129
+ options?: IHeatmapDataLabelProviderOptions;
130
+ } | {
131
+ type: EDataLabelProviderType.Contours;
132
+ options?: IContoursDataLabelProviderOptions;
133
+ } | {
134
+ type: EDataLabelProviderType.Band;
135
+ options?: IBandSeriesDataLabelProviderOptions;
136
+ } | {
137
+ type: EDataLabelProviderType.Bubble;
138
+ options?: IBubbleSeriesDataLabelProviderOptions;
139
+ } | {
140
+ type: EDataLabelProviderType.NonUniformHeatmap;
141
+ options?: IHeatmapDataLabelProviderOptions;
142
+ } | {
143
+ type: EDataLabelProviderType.Custom;
144
+ customType: string;
145
+ options?: IBaseDataLabelProviderOptions;
146
+ };
102
147
  /**
103
148
  * Definition of a renderable series, comprising a {@link ESeriesType}, the relevant options,
104
149
  * and an optional data object whose type depends on the series type
@@ -143,6 +188,10 @@ export declare type TSeriesDefinition = {
143
188
  type: ESeriesType.ScatterSeries;
144
189
  options?: IXyScatterRenderableSeriesOptions;
145
190
  xyData?: TXySeriesData;
191
+ } | {
192
+ type: ESeriesType.TextSeries;
193
+ options?: IXyTextDataSeriesOptions;
194
+ xyTextData?: TXyTextSeriesData;
146
195
  } | {
147
196
  type: ESeriesType.SplineBandSeries;
148
197
  options?: ISplineBandRenderableSeriesOptions;
@@ -159,6 +208,10 @@ export declare type TSeriesDefinition = {
159
208
  type: ESeriesType.UniformHeatmapSeries;
160
209
  options?: IHeatmapRenderableSeriesOptions;
161
210
  heatmapData?: IUniformHeatmapSeriesOptions;
211
+ } | {
212
+ type: ESeriesType.NonUniformHeatmapSeries;
213
+ options?: INonUniformHeatmapRenderableSeriesOptions;
214
+ heatmapData?: INonUniformHeatmapSeriesOptions;
162
215
  } | {
163
216
  type: ESeriesType.UniformContoursSeries;
164
217
  options?: IContoursRenderableSeriesOptions;
@@ -179,6 +232,10 @@ export declare type TSeriesDefinition = {
179
232
  type: ESeriesType.StackedMountainCollection;
180
233
  options?: IBaseStackedCollectionOptions;
181
234
  series?: TSeriesDefinition[];
235
+ } | {
236
+ type: ESeriesType.Custom;
237
+ customType?: string;
238
+ options?: IBaseRenderableSeriesOptions;
182
239
  };
183
240
  /**
184
241
  * Build one or more renderable series from a definition that can be pure data.
@@ -14,15 +14,27 @@ var FadeAnimation_1 = require("../Charting/Visuals/RenderableSeries/Animations/F
14
14
  var ScaleAnimation_1 = require("../Charting/Visuals/RenderableSeries/Animations/ScaleAnimation");
15
15
  var SweepAnimation_1 = require("../Charting/Visuals/RenderableSeries/Animations/SweepAnimation");
16
16
  var WaveAnimation_1 = require("../Charting/Visuals/RenderableSeries/Animations/WaveAnimation");
17
+ var BandSeriesDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/BandSeriesDataLabelProvider");
18
+ var BubbleSeriesDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/BubbleSeriesDataLabelProvider");
19
+ var ColumnSeriesDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/ColumnSeriesDataLabelProvider");
20
+ var ContoursDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/ContoursDataLabelProvider");
21
+ var DataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/DataLabelProvider");
22
+ var HeatMapDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/HeatMapDataLabelProvider");
23
+ var LineSeriesDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/LineSeriesDataLabelProvider");
24
+ var NonUniformHeatmapDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/NonUniformHeatmapDataLabelProvider");
25
+ var TextDataLabelProvider_1 = require("../Charting/Visuals/RenderableSeries/DataLabels/TextDataLabelProvider");
17
26
  var FastBandRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastBandRenderableSeries");
18
27
  var FastBubbleRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastBubbleRenderableSeries");
19
28
  var FastCandlestickRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastCandlestickRenderableSeries");
20
29
  var FastColumnRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastColumnRenderableSeries");
21
30
  var FastErrorBarsRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastErrorBarsRenderableSeries");
31
+ var FastImpulseRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries");
22
32
  var FastLineRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastLineRenderableSeries");
23
33
  var FastMountainRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastMountainRenderableSeries");
24
34
  var FastOhlcRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastOhlcRenderableSeries");
35
+ var FastTextRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastTextRenderableSeries");
25
36
  var GlowEffect_1 = require("../Charting/Visuals/RenderableSeries/GlowEffect");
37
+ var NonUniformHeatmapRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/NonUniformHeatmapRenderableSeries");
26
38
  var ShadowEffect_1 = require("../Charting/Visuals/RenderableSeries/ShadowEffect");
27
39
  var SplineBandRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/SplineBandRenderableSeries");
28
40
  var SplineLineRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/SplineLineRenderableSeries");
@@ -36,6 +48,7 @@ var UniformHeatmapRenderableSeries_1 = require("../Charting/Visuals/RenderableSe
36
48
  var XyScatterRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/XyScatterRenderableSeries");
37
49
  var AnimationType_1 = require("../types/AnimationType");
38
50
  var BaseType_1 = require("../types/BaseType");
51
+ var DataLabelProviderType_1 = require("../types/DataLabelProviderType");
39
52
  var PaletteProviderType_1 = require("../types/PaletteProviderType");
40
53
  var PointMarkerType_1 = require("../types/PointMarkerType");
41
54
  var SeriesType_1 = require("../types/SeriesType");
@@ -43,7 +56,6 @@ var ShaderEffectType_1 = require("../types/ShaderEffectType");
43
56
  var buildDataSeries_1 = require("./buildDataSeries");
44
57
  var chartBuilder_1 = require("./chartBuilder");
45
58
  var classFactory_1 = require("./classFactory");
46
- var FastImpulseRenderableSeries_1 = require("../Charting/Visuals/RenderableSeries/FastImpulseRenderableSeries");
47
59
  (0, classFactory_1.registerWasmType)(BaseType_1.EBaseType.PointMarker, PointMarkerType_1.EPointMarkerType.Cross, function (wasm, options) { return new CrossPointMarker_1.CrossPointMarker(wasm, options); }, true);
48
60
  (0, classFactory_1.registerWasmType)(BaseType_1.EBaseType.PointMarker, PointMarkerType_1.EPointMarkerType.Ellipse, function (wasm, options) { return new EllipsePointMarker_1.EllipsePointMarker(wasm, options); }, true);
49
61
  (0, classFactory_1.registerWasmType)(BaseType_1.EBaseType.PointMarker, PointMarkerType_1.EPointMarkerType.Sprite, function (wasm, options) { return new SpritePointMarker_1.SpritePointMarker(wasm, options); }, true);
@@ -56,6 +68,15 @@ var FastImpulseRenderableSeries_1 = require("../Charting/Visuals/RenderableSerie
56
68
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.Animation, AnimationType_1.EAnimationType.Scale, function (options) { return new ScaleAnimation_1.ScaleAnimation(options); }, true);
57
69
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.Animation, AnimationType_1.EAnimationType.Sweep, function (options) { return new SweepAnimation_1.SweepAnimation(options); }, true);
58
70
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.Animation, AnimationType_1.EAnimationType.Wave, function (options) { return new WaveAnimation_1.WaveAnimation(options); }, true);
71
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Default, function (options) { return new DataLabelProvider_1.DataLabelProvider(options); }, true);
72
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Line, function (options) { return new LineSeriesDataLabelProvider_1.LineSeriesDataLabelProvider(options); }, true);
73
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Column, function (options) { return new ColumnSeriesDataLabelProvider_1.ColumnSeriesDataLabelProvider(options); }, true);
74
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Text, function (options) { return new TextDataLabelProvider_1.TextDataLabelProvider(options); }, true);
75
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Heatmap, function (options) { return new HeatMapDataLabelProvider_1.HeatMapDataLabelProvider(options); }, true);
76
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.NonUniformHeatmap, function (options) { return new NonUniformHeatmapDataLabelProvider_1.NonUniformHeatMapDataLabelProvider(options); }, true);
77
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Bubble, function (options) { return new BubbleSeriesDataLabelProvider_1.BubbleSeriesDataLabelProvider(options); }, true);
78
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Band, function (options) { return new BandSeriesDataLabelProvider_1.BandSeriesDataLabelProvider(options); }, true);
79
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.DataLabelProvider, DataLabelProviderType_1.EDataLabelProviderType.Contours, function (options) { return new ContoursDataLabelProvider_1.ContoursDataLabelProvider(options); }, true);
59
80
  // Metadata
60
81
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.MetadataGenerator, "Template", function (template) { return new IPointMetadata_1.TemplateMetadataGenerator(template); }, true);
61
82
  // PaletteProviders
@@ -125,9 +146,15 @@ var buildSeries = function (wasmContext, definition, sharedData) {
125
146
  else if (seriesDef.type === SeriesType_1.ESeriesType.UniformHeatmapSeries) {
126
147
  series = new UniformHeatmapRenderableSeries_1.UniformHeatmapRenderableSeries(wasmContext, seriesDef.options);
127
148
  }
149
+ else if (seriesDef.type === SeriesType_1.ESeriesType.NonUniformHeatmapSeries) {
150
+ series = new NonUniformHeatmapRenderableSeries_1.NonUniformHeatmapRenderableSeries(wasmContext, seriesDef.options);
151
+ }
128
152
  else if (seriesDef.type === SeriesType_1.ESeriesType.UniformContoursSeries) {
129
153
  series = new UniformContoursRenderableSeries_1.UniformContoursRenderableSeries(wasmContext, seriesDef.options);
130
154
  }
155
+ else if (seriesDef.type === SeriesType_1.ESeriesType.TextSeries) {
156
+ series = new FastTextRenderableSeries_1.FastTextRenderableSeries(wasmContext, seriesDef.options);
157
+ }
131
158
  else if (seriesDef.type === SeriesType_1.ESeriesType.StackedColumnSeries) {
132
159
  series = new StackedColumnRenderableSeries_1.StackedColumnRenderableSeries(wasmContext, seriesDef.options);
133
160
  }
@@ -1,11 +1,12 @@
1
1
  import { ICentralAxesLayoutManagerOptions } from "../Charting/LayoutManager/CentralAxesLayoutManager";
2
2
  import { ILayoutManagerOptions } from "../Charting/LayoutManager/LayoutManager";
3
- import { I2DSurfaceOptions } from "../Charting/Visuals/I2DSurfaceOptions";
3
+ import { I2DSubSurfaceOptions, I2DSurfaceOptions } from "../Charting/Visuals/I2DSurfaceOptions";
4
4
  import { IPieSurfaceOptions } from "../Charting/Visuals/SciChartPieSurface/IPieSurfaceOptions";
5
5
  import { IPieSegmentOptions } from "../Charting/Visuals/SciChartPieSurface/PieSegment/PieSegment";
6
6
  import { SciChartPieSurface } from "../Charting/Visuals/SciChartPieSurface/SciChartPieSurface";
7
7
  import { SciChartSurface } from "../Charting/Visuals/SciChartSurface";
8
8
  import { ELayoutManagerType } from "../types/LayoutMangerType";
9
+ import { TSciChart } from "../types/TSciChart";
9
10
  import { TAnnotationDefinition } from "./buildAnnotations";
10
11
  import { TAxisDefinition } from "./buildAxis";
11
12
  import { TSharedDataDefinition } from "./buildDataSeries";
@@ -34,6 +35,30 @@ export interface ISciChart2DDefinition {
34
35
  * receiving the sciChartSurface as a parameter
35
36
  */
36
37
  onCreated?: ((surface: SciChartSurface) => void) | string;
38
+ /**
39
+ * Subcharts to be added to this surface
40
+ */
41
+ subCharts?: ISubChartDefinition[];
42
+ /**
43
+ * Whether to create this chart using a dedicated webassembly context. See {@link SciChartSurface.createSingle}
44
+ */
45
+ createSingle?: boolean;
46
+ }
47
+ export interface ISubChartDefinition {
48
+ /** Optional {@link I2DSubSurfaceOptions} to pass to the subSurface */
49
+ surface?: I2DSubSurfaceOptions;
50
+ /** One or an array of {@link TAxisDefinition} to describe the X Axes. Defaults to a single numeric axis */
51
+ xAxes?: TAxisDefinition[] | TAxisDefinition;
52
+ /** One or an array of {@link TAxisDefinition} to describe the Y Axes. Defaults to a single numeric axis */
53
+ yAxes?: TAxisDefinition[] | TAxisDefinition;
54
+ /** One or an array of {@link TSeriesDefinition} to describe the renderable series */
55
+ series?: TSeriesDefinition[] | TSeriesDefinition;
56
+ /** A {@link TSharedDataDefinition} object that defines data that can be referenced by the series */
57
+ sharedData?: TSharedDataDefinition;
58
+ /** One or an array of {@link TModifierDefinition} to describe modifiers to apply to the chart */
59
+ modifiers?: TModifierDefinition[] | TModifierDefinition;
60
+ /** One or an array of {@link TAnnotationDefinition} to describe annotations to apply to the chart */
61
+ annotations?: TAnnotationDefinition[] | TAnnotationDefinition;
37
62
  }
38
63
  /**
39
64
  * A definition that can be used to build a Pie Chart using {@link chartBuilder.buildChart} or {@link chartBuilder.buildPieChart}
@@ -68,7 +93,7 @@ export declare type TLayoutManagerDefinition = {
68
93
  * @param definition the {@link ISciChart2DDefinition}
69
94
  */
70
95
  export declare const build2DChart: (divElementId: string, definition: ISciChart2DDefinition | string) => Promise<{
71
- wasmContext: import("../types/TSciChart").TSciChart;
96
+ wasmContext: TSciChart;
72
97
  sciChartSurface: SciChartSurface;
73
98
  }>;
74
99
  /**
@@ -78,3 +103,4 @@ export declare const build2DChart: (divElementId: string, definition: ISciChart2
78
103
  * @param definition the {@link ISciChartPieDefinition}
79
104
  */
80
105
  export declare const buildPieChart: (divElementId: string, definition: ISciChartPieDefinition | string) => Promise<SciChartPieSurface>;
106
+ export declare function configure2DSurface(definition: ISciChart2DDefinition, sciChartSurface: SciChartSurface, wasmContext: TSciChart): void;
@@ -36,7 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
36
  }
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.buildPieChart = exports.build2DChart = void 0;
39
+ exports.configure2DSurface = exports.buildPieChart = exports.build2DChart = void 0;
40
40
  var BottomAlignedInnerAxisLayoutStrategy_1 = require("../Charting/LayoutManager/BottomAlignedInnerAxisLayoutStrategy");
41
41
  var BottomAlignedOuterAxisLayoutStrategy_1 = require("../Charting/LayoutManager/BottomAlignedOuterAxisLayoutStrategy");
42
42
  var BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy_1 = require("../Charting/LayoutManager/BottomAlignedOuterHorizontallyStackedAxisLayoutStrategy");
@@ -51,6 +51,7 @@ var RightAlignedOuterVerticallyStackedAxisLayoutStrategy_1 = require("../Chartin
51
51
  var TopAlignedInnerAxisLayoutStrategy_1 = require("../Charting/LayoutManager/TopAlignedInnerAxisLayoutStrategy");
52
52
  var TopAlignedOuterAxisLayoutStrategy_1 = require("../Charting/LayoutManager/TopAlignedOuterAxisLayoutStrategy");
53
53
  var TopAlignedOuterHorizontallyStackedAxisLayoutStrategy_1 = require("../Charting/LayoutManager/TopAlignedOuterHorizontallyStackedAxisLayoutStrategy");
54
+ var SciChartJsNavyTheme_1 = require("../Charting/Themes/SciChartJsNavyTheme");
54
55
  var SciChartJSDarkTheme_1 = require("../Charting/Themes/SciChartJSDarkTheme");
55
56
  var SciChartJSDarkv2Theme_1 = require("../Charting/Themes/SciChartJSDarkv2Theme");
56
57
  var SciChartJSLightTheme_1 = require("../Charting/Themes/SciChartJSLightTheme");
@@ -68,10 +69,12 @@ var buildModifiers_1 = require("./buildModifiers");
68
69
  var buildSeries_1 = require("./buildSeries");
69
70
  var chartBuilder_1 = require("./chartBuilder");
70
71
  var classFactory_1 = require("./classFactory");
72
+ var ThemeProviderType_1 = require("../types/ThemeProviderType");
71
73
  // register themes
72
- (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, "Light", function () { return new SciChartJSLightTheme_1.SciChartJSLightTheme(); }, true);
73
- (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, "DarkV2", function () { return new SciChartJSDarkv2Theme_1.SciChartJSDarkv2Theme(); }, true);
74
- (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, "Dark", function () { return new SciChartJSDarkTheme_1.SciChartJSDarkTheme(); }, true);
74
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, ThemeProviderType_1.EThemeProviderType.Light, function () { return new SciChartJSLightTheme_1.SciChartJSLightTheme(); }, true);
75
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, ThemeProviderType_1.EThemeProviderType.DarkV2, function () { return new SciChartJSDarkv2Theme_1.SciChartJSDarkv2Theme(); }, true);
76
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, ThemeProviderType_1.EThemeProviderType.Dark, function () { return new SciChartJSDarkTheme_1.SciChartJSDarkTheme(); }, true);
77
+ (0, classFactory_1.registerType)(BaseType_1.EBaseType.ThemeProvider, ThemeProviderType_1.EThemeProviderType.Navy, function () { return new SciChartJsNavyTheme_1.SciChartJsNavyTheme(); }, true);
75
78
  // register Layout managers
76
79
  (0, classFactory_1.registerType)(BaseType_1.EBaseType.LayoutManager, LayoutMangerType_1.ELayoutManagerType.Default, function (options) { return new LayoutManager_1.LayoutManager(options); }, true);
77
80
  // TODO builder api support for VerticalGroup and synced layoutmanagers
@@ -99,38 +102,25 @@ var classFactory_1 = require("./classFactory");
99
102
  * @param definition the {@link ISciChart2DDefinition}
100
103
  */
101
104
  var build2DChart = function (divElementId, definition) { return __awaiter(void 0, void 0, void 0, function () {
102
- var _a, wasmContext, sciChartSurface;
103
- var _b, _c, _d, _e, _f;
104
- return __generator(this, function (_g) {
105
- switch (_g.label) {
105
+ var wasmChart, wasmContext, sciChartSurface;
106
+ return __generator(this, function (_a) {
107
+ switch (_a.label) {
106
108
  case 0:
107
109
  if (typeof definition === "string") {
108
110
  definition = JSON.parse(definition, chartBuilder_1.chartReviver);
109
111
  }
110
- return [4 /*yield*/, SciChartSurface_1.SciChartSurface.create(divElementId, definition === null || definition === void 0 ? void 0 : definition.surface)];
112
+ if (!(definition === null || definition === void 0 ? void 0 : definition.createSingle)) return [3 /*break*/, 2];
113
+ return [4 /*yield*/, SciChartSurface_1.SciChartSurface.createSingle(divElementId, definition === null || definition === void 0 ? void 0 : definition.surface)];
111
114
  case 1:
112
- _a = _g.sent(), wasmContext = _a.wasmContext, sciChartSurface = _a.sciChartSurface;
113
- if (definition.xAxes) {
114
- (_b = sciChartSurface.xAxes).add.apply(_b, (0, buildAxis_1.buildAxes)(wasmContext, definition.xAxes));
115
- }
116
- if (sciChartSurface.xAxes.size() === 0) {
117
- sciChartSurface.xAxes.add(new NumericAxis_1.NumericAxis(wasmContext));
118
- }
119
- if (definition.yAxes) {
120
- (_c = sciChartSurface.yAxes).add.apply(_c, (0, buildAxis_1.buildAxes)(wasmContext, definition.yAxes));
121
- }
122
- if (sciChartSurface.yAxes.size() === 0) {
123
- sciChartSurface.yAxes.add(new NumericAxis_1.NumericAxis(wasmContext));
124
- }
125
- if (definition.series) {
126
- (_d = sciChartSurface.renderableSeries).add.apply(_d, (0, buildSeries_1.buildSeries)(wasmContext, definition.series, definition.sharedData));
127
- }
128
- if (definition.modifiers) {
129
- (_e = sciChartSurface.chartModifiers).add.apply(_e, (0, buildModifiers_1.buildModifiers)(definition.modifiers));
130
- }
131
- if (definition.annotations) {
132
- (_f = sciChartSurface.annotations).add.apply(_f, (0, buildAnnotations_1.buildAnnotations)(definition.annotations));
133
- }
115
+ wasmChart = _a.sent();
116
+ return [3 /*break*/, 4];
117
+ case 2: return [4 /*yield*/, SciChartSurface_1.SciChartSurface.create(divElementId, definition === null || definition === void 0 ? void 0 : definition.surface)];
118
+ case 3:
119
+ wasmChart = _a.sent();
120
+ _a.label = 4;
121
+ case 4:
122
+ wasmContext = wasmChart.wasmContext, sciChartSurface = wasmChart.sciChartSurface;
123
+ configure2DSurface(definition, sciChartSurface, wasmContext);
134
124
  if (definition.onCreated) {
135
125
  if (typeof definition.onCreated === "string") {
136
126
  sciChartSurface.onCreatedName = definition.onCreated;
@@ -183,3 +173,35 @@ var buildPieChart = function (divElementId, definition) { return __awaiter(void
183
173
  });
184
174
  }); };
185
175
  exports.buildPieChart = buildPieChart;
176
+ function configure2DSurface(definition, sciChartSurface, wasmContext) {
177
+ var _a, _b, _c, _d, _e;
178
+ if (definition.xAxes) {
179
+ (_a = sciChartSurface.xAxes).add.apply(_a, (0, buildAxis_1.buildAxes)(wasmContext, definition.xAxes));
180
+ }
181
+ if (sciChartSurface.xAxes.size() === 0 && !definition.subCharts) {
182
+ sciChartSurface.xAxes.add(new NumericAxis_1.NumericAxis(wasmContext));
183
+ }
184
+ if (definition.yAxes) {
185
+ (_b = sciChartSurface.yAxes).add.apply(_b, (0, buildAxis_1.buildAxes)(wasmContext, definition.yAxes));
186
+ }
187
+ if (sciChartSurface.yAxes.size() === 0 && !definition.subCharts) {
188
+ sciChartSurface.yAxes.add(new NumericAxis_1.NumericAxis(wasmContext));
189
+ }
190
+ if (definition.series) {
191
+ (_c = sciChartSurface.renderableSeries).add.apply(_c, (0, buildSeries_1.buildSeries)(wasmContext, definition.series, definition.sharedData));
192
+ }
193
+ if (definition.modifiers) {
194
+ (_d = sciChartSurface.chartModifiers).add.apply(_d, (0, buildModifiers_1.buildModifiers)(definition.modifiers));
195
+ }
196
+ if (definition.annotations) {
197
+ (_e = sciChartSurface.annotations).add.apply(_e, (0, buildAnnotations_1.buildAnnotations)(definition.annotations));
198
+ }
199
+ if (definition.subCharts && !sciChartSurface.isSubSurface) {
200
+ for (var _i = 0, _f = definition.subCharts; _i < _f.length; _i++) {
201
+ var subChartDefinition = _f[_i];
202
+ var subSurface = sciChartSurface.addSubChart(subChartDefinition.surface);
203
+ configure2DSurface(subChartDefinition, subSurface, wasmContext);
204
+ }
205
+ }
206
+ }
207
+ exports.configure2DSurface = configure2DSurface;
@@ -1,6 +1,9 @@
1
1
  import { SciChartPieSurface } from "../Charting/Visuals/SciChartPieSurface/SciChartPieSurface";
2
- import { TWebAssemblyChart } from "../Charting/Visuals/SciChartSurface";
2
+ import { SciChartSurface, TWebAssemblyChart } from "../Charting/Visuals/SciChartSurface";
3
+ import { SciChartSurfaceBase } from "../Charting/Visuals/SciChartSurfaceBase";
3
4
  import { ESciChartSurfaceType } from "../types/SciChartSurfaceType";
5
+ import { TSciChart } from "../types/TSciChart";
6
+ import { TSciChart3D } from "../types/TSciChart3D";
4
7
  import { ISciChart2DDefinition, ISciChartPieDefinition } from "./buildSurface";
5
8
  export declare type TSurfaceDefinition = ISciChart2DDefinition | {
6
9
  type?: ESciChartSurfaceType.Default2D;
@@ -20,6 +23,14 @@ export declare function chartReviver(key: string, value: any): any;
20
23
  * @returns
21
24
  */
22
25
  export declare const buildChart: (divElementId: string, definition: string | TSurfaceDefinition) => Promise<TWebAssemblyChart | SciChartPieSurface>;
26
+ /**
27
+ * Configures an existing surface using a definition.
28
+ * This is useful if you need to use the wasmContext in methods or classes you use in your definition
29
+ * @param sciChartSurface
30
+ * @param wasmContext The webassemply context. Pass undefined for a pie surface.
31
+ * @param definition
32
+ */
33
+ export declare const configureChart: (sciChartSurface: SciChartSurfaceBase, wasmContext: TSciChart, definition: string | TSurfaceDefinition) => void;
23
34
  /**
24
35
  * This is just something to call to ensure that all the registrations are run before a surface is created
25
36
  */
@@ -31,25 +42,27 @@ export declare const chartBuilder: {
31
42
  chartReviver: typeof chartReviver;
32
43
  /** @inheritdoc */
33
44
  build2DChart: (divElementId: string, definition: string | ISciChart2DDefinition) => Promise<{
34
- wasmContext: import("../types/TSciChart").TSciChart;
35
- sciChartSurface: import("../Charting/Visuals/SciChartSurface").SciChartSurface;
45
+ wasmContext: TSciChart;
46
+ sciChartSurface: SciChartSurface;
36
47
  }>;
37
48
  /** @inheritdoc */
38
49
  buildPieChart: (divElementId: string, definition: string | ISciChartPieDefinition) => Promise<SciChartPieSurface>;
39
50
  /** @inheritdoc */
40
- buildSeries: (wasmContext: import("../types/TSciChart").TSciChart, definition: import("./buildSeries").TSeriesDefinition | import("./buildSeries").TSeriesDefinition[], sharedData?: import("./buildDataSeries").TSharedDataDefinition) => import("../Charting/Visuals/RenderableSeries/IRenderableSeries").IRenderableSeries[];
51
+ configureChart: (sciChartSurface: SciChartSurfaceBase, wasmContext: TSciChart, definition: string | TSurfaceDefinition) => void;
52
+ /** @inheritdoc */
53
+ buildSeries: (wasmContext: TSciChart, definition: import("./buildSeries").TSeriesDefinition | import("./buildSeries").TSeriesDefinition[], sharedData?: import("./buildDataSeries").TSharedDataDefinition) => import("../Charting/Visuals/RenderableSeries/IRenderableSeries").IRenderableSeries[];
41
54
  /** @inheritdoc */
42
- buildDataSeries: (wasmContext: import("../types/TSciChart").TSciChart, seriesDefinition: import("./buildSeries").TSeriesDefinition, sharedData?: import("./buildDataSeries").TSharedDataDefinition) => import("../Charting/Model/IDataSeries").IDataSeries;
55
+ buildDataSeries: (wasmContext: TSciChart, seriesDefinition: import("./buildSeries").TSeriesDefinition, sharedData?: import("./buildDataSeries").TSharedDataDefinition) => import("../Charting/Model/IDataSeries").IDataSeries;
43
56
  /** @inheritdoc */
44
57
  buildModifiers: (definition: import("./buildModifiers").TModifierDefinition | import("./buildModifiers").TModifierDefinition[]) => import("../Charting/ChartModifiers/ChartModifierBase2D").ChartModifierBase2D[];
45
58
  /** @inheritdoc */
46
- buildAxes: (wasmContext: import("../types/TSciChart").TSciChart, definition: import("./buildAxis").TAxisDefinition | import("./buildAxis").TAxisDefinition[]) => import("../Charting/Visuals/Axis/AxisBase2D").AxisBase2D[];
59
+ buildAxes: (wasmContext: TSciChart, definition: import("./buildAxis").TAxisDefinition | import("./buildAxis").TAxisDefinition[]) => import("../Charting/Visuals/Axis/AxisBase2D").AxisBase2D[];
47
60
  /** @inheritdoc */
48
61
  buildAnnotations: (definition: import("./buildAnnotations").TAnnotationDefinition | import("./buildAnnotations").TAnnotationDefinition[]) => any[];
49
62
  /** @inheritdoc */
50
63
  registerType: <T extends object>(baseType: import("../types/BaseType").EBaseType, type: string, constructor: (options?: any) => T, overWrite?: boolean) => void;
51
64
  /** @inheritdoc */
52
- registerWasmType: <T_1 extends object>(baseType: import("../types/BaseType").EBaseType, type: string, constructor: (wasmContext: import("../types/TSciChart").TSciChart | import("../types/TSciChart3D").TSciChart3D, options?: any) => T_1, overWrite?: boolean) => void;
65
+ registerWasmType: <T_1 extends object>(baseType: import("../types/BaseType").EBaseType, type: string, constructor: (wasmContext: TSciChart | TSciChart3D, options?: any) => T_1, overWrite?: boolean) => void;
53
66
  /** @inheritdoc */
54
67
  registerFunction: <T_2 extends Function>(baseType: import("../types/BaseType").EBaseType, type: string, constructor: T_2, overWrite?: boolean) => void;
55
68
  };
@@ -36,7 +36,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
36
36
  }
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
- exports.chartBuilder = exports.ensureRegistrations = exports.buildChart = exports.chartReviver = void 0;
39
+ exports.chartBuilder = exports.ensureRegistrations = exports.configureChart = exports.buildChart = exports.chartReviver = void 0;
40
40
  var NumberRange_1 = require("../Core/NumberRange");
41
41
  var Thickness_1 = require("../Core/Thickness");
42
42
  var SciChartSurfaceType_1 = require("../types/SciChartSurfaceType");
@@ -61,9 +61,9 @@ function chartReviver(key, value) {
61
61
  var t = value;
62
62
  return new Thickness_1.Thickness(t.top, t.right, t.bottom, t.left);
63
63
  default:
64
- return value;
64
+ // handle NaN serialization/deserialization since NaN is stringified as "null"
65
+ return value === null ? NaN : value;
65
66
  }
66
- return value;
67
67
  }
68
68
  exports.chartReviver = chartReviver;
69
69
  /**
@@ -101,6 +101,38 @@ var buildChart = function (divElementId, definition) { return __awaiter(void 0,
101
101
  });
102
102
  }); };
103
103
  exports.buildChart = buildChart;
104
+ /**
105
+ * Configures an existing surface using a definition.
106
+ * This is useful if you need to use the wasmContext in methods or classes you use in your definition
107
+ * @param sciChartSurface
108
+ * @param wasmContext The webassemply context. Pass undefined for a pie surface.
109
+ * @param definition
110
+ */
111
+ var configureChart = function (sciChartSurface, wasmContext, definition) {
112
+ if (typeof definition === "string") {
113
+ definition = JSON.parse(definition, chartReviver);
114
+ }
115
+ if (!definition) {
116
+ definition = {};
117
+ }
118
+ if ("type" in definition) {
119
+ if (definition.type === SciChartSurfaceType_1.ESciChartSurfaceType.Default2D) {
120
+ // TODO check the definition type matches the surface
121
+ (0, buildSurface_1.configure2DSurface)(definition.options, sciChartSurface, wasmContext);
122
+ }
123
+ else if (definition.type === SciChartSurfaceType_1.ESciChartSurfaceType.Pie2D) {
124
+ //return await buildPieChart(divElementId, definition.options);
125
+ }
126
+ else {
127
+ // @ts-ignore
128
+ throw new Error("Surface type: ".concat(definition.type, " is not yet supported by the builder api"));
129
+ }
130
+ }
131
+ else {
132
+ (0, buildSurface_1.configure2DSurface)(definition, sciChartSurface, wasmContext);
133
+ }
134
+ };
135
+ exports.configureChart = configureChart;
104
136
  /**
105
137
  * This is just something to call to ensure that all the registrations are run before a surface is created
106
138
  */
@@ -116,6 +148,8 @@ exports.chartBuilder = {
116
148
  /** @inheritdoc */
117
149
  buildPieChart: buildSurface_1.buildPieChart,
118
150
  /** @inheritdoc */
151
+ configureChart: exports.configureChart,
152
+ /** @inheritdoc */
119
153
  buildSeries: buildSeries_1.buildSeries,
120
154
  /** @inheritdoc */
121
155
  buildDataSeries: buildDataSeries_1.buildDataSeries,