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
@@ -1,5 +1,7 @@
1
1
  import { TGradientStop } from "../../types/TGradientStop";
2
2
  import { EThemeProviderType } from "../../types/ThemeProviderType";
3
+ import { TSciChart } from "../../types/TSciChart";
4
+ export declare const AUTO_COLOR = "auto";
3
5
  /**
4
6
  * @summary The ThemeProvider has properties to define a theme within SciChart's 2D & 3D Charts
5
7
  * @decription Applied to a 2D {@link SciChartSurface}, or a 3D {@link SciChart3DSurface}, the ThemeProvider may be
@@ -23,6 +25,18 @@ import { EThemeProviderType } from "../../types/ThemeProviderType";
23
25
  * ```
24
26
  */
25
27
  export interface IThemeProvider {
28
+ /**
29
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide stroke colors.
30
+ */
31
+ strokePalette?: string[] | TGradientStop[];
32
+ /**
33
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide fill colors.
34
+ */
35
+ fillPalette?: string[] | TGradientStop[];
36
+ /**
37
+ * Tells SciChart if the theme has a light or dark background (used for calculating contrasting elements)
38
+ */
39
+ isLightBackground?: boolean;
26
40
  /**
27
41
  * The Background color as an HTML color code
28
42
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
@@ -133,6 +147,8 @@ export interface IThemeProvider {
133
147
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
134
148
  */
135
149
  annotationsGripsBackroundBrush: string;
150
+ /** The {@link AnnotationBase} selection box stroke color as an HTML color code */
151
+ annotationSelectionStroke?: string;
136
152
  overviewFillBrush: string;
137
153
  scrollbarBackgroundBrush: string;
138
154
  scrollbarBorderBrush: string;
@@ -238,11 +254,33 @@ export interface IThemeProvider {
238
254
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
239
255
  */
240
256
  axis3DBandsFill: string;
257
+ /**
258
+ * get a color from the strokePalette, either directly (if max is less than strokePalette length) or by interpolation
259
+ * @param index
260
+ * @param max
261
+ * @param wasmContext
262
+ */
263
+ getStrokeColor?(index: number, max: number, wasmContext: TSciChart): string;
264
+ /**
265
+ * get a color from the fillPalette, either directly (if max is less than fillPalette length) or by interpolation
266
+ * @param index
267
+ * @param max
268
+ * @param wasmContext
269
+ */
270
+ getFillColor?(index: number, max: number, wasmContext: TSciChart): string;
241
271
  }
242
272
  /**
243
273
  * IThemePartial contains the same fields as IThemeProvider, but all optional, so can provide partial themes to customise an existing theme
244
274
  */
245
275
  export interface IThemePartial {
276
+ /**
277
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide stroke colors.
278
+ */
279
+ strokePalette?: string[] | TGradientStop[];
280
+ /**
281
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide fill colors.
282
+ */
283
+ fillPalette?: string[] | TGradientStop[];
246
284
  /**
247
285
  * The Background color as an HTML color code
248
286
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
@@ -348,6 +386,8 @@ export interface IThemePartial {
348
386
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
349
387
  */
350
388
  annotationsGripsBackroundBrush?: string;
389
+ /** The {@link AnnotationBase} selection box stroke color as an HTML color code */
390
+ annotationSelectionStroke?: string;
351
391
  overviewFillBrush?: string;
352
392
  scrollbarBackgroundBrush?: string;
353
393
  scrollbarBorderBrush?: string;
@@ -473,6 +513,7 @@ export declare abstract class ThemeProvider implements IThemeProvider {
473
513
  abstract textAnnotationBackground: string;
474
514
  abstract annotationsGripsBorderBrush: string;
475
515
  abstract annotationsGripsBackroundBrush: string;
516
+ annotationSelectionStroke?: string;
476
517
  abstract overviewFillBrush: string;
477
518
  abstract scrollbarBackgroundBrush: string;
478
519
  abstract scrollbarBorderBrush: string;
@@ -499,9 +540,24 @@ export declare abstract class ThemeProvider implements IThemeProvider {
499
540
  abstract planeBorderColor: string;
500
541
  abstract axisPlaneBackgroundFill: string;
501
542
  abstract axis3DBandsFill: string;
543
+ strokePalette: string[] | TGradientStop[];
544
+ fillPalette: string[] | TGradientStop[];
545
+ abstract isLightBackground: boolean;
502
546
  protected overrides: IThemePartial;
547
+ private strokeGradient;
548
+ private fillGradient;
549
+ getStrokeColor(index: number, max: number, wasmContext: TSciChart): string;
550
+ getFillColor(index: number, max: number, wasmContext: TSciChart): string;
503
551
  applyOverrides(overrides: IThemePartial): void;
504
552
  toJSON(): {
553
+ /**
554
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide stroke colors.
555
+ */
556
+ strokePalette?: string[] | TGradientStop[];
557
+ /**
558
+ * An array of color codes (or GradientStops if you want to control the gaps between colors) which will be used to provide fill colors.
559
+ */
560
+ fillPalette?: string[] | TGradientStop[];
505
561
  /**
506
562
  * The Background color as an HTML color code
507
563
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
@@ -607,6 +663,8 @@ export declare abstract class ThemeProvider implements IThemeProvider {
607
663
  * @remarks Acceptable values include RGB format e.g. ```#FF0000```, RGBA format e.g. ```#FF000077`` and RGBA format e.g. ```rgba(255,0,0,0.5)```
608
664
  */
609
665
  annotationsGripsBackroundBrush?: string;
666
+ /** The {@link AnnotationBase} selection box stroke color as an HTML color code */
667
+ annotationSelectionStroke?: string;
610
668
  overviewFillBrush?: string;
611
669
  scrollbarBackgroundBrush?: string;
612
670
  scrollbarBorderBrush?: string;
@@ -709,4 +767,7 @@ export declare abstract class ThemeProvider implements IThemeProvider {
709
767
  axis3DBandsFill?: string;
710
768
  type: string;
711
769
  };
770
+ private getPaletteColor;
771
+ private toColor;
712
772
  }
773
+ export declare const stripAutoColor: (val: string) => string;
@@ -11,10 +11,21 @@ var __assign = (this && this.__assign) || function () {
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.ThemeProvider = void 0;
14
+ exports.stripAutoColor = exports.ThemeProvider = exports.AUTO_COLOR = void 0;
15
+ var parseColor_1 = require("../../utils/parseColor");
16
+ var PaletteFactory_1 = require("../Model/PaletteFactory");
17
+ exports.AUTO_COLOR = "auto";
15
18
  var ThemeProvider = /** @class */ (function () {
16
19
  function ThemeProvider() {
20
+ this.strokePalette = [];
21
+ this.fillPalette = [];
17
22
  }
23
+ ThemeProvider.prototype.getStrokeColor = function (index, max, wasmContext) {
24
+ return this.getPaletteColor(index, max, wasmContext, true);
25
+ };
26
+ ThemeProvider.prototype.getFillColor = function (index, max, wasmContext) {
27
+ return this.getPaletteColor(index, max, wasmContext, false);
28
+ };
18
29
  ThemeProvider.prototype.applyOverrides = function (overrides) {
19
30
  this.overrides = overrides;
20
31
  Object.assign(this, overrides);
@@ -22,6 +33,61 @@ var ThemeProvider = /** @class */ (function () {
22
33
  ThemeProvider.prototype.toJSON = function () {
23
34
  return __assign({ type: this.type }, this.overrides);
24
35
  };
36
+ ThemeProvider.prototype.getPaletteColor = function (index, max, wasmContext, isStroke) {
37
+ var palette = isStroke ? this.strokePalette : this.fillPalette;
38
+ if (!palette || palette.length === 0) {
39
+ throw new Error("".concat(isStroke ? "stroke" : "fill", "Palette must not be empty to use get").concat(isStroke ? "Stroke" : "Fill", "Color"));
40
+ }
41
+ if (palette.length < 2) {
42
+ return this.toColor(palette[0]);
43
+ }
44
+ if (index > max) {
45
+ throw new Error("index must be less than or equal to max");
46
+ }
47
+ if (max <= palette.length) {
48
+ return this.toColor(palette[index]);
49
+ }
50
+ var gradient = isStroke ? this.strokeGradient : this.fillGradient;
51
+ if (!gradient) {
52
+ var gradientStops = typeof palette[0] === "string"
53
+ ? palette.map(function (color, i) {
54
+ return ({
55
+ color: color,
56
+ offset: i / palette.length - 1
57
+ });
58
+ })
59
+ : palette;
60
+ gradient = PaletteFactory_1.PaletteFactory.createColorMap(wasmContext, gradientStops);
61
+ if (isStroke) {
62
+ this.strokeGradient = gradient;
63
+ }
64
+ else {
65
+ this.fillGradient = gradient;
66
+ }
67
+ }
68
+ var lerpFactor = index / max;
69
+ var mapIndex = wasmContext.NumberUtil.Constrain(Math.round(lerpFactor * (gradient.length - 1)), 0, gradient.length - 1);
70
+ var result = gradient[mapIndex];
71
+ return (0, parseColor_1.parseArgbToHtmlColor)(result);
72
+ };
73
+ ThemeProvider.prototype.toColor = function (val) {
74
+ if (typeof val === "string") {
75
+ return val;
76
+ }
77
+ else {
78
+ return val.color;
79
+ }
80
+ };
25
81
  return ThemeProvider;
26
82
  }());
27
83
  exports.ThemeProvider = ThemeProvider;
84
+ var stripAutoColor = function (val) {
85
+ if (val === exports.AUTO_COLOR) {
86
+ return "#00000000";
87
+ }
88
+ if (val && val.startsWith(exports.AUTO_COLOR)) {
89
+ return val.substring(exports.AUTO_COLOR.length);
90
+ }
91
+ return val;
92
+ };
93
+ exports.stripAutoColor = stripAutoColor;
@@ -73,6 +73,8 @@ export declare class SciChartJSDarkTheme extends ThemeProvider {
73
73
  /** @inheritDoc */
74
74
  annotationsGripsBackroundBrush: string;
75
75
  /** @inheritDoc */
76
+ annotationSelectionStroke: string;
77
+ /** @inheritDoc */
76
78
  overviewFillBrush: string;
77
79
  /** @inheritDoc */
78
80
  scrollbarBackgroundBrush: string;
@@ -127,4 +129,6 @@ export declare class SciChartJSDarkTheme extends ThemeProvider {
127
129
  axisPlaneBackgroundFill: string;
128
130
  /** @inheritDoc */
129
131
  axis3DBandsFill: string;
132
+ /** @inheritDoc */
133
+ isLightBackground: boolean;
130
134
  }
@@ -90,9 +90,11 @@ var SciChartJSDarkTheme = /** @class */ (function (_super) {
90
90
  /** @inheritDoc */
91
91
  _this.textAnnotationBackground = "#42b649AA";
92
92
  /** @inheritDoc */
93
- _this.annotationsGripsBorderBrush = "#EEEEEEFF";
93
+ _this.annotationsGripsBorderBrush = "#CDCDCD99";
94
94
  /** @inheritDoc */
95
- _this.annotationsGripsBackroundBrush = "#FFFFFF33";
95
+ _this.annotationsGripsBackroundBrush = "#CDCDCD22";
96
+ /** @inheritDoc */
97
+ _this.annotationSelectionStroke = "#f00e0e66";
96
98
  /** @inheritDoc */
97
99
  _this.overviewFillBrush = "#262728BB";
98
100
  /** @inheritDoc */
@@ -149,6 +151,8 @@ var SciChartJSDarkTheme = /** @class */ (function (_super) {
149
151
  _this.axisPlaneBackgroundFill = "TRANSPARENT";
150
152
  /** @inheritDoc */
151
153
  _this.axis3DBandsFill = "#202123E1";
154
+ /** @inheritDoc */
155
+ _this.isLightBackground = false;
152
156
  return _this;
153
157
  }
154
158
  return SciChartJSDarkTheme;
@@ -54,6 +54,9 @@ var SciChartJSDarkv2Theme = /** @class */ (function (_super) {
54
54
  _this.axisBandsFill = "#20212333";
55
55
  _this.majorGridLineBrush = "#AAAAAA37";
56
56
  _this.minorGridLineBrush = "#77777719";
57
+ _this.strokePalette = ["#F48420", "#AE408E", "#209FD9", "#264B93"];
58
+ _this.fillPalette = ["#F4842077", "#AE408E77", "#209FD977", "#264B9377"];
59
+ _this.isLightBackground = false;
57
60
  return _this;
58
61
  }
59
62
  return SciChartJSDarkv2Theme;
@@ -26,6 +26,10 @@ import { ThemeProvider } from "./IThemeProvider";
26
26
  * ```
27
27
  */
28
28
  export declare class SciChartJSLightTheme extends ThemeProvider {
29
+ /** @inheritDoc */
30
+ strokePalette: string[];
31
+ /** @inheritDoc */
32
+ fillPalette: string[];
29
33
  /** @inheritDoc */
30
34
  type: EThemeProviderType;
31
35
  /** @inheritDoc */
@@ -73,6 +77,8 @@ export declare class SciChartJSLightTheme extends ThemeProvider {
73
77
  /** @inheritDoc */
74
78
  annotationsGripsBackroundBrush: string;
75
79
  /** @inheritDoc */
80
+ annotationSelectionStroke: string;
81
+ /** @inheritDoc */
76
82
  overviewFillBrush: string;
77
83
  /** @inheritDoc */
78
84
  scrollbarBackgroundBrush: string;
@@ -127,4 +133,6 @@ export declare class SciChartJSLightTheme extends ThemeProvider {
127
133
  axisPlaneBackgroundFill: string;
128
134
  /** @inheritDoc */
129
135
  axis3DBandsFill: string;
136
+ /** @inheritDoc */
137
+ isLightBackground: boolean;
130
138
  }
@@ -48,6 +48,10 @@ var SciChartJSLightTheme = /** @class */ (function (_super) {
48
48
  function SciChartJSLightTheme() {
49
49
  var _this = _super !== null && _super.apply(this, arguments) || this;
50
50
  /** @inheritDoc */
51
+ _this.strokePalette = ["#F48420", "#AE408E", "#30BC9A", "#209FD9", "#264B93"];
52
+ /** @inheritDoc */
53
+ _this.fillPalette = ["#F4842077", "#AE408E77", "#30BC9A77", "#209FD977", "#264B9377"];
54
+ /** @inheritDoc */
51
55
  _this.type = ThemeProviderType_1.EThemeProviderType.Light;
52
56
  /** @inheritDoc */
53
57
  _this.sciChartBackground = "#F9F9F9FF";
@@ -94,6 +98,8 @@ var SciChartJSLightTheme = /** @class */ (function (_super) {
94
98
  /** @inheritDoc */
95
99
  _this.annotationsGripsBackroundBrush = "#FFFFFF33";
96
100
  /** @inheritDoc */
101
+ _this.annotationSelectionStroke = "#f00e0e66";
102
+ /** @inheritDoc */
97
103
  _this.overviewFillBrush = "#33333322";
98
104
  /** @inheritDoc */
99
105
  _this.scrollbarBackgroundBrush = "#33333322";
@@ -149,6 +155,8 @@ var SciChartJSLightTheme = /** @class */ (function (_super) {
149
155
  _this.axisPlaneBackgroundFill = "TRANSPARENT";
150
156
  /** @inheritDoc */
151
157
  _this.axis3DBandsFill = "#33333333";
158
+ /** @inheritDoc */
159
+ _this.isLightBackground = true;
152
160
  return _this;
153
161
  }
154
162
  return SciChartJSLightTheme;
@@ -0,0 +1,10 @@
1
+ import { EThemeProviderType } from "../../types/ThemeProviderType";
2
+ import { SciChartJSDarkv2Theme } from "./SciChartJSDarkv2Theme";
3
+ export declare class SciChartJsNavyTheme extends SciChartJSDarkv2Theme {
4
+ type: EThemeProviderType;
5
+ private background1;
6
+ private background2;
7
+ private loadingBackground1;
8
+ private loadingBackground2;
9
+ constructor();
10
+ }
@@ -0,0 +1,49 @@
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
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.SciChartJsNavyTheme = void 0;
19
+ var ThemeProviderType_1 = require("../../types/ThemeProviderType");
20
+ var IThemeProvider_1 = require("./IThemeProvider");
21
+ var SciChartJSDarkv2Theme_1 = require("./SciChartJSDarkv2Theme");
22
+ var SciChartJsNavyTheme = /** @class */ (function (_super) {
23
+ __extends(SciChartJsNavyTheme, _super);
24
+ function SciChartJsNavyTheme() {
25
+ var _this = _super.call(this) || this;
26
+ _this.type = ThemeProviderType_1.EThemeProviderType.Navy;
27
+ _this.background1 = "#22365B";
28
+ _this.background2 = "#17243d";
29
+ _this.loadingBackground1 = "#21253D";
30
+ _this.loadingBackground2 = "#09090F";
31
+ _this.sciChartBackground = "radial-gradient(circle, ".concat(_this.background1, " 0%, ").concat(_this.background2, " 100%)");
32
+ _this.loadingAnimationBackground = "radial-gradient(circle, ".concat(_this.loadingBackground1, " 0%, ").concat(_this.loadingBackground2, " 100%)");
33
+ _this.loadingAnimationForeground = "#2A2F4C";
34
+ _this.axisBandsFill = "#52469503";
35
+ _this.majorGridLineBrush = "#191C6D77";
36
+ _this.minorGridLineBrush = "#2B2D7077";
37
+ _this.tickTextBrush = "#8398ba";
38
+ _this.strokePalette = ["#274b92", "#47bde6", "#ae418d", "#e97064", "#68bcae", "#634e96"];
39
+ _this.fillPalette = ["#274b9288", "#47bde688", "#ae418d88", "#e9706488", "#68bcae88", "#634e9688"];
40
+ _this.lineSeriesColor = IThemeProvider_1.AUTO_COLOR;
41
+ _this.planeBorderColor = "#191C6D77";
42
+ _this.axisPlaneBackgroundFill = "TRANSPARENT";
43
+ _this.axis3DBandsFill = "#52469503";
44
+ _this.isLightBackground = false;
45
+ return _this;
46
+ }
47
+ return SciChartJsNavyTheme;
48
+ }(SciChartJSDarkv2Theme_1.SciChartJSDarkv2Theme));
49
+ exports.SciChartJsNavyTheme = SciChartJsNavyTheme;
@@ -11,14 +11,10 @@ var AdornerLayer = /** @class */ (function () {
11
11
  var selectAnnotationHelper = function (annotations) {
12
12
  annotations.forEach(function (an) {
13
13
  var anBase = an;
14
- if (!selectedAnnotation && anBase.isEditable) {
15
- var isAnnotationSelected = anBase.clickToSelect(args);
16
- if (isAnnotationSelected) {
17
- selectedAnnotation = anBase;
18
- }
19
- }
20
- else {
21
- anBase.isSelected = false;
14
+ /** Allow all annotations to be clicked. Only select if editable */
15
+ var isAnnotationSelected = anBase.click(args, !selectedAnnotation && anBase.isEditable);
16
+ if (isAnnotationSelected) {
17
+ selectedAnnotation = anBase;
22
18
  }
23
19
  });
24
20
  };
@@ -6,14 +6,19 @@ import { CoordinateCalculatorBase } from "../../Numerics/CoordinateCalculators/C
6
6
  import { SciChartSurface } from "../SciChartSurface";
7
7
  import { SciChartSurfaceBase } from "../SciChartSurfaceBase";
8
8
  import { TDpiChangedEventArgs } from "../TextureManager/DpiHelper";
9
+ import { AnnotationClickEventArgs } from "./AnnotationClickEventArgs";
9
10
  import { AnnotationDragDeltaEventArgs } from "./AnnotationDragDeltaEventArgs";
10
11
  import { IAdornerProvider } from "./IAdornerProvider";
11
12
  import { EAnnotationLayer, EAnnotationType, IAnnotation } from "./IAnnotation";
12
13
  export declare enum EDraggingGripPoint {
13
- Point1 = "Point1",
14
- Point2 = "Point2",
15
- Point3 = "Point3",
16
- Point4 = "Point4",
14
+ /** x1,y1 */
15
+ x1y1 = "x1y1",
16
+ /** x2,y1 */
17
+ x2y2 = "x2y2",
18
+ /** x1,y2 */
19
+ x2y1 = "x2y1",
20
+ /** x2,y2 */
21
+ x1y2 = "x1y2",
17
22
  Body = "Body"
18
23
  }
19
24
  /**
@@ -165,6 +170,24 @@ export interface IAnnotationBaseOptions {
165
170
  * Callback function called when drag operation is in progress. Only applicable if {@link isEditable} is true
166
171
  */
167
172
  onDrag?: ((args: AnnotationDragDeltaEventArgs) => void) | string;
173
+ /**
174
+ * Callback function called when the annotation is clicked. Fires even for non Editable annotations
175
+ */
176
+ onClick?: ((args: AnnotationClickEventArgs) => void) | string;
177
+ /** The stroke color for the adorner drag handle */
178
+ annotationsGripsStroke?: string;
179
+ /** The fill color for the adorner drag handle */
180
+ annotationsGripsFill?: string;
181
+ /** The radius of the adorner drag handle */
182
+ annotationsGripsRadius?: number;
183
+ /** The stroke color for the adorner selection box */
184
+ selectionBoxStroke?: string;
185
+ /** How much bigger the selection box is than the bounding box of the annotation, in pixels */
186
+ selectionBoxDelta?: number;
187
+ /** The thickness of the selection box line */
188
+ selectionBoxThickness?: number;
189
+ /** The dragPoints that should be enabled for this annotation */
190
+ dragPoints?: EDraggingGripPoint[];
168
191
  }
169
192
  /**
170
193
  * Defines the CoordinateMode for {@link AnnotationBase | Annotations} within SciChart's
@@ -210,6 +233,8 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
210
233
  /** @inheritDoc */
211
234
  invalidateParentCallback: () => void;
212
235
  adornerDraggingPoint: EDraggingGripPoint;
236
+ selectedChanged: EventHandler<boolean>;
237
+ clicked: EventHandler<AnnotationClickEventArgs>;
213
238
  protected svgAdorner: SVGElement;
214
239
  protected prevIsSelected: boolean;
215
240
  /** the annotation absolute coordinates */
@@ -225,6 +250,13 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
225
250
  };
226
251
  protected typeMap: Map<string, string>;
227
252
  protected isHiddenProperty: boolean;
253
+ protected annotationsGripsStrokeProperty: string;
254
+ protected annotationsGripsFillProperty: string;
255
+ protected annotationsGripsRadiusProperty: number;
256
+ protected selectionBoxStrokeProperty: string;
257
+ protected selectionBoxDeltaProperty: number;
258
+ protected selectionBoxThicknessProperty: number;
259
+ protected dragPointsProperty: EDraggingGripPoint[];
228
260
  private opacityProperty;
229
261
  private annotationLayerProperty;
230
262
  private isEditableProperty;
@@ -300,10 +332,34 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
300
332
  /** @inheritDoc */
301
333
  get isSelected(): boolean;
302
334
  /** @inheritDoc */
335
+ get annotationsGripsStroke(): string;
336
+ /** @inheritDoc */
337
+ set annotationsGripsStroke(color: string);
338
+ /** @inheritDoc */
339
+ get annotationsGripsFill(): string;
340
+ /** @inheritDoc */
341
+ set annotationsGripsFill(color: string);
342
+ /** @inheritDoc */
343
+ get annotationsGripsRadius(): number;
344
+ /** @inheritDoc */
345
+ set annotationsGripsRadius(radius: number);
346
+ /** @inheritDoc */
347
+ get selectionBoxStroke(): string;
348
+ /** @inheritDoc */
349
+ set selectionBoxStroke(color: string);
350
+ /** @inheritDoc */
351
+ get selectionBoxDelta(): number;
352
+ /** @inheritDoc */
353
+ set selectionBoxDelta(delta: number);
354
+ /** @inheritDoc */
355
+ get selectionBoxThickness(): number;
356
+ /** @inheritDoc */
357
+ set selectionBoxThickness(delta: number);
358
+ get isDraggingStarted(): boolean;
359
+ /** @inheritDoc */
303
360
  get opacity(): number;
304
361
  /** @inheritDoc */
305
362
  set opacity(opacity: number);
306
- get isDraggingStarted(): boolean;
307
363
  protected get svgAdornerRoot(): SVGSVGElement;
308
364
  /**
309
365
  * Creates an instance of the Annotation
@@ -314,8 +370,15 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
314
370
  onAttach(scs: SciChartSurfaceBase): void;
315
371
  /** @inheritDoc */
316
372
  onDetach(): void;
373
+ /** Get the dragging points that should be enabled for this annotation */
374
+ getDragPoints(): readonly EDraggingGripPoint[];
375
+ /** Set the dragging points that should be enabled for this annotation */
376
+ setDragPoints(dragPoints: EDraggingGripPoint[]): void;
317
377
  /** @inheritDoc */
318
378
  abstract delete(): void;
379
+ /** Called internally. Send a click to the annotation if the point is in bounds, raising the clicked event and optionally selecting the annotation. */
380
+ click(args: ModifierMouseArgs, selectOnClick: boolean): boolean;
381
+ /** Called internally. Select the annotation if the point is in bounds. Does not raise the clicked event */
319
382
  clickToSelect(args: ModifierMouseArgs): boolean;
320
383
  calcDragDistance(xyPoint: Point): void;
321
384
  onDragStarted(args: ModifierMouseArgs): boolean;
@@ -338,7 +401,7 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
338
401
  * Returns annotationBorders
339
402
  * @param ordered flag to return x and y values in ascending order, where x1 <= x2 and y1 <= y2
340
403
  */
341
- getAnnotationBorders(ordered?: boolean): {
404
+ getAnnotationBorders(ordered?: boolean, applyDelta?: boolean): {
342
405
  x1: number;
343
406
  x2: number;
344
407
  y1: number;
@@ -348,12 +411,22 @@ export declare abstract class AnnotationBase implements IAnnotation, IAdornerPro
348
411
  * Returns annotation borders for the {@link AdornerLayer} which has the size of the whole canvas
349
412
  * @param ordered flag to return x and y values in ascending order
350
413
  */
351
- getAdornerAnnotationBorders(ordered?: boolean): {
414
+ getAdornerAnnotationBorders(ordered?: boolean, applyDelta?: boolean): {
352
415
  x1: number;
353
416
  x2: number;
354
417
  y1: number;
355
418
  y2: number;
356
419
  };
420
+ /** Get svg for the adorner grip handles for standard annotations */
421
+ getAnnotationGripSvg(x: number, y: number): string;
422
+ /** Override this to disable drag behaviour for certain dragging points */
423
+ canDragPoint(dragPoint: EDraggingGripPoint): boolean;
424
+ /**
425
+ * Gets the svg string for the adorner for standard annotations. Called by updateAdornerInner.
426
+ * Coordinates passed in are the top left and bottom right of the bounding box.
427
+ * To get the bounding coordinates in their original order call this.getAdornerAnnotationBorders(false, true);
428
+ */
429
+ protected svgStringAdornerTemplate(x1: number, y1: number, x2: number, y2: number): string;
357
430
  /**
358
431
  * Updates adorner layer for the annotation
359
432
  * @protected