highcharts 9.2.1 → 9.3.2

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 (896) hide show
  1. package/README.md +13 -6
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +48 -8
  4. package/css/annotations/popup.scss +70 -22
  5. package/css/highcharts.css +46 -1
  6. package/css/highcharts.scss +40 -0
  7. package/css/stocktools/gui.css +1 -1
  8. package/css/themes/dark-unica.css +46 -1
  9. package/css/themes/grid-light.css +46 -1
  10. package/css/themes/sand-signika.css +46 -1
  11. package/es-modules/Accessibility/A11yI18n.js +269 -224
  12. package/es-modules/Accessibility/Accessibility.js +244 -129
  13. package/es-modules/Accessibility/AccessibilityComponent.js +78 -313
  14. package/es-modules/Accessibility/Components/AnnotationsA11y.js +19 -5
  15. package/es-modules/Accessibility/Components/ContainerComponent.js +53 -28
  16. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +178 -120
  17. package/es-modules/Accessibility/Components/LegendComponent.js +251 -129
  18. package/es-modules/Accessibility/Components/MenuComponent.js +239 -154
  19. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +172 -93
  20. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +161 -115
  21. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +138 -69
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +67 -28
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +48 -56
  24. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +387 -343
  25. package/es-modules/Accessibility/Components/ZoomComponent.js +156 -70
  26. package/es-modules/Accessibility/FocusBorder.js +192 -152
  27. package/es-modules/Accessibility/HighContrastMode.js +79 -66
  28. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  29. package/es-modules/Accessibility/KeyboardNavigation.js +151 -75
  30. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  31. package/es-modules/Accessibility/Options/DeprecatedOptions.js +21 -4
  32. package/es-modules/Accessibility/Options/LangOptions.js +4 -5
  33. package/es-modules/Accessibility/Options/Options.js +32 -17
  34. package/es-modules/Accessibility/ProxyElement.js +218 -0
  35. package/es-modules/Accessibility/ProxyProvider.js +302 -0
  36. package/es-modules/Accessibility/Utils/Announcer.js +17 -10
  37. package/es-modules/Accessibility/Utils/ChartUtilities.js +55 -45
  38. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  39. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  40. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -42
  41. package/es-modules/Core/Animation/Fx.js +5 -14
  42. package/es-modules/Core/Axis/Axis.js +77 -96
  43. package/es-modules/Core/Axis/Axis3D.js +10 -4
  44. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  45. package/es-modules/Core/Axis/BrokenAxis.js +17 -11
  46. package/es-modules/Core/Axis/Color/ColorAxis.js +7 -4
  47. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +55 -5
  48. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  49. package/es-modules/Core/Axis/DateTimeAxis.js +3 -14
  50. package/es-modules/Core/Axis/GridAxis.js +26 -16
  51. package/es-modules/Core/Axis/NavigatorAxis.js +0 -5
  52. package/es-modules/Core/Axis/OrdinalAxis.js +88 -92
  53. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  54. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +0 -5
  55. package/es-modules/Core/Axis/RadialAxis.js +7 -28
  56. package/es-modules/Core/Axis/ScrollbarAxis.js +27 -12
  57. package/es-modules/Core/Axis/StackingAxis.js +2 -1
  58. package/es-modules/Core/Axis/Tick.js +2 -4
  59. package/es-modules/Core/Axis/TreeGridAxis.js +28 -19
  60. package/es-modules/Core/Axis/TreeGridTick.js +5 -3
  61. package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
  62. package/es-modules/Core/Axis/ZAxis.js +1 -1
  63. package/es-modules/Core/Chart/Chart.js +44 -47
  64. package/es-modules/Core/Chart/Chart3D.js +23 -10
  65. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  66. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  67. package/es-modules/Core/Chart/GanttChart.js +4 -4
  68. package/es-modules/Core/Chart/MapChart.js +13 -25
  69. package/es-modules/Core/Chart/StockChart.js +13 -316
  70. package/es-modules/Core/Color/Palettes.js +22 -0
  71. package/es-modules/Core/DefaultOptions.js +22 -19
  72. package/es-modules/Core/Foundation.js +39 -31
  73. package/es-modules/Core/Geometry/CircleUtilities.js +2 -1
  74. package/es-modules/Core/Globals.js +1 -1
  75. package/es-modules/Core/HttpUtilities.js +8 -7
  76. package/es-modules/Core/Legend/Legend.js +19 -16
  77. package/es-modules/Core/Navigator.js +41 -30
  78. package/es-modules/Core/Pointer.js +52 -45
  79. package/es-modules/Core/Renderer/HTML/AST.js +29 -14
  80. package/es-modules/Core/Renderer/HTML/HTMLElement.js +27 -20
  81. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +8 -6
  82. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  83. package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -20
  84. package/es-modules/Core/Renderer/SVG/SVGLabel.js +17 -8
  85. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +25 -29
  86. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +12 -5
  87. package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -12
  88. package/es-modules/Core/Responsive.js +2 -3
  89. package/es-modules/Core/Scrollbar.js +14 -12
  90. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  91. package/es-modules/Core/Series/DataLabel.js +19 -15
  92. package/es-modules/Core/Series/Point.js +22 -19
  93. package/es-modules/Core/Series/Series.js +200 -235
  94. package/es-modules/Core/Series/SeriesDefaults.js +8 -8
  95. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  96. package/es-modules/Core/Time.js +14 -11
  97. package/es-modules/Core/Tooltip.js +63 -53
  98. package/es-modules/Core/Utilities.js +20 -24
  99. package/es-modules/Data/DataConverter.js +483 -0
  100. package/es-modules/Data/DataPromise.js +252 -0
  101. package/es-modules/Data/DataSeriesConverter.js +207 -0
  102. package/es-modules/Data/DataTable.js +1205 -0
  103. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  104. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  105. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  106. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  107. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  108. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  109. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  110. package/es-modules/Data/Parsers/CSVParser.js +400 -0
  111. package/es-modules/Data/Parsers/DataParser.js +101 -0
  112. package/es-modules/Data/Parsers/GoogleSheetsParser.js +223 -0
  113. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  114. package/es-modules/Data/Stores/CSVStore.js +317 -0
  115. package/es-modules/Data/Stores/DataStore.js +276 -0
  116. package/es-modules/Data/Stores/GoogleSheetsStore.js +169 -0
  117. package/es-modules/Data/Stores/HTMLTableStore.js +353 -0
  118. package/es-modules/Extensions/Annotations/Annotations.js +69 -18
  119. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -3
  120. package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +1 -1
  121. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  122. package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +1 -1
  123. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +3 -6
  124. package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -2
  125. package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +1 -1
  126. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +13 -4
  127. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +0 -1
  128. package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +5 -4
  129. package/es-modules/Extensions/Annotations/NavigationBindings.js +120 -53
  130. package/es-modules/Extensions/Annotations/Popup.js +494 -148
  131. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  132. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +5 -3
  133. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +1 -1
  134. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  135. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  136. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  137. package/es-modules/Extensions/Annotations/Types/Measure.js +29 -19
  138. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +7 -6
  139. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +211 -0
  140. package/es-modules/Extensions/Annotations/Types/Tunnel.js +13 -10
  141. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  142. package/es-modules/Extensions/Boost/BoostOptions.js +2 -2
  143. package/es-modules/Extensions/Boost/BoostOverrides.js +6 -10
  144. package/es-modules/Extensions/Boost/BoostUtils.js +0 -6
  145. package/es-modules/Extensions/Boost/WGLRenderer.js +16 -12
  146. package/es-modules/Extensions/Boost/WGLShader.js +13 -11
  147. package/es-modules/Extensions/Boost/WGLVBuffer.js +4 -7
  148. package/es-modules/Extensions/BoostCanvas.js +1 -2
  149. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  150. package/es-modules/Extensions/Data.js +77 -115
  151. package/es-modules/Extensions/DataGrouping.js +54 -32
  152. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  153. package/es-modules/Extensions/DownloadURL.js +2 -2
  154. package/es-modules/Extensions/DragPanes.js +1 -2
  155. package/es-modules/Extensions/DraggablePoints.js +7 -8
  156. package/es-modules/Extensions/Drilldown.js +11 -7
  157. package/es-modules/Extensions/ExportData.js +6 -5
  158. package/es-modules/Extensions/Exporting/Exporting.js +35 -48
  159. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  160. package/es-modules/Extensions/FullScreen.js +4 -3
  161. package/es-modules/Extensions/GeoJSON.js +42 -66
  162. package/es-modules/Extensions/MarkerClusters.js +118 -98
  163. package/es-modules/Extensions/Math3D.js +4 -4
  164. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  165. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +33 -33
  166. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  167. package/es-modules/Extensions/Oldie/Oldie.js +14 -79
  168. package/es-modules/Extensions/Oldie/VMLAxis3D.js +5 -1
  169. package/es-modules/Extensions/OverlappingDataLabels.js +10 -6
  170. package/es-modules/Extensions/Pane.js +11 -12
  171. package/es-modules/Extensions/ParallelCoordinates.js +5 -3
  172. package/es-modules/Extensions/PatternFill.js +17 -11
  173. package/es-modules/Extensions/Polar.js +7 -4
  174. package/es-modules/Extensions/PriceIndication.js +2 -1
  175. package/es-modules/Extensions/RangeSelector.js +22 -59
  176. package/es-modules/Extensions/ScrollablePlotArea.js +2 -2
  177. package/es-modules/Extensions/SeriesLabel.js +1 -1
  178. package/es-modules/Extensions/Sonification/ChartSonify.js +279 -663
  179. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  180. package/es-modules/Extensions/Sonification/Instrument.js +493 -426
  181. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  182. package/es-modules/Extensions/Sonification/Options.js +10 -0
  183. package/es-modules/Extensions/Sonification/PointSonify.js +207 -152
  184. package/es-modules/Extensions/Sonification/SeriesSonify.js +474 -0
  185. package/es-modules/Extensions/Sonification/SignalHandler.js +122 -0
  186. package/es-modules/Extensions/Sonification/Sonification.js +27 -53
  187. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +70 -88
  188. package/es-modules/Extensions/Sonification/Timeline.js +250 -567
  189. package/es-modules/Extensions/Sonification/TimelineEvent.js +157 -0
  190. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  191. package/es-modules/Extensions/Stacking.js +5 -23
  192. package/es-modules/Extensions/Themes/BrandDark.js +293 -0
  193. package/es-modules/Extensions/Themes/BrandLight.js +259 -0
  194. package/es-modules/Extensions/Themes/DarkUnica.js +4 -2
  195. package/es-modules/Extensions/Themes/Grid.js +4 -2
  196. package/es-modules/Extensions/Themes/GridLight.js +4 -2
  197. package/es-modules/Gantt/Connection.js +2 -2
  198. package/es-modules/Gantt/Pathfinder.js +6 -5
  199. package/es-modules/Gantt/PathfinderAlgorithms.js +12 -12
  200. package/es-modules/Maps/MapNavigation.js +30 -68
  201. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  202. package/es-modules/Maps/MapPointer.js +8 -5
  203. package/es-modules/Maps/MapSymbols.js +23 -3
  204. package/es-modules/Maps/MapView.js +450 -0
  205. package/es-modules/Maps/MapViewOptionsDefault.js +97 -0
  206. package/es-modules/Maps/Projection.js +436 -0
  207. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  208. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  209. package/es-modules/Maps/Projections/LambertConformalConic.js +52 -0
  210. package/es-modules/Maps/Projections/Miller.js +16 -0
  211. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  212. package/es-modules/Maps/Projections/ProjectionRegistry.js +19 -0
  213. package/es-modules/Maps/Projections/WebMercator.js +24 -0
  214. package/es-modules/Series/Area/AreaSeries.js +13 -13
  215. package/es-modules/Series/Area3DSeries.js +4 -2
  216. package/es-modules/Series/AreaRange/AreaRangeSeries.js +28 -17
  217. package/es-modules/Series/Bellcurve/BellcurveSeries.js +4 -9
  218. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  219. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  220. package/es-modules/Series/Bubble/BubbleLegendItem.js +5 -15
  221. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  222. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  223. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -19
  224. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  225. package/es-modules/{Mixins/ColorMapSeries.js → Series/ColorMapMixin.js} +10 -8
  226. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  227. package/es-modules/Series/Column/ColumnSeries.js +19 -18
  228. package/es-modules/Series/Column3D/Column3DComposition.js +1 -2
  229. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +11 -8
  230. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
  231. package/es-modules/Series/Cylinder/CylinderComposition.js +36 -4
  232. package/es-modules/Series/DataModifyComposition.js +539 -0
  233. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  234. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +1 -1
  235. package/es-modules/Series/DerivedComposition.js +137 -0
  236. package/es-modules/Series/DrawPointComposition.js +111 -0
  237. package/es-modules/Series/Dumbbell/DumbbellPoint.js +0 -1
  238. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -6
  239. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  240. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  241. package/es-modules/Series/Flags/FlagsSymbols.js +2 -2
  242. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  243. package/es-modules/Series/Funnel3D/Funnel3DComposition.js +14 -8
  244. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +2 -1
  245. package/es-modules/Series/Gantt/GanttPoint.js +1 -1
  246. package/es-modules/Series/Gantt/GanttSeries.js +3 -3
  247. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  248. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  249. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  250. package/es-modules/Series/HLC/HLCSeries.js +378 -0
  251. package/es-modules/Series/Heatmap/HeatmapPoint.js +13 -14
  252. package/es-modules/Series/Heatmap/HeatmapSeries.js +24 -12
  253. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +10 -9
  254. package/es-modules/Series/Histogram/HistogramSeries.js +7 -11
  255. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +1 -4
  256. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +28 -30
  257. package/es-modules/Series/Item/ItemSeries.js +4 -5
  258. package/es-modules/Series/Line/LineSeries.js +1 -2
  259. package/es-modules/Series/Map/MapPoint.js +27 -14
  260. package/es-modules/Series/Map/MapSeries.js +283 -322
  261. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  262. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  263. package/es-modules/Series/MapLine/MapLineSeries.js +2 -4
  264. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  265. package/es-modules/Series/MapPoint/MapPointSeries.js +99 -14
  266. package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -4
  267. package/es-modules/Series/Networkgraph/Integrations.js +8 -22
  268. package/es-modules/Series/Networkgraph/Networkgraph.js +6 -10
  269. package/es-modules/Series/Networkgraph/QuadTree.js +1 -3
  270. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +78 -30
  271. package/es-modules/Series/OHLC/OHLCPoint.js +2 -7
  272. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  273. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  274. package/es-modules/Series/Organization/OrganizationSeries.js +6 -5
  275. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +1 -0
  276. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  277. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +48 -10
  278. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  279. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  280. package/es-modules/Series/Pie/PiePoint.js +2 -2
  281. package/es-modules/Series/Pie/PieSeries.js +7 -8
  282. package/es-modules/Series/Pie3D/Pie3DComposition.js +2 -1
  283. package/es-modules/Series/Pie3D/Pie3DPoint.js +2 -1
  284. package/es-modules/Series/Pie3D/Pie3DSeries.js +1 -1
  285. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +2 -1
  286. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  287. package/es-modules/Series/Sankey/SankeySeries.js +92 -22
  288. package/es-modules/Series/SolidGauge/SolidGaugeComposition.js +3 -1
  289. package/es-modules/Series/Spline/SplineSeries.js +0 -8
  290. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  291. package/es-modules/Series/Sunburst/SunburstSeries.js +6 -6
  292. package/es-modules/Series/Sunburst/SunburstUtilities.js +3 -2
  293. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -5
  294. package/es-modules/Series/Tilemap/TilemapShapes.js +0 -7
  295. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  296. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +88 -78
  297. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  298. package/es-modules/Series/Treemap/TreemapSeries.js +22 -25
  299. package/es-modules/Series/Variwide/VariwideSeries.js +5 -1
  300. package/es-modules/Series/Venn/VennPoint.js +16 -7
  301. package/es-modules/Series/Venn/VennSeries.js +11 -17
  302. package/es-modules/Series/Venn/VennUtils.js +551 -439
  303. package/es-modules/Series/Waterfall/WaterfallSeries.js +8 -6
  304. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  305. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  306. package/es-modules/Series/Wordcloud/WordcloudSeries.js +26 -22
  307. package/es-modules/Series/Wordcloud/WordcloudUtils.js +669 -484
  308. package/es-modules/Series/XRange/XRangePoint.js +7 -12
  309. package/es-modules/Series/XRange/XRangeSeries.js +4 -20
  310. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +15 -6
  311. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  312. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  313. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +4 -6
  314. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  315. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  316. package/es-modules/Stock/Indicators/BB/BBIndicator.js +39 -11
  317. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +35 -15
  318. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  319. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  320. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +28 -16
  321. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +18 -11
  322. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  323. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +6 -6
  324. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +23 -9
  325. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +16 -19
  326. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +32 -14
  327. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  328. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  329. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  330. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +2 -3
  331. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +294 -0
  332. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  333. package/es-modules/Stock/Indicators/PC/PCIndicator.js +25 -13
  334. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  335. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -1
  336. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +2 -1
  337. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  338. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +32 -50
  339. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  340. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +18 -9
  341. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  342. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  343. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  344. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +26 -10
  345. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +19 -7
  346. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  347. package/es-modules/Stock/StockToolsBindings.js +156 -47
  348. package/es-modules/Stock/StockToolsGui.js +442 -37
  349. package/es-modules/masters/highcharts-3d.src.js +1 -1
  350. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  351. package/es-modules/masters/highcharts-more.src.js +1 -1
  352. package/es-modules/masters/highcharts.src.js +1 -1
  353. package/es-modules/masters/highmaps.src.js +1 -1
  354. package/es-modules/masters/highstock.src.js +1 -1
  355. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  356. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  357. package/es-modules/masters/indicators/ao.src.js +1 -1
  358. package/es-modules/masters/indicators/apo.src.js +1 -1
  359. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  360. package/es-modules/masters/indicators/aroon.src.js +1 -1
  361. package/es-modules/masters/indicators/atr.src.js +1 -1
  362. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  363. package/es-modules/masters/indicators/cci.src.js +1 -1
  364. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  365. package/es-modules/masters/indicators/cmf.src.js +1 -1
  366. package/es-modules/masters/indicators/cmo.src.js +1 -1
  367. package/es-modules/masters/indicators/dema.src.js +1 -1
  368. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  369. package/es-modules/masters/indicators/dmi.src.js +1 -1
  370. package/es-modules/masters/indicators/dpo.src.js +1 -1
  371. package/es-modules/masters/indicators/ema.src.js +4 -10
  372. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  373. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  374. package/es-modules/masters/indicators/indicators.src.js +2 -1
  375. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  376. package/es-modules/masters/indicators/klinger.src.js +1 -1
  377. package/es-modules/masters/indicators/macd.src.js +1 -1
  378. package/es-modules/masters/indicators/mfi.src.js +1 -1
  379. package/es-modules/masters/indicators/momentum.src.js +1 -1
  380. package/es-modules/masters/indicators/natr.src.js +1 -1
  381. package/es-modules/masters/indicators/obv.src.js +1 -1
  382. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  383. package/es-modules/masters/indicators/ppo.src.js +1 -1
  384. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  385. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  386. package/es-modules/masters/indicators/psar.src.js +1 -1
  387. package/es-modules/masters/indicators/regressions.src.js +1 -1
  388. package/es-modules/masters/indicators/roc.src.js +1 -1
  389. package/es-modules/masters/indicators/rsi.src.js +1 -1
  390. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  391. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  392. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  393. package/es-modules/masters/indicators/tema.src.js +1 -1
  394. package/es-modules/masters/indicators/trendline.src.js +1 -1
  395. package/es-modules/masters/indicators/trix.src.js +1 -1
  396. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  397. package/es-modules/masters/indicators/vwap.src.js +1 -1
  398. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  399. package/es-modules/masters/indicators/wma.src.js +1 -1
  400. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  401. package/es-modules/masters/modules/accessibility.src.js +16 -2
  402. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  403. package/es-modules/masters/modules/annotations.src.js +1 -1
  404. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  405. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  406. package/es-modules/masters/modules/boost.src.js +1 -1
  407. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  408. package/es-modules/masters/modules/bullet.src.js +1 -1
  409. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  410. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  411. package/es-modules/masters/modules/cylinder.src.js +1 -1
  412. package/es-modules/masters/modules/data.src.js +6 -3
  413. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  414. package/es-modules/masters/modules/debugger.src.js +1 -1
  415. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  416. package/es-modules/masters/modules/dotplot.src.js +1 -1
  417. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  418. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  419. package/es-modules/masters/modules/drilldown.src.js +1 -1
  420. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  421. package/es-modules/masters/modules/export-data.src.js +1 -1
  422. package/es-modules/masters/modules/exporting.src.js +1 -1
  423. package/es-modules/masters/modules/full-screen.src.js +1 -1
  424. package/es-modules/masters/modules/funnel.src.js +1 -1
  425. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  426. package/es-modules/masters/modules/gantt.src.js +1 -1
  427. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  428. package/es-modules/masters/modules/heatmap.src.js +1 -2
  429. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  430. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  431. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  432. package/es-modules/masters/modules/item-series.src.js +1 -1
  433. package/es-modules/masters/modules/lollipop.src.js +1 -1
  434. package/es-modules/masters/modules/map.src.js +1 -3
  435. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  436. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  437. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  438. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  439. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  440. package/es-modules/masters/modules/oldie.src.js +1 -1
  441. package/es-modules/masters/modules/organization.src.js +1 -1
  442. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  443. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  444. package/es-modules/masters/modules/pareto.src.js +1 -1
  445. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  446. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  447. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  448. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  449. package/es-modules/masters/modules/sankey.src.js +1 -1
  450. package/es-modules/masters/modules/series-label.src.js +1 -1
  451. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  452. package/es-modules/masters/modules/sonification.src.js +33 -2
  453. package/es-modules/masters/modules/static-scale.src.js +1 -1
  454. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  455. package/es-modules/masters/modules/stock.src.js +4 -1
  456. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  457. package/es-modules/masters/modules/sunburst.src.js +1 -1
  458. package/es-modules/masters/modules/tilemap.src.js +1 -1
  459. package/es-modules/masters/modules/timeline.src.js +1 -1
  460. package/es-modules/masters/modules/treegrid.src.js +1 -1
  461. package/es-modules/masters/modules/treemap.src.js +1 -1
  462. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  463. package/es-modules/masters/modules/variwide.src.js +1 -1
  464. package/es-modules/masters/modules/vector.src.js +1 -1
  465. package/es-modules/masters/modules/venn.src.js +1 -1
  466. package/es-modules/masters/modules/windbarb.src.js +1 -1
  467. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  468. package/es-modules/masters/modules/xrange.src.js +1 -1
  469. package/es-modules/masters/themes/avocado.src.js +1 -1
  470. package/es-modules/masters/themes/brand-dark.src.js +14 -0
  471. package/es-modules/masters/themes/brand-light.src.js +14 -0
  472. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  473. package/es-modules/masters/themes/dark-green.src.js +1 -1
  474. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  475. package/es-modules/masters/themes/gray.src.js +1 -1
  476. package/es-modules/masters/themes/grid-light.src.js +1 -1
  477. package/es-modules/masters/themes/grid.src.js +1 -1
  478. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  479. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  480. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  481. package/es-modules/masters/themes/skies.src.js +1 -1
  482. package/es-modules/masters/themes/sunset.src.js +1 -1
  483. package/highcharts-3d.js +1 -1
  484. package/highcharts-3d.js.map +1 -1
  485. package/highcharts-3d.src.js +65 -35
  486. package/highcharts-gantt.js +800 -803
  487. package/highcharts-gantt.js.map +1 -1
  488. package/highcharts-gantt.src.js +1359 -1429
  489. package/highcharts-more.js +194 -193
  490. package/highcharts-more.js.map +1 -1
  491. package/highcharts-more.src.js +280 -222
  492. package/highcharts.d.ts +10228 -768
  493. package/highcharts.js +585 -588
  494. package/highcharts.js.map +1 -1
  495. package/highcharts.src.d.ts +10228 -768
  496. package/highcharts.src.js +995 -1066
  497. package/highmaps.js +727 -707
  498. package/highmaps.js.map +1 -1
  499. package/highmaps.src.js +3243 -2135
  500. package/highstock.js +788 -783
  501. package/highstock.js.map +1 -1
  502. package/highstock.src.js +2492 -1981
  503. package/indicators/acceleration-bands.d.ts +17 -1
  504. package/indicators/acceleration-bands.js +11 -9
  505. package/indicators/acceleration-bands.js.map +1 -1
  506. package/indicators/acceleration-bands.src.d.ts +17 -1
  507. package/indicators/acceleration-bands.src.js +238 -112
  508. package/indicators/accumulation-distribution.js +1 -1
  509. package/indicators/accumulation-distribution.src.js +1 -1
  510. package/indicators/ao.js +6 -6
  511. package/indicators/ao.js.map +1 -1
  512. package/indicators/ao.src.js +4 -4
  513. package/indicators/apo.js +5 -6
  514. package/indicators/apo.js.map +1 -1
  515. package/indicators/apo.src.js +16 -84
  516. package/indicators/aroon-oscillator.d.ts +17 -1
  517. package/indicators/aroon-oscillator.js +10 -9
  518. package/indicators/aroon-oscillator.js.map +1 -1
  519. package/indicators/aroon-oscillator.src.d.ts +17 -1
  520. package/indicators/aroon-oscillator.src.js +230 -177
  521. package/indicators/aroon.d.ts +17 -1
  522. package/indicators/aroon.js +11 -9
  523. package/indicators/aroon.js.map +1 -1
  524. package/indicators/aroon.src.d.ts +17 -1
  525. package/indicators/aroon.src.js +227 -112
  526. package/indicators/atr.js +1 -1
  527. package/indicators/atr.src.js +1 -1
  528. package/indicators/bollinger-bands.d.ts +17 -1
  529. package/indicators/bollinger-bands.js +12 -9
  530. package/indicators/bollinger-bands.js.map +1 -1
  531. package/indicators/bollinger-bands.src.d.ts +17 -1
  532. package/indicators/bollinger-bands.src.js +262 -117
  533. package/indicators/cci.js +1 -1
  534. package/indicators/cci.src.js +1 -1
  535. package/indicators/chaikin.js +8 -9
  536. package/indicators/chaikin.js.map +1 -1
  537. package/indicators/chaikin.src.js +8 -76
  538. package/indicators/cmf.js +1 -1
  539. package/indicators/cmf.js.map +1 -1
  540. package/indicators/cmf.src.js +36 -16
  541. package/indicators/cmo.js +1 -1
  542. package/indicators/cmo.src.js +1 -1
  543. package/indicators/dema.js +5 -6
  544. package/indicators/dema.js.map +1 -1
  545. package/indicators/dema.src.js +3 -75
  546. package/indicators/disparity-index.js +6 -7
  547. package/indicators/disparity-index.js.map +1 -1
  548. package/indicators/disparity-index.src.js +20 -74
  549. package/indicators/dmi.js +12 -11
  550. package/indicators/dmi.js.map +1 -1
  551. package/indicators/dmi.src.js +252 -121
  552. package/indicators/dpo.js +1 -1
  553. package/indicators/dpo.src.js +1 -1
  554. package/indicators/ema.js +1 -13
  555. package/indicators/ema.js.map +1 -1
  556. package/indicators/ema.src.js +7 -188
  557. package/indicators/ichimoku-kinko-hyo.js +1 -1
  558. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  559. package/indicators/ichimoku-kinko-hyo.src.js +7 -7
  560. package/indicators/indicators-all.d.ts +17 -1
  561. package/indicators/indicators-all.js +198 -203
  562. package/indicators/indicators-all.js.map +1 -1
  563. package/indicators/indicators-all.src.d.ts +17 -1
  564. package/indicators/indicators-all.src.js +892 -777
  565. package/indicators/indicators.js +12 -12
  566. package/indicators/indicators.js.map +1 -1
  567. package/indicators/indicators.src.js +213 -144
  568. package/indicators/keltner-channels.d.ts +17 -1
  569. package/indicators/keltner-channels.js +11 -10
  570. package/indicators/keltner-channels.js.map +1 -1
  571. package/indicators/keltner-channels.src.d.ts +17 -1
  572. package/indicators/keltner-channels.src.js +246 -118
  573. package/indicators/klinger.js +14 -13
  574. package/indicators/klinger.js.map +1 -1
  575. package/indicators/klinger.src.js +239 -187
  576. package/indicators/macd.js +2 -2
  577. package/indicators/macd.js.map +1 -1
  578. package/indicators/macd.src.js +3 -4
  579. package/indicators/mfi.js +1 -1
  580. package/indicators/mfi.src.js +1 -1
  581. package/indicators/momentum.js +1 -1
  582. package/indicators/momentum.src.js +1 -1
  583. package/indicators/natr.js +3 -3
  584. package/indicators/natr.js.map +1 -1
  585. package/indicators/natr.src.js +2 -4
  586. package/indicators/obv.js +1 -1
  587. package/indicators/obv.src.js +1 -1
  588. package/indicators/pivot-points.js +1 -1
  589. package/indicators/pivot-points.js.map +1 -1
  590. package/indicators/pivot-points.src.js +3 -2
  591. package/indicators/ppo.js +5 -6
  592. package/indicators/ppo.js.map +1 -1
  593. package/indicators/ppo.src.js +3 -75
  594. package/indicators/price-channel.d.ts +17 -1
  595. package/indicators/price-channel.js +11 -9
  596. package/indicators/price-channel.js.map +1 -1
  597. package/indicators/price-channel.src.d.ts +17 -1
  598. package/indicators/price-channel.src.js +288 -168
  599. package/indicators/price-envelopes.js +1 -1
  600. package/indicators/price-envelopes.src.js +1 -1
  601. package/indicators/psar.js +1 -1
  602. package/indicators/psar.src.js +1 -1
  603. package/indicators/regressions.js +1 -1
  604. package/indicators/regressions.js.map +1 -1
  605. package/indicators/regressions.src.js +39 -21
  606. package/indicators/roc.js +1 -1
  607. package/indicators/roc.src.js +1 -1
  608. package/indicators/rsi.js +1 -1
  609. package/indicators/rsi.js.map +1 -1
  610. package/indicators/rsi.src.js +3 -2
  611. package/indicators/slow-stochastic.js +5 -6
  612. package/indicators/slow-stochastic.js.map +1 -1
  613. package/indicators/slow-stochastic.src.js +2 -72
  614. package/indicators/stochastic.d.ts +17 -1
  615. package/indicators/stochastic.js +12 -10
  616. package/indicators/stochastic.js.map +1 -1
  617. package/indicators/stochastic.src.d.ts +17 -1
  618. package/indicators/stochastic.src.js +282 -165
  619. package/indicators/supertrend.js +10 -10
  620. package/indicators/supertrend.js.map +1 -1
  621. package/indicators/supertrend.src.js +6 -7
  622. package/indicators/tema.js +6 -7
  623. package/indicators/tema.js.map +1 -1
  624. package/indicators/tema.src.js +28 -75
  625. package/indicators/trendline.js +1 -1
  626. package/indicators/trendline.src.js +1 -1
  627. package/indicators/trix.js +4 -5
  628. package/indicators/trix.js.map +1 -1
  629. package/indicators/trix.src.js +8 -76
  630. package/indicators/volume-by-price.js +16 -16
  631. package/indicators/volume-by-price.js.map +1 -1
  632. package/indicators/volume-by-price.src.js +27 -10
  633. package/indicators/vwap.js +1 -1
  634. package/indicators/vwap.js.map +1 -1
  635. package/indicators/vwap.src.js +20 -8
  636. package/indicators/williams-r.js +5 -6
  637. package/indicators/williams-r.js.map +1 -1
  638. package/indicators/williams-r.src.js +41 -51
  639. package/indicators/wma.js +1 -1
  640. package/indicators/wma.src.js +1 -1
  641. package/indicators/zigzag.js +1 -1
  642. package/indicators/zigzag.src.js +1 -1
  643. package/modules/accessibility.d.ts +0 -30
  644. package/modules/accessibility.js +240 -216
  645. package/modules/accessibility.js.map +1 -1
  646. package/modules/accessibility.src.d.ts +0 -30
  647. package/modules/accessibility.src.js +7807 -6400
  648. package/modules/annotations-advanced.d.ts +30 -0
  649. package/modules/annotations-advanced.js +192 -165
  650. package/modules/annotations-advanced.js.map +1 -1
  651. package/modules/annotations-advanced.src.d.ts +30 -0
  652. package/modules/annotations-advanced.src.js +1716 -416
  653. package/modules/annotations.js +125 -110
  654. package/modules/annotations.js.map +1 -1
  655. package/modules/annotations.src.js +1059 -304
  656. package/modules/arrow-symbols.js +1 -1
  657. package/modules/arrow-symbols.src.js +1 -1
  658. package/modules/boost-canvas.js +15 -15
  659. package/modules/boost-canvas.js.map +1 -1
  660. package/modules/boost-canvas.src.js +3 -3
  661. package/modules/boost.js +79 -79
  662. package/modules/boost.js.map +1 -1
  663. package/modules/boost.src.js +42 -51
  664. package/modules/broken-axis.js +1 -1
  665. package/modules/broken-axis.js.map +1 -1
  666. package/modules/broken-axis.src.js +18 -12
  667. package/modules/bullet.js +1 -1
  668. package/modules/bullet.src.js +1 -1
  669. package/modules/coloraxis.js +24 -24
  670. package/modules/coloraxis.js.map +1 -1
  671. package/modules/coloraxis.src.js +77 -103
  672. package/modules/current-date-indicator.js +4 -4
  673. package/modules/current-date-indicator.js.map +1 -1
  674. package/modules/current-date-indicator.src.js +4 -4
  675. package/modules/cylinder.js +1 -1
  676. package/modules/cylinder.js.map +1 -1
  677. package/modules/cylinder.src.js +37 -5
  678. package/modules/data.d.ts +6 -6
  679. package/modules/data.js +32 -32
  680. package/modules/data.js.map +1 -1
  681. package/modules/data.src.d.ts +6 -6
  682. package/modules/data.src.js +94 -140
  683. package/modules/datagrouping.js +20 -20
  684. package/modules/datagrouping.js.map +1 -1
  685. package/modules/datagrouping.src.js +56 -33
  686. package/modules/debugger.js +3 -3
  687. package/modules/debugger.js.map +1 -1
  688. package/modules/debugger.src.js +3 -3
  689. package/modules/dependency-wheel.js +11 -11
  690. package/modules/dependency-wheel.js.map +1 -1
  691. package/modules/dependency-wheel.src.js +5 -8
  692. package/modules/dotplot.js +1 -1
  693. package/modules/dotplot.src.js +1 -1
  694. package/modules/drag-panes.js +8 -8
  695. package/modules/drag-panes.js.map +1 -1
  696. package/modules/drag-panes.src.js +3 -3
  697. package/modules/draggable-points.js +1 -1
  698. package/modules/draggable-points.js.map +1 -1
  699. package/modules/draggable-points.src.js +8 -9
  700. package/modules/drilldown.js +24 -24
  701. package/modules/drilldown.js.map +1 -1
  702. package/modules/drilldown.src.js +13 -8
  703. package/modules/dumbbell.js +17 -17
  704. package/modules/dumbbell.js.map +1 -1
  705. package/modules/dumbbell.src.js +4 -8
  706. package/modules/export-data.js +19 -19
  707. package/modules/export-data.js.map +1 -1
  708. package/modules/export-data.src.js +9 -8
  709. package/modules/exporting.js +39 -38
  710. package/modules/exporting.js.map +1 -1
  711. package/modules/exporting.src.js +134 -116
  712. package/modules/full-screen.js +1 -1
  713. package/modules/full-screen.js.map +1 -1
  714. package/modules/full-screen.src.js +5 -4
  715. package/modules/funnel.js +12 -12
  716. package/modules/funnel.js.map +1 -1
  717. package/modules/funnel.src.js +9 -6
  718. package/modules/funnel3d.js +1 -1
  719. package/modules/funnel3d.js.map +1 -1
  720. package/modules/funnel3d.src.js +17 -10
  721. package/modules/gantt.js +217 -218
  722. package/modules/gantt.js.map +1 -1
  723. package/modules/gantt.src.js +364 -363
  724. package/modules/grid-axis.js +1 -1
  725. package/modules/grid-axis.js.map +1 -1
  726. package/modules/grid-axis.src.js +27 -19
  727. package/modules/heatmap.js +39 -39
  728. package/modules/heatmap.js.map +1 -1
  729. package/modules/heatmap.src.js +132 -141
  730. package/modules/heikinashi.js +1 -1
  731. package/modules/heikinashi.js.map +1 -1
  732. package/modules/heikinashi.src.js +12 -10
  733. package/modules/histogram-bellcurve.js +13 -13
  734. package/modules/histogram-bellcurve.js.map +1 -1
  735. package/modules/histogram-bellcurve.src.js +97 -91
  736. package/modules/hollowcandlestick.js +9 -9
  737. package/modules/hollowcandlestick.js.map +1 -1
  738. package/modules/hollowcandlestick.src.js +31 -35
  739. package/modules/item-series.js +6 -6
  740. package/modules/item-series.js.map +1 -1
  741. package/modules/item-series.src.js +6 -6
  742. package/modules/lollipop.js +1 -1
  743. package/modules/lollipop.src.js +1 -1
  744. package/modules/map.d.ts +138 -14
  745. package/modules/map.js +144 -122
  746. package/modules/map.js.map +1 -1
  747. package/modules/map.src.d.ts +138 -14
  748. package/modules/map.src.js +2253 -1074
  749. package/modules/marker-clusters.js +36 -36
  750. package/modules/marker-clusters.js.map +1 -1
  751. package/modules/marker-clusters.src.js +176 -143
  752. package/modules/networkgraph.d.ts +12 -1
  753. package/modules/networkgraph.js +49 -49
  754. package/modules/networkgraph.js.map +1 -1
  755. package/modules/networkgraph.src.d.ts +12 -1
  756. package/modules/networkgraph.src.js +103 -78
  757. package/modules/no-data-to-display.js +5 -5
  758. package/modules/no-data-to-display.js.map +1 -1
  759. package/modules/no-data-to-display.src.js +3 -3
  760. package/modules/offline-exporting.js +18 -17
  761. package/modules/offline-exporting.js.map +1 -1
  762. package/modules/offline-exporting.src.js +39 -44
  763. package/modules/oldie-polyfills.js +1 -1
  764. package/modules/oldie-polyfills.src.js +1 -1
  765. package/modules/oldie.js +26 -26
  766. package/modules/oldie.js.map +1 -1
  767. package/modules/oldie.src.js +21 -81
  768. package/modules/organization.js +13 -13
  769. package/modules/organization.js.map +1 -1
  770. package/modules/organization.src.js +8 -6
  771. package/modules/overlapping-datalabels.js +1 -1
  772. package/modules/overlapping-datalabels.src.js +1 -1
  773. package/modules/parallel-coordinates.js +1 -1
  774. package/modules/parallel-coordinates.js.map +1 -1
  775. package/modules/parallel-coordinates.src.js +6 -4
  776. package/modules/pareto.js +7 -7
  777. package/modules/pareto.js.map +1 -1
  778. package/modules/pareto.src.js +89 -78
  779. package/modules/pathfinder.js +1 -1
  780. package/modules/pathfinder.js.map +1 -1
  781. package/modules/pathfinder.src.js +21 -20
  782. package/modules/pattern-fill.js +1 -1
  783. package/modules/pattern-fill.js.map +1 -1
  784. package/modules/pattern-fill.src.js +18 -12
  785. package/modules/price-indicator.js +1 -1
  786. package/modules/price-indicator.js.map +1 -1
  787. package/modules/price-indicator.src.js +3 -2
  788. package/modules/pyramid3d.js +1 -1
  789. package/modules/pyramid3d.js.map +1 -1
  790. package/modules/pyramid3d.src.js +3 -2
  791. package/modules/sankey.d.ts +12 -1
  792. package/modules/sankey.js +29 -29
  793. package/modules/sankey.js.map +1 -1
  794. package/modules/sankey.src.d.ts +12 -1
  795. package/modules/sankey.src.js +307 -181
  796. package/modules/series-label.js +1 -1
  797. package/modules/series-label.js.map +1 -1
  798. package/modules/series-label.src.js +2 -2
  799. package/modules/solid-gauge.js +1 -1
  800. package/modules/solid-gauge.js.map +1 -1
  801. package/modules/solid-gauge.src.js +17 -2
  802. package/modules/sonification.js +59 -55
  803. package/modules/sonification.js.map +1 -1
  804. package/modules/sonification.src.js +3093 -2594
  805. package/modules/static-scale.js +1 -1
  806. package/modules/static-scale.src.js +1 -1
  807. package/modules/stock-tools.js +178 -163
  808. package/modules/stock-tools.js.map +1 -1
  809. package/modules/stock-tools.src.js +1136 -229
  810. package/modules/stock.d.ts +39 -6
  811. package/modules/stock.js +204 -196
  812. package/modules/stock.js.map +1 -1
  813. package/modules/stock.src.d.ts +39 -6
  814. package/modules/stock.src.js +1822 -1240
  815. package/modules/streamgraph.js +1 -1
  816. package/modules/streamgraph.src.js +1 -1
  817. package/modules/sunburst.js +60 -60
  818. package/modules/sunburst.js.map +1 -1
  819. package/modules/sunburst.src.js +281 -248
  820. package/modules/tilemap.js +17 -17
  821. package/modules/tilemap.js.map +1 -1
  822. package/modules/tilemap.src.js +3 -13
  823. package/modules/timeline.js +18 -18
  824. package/modules/timeline.js.map +1 -1
  825. package/modules/timeline.src.js +5 -5
  826. package/modules/treegrid.js +56 -57
  827. package/modules/treegrid.js.map +1 -1
  828. package/modules/treegrid.src.js +201 -169
  829. package/modules/treemap.js +41 -41
  830. package/modules/treemap.js.map +1 -1
  831. package/modules/treemap.src.js +266 -232
  832. package/modules/variable-pie.js +1 -1
  833. package/modules/variable-pie.src.js +1 -1
  834. package/modules/variwide.js +1 -1
  835. package/modules/variwide.js.map +1 -1
  836. package/modules/variwide.src.js +7 -3
  837. package/modules/vector.js +1 -1
  838. package/modules/vector.src.js +1 -1
  839. package/modules/venn.js +31 -31
  840. package/modules/venn.js.map +1 -1
  841. package/modules/venn.src.js +740 -731
  842. package/modules/windbarb.js +15 -15
  843. package/modules/windbarb.js.map +1 -1
  844. package/modules/windbarb.src.js +90 -62
  845. package/modules/wordcloud.js +23 -24
  846. package/modules/wordcloud.js.map +1 -1
  847. package/modules/wordcloud.src.js +898 -954
  848. package/modules/xrange.js +2 -2
  849. package/modules/xrange.js.map +1 -1
  850. package/modules/xrange.src.js +12 -33
  851. package/package.json +1 -1
  852. package/themes/avocado.js +1 -1
  853. package/themes/avocado.src.js +1 -1
  854. package/themes/brand-dark.js +15 -0
  855. package/themes/brand-dark.js.map +1 -0
  856. package/themes/brand-dark.src.js +328 -0
  857. package/themes/brand-light.js +15 -0
  858. package/themes/brand-light.js.map +1 -0
  859. package/themes/brand-light.src.js +294 -0
  860. package/themes/dark-blue.js +1 -1
  861. package/themes/dark-blue.src.js +1 -1
  862. package/themes/dark-green.js +1 -1
  863. package/themes/dark-green.src.js +1 -1
  864. package/themes/dark-unica.js +1 -1
  865. package/themes/dark-unica.js.map +1 -1
  866. package/themes/dark-unica.src.js +5 -3
  867. package/themes/gray.js +1 -1
  868. package/themes/gray.src.js +1 -1
  869. package/themes/grid-light.js +1 -1
  870. package/themes/grid-light.js.map +1 -1
  871. package/themes/grid-light.src.js +5 -3
  872. package/themes/grid.js +1 -1
  873. package/themes/grid.js.map +1 -1
  874. package/themes/grid.src.js +5 -3
  875. package/themes/high-contrast-dark.js +1 -1
  876. package/themes/high-contrast-dark.src.js +1 -1
  877. package/themes/high-contrast-light.js +1 -1
  878. package/themes/high-contrast-light.src.js +1 -1
  879. package/themes/sand-signika.js +1 -1
  880. package/themes/sand-signika.src.js +1 -1
  881. package/themes/skies.js +1 -1
  882. package/themes/skies.src.js +1 -1
  883. package/themes/sunset.js +1 -1
  884. package/themes/sunset.src.js +1 -1
  885. package/es-modules/Core/Axis/MapAxis.js +0 -157
  886. package/es-modules/Core/Color/Palette.js +0 -82
  887. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  888. package/es-modules/Mixins/ColorSeries.js +0 -77
  889. package/es-modules/Mixins/DerivedSeries.js +0 -118
  890. package/es-modules/Mixins/DrawPoint.js +0 -81
  891. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  892. package/es-modules/Mixins/MultipleLines.js +0 -181
  893. package/es-modules/Mixins/Navigation.js +0 -54
  894. package/es-modules/Mixins/NelderMead.js +0 -132
  895. package/es-modules/Mixins/Polygon.js +0 -259
  896. package/es-modules/Mixins/ReduceArray.js +0 -54
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highstock JS v9.2.1 (2021-08-19)
2
+ * @license Highstock JS v9.3.2 (2021-11-29)
3
3
  *
4
4
  * Indicator series type for Highcharts Stock
5
5
  *
@@ -28,7 +28,56 @@
28
28
  obj[path] = fn.apply(null, args);
29
29
  }
30
30
  }
31
- _registerModule(_modules, 'Mixins/MultipleLines.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js']], function (H, U) {
31
+ _registerModule(_modules, 'Stock/Indicators/ArrayUtilities.js', [], function () {
32
+ /**
33
+ *
34
+ * (c) 2010-2021 Pawel Fus & Daniel Studencki
35
+ *
36
+ * License: www.highcharts.com/license
37
+ *
38
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
39
+ *
40
+ * */
41
+ /* *
42
+ *
43
+ * Functions
44
+ *
45
+ * */
46
+ /**
47
+ * Get extremes of array filled by OHLC data.
48
+ *
49
+ * @private
50
+ *
51
+ * @param {Array<Array<number>>} arr
52
+ * Array of OHLC points (arrays).
53
+ *
54
+ * @param {number} minIndex
55
+ * Index of "low" value in point array.
56
+ *
57
+ * @param {number} maxIndex
58
+ * Index of "high" value in point array.
59
+ *
60
+ * @return {Array<number,number>}
61
+ * Returns array with min and max value.
62
+ */
63
+ function getArrayExtremes(arr, minIndex, maxIndex) {
64
+ return arr.reduce(function (prev, target) { return [
65
+ Math.min(prev[0], target[minIndex]),
66
+ Math.max(prev[1], target[maxIndex])
67
+ ]; }, [Number.MAX_VALUE, -Number.MAX_VALUE]);
68
+ }
69
+ /* *
70
+ *
71
+ * Default Export
72
+ *
73
+ * */
74
+ var ArrayUtilities = {
75
+ getArrayExtremes: getArrayExtremes
76
+ };
77
+
78
+ return ArrayUtilities;
79
+ });
80
+ _registerModule(_modules, 'Stock/Indicators/MultipleLinesComposition.js', [_modules['Core/Series/SeriesRegistry.js'], _modules['Core/Utilities.js']], function (SeriesRegistry, U) {
32
81
  /**
33
82
  *
34
83
  * (c) 2010-2021 Wojciech Chmiel
@@ -38,131 +87,151 @@
38
87
  * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
39
88
  *
40
89
  * */
90
+ var SMAIndicator = SeriesRegistry.seriesTypes.sma;
41
91
  var defined = U.defined,
42
92
  error = U.error,
43
93
  merge = U.merge;
44
- var SMA = H.seriesTypes.sma;
94
+ /* *
95
+ *
96
+ * Composition
97
+ *
98
+ * */
45
99
  /**
46
- * Mixin useful for all indicators that have more than one line.
47
- * Merge it with your implementation where you will provide
48
- * getValues method appropriate to your indicator and pointArrayMap,
49
- * pointValKey, linesApiNames properites. Notice that pointArrayMap
50
- * should be consistent with amount of lines calculated in getValues method.
100
+ * Composition useful for all indicators that have more than one line. Compose
101
+ * it with your implementation where you will provide the `getValues` method
102
+ * appropriate to your indicator and `pointArrayMap`, `pointValKey`,
103
+ * `linesApiNames` properties. Notice that `pointArrayMap` should be consistent
104
+ * with the amount of lines calculated in the `getValues` method.
51
105
  *
52
106
  * @private
53
107
  * @mixin multipleLinesMixin
54
108
  */
55
- var multipleLinesMixin = {
56
- /* eslint-disable valid-jsdoc */
57
- /**
58
- * Lines ids. Required to plot appropriate amount of lines.
59
- * Notice that pointArrayMap should have more elements than
60
- * linesApiNames, because it contains main line and additional lines ids.
61
- * Also it should be consistent with amount of lines calculated in
62
- * getValues method from your implementation.
63
- *
64
- * @private
65
- * @name multipleLinesMixin.pointArrayMap
66
- * @type {Array<string>}
67
- */
68
- pointArrayMap: ['top', 'bottom'],
69
- /**
70
- * Main line id.
71
- *
72
- * @private
73
- * @name multipleLinesMixin.pointValKey
74
- * @type {string}
75
- */
76
- pointValKey: 'top',
77
- /**
78
- * Additional lines DOCS names. Elements of linesApiNames array should
79
- * be consistent with DOCS line names defined in your implementation.
80
- * Notice that linesApiNames should have decreased amount of elements
81
- * relative to pointArrayMap (without pointValKey).
82
- *
83
- * @private
84
- * @name multipleLinesMixin.linesApiNames
85
- * @type {Array<string>}
86
- */
87
- linesApiNames: ['bottomLine'],
88
- /**
89
- * Create translatedLines Collection based on pointArrayMap.
90
- *
91
- * @private
92
- * @function multipleLinesMixin.getTranslatedLinesNames
93
- * @param {string} [excludedValue]
94
- * Main line id
95
- * @return {Array<string>}
96
- * Returns translated lines names without excluded value.
97
- */
98
- getTranslatedLinesNames: function (excludedValue) {
99
- var translatedLines = [];
100
- (this.pointArrayMap || []).forEach(function (propertyName) {
101
- if (propertyName !== excludedValue) {
102
- translatedLines.push('plot' +
103
- propertyName.charAt(0).toUpperCase() +
104
- propertyName.slice(1));
105
- }
106
- });
107
- return translatedLines;
108
- },
109
+ var MultipleLinesComposition;
110
+ (function (MultipleLinesComposition) {
111
+ /* *
112
+ *
113
+ * Declarations
114
+ *
115
+ * */
116
+ /* *
117
+ *
118
+ * Constants
119
+ *
120
+ * */
121
+ var composedClasses = [];
109
122
  /**
123
+ * Additional lines DOCS names. Elements of linesApiNames array should
124
+ * be consistent with DOCS line names defined in your implementation.
125
+ * Notice that linesApiNames should have decreased amount of elements
126
+ * relative to pointArrayMap (without pointValKey).
127
+ *
110
128
  * @private
111
- * @function multipleLinesMixin.toYData
112
- * @param {Highcharts.Point} point
113
- * Indicator point
114
- * @return {Array<number>}
115
- * Returns point Y value for all lines
129
+ * @name multipleLinesMixin.linesApiNames
130
+ * @type {Array<string>}
116
131
  */
117
- toYData: function (point) {
118
- var pointColl = [];
119
- (this.pointArrayMap || []).forEach(function (propertyName) {
120
- pointColl.push(point[propertyName]);
121
- });
122
- return pointColl;
123
- },
132
+ var linesApiNames = ['bottomLine'];
124
133
  /**
125
- * Add lines plot pixel values.
134
+ * Lines ids. Required to plot appropriate amount of lines.
135
+ * Notice that pointArrayMap should have more elements than
136
+ * linesApiNames, because it contains main line and additional lines ids.
137
+ * Also it should be consistent with amount of lines calculated in
138
+ * getValues method from your implementation.
126
139
  *
127
140
  * @private
128
- * @function multipleLinesMixin.translate
129
- * @return {void}
141
+ * @name multipleLinesMixin.pointArrayMap
142
+ * @type {Array<string>}
130
143
  */
131
- translate: function () {
132
- var indicator = this,
133
- pointArrayMap = indicator.pointArrayMap,
134
- LinesNames = [],
135
- value;
136
- var modfidyValue = indicator.modifyValue;
137
- LinesNames = indicator.getTranslatedLinesNames();
138
- SMA.prototype.translate.apply(indicator, arguments);
139
- indicator.points.forEach(function (point) {
140
- pointArrayMap.forEach(function (propertyName, i) {
141
- value = point[propertyName];
142
- // If the modifier, like for example compare exists,
143
- // modified the original value by that method, #15867.
144
- if (modfidyValue) {
145
- value = modfidyValue.call(indicator, value);
146
- }
147
- if (value !== null) {
148
- point[LinesNames[i]] = indicator.yAxis.toPixels(value, true);
144
+ var pointArrayMap = ['top', 'bottom'];
145
+ /**
146
+ * Names of the lines, bewteen which the area should be plotted.
147
+ * If the drawing of the area should
148
+ * be disabled for some indicators, leave this option as an empty array.
149
+ * Names should be the same as the names in the pointArrayMap.
150
+ * @private
151
+ * @name multipleLinesMixin.areaLinesNames
152
+ * @type {Array<string>}
153
+ */
154
+ var areaLinesNames = ['top'];
155
+ /**
156
+ * Main line id.
157
+ *
158
+ * @private
159
+ * @name multipleLinesMixin.pointValKey
160
+ * @type {string}
161
+ */
162
+ var pointValKey = 'top';
163
+ /* *
164
+ *
165
+ * Functions
166
+ *
167
+ * */
168
+ /* eslint-disable valid-jsdoc */
169
+ /**
170
+ * @private
171
+ */
172
+ function compose(IndicatorClass) {
173
+ if (composedClasses.indexOf(IndicatorClass) === -1) {
174
+ composedClasses.push(IndicatorClass);
175
+ var proto = IndicatorClass.prototype;
176
+ proto.linesApiNames = (proto.linesApiNames ||
177
+ linesApiNames.slice());
178
+ proto.pointArrayMap = (proto.pointArrayMap ||
179
+ pointArrayMap.slice());
180
+ proto.pointValKey = (proto.pointValKey ||
181
+ pointValKey);
182
+ proto.areaLinesNames = (proto.areaLinesNames ||
183
+ areaLinesNames.slice());
184
+ proto.drawGraph = drawGraph;
185
+ proto.getGraphPath = getGraphPath;
186
+ proto.toYData = toYData;
187
+ proto.translate = translate;
188
+ proto.getTranslatedLinesNames = getTranslatedLinesNames;
189
+ }
190
+ return IndicatorClass;
191
+ }
192
+ MultipleLinesComposition.compose = compose;
193
+ /**
194
+ * Create the path based on points provided as argument.
195
+ * If indicator.nextPoints option is defined, create the areaFill.
196
+ *
197
+ * @param points Points on which the path should be created
198
+ */
199
+ function getGraphPath(points) {
200
+ var indicator = this;
201
+ var areaPath,
202
+ path = [],
203
+ higherAreaPath = [];
204
+ points = points || this.points;
205
+ // Render Span
206
+ if (indicator.fillGraph && indicator.nextPoints) {
207
+ areaPath = SMAIndicator.prototype.getGraphPath.call(indicator, indicator.nextPoints);
208
+ if (areaPath && areaPath.length) {
209
+ areaPath[0][0] = 'L';
210
+ path = SMAIndicator.prototype.getGraphPath.call(indicator, points);
211
+ higherAreaPath = areaPath.slice(0, path.length);
212
+ // Reverse points, so that the areaFill will start from the end:
213
+ for (var i = higherAreaPath.length - 1; i >= 0; i--) {
214
+ path.push(higherAreaPath[i]);
149
215
  }
150
- });
151
- });
152
- },
216
+ }
217
+ }
218
+ else {
219
+ path = SMAIndicator.prototype.getGraphPath.apply(indicator, arguments);
220
+ }
221
+ return path;
222
+ }
153
223
  /**
154
224
  * Draw main and additional lines.
155
225
  *
156
226
  * @private
157
227
  * @function multipleLinesMixin.drawGraph
158
- * @return {void}
159
228
  */
160
- drawGraph: function () {
229
+ function drawGraph() {
161
230
  var indicator = this,
162
231
  pointValKey = indicator.pointValKey,
163
232
  linesApiNames = indicator.linesApiNames,
233
+ areaLinesNames = indicator.areaLinesNames,
164
234
  mainLinePoints = indicator.points,
165
- pointsLength = mainLinePoints.length,
166
235
  mainLineOptions = indicator.options,
167
236
  mainLinePath = indicator.graph,
168
237
  gappedExtend = {
@@ -172,7 +241,8 @@
172
241
  },
173
242
  // additional lines point place holders:
174
243
  secondaryLines = [],
175
- secondaryLinesNames = indicator.getTranslatedLinesNames(pointValKey),
244
+ secondaryLinesNames = indicator.getTranslatedLinesNames(pointValKey);
245
+ var pointsLength = mainLinePoints.length,
176
246
  point;
177
247
  // Generate points for additional lines:
178
248
  secondaryLinesNames.forEach(function (plotLine, index) {
@@ -189,6 +259,27 @@
189
259
  }
190
260
  pointsLength = mainLinePoints.length;
191
261
  });
262
+ // Modify options and generate area fill:
263
+ if (this.userOptions.fillColor && areaLinesNames.length) {
264
+ var index = secondaryLinesNames.indexOf(getLineName(areaLinesNames[0])),
265
+ secondLinePoints = secondaryLines[index],
266
+ firstLinePoints = areaLinesNames.length === 1 ?
267
+ mainLinePoints :
268
+ secondaryLines[secondaryLinesNames.indexOf(getLineName(areaLinesNames[1]))],
269
+ originalColor = indicator.color;
270
+ indicator.points = firstLinePoints;
271
+ indicator.nextPoints = secondLinePoints;
272
+ indicator.color = this.userOptions.fillColor;
273
+ indicator.options = merge(mainLinePoints, gappedExtend);
274
+ indicator.graph = indicator.area;
275
+ indicator.fillGraph = true;
276
+ SeriesRegistry.seriesTypes.sma.prototype.drawGraph.call(indicator);
277
+ indicator.area = indicator.graph;
278
+ // Clean temporary properties:
279
+ delete indicator.nextPoints;
280
+ delete indicator.fillGraph;
281
+ indicator.color = originalColor;
282
+ }
192
283
  // Modify options and generate additional lines:
193
284
  linesApiNames.forEach(function (lineName, i) {
194
285
  if (secondaryLines[i]) {
@@ -203,7 +294,7 @@
203
294
  ' at mixin/multiple-line.js:34');
204
295
  }
205
296
  indicator.graph = indicator['graph' + lineName];
206
- SMA.prototype.drawGraph.call(indicator);
297
+ SMAIndicator.prototype.drawGraph.call(indicator);
207
298
  // Now save lines:
208
299
  indicator['graph' + lineName] = indicator.graph;
209
300
  }
@@ -217,71 +308,88 @@
217
308
  indicator.points = mainLinePoints;
218
309
  indicator.options = mainLineOptions;
219
310
  indicator.graph = mainLinePath;
220
- SMA.prototype.drawGraph.call(indicator);
311
+ SMAIndicator.prototype.drawGraph.call(indicator);
312
+ }
313
+ /**
314
+ * Create translatedLines Collection based on pointArrayMap.
315
+ *
316
+ * @private
317
+ * @function multipleLinesMixin.getTranslatedLinesNames
318
+ * @param {string} [excludedValue]
319
+ * Main line id
320
+ * @return {Array<string>}
321
+ * Returns translated lines names without excluded value.
322
+ */
323
+ function getTranslatedLinesNames(excludedValue) {
324
+ var translatedLines = [];
325
+ (this.pointArrayMap || []).forEach(function (propertyName) {
326
+ if (propertyName !== excludedValue) {
327
+ translatedLines.push(getLineName(propertyName));
328
+ }
329
+ });
330
+ return translatedLines;
331
+ }
332
+ /**
333
+ * Generate the API name of the line
334
+ * @param propertyName name of the line
335
+ */
336
+ function getLineName(propertyName) {
337
+ return ('plot' +
338
+ propertyName.charAt(0).toUpperCase() +
339
+ propertyName.slice(1));
221
340
  }
222
- };
223
-
224
- return multipleLinesMixin;
225
- });
226
- _registerModule(_modules, 'Mixins/ReduceArray.js', [], function () {
227
- /**
228
- *
229
- * (c) 2010-2021 Pawel Fus & Daniel Studencki
230
- *
231
- * License: www.highcharts.com/license
232
- *
233
- * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
234
- *
235
- * */
236
- var reduceArrayMixin = {
237
- /**
238
- * Get min value of array filled by OHLC data.
239
- * @private
240
- * @param {Array<*>} arr Array of OHLC points (arrays).
241
- * @param {string} index Index of "low" value in point array.
242
- * @return {number} Returns min value.
243
- */
244
- minInArray: function (arr,
245
- index) {
246
- return arr.reduce(function (min,
247
- target) {
248
- return Math.min(min,
249
- target[index]);
250
- }, Number.MAX_VALUE);
251
- },
252
341
  /**
253
- * Get max value of array filled by OHLC data.
254
342
  * @private
255
- * @param {Array<*>} arr Array of OHLC points (arrays).
256
- * @param {string} index Index of "high" value in point array.
257
- * @return {number} Returns max value.
343
+ * @function multipleLinesMixin.toYData
344
+ * @param {Highcharts.Point} point
345
+ * Indicator point
346
+ * @return {Array<number>}
347
+ * Returns point Y value for all lines
258
348
  */
259
- maxInArray: function (arr, index) {
260
- return arr.reduce(function (max, target) {
261
- return Math.max(max, target[index]);
262
- }, -Number.MAX_VALUE);
263
- },
349
+ function toYData(point) {
350
+ var pointColl = [];
351
+ (this.pointArrayMap || []).forEach(function (propertyName) {
352
+ pointColl.push(point[propertyName]);
353
+ });
354
+ return pointColl;
355
+ }
264
356
  /**
265
- * Get extremes of array filled by OHLC data.
357
+ * Add lines plot pixel values.
358
+ *
266
359
  * @private
267
- * @param {Array<*>} arr Array of OHLC points (arrays).
268
- * @param {string} minIndex Index of "low" value in point array.
269
- * @param {string} maxIndex Index of "high" value in point array.
270
- * @return {Array<number,number>} Returns array with min and max value.
360
+ * @function multipleLinesMixin.translate
271
361
  */
272
- getArrayExtremes: function (arr, minIndex, maxIndex) {
273
- return arr.reduce(function (prev, target) {
274
- return [
275
- Math.min(prev[0], target[minIndex]),
276
- Math.max(prev[1], target[maxIndex])
277
- ];
278
- }, [Number.MAX_VALUE, -Number.MAX_VALUE]);
362
+ function translate() {
363
+ var indicator = this,
364
+ pointArrayMap = indicator.pointArrayMap;
365
+ var LinesNames = [],
366
+ value;
367
+ LinesNames = indicator.getTranslatedLinesNames();
368
+ SMAIndicator.prototype.translate.apply(indicator, arguments);
369
+ indicator.points.forEach(function (point) {
370
+ pointArrayMap.forEach(function (propertyName, i) {
371
+ value = point[propertyName];
372
+ // If the modifier, like for example compare exists,
373
+ // modified the original value by that method, #15867.
374
+ if (indicator.dataModify) {
375
+ value = indicator.dataModify.modifyValue(value);
376
+ }
377
+ if (value !== null) {
378
+ point[LinesNames[i]] = indicator.yAxis.toPixels(value, true);
379
+ }
380
+ });
381
+ });
279
382
  }
280
- };
383
+ })(MultipleLinesComposition || (MultipleLinesComposition = {}));
384
+ /* *
385
+ *
386
+ * Default Export
387
+ *
388
+ * */
281
389
 
282
- return reduceArrayMixin;
390
+ return MultipleLinesComposition;
283
391
  });
284
- _registerModule(_modules, 'Stock/Indicators/Stochastic/StochasticIndicator.js', [_modules['Mixins/MultipleLines.js'], _modules['Mixins/ReduceArray.js'], _modules['Core/Series/SeriesRegistry.js'], _modules['Core/Utilities.js']], function (MultipleLinesMixin, ReduceArrayMixin, SeriesRegistry, U) {
392
+ _registerModule(_modules, 'Stock/Indicators/Stochastic/StochasticIndicator.js', [_modules['Stock/Indicators/ArrayUtilities.js'], _modules['Stock/Indicators/MultipleLinesComposition.js'], _modules['Core/Series/SeriesRegistry.js'], _modules['Core/Utilities.js']], function (AU, MultipleLinesComposition, SeriesRegistry, U) {
285
393
  /* *
286
394
  *
287
395
  * License: www.highcharts.com/license
@@ -309,6 +417,11 @@
309
417
  var extend = U.extend,
310
418
  isArray = U.isArray,
311
419
  merge = U.merge;
420
+ /* *
421
+ *
422
+ * Class
423
+ *
424
+ * */
312
425
  /**
313
426
  * The Stochastic series type.
314
427
  *
@@ -321,6 +434,11 @@
321
434
  var StochasticIndicator = /** @class */ (function (_super) {
322
435
  __extends(StochasticIndicator, _super);
323
436
  function StochasticIndicator() {
437
+ /* *
438
+ *
439
+ * Static Properties
440
+ *
441
+ * */
324
442
  var _this = _super !== null && _super.apply(this,
325
443
  arguments) || this;
326
444
  _this.data = void 0;
@@ -373,7 +491,7 @@
373
491
  for (i = periodK - 1; i < yValLen; i++) {
374
492
  slicedY = yVal.slice(i - periodK + 1, i + 1);
375
493
  // Calculate %K
376
- extremes = ReduceArrayMixin.getArrayExtremes(slicedY, low, high);
494
+ extremes = AU.getArrayExtremes(slicedY, low, high);
377
495
  LL = extremes[0]; // Lowest low in %K periods
378
496
  CL = yVal[i][close] - LL;
379
497
  HL = extremes[1] - LL;
@@ -382,7 +500,8 @@
382
500
  yData.push([K, null]);
383
501
  // Calculate smoothed %D, which is SMA of %K
384
502
  if (i >= (periodK - 1) + (periodD - 1)) {
385
- points = SeriesRegistry.seriesTypes.sma.prototype.getValues.call(this, {
503
+ points = SeriesRegistry.seriesTypes.sma.prototype.getValues
504
+ .call(this, {
386
505
  xData: xData.slice(-periodD),
387
506
  yData: yData.slice(-periodD)
388
507
  }, {
@@ -467,17 +586,15 @@
467
586
  return StochasticIndicator;
468
587
  }(SMAIndicator));
469
588
  extend(StochasticIndicator.prototype, {
589
+ areaLinesNames: [],
470
590
  nameComponents: ['periods'],
471
591
  nameBase: 'Stochastic',
472
592
  pointArrayMap: ['y', 'smoothed'],
473
593
  parallelArrays: ['x', 'y', 'smoothed'],
474
594
  pointValKey: 'y',
475
- linesApiNames: ['smoothedLine'],
476
- drawGraph: MultipleLinesMixin.drawGraph,
477
- getTranslatedLinesNames: MultipleLinesMixin.getTranslatedLinesNames,
478
- translate: MultipleLinesMixin.translate,
479
- toYData: MultipleLinesMixin.toYData
595
+ linesApiNames: ['smoothedLine']
480
596
  });
597
+ MultipleLinesComposition.compose(StochasticIndicator);
481
598
  SeriesRegistry.registerSeriesType('stochastic', StochasticIndicator);
482
599
  /* *
483
600
  *
@@ -1,5 +1,5 @@
1
1
  /*
2
- Highstock JS v9.2.1 (2021-08-19)
2
+ Highstock JS v9.3.2 (2021-11-29)
3
3
 
4
4
  Indicator series type for Highcharts Stock
5
5
 
@@ -7,13 +7,13 @@
7
7
 
8
8
  License: www.highcharts.com/license
9
9
  */
10
- 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/indicators/supertrend",["highcharts","highcharts/modules/stock"],function(n){a(n);a.Highcharts=n;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function n(a,n,e,B){a.hasOwnProperty(n)||(a[n]=B.apply(null,e))}a=a?a._modules:{};n(a,"Stock/Indicators/Supertrend/SupertrendIndicator.js",[a["Core/Color/Palette.js"],
11
- a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"],a["Core/Chart/StockChart.js"]],function(a,n,e,B){function y(a,f,c){return{index:f,close:a.yData[f][c],x:a.xData[f]}}var E=this&&this.__extends||function(){var a=function(f,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var a in c)c.hasOwnProperty(a)&&(b[a]=c[a])};return a(f,c)};return function(f,c){function b(){this.constructor=f}a(f,c);f.prototype=null===c?Object.create(c):(b.prototype=
12
- c.prototype,new b)}}(),z=n.seriesTypes,F=z.atr,A=z.sma,G=e.addEvent,D=e.correctFloat,H=e.isArray;z=e.extend;var x=e.merge,I=e.objectEach;e=function(e){function f(){var c=null!==e&&e.apply(this,arguments)||this;c.data=void 0;c.linkedParent=void 0;c.options=void 0;c.points=void 0;return c}E(f,e);f.prototype.init=function(){var c;A.prototype.init.apply(this,arguments);var b=this,a=G(B,"afterLinkSeries",function(){if(b.options){var C=b.options;c=b.linkedParent.options;C.cropThreshold=c.cropThreshold-
13
- (C.params.period-1)}a()},{order:1})};f.prototype.drawGraph=function(){var c=this,b=c.options,a=c.linkedParent,e=a?a.points:[],f=c.points,n=c.graph,t=f.length,u=e.length-t;u=0<u?u:0;for(var w={options:{gapSize:b.gapSize}},m={top:[],bottom:[],intersect:[]},v={top:{styles:{lineWidth:b.lineWidth,lineColor:b.fallingTrendColor||b.color,dashStyle:b.dashStyle}},bottom:{styles:{lineWidth:b.lineWidth,lineColor:b.risingTrendColor||b.color,dashStyle:b.dashStyle}},intersect:b.changeTrendLine},d,l,g,h,k,p,q,r;t--;)d=
14
- f[t],l=f[t-1],g=e[t-1+u],h=e[t-2+u],k=e[t+u],p=e[t+u+1],q=d.options.color,r={x:d.x,plotX:d.plotX,plotY:d.plotY,isNull:!1},!h&&g&&a.yData[g.index-1]&&(h=y(a,g.index-1,3)),!p&&k&&a.yData[k.index+1]&&(p=y(a,k.index+1,3)),!g&&h&&a.yData[h.index+1]?g=y(a,h.index+1,3):!g&&k&&a.yData[k.index-1]&&(g=y(a,k.index-1,3)),d&&g&&k&&h&&d.x!==g.x&&(d.x===k.x?(h=g,g=k):d.x===h.x?(g=h,h={close:a.yData[g.index-1][3],x:a.xData[g.index-1]}):p&&d.x===p.x&&(g=p,h=k)),l&&h&&g?(k={x:l.x,plotX:l.plotX,plotY:l.plotY,isNull:!1},
15
- d.y>=g.close&&l.y>=h.close?(d.color=q||b.fallingTrendColor||b.color,m.top.push(r)):d.y<g.close&&l.y<h.close?(d.color=q||b.risingTrendColor||b.color,m.bottom.push(r)):(m.intersect.push(r),m.intersect.push(k),m.intersect.push(x(k,{isNull:!0})),d.y>=g.close&&l.y<h.close?(d.color=q||b.fallingTrendColor||b.color,l.color=q||b.risingTrendColor||b.color,m.top.push(r),m.top.push(x(k,{isNull:!0}))):d.y<g.close&&l.y>=h.close&&(d.color=q||b.risingTrendColor||b.color,l.color=q||b.fallingTrendColor||b.color,m.bottom.push(r),
16
- m.bottom.push(x(k,{isNull:!0}))))):g&&(d.y>=g.close?(d.color=q||b.fallingTrendColor||b.color,m.top.push(r)):(d.color=q||b.risingTrendColor||b.color,m.bottom.push(r)));I(m,function(a,b){c.points=a;c.options=x(v[b].styles,w);c.graph=c["graph"+b+"Line"];A.prototype.drawGraph.call(c);c["graph"+b+"Line"]=c.graph});c.points=f;c.options=b;c.graph=n};f.prototype.getValues=function(a,b){var c=b.period;b=b.multiplier;var e=a.xData,f=a.yData,n=[],t=[],u=[],w=0===c?0:c-1,m=[],v=[],d;if(!(e.length<=c||!H(f[0])||
17
- 4!==f[0].length||0>c)){a=F.prototype.getValues.call(this,a,{period:c}).yData;for(d=0;d<a.length;d++){var l=f[w+d];var g=f[w+d-1]||[];var h=m[d-1];var k=v[d-1];var p=u[d-1];0===d&&(h=k=p=0);c=D((l[1]+l[2])/2+b*a[d]);var q=D((l[1]+l[2])/2-b*a[d]);m[d]=c<h||g[3]>h?c:h;v[d]=q>k||g[3]<k?q:k;if(p===h&&l[3]<m[d]||p===k&&l[3]<v[d])var r=m[d];else if(p===h&&l[3]>m[d]||p===k&&l[3]>v[d])r=v[d];n.push([e[w+d],r]);t.push(e[w+d]);u.push(r)}return{values:n,xData:t,yData:u}}};f.defaultOptions=x(A.defaultOptions,
18
- {params:{index:void 0,multiplier:3,period:10},risingTrendColor:a.positiveColor,fallingTrendColor:a.negativeColor,changeTrendLine:{styles:{lineWidth:1,lineColor:a.neutralColor80,dashStyle:"LongDash"}}});return f}(A);z(e.prototype,{nameBase:"Supertrend",nameComponents:["multiplier","period"],requiredIndicators:["atr"]});n.registerSeriesType("supertrend",e);"";return e});n(a,"masters/indicators/supertrend.src.js",[],function(){})});
10
+ 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/indicators/supertrend",["highcharts","highcharts/modules/stock"],function(n){a(n);a.Highcharts=n;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function n(a,h,n,t){a.hasOwnProperty(h)||(a[h]=t.apply(null,n))}a=a?a._modules:{};n(a,"Stock/Indicators/Supertrend/SupertrendIndicator.js",[a["Core/Series/SeriesRegistry.js"],
11
+ a["Core/Utilities.js"],a["Core/Chart/StockChart.js"]],function(a,h,n){function t(a,e,c){return{index:e,close:a.yData[e][c],x:a.xData[e]}}var C=this&&this.__extends||function(){var a=function(e,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,c){b.__proto__=c}||function(b,c){for(var a in c)c.hasOwnProperty(a)&&(b[a]=c[a])};return a(e,c)};return function(e,c){function b(){this.constructor=e}a(e,c);e.prototype=null===c?Object.create(c):(b.prototype=c.prototype,new b)}}(),y=a.seriesTypes,
12
+ D=y.atr,z=y.sma,E=h.addEvent,B=h.correctFloat,F=h.isArray;y=h.extend;var x=h.merge,G=h.objectEach;h=function(a){function e(){var c=null!==a&&a.apply(this,arguments)||this;c.data=void 0;c.linkedParent=void 0;c.options=void 0;c.points=void 0;return c}C(e,a);e.prototype.init=function(){var c;z.prototype.init.apply(this,arguments);var b=this,a=E(n,"afterLinkSeries",function(){if(b.options){var A=b.options;c=b.linkedParent.options;A.cropThreshold=c.cropThreshold-(A.params.period-1)}a()},{order:1})};e.prototype.drawGraph=
13
+ function(){var c=this,b=c.options,a=c.linkedParent,e=a?a.points:[],h=c.points,n=c.graph,u=h.length,v=e.length-u;v=0<v?v:0;for(var H={options:{gapSize:b.gapSize}},m={top:[],bottom:[],intersect:[]},w={top:{styles:{lineWidth:b.lineWidth,lineColor:b.fallingTrendColor||b.color,dashStyle:b.dashStyle}},bottom:{styles:{lineWidth:b.lineWidth,lineColor:b.risingTrendColor||b.color,dashStyle:b.dashStyle}},intersect:b.changeTrendLine},d,l,f,g,k,p,q,r;u--;)d=h[u],l=h[u-1],f=e[u-1+v],g=e[u-2+v],k=e[u+v],p=e[u+v+
14
+ 1],q=d.options.color,r={x:d.x,plotX:d.plotX,plotY:d.plotY,isNull:!1},!g&&f&&a.yData[f.index-1]&&(g=t(a,f.index-1,3)),!p&&k&&a.yData[k.index+1]&&(p=t(a,k.index+1,3)),!f&&g&&a.yData[g.index+1]?f=t(a,g.index+1,3):!f&&k&&a.yData[k.index-1]&&(f=t(a,k.index-1,3)),d&&f&&k&&g&&d.x!==f.x&&(d.x===k.x?(g=f,f=k):d.x===g.x?(f=g,g={close:a.yData[f.index-1][3],x:a.xData[f.index-1]}):p&&d.x===p.x&&(f=p,g=k)),l&&g&&f?(k={x:l.x,plotX:l.plotX,plotY:l.plotY,isNull:!1},d.y>=f.close&&l.y>=g.close?(d.color=q||b.fallingTrendColor||
15
+ b.color,m.top.push(r)):d.y<f.close&&l.y<g.close?(d.color=q||b.risingTrendColor||b.color,m.bottom.push(r)):(m.intersect.push(r),m.intersect.push(k),m.intersect.push(x(k,{isNull:!0})),d.y>=f.close&&l.y<g.close?(d.color=q||b.fallingTrendColor||b.color,l.color=q||b.risingTrendColor||b.color,m.top.push(r),m.top.push(x(k,{isNull:!0}))):d.y<f.close&&l.y>=g.close&&(d.color=q||b.risingTrendColor||b.color,l.color=q||b.fallingTrendColor||b.color,m.bottom.push(r),m.bottom.push(x(k,{isNull:!0}))))):f&&(d.y>=f.close?
16
+ (d.color=q||b.fallingTrendColor||b.color,m.top.push(r)):(d.color=q||b.risingTrendColor||b.color,m.bottom.push(r)));G(m,function(a,b){c.points=a;c.options=x(w[b].styles,H);c.graph=c["graph"+b+"Line"];z.prototype.drawGraph.call(c);c["graph"+b+"Line"]=c.graph});c.points=h;c.options=b;c.graph=n};e.prototype.getValues=function(a,b){var c=b.period;b=b.multiplier;var e=a.xData,h=a.yData,n=[],u=[],v=[],t=0===c?0:c-1,m=[],w=[],d;if(!(e.length<=c||!F(h[0])||4!==h[0].length||0>c)){a=D.prototype.getValues.call(this,
17
+ a,{period:c}).yData;for(d=0;d<a.length;d++){var l=h[t+d];var f=h[t+d-1]||[];var g=m[d-1];var k=w[d-1];var p=v[d-1];0===d&&(g=k=p=0);c=B((l[1]+l[2])/2+b*a[d]);var q=B((l[1]+l[2])/2-b*a[d]);m[d]=c<g||f[3]>g?c:g;w[d]=q>k||f[3]<k?q:k;if(p===g&&l[3]<m[d]||p===k&&l[3]<w[d])var r=m[d];else if(p===g&&l[3]>m[d]||p===k&&l[3]>w[d])r=w[d];n.push([e[t+d],r]);u.push(e[t+d]);v.push(r)}return{values:n,xData:u,yData:v}}};e.defaultOptions=x(z.defaultOptions,{params:{index:void 0,multiplier:3,period:10},risingTrendColor:"#06b535",
18
+ fallingTrendColor:"#f21313",changeTrendLine:{styles:{lineWidth:1,lineColor:"#333333",dashStyle:"LongDash"}}});return e}(z);y(h.prototype,{nameBase:"Supertrend",nameComponents:["multiplier","period"]});a.registerSeriesType("supertrend",h);"";return h});n(a,"masters/indicators/supertrend.src.js",[],function(){})});
19
19
  //# sourceMappingURL=supertrend.js.map