highcharts 9.2.2 → 9.3.3

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