highcharts 11.3.0 → 11.4.0

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 (773) hide show
  1. package/README.md +1 -1
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +27 -19
  4. package/css/stocktools/gui.css +19 -7
  5. package/es-modules/Accessibility/A11yI18n.js +4 -6
  6. package/es-modules/Accessibility/Accessibility.js +8 -6
  7. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +11 -6
  8. package/es-modules/Accessibility/Components/LegendComponent.js +4 -4
  9. package/es-modules/Accessibility/Components/MenuComponent.js +3 -6
  10. package/es-modules/Accessibility/Components/NavigatorComponent.js +6 -3
  11. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +4 -7
  12. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +18 -3
  13. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +5 -3
  14. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +4 -4
  15. package/es-modules/Accessibility/FocusBorder.js +5 -5
  16. package/es-modules/Accessibility/HighContrastMode.js +22 -13
  17. package/es-modules/Accessibility/HighContrastTheme.js +2 -6
  18. package/es-modules/Accessibility/KeyboardNavigation.js +17 -8
  19. package/es-modules/Accessibility/Options/A11yDefaults.js +11 -1
  20. package/es-modules/Accessibility/ProxyElement.js +4 -4
  21. package/es-modules/Accessibility/ProxyProvider.js +8 -2
  22. package/es-modules/Accessibility/Utils/DOMElementProvider.js +8 -0
  23. package/es-modules/Accessibility/Utils/EventProvider.js +9 -0
  24. package/es-modules/Core/Animation/Fx.js +3 -3
  25. package/es-modules/Core/Axis/Axis.js +43 -97
  26. package/es-modules/Core/Axis/Axis3DComposition.js +5 -5
  27. package/es-modules/Core/Axis/Axis3DDefaults.js +1 -1
  28. package/es-modules/Core/Axis/AxisDefaults.js +18 -7
  29. package/es-modules/Core/Axis/BrokenAxis.js +4 -6
  30. package/es-modules/Core/Axis/Color/ColorAxis.js +2 -1
  31. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -5
  32. package/es-modules/Core/Axis/DateTimeAxis.js +3 -5
  33. package/es-modules/Core/Axis/GridAxis.js +7 -7
  34. package/es-modules/Core/Axis/LogarithmicAxis.js +2 -4
  35. package/es-modules/Core/Axis/NavigatorAxisComposition.js +26 -22
  36. package/es-modules/Core/Axis/OrdinalAxis.js +97 -53
  37. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -3
  38. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +4 -5
  39. package/es-modules/Core/Axis/RadialAxis.js +5 -5
  40. package/es-modules/Core/Axis/ScrollbarAxis.js +2 -2
  41. package/es-modules/Core/Axis/Stacking/StackItem.js +8 -4
  42. package/es-modules/Core/Axis/Stacking/StackingAxis.js +3 -5
  43. package/es-modules/Core/Axis/Tick.js +16 -7
  44. package/es-modules/Core/Axis/Tick3DComposition.js +2 -2
  45. package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +4 -8
  46. package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -6
  47. package/es-modules/Core/Axis/WaterfallAxis.js +3 -3
  48. package/es-modules/Core/Axis/ZAxis.js +6 -11
  49. package/es-modules/Core/Chart/Chart.js +201 -176
  50. package/es-modules/Core/Chart/Chart3D.js +1 -1
  51. package/es-modules/Core/Chart/ChartDefaults.js +7 -0
  52. package/es-modules/Core/Chart/GanttChart.js +2 -2
  53. package/es-modules/Core/Chart/MapChart.js +12 -2
  54. package/es-modules/Core/Chart/StockChart.js +12 -11
  55. package/es-modules/Core/Color/Color.js +3 -3
  56. package/es-modules/Core/Color/Palettes.js +2 -2
  57. package/es-modules/Core/Defaults.js +18 -15
  58. package/es-modules/Core/Geometry/CircleUtilities.js +3 -3
  59. package/es-modules/Core/Globals.js +2 -2
  60. package/es-modules/Core/HttpUtilities.js +4 -4
  61. package/es-modules/Core/Legend/Legend.js +6 -6
  62. package/es-modules/Core/MSPointer.js +7 -7
  63. package/es-modules/Core/Pointer.js +230 -245
  64. package/es-modules/Core/Renderer/HTML/AST.js +1 -1
  65. package/es-modules/Core/Renderer/HTML/HTMLElement.js +213 -26
  66. package/es-modules/Core/Renderer/RendererUtilities.js +1 -1
  67. package/es-modules/Core/Renderer/SVG/SVGElement.js +85 -52
  68. package/es-modules/Core/Renderer/SVG/SVGLabel.js +14 -11
  69. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +17 -14
  70. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +8 -7
  71. package/es-modules/Core/Renderer/SVG/Symbols.js +1 -1
  72. package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
  73. package/es-modules/Core/Responsive.js +5 -6
  74. package/es-modules/Core/Series/DataLabel.js +70 -90
  75. package/es-modules/Core/Series/DataSeriesComposition.js +1 -1
  76. package/es-modules/Core/Series/DataSeriesConverter.js +2 -2
  77. package/es-modules/Core/Series/Point.js +48 -40
  78. package/es-modules/Core/Series/Series.js +61 -51
  79. package/es-modules/Core/Series/Series3D.js +2 -2
  80. package/es-modules/Core/Series/SeriesRegistry.js +10 -2
  81. package/es-modules/Core/Templating.js +1 -1
  82. package/es-modules/Core/Time.js +12 -7
  83. package/es-modules/Core/Tooltip.js +19 -17
  84. package/es-modules/Core/Utilities.js +54 -26
  85. package/es-modules/Data/Connectors/CSVConnector.js +2 -2
  86. package/es-modules/Data/Connectors/DataConnector.js +4 -2
  87. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
  88. package/es-modules/Data/Connectors/HTMLTableConnector.js +2 -2
  89. package/es-modules/Data/Connectors/JSONConnector.js +3 -5
  90. package/es-modules/Data/Converters/CSVConverter.js +1 -3
  91. package/es-modules/Data/Converters/DataConverter.js +8 -2
  92. package/es-modules/Data/Converters/HTMLTableConverter.js +1 -3
  93. package/es-modules/Data/Converters/JSONConverter.js +1 -0
  94. package/es-modules/Data/DataTable.js +1 -2
  95. package/es-modules/Data/Formula/FormulaProcessor.js +4 -2
  96. package/es-modules/Data/Modifiers/DataModifier.js +15 -3
  97. package/es-modules/Extensions/Annotations/Annotation.js +6 -7
  98. package/es-modules/Extensions/Annotations/AnnotationChart.js +4 -5
  99. package/es-modules/Extensions/Annotations/AnnotationDefaults.js +4 -4
  100. package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
  101. package/es-modules/Extensions/Annotations/ControlTarget.js +1 -1
  102. package/es-modules/Extensions/Annotations/Controllables/Controllable.js +7 -3
  103. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +3 -3
  104. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +8 -9
  105. package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -4
  106. package/es-modules/Extensions/Annotations/EventEmitter.js +6 -6
  107. package/es-modules/Extensions/Annotations/NavigationBindings.js +29 -18
  108. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +6 -6
  109. package/es-modules/Extensions/Annotations/Popup/Popup.js +1 -1
  110. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +10 -6
  111. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +2 -2
  112. package/es-modules/Extensions/Annotations/Popup/PopupIndicators.js +31 -31
  113. package/es-modules/Extensions/Annotations/Popup/PopupTabs.js +1 -1
  114. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +14 -11
  115. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +1 -1
  116. package/es-modules/Extensions/Annotations/Types/Measure.js +1 -1
  117. package/es-modules/Extensions/ArrowSymbols.js +7 -13
  118. package/es-modules/Extensions/Boost/Boost.js +39 -7
  119. package/es-modules/Extensions/Boost/BoostChart.js +4 -4
  120. package/es-modules/Extensions/Boost/BoostSeries.js +58 -13
  121. package/es-modules/Extensions/Boost/WGLRenderer.js +3 -3
  122. package/es-modules/Extensions/Boost/WGLVertexBuffer.js +1 -1
  123. package/es-modules/Extensions/BoostCanvas.js +5 -4
  124. package/es-modules/Extensions/BorderRadius.js +5 -4
  125. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +9 -9
  126. package/es-modules/Extensions/CurrentDateIndication.js +1 -1
  127. package/es-modules/Extensions/Data.js +11 -11
  128. package/es-modules/Extensions/DataGrouping/DataGrouping.js +1 -1
  129. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +8 -9
  130. package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +1 -1
  131. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +6 -7
  132. package/es-modules/Extensions/Debugger/Debugger.js +1 -1
  133. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  134. package/es-modules/Extensions/DragPanes/AxisResizer.js +13 -16
  135. package/es-modules/Extensions/DragPanes/DragPanes.js +2 -4
  136. package/es-modules/Extensions/DraggablePoints/DragDropDefaults.js +2 -1
  137. package/es-modules/Extensions/DraggablePoints/DragDropUtilities.js +1 -1
  138. package/es-modules/Extensions/DraggablePoints/DraggableChart.js +4 -4
  139. package/es-modules/Extensions/DraggablePoints/DraggablePoints.js +8 -9
  140. package/es-modules/Extensions/Drilldown/Drilldown.js +11 -9
  141. package/es-modules/Extensions/Drilldown/DrilldownSeries.js +5 -6
  142. package/es-modules/Extensions/ExportData/ExportData.js +27 -18
  143. package/es-modules/Extensions/Exporting/Exporting.js +25 -20
  144. package/es-modules/Extensions/Exporting/ExportingDefaults.js +1 -1
  145. package/es-modules/Extensions/Exporting/Fullscreen.js +5 -10
  146. package/es-modules/Extensions/MarkerClusters/MarkerClusterScatter.js +26 -21
  147. package/es-modules/Extensions/MarkerClusters/MarkerClusterSymbols.js +2 -12
  148. package/es-modules/Extensions/MarkerClusters/MarkerClusters.js +3 -3
  149. package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +51 -161
  150. package/es-modules/Extensions/NoDataToDisplay/NoDataToDisplay.js +3 -5
  151. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +5 -6
  152. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  153. package/es-modules/Extensions/OverlappingDataLabels.js +21 -49
  154. package/es-modules/Extensions/Pane/PaneComposition.js +3 -5
  155. package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -4
  156. package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +5 -6
  157. package/es-modules/Extensions/ParallelCoordinates/ParallelSeries.js +1 -1
  158. package/es-modules/Extensions/PatternFill.js +19 -22
  159. package/es-modules/Extensions/PriceIndication.js +1 -1
  160. package/es-modules/Extensions/ScrollablePlotArea.js +218 -292
  161. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +26 -18
  162. package/es-modules/Extensions/Sonification/Options.js +1 -0
  163. package/es-modules/Extensions/Sonification/SonificationSpeaker.js +2 -2
  164. package/es-modules/Extensions/Sonification/SynthPatch.js +3 -3
  165. package/es-modules/Extensions/StaticScale.js +3 -5
  166. package/es-modules/Gantt/Legacy.js +1 -1
  167. package/es-modules/Gantt/Pathfinder.js +2 -2
  168. package/es-modules/Gantt/PathfinderComposition.js +3 -5
  169. package/es-modules/Gantt/Tree.js +3 -3
  170. package/es-modules/Maps/GeoJSONComposition.js +20 -13
  171. package/es-modules/Maps/MapNavigation.js +2 -2
  172. package/es-modules/Maps/MapPointer.js +3 -19
  173. package/es-modules/Maps/MapSymbols.js +3 -9
  174. package/es-modules/Maps/MapView.js +134 -74
  175. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +5 -4
  176. package/es-modules/Series/Area/AreaSeries.js +2 -4
  177. package/es-modules/Series/Area3D/Area3DSeries.js +1 -1
  178. package/es-modules/Series/AreaRange/AreaRangePoint.js +2 -2
  179. package/es-modules/Series/AreaRange/AreaRangeSeries.js +2 -3
  180. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +1 -1
  181. package/es-modules/Series/Bar/BarSeries.js +1 -1
  182. package/es-modules/Series/Bellcurve/BellcurveSeries.js +1 -1
  183. package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +4 -0
  184. package/es-modules/Series/Bubble/BubbleLegendComposition.js +1 -1
  185. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +2 -2
  186. package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
  187. package/es-modules/Series/Bubble/BubbleSeries.js +1 -1
  188. package/es-modules/Series/Bullet/BulletSeriesDefaults.js +2 -2
  189. package/es-modules/Series/Candlestick/CandlestickSeries.js +2 -2
  190. package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +1 -5
  191. package/es-modules/Series/ColorMapComposition.js +1 -1
  192. package/es-modules/Series/Column/ColumnDataLabel.js +2 -2
  193. package/es-modules/Series/Column/ColumnSeries.js +20 -22
  194. package/es-modules/Series/Column/ColumnSeriesDefaults.js +1 -1
  195. package/es-modules/Series/Column3D/Column3DComposition.js +1 -1
  196. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
  197. package/es-modules/Series/Cylinder/CylinderComposition.js +9 -9
  198. package/es-modules/Series/DataModifyComposition.js +5 -5
  199. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +3 -2
  200. package/es-modules/Series/DependencyWheel/DependencyWheelSeriesDefaults.js +1 -1
  201. package/es-modules/Series/DragNodesComposition.js +7 -7
  202. package/es-modules/Series/DrawPointUtilities.js +0 -2
  203. package/es-modules/Series/Dumbbell/DumbbellSeriesDefaults.js +1 -1
  204. package/es-modules/Series/Funnel/FunnelSeries.js +1 -1
  205. package/es-modules/Series/Funnel3D/Funnel3DComposition.js +6 -6
  206. package/es-modules/Series/Funnel3D/Funnel3DSeriesDefaults.js +2 -2
  207. package/es-modules/Series/Funnel3D/SVGElement3DFunnel.js +1 -1
  208. package/es-modules/Series/Gantt/GanttSeries.js +0 -1
  209. package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +5 -5
  210. package/es-modules/Series/GraphLayoutComposition.js +1 -1
  211. package/es-modules/Series/Heatmap/HeatmapSeries.js +2 -2
  212. package/es-modules/Series/Heatmap/HeatmapSeriesDefaults.js +1 -1
  213. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -1
  214. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +3 -3
  215. package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +1 -1
  216. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +2 -2
  217. package/es-modules/Series/Item/ItemSeries.js +1 -1
  218. package/es-modules/Series/Line/LineSeries.js +1 -1
  219. package/es-modules/Series/Lollipop/LollipopSeries.js +3 -1
  220. package/es-modules/Series/Map/MapPoint.js +5 -1
  221. package/es-modules/Series/Map/MapSeries.js +32 -7
  222. package/es-modules/Series/Map/MapSeriesDefaults.js +5 -3
  223. package/es-modules/Series/Networkgraph/EulerIntegration.js +5 -5
  224. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -4
  225. package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +5 -5
  226. package/es-modules/Series/Networkgraph/QuadTree.js +1 -1
  227. package/es-modules/Series/Networkgraph/QuadTreeNode.js +1 -1
  228. package/es-modules/Series/Networkgraph/VerletIntegration.js +9 -9
  229. package/es-modules/Series/NodesComposition.js +1 -1
  230. package/es-modules/Series/OHLC/OHLCSeries.js +1 -1
  231. package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +1 -1
  232. package/es-modules/Series/OnSeriesComposition.js +1 -1
  233. package/es-modules/Series/Organization/OrganizationPoint.js +1 -1
  234. package/es-modules/Series/Organization/OrganizationSeries.js +22 -10
  235. package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +15 -2
  236. package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -5
  237. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  238. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +6 -10
  239. package/es-modules/Series/Pictorial/PictorialSeries.js +2 -2
  240. package/es-modules/Series/Pie/PieDataLabel.js +2 -2
  241. package/es-modules/Series/Pie/PiePoint.js +1 -1
  242. package/es-modules/Series/Pie/PieSeries.js +10 -1
  243. package/es-modules/Series/Pie/PieSeriesDefaults.js +1 -1
  244. package/es-modules/Series/Pie3D/Pie3DSeries.js +2 -2
  245. package/es-modules/Series/PolarComposition.js +22 -20
  246. package/es-modules/Series/Sankey/SankeyColumnComposition.js +1 -1
  247. package/es-modules/Series/Sankey/SankeySeries.js +8 -8
  248. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +57 -13
  249. package/es-modules/Series/SeriesOnPointComposition.js +3 -3
  250. package/es-modules/Series/Spline/SplineSeries.js +1 -1
  251. package/es-modules/Series/Sunburst/SunburstPoint.js +1 -1
  252. package/es-modules/Series/Sunburst/SunburstSeries.js +2 -7
  253. package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +3 -3
  254. package/es-modules/Series/Sunburst/SunburstUtilities.js +1 -1
  255. package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +23 -25
  256. package/es-modules/Series/Tilemap/TilemapSeries.js +2 -2
  257. package/es-modules/Series/Timeline/TimelineSeries.js +2 -2
  258. package/es-modules/Series/TreeUtilities.js +23 -1
  259. package/es-modules/Series/Treegraph/TreegraphLayout.js +7 -11
  260. package/es-modules/Series/Treegraph/TreegraphPoint.js +1 -0
  261. package/es-modules/Series/Treegraph/TreegraphSeries.js +8 -8
  262. package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +39 -2
  263. package/es-modules/Series/Treemap/TreemapSeries.js +4 -2
  264. package/es-modules/Series/Treemap/TreemapUtilities.js +0 -7
  265. package/es-modules/Series/Variwide/VariwideComposition.js +6 -2
  266. package/es-modules/Series/Variwide/VariwideSeries.js +1 -1
  267. package/es-modules/Series/Venn/VennSeries.js +4 -4
  268. package/es-modules/Series/Venn/VennUtils.js +5 -6
  269. package/es-modules/Series/Waterfall/WaterfallSeriesDefaults.js +1 -1
  270. package/es-modules/Series/Windbarb/WindbarbSeries.js +1 -1
  271. package/es-modules/Series/Wordcloud/WordcloudUtils.js +6 -4
  272. package/es-modules/Series/XRange/XRangePoint.js +2 -2
  273. package/es-modules/Series/XRange/XRangeSeries.js +1 -1
  274. package/es-modules/Shared/BaseForm.js +1 -1
  275. package/es-modules/Stock/Indicators/AD/ADIndicator.js +3 -1
  276. package/es-modules/Stock/Indicators/APO/APOIndicator.js +1 -1
  277. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -1
  278. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +1 -1
  279. package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +2 -2
  280. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +1 -1
  281. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +1 -1
  282. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +1 -1
  283. package/es-modules/Stock/Indicators/LinearRegression/LinearRegressionIndicator.js +7 -7
  284. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +9 -9
  285. package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +1 -1
  286. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -1
  287. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -2
  288. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +1 -1
  289. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +16 -17
  290. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +4 -5
  291. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +1 -1
  292. package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +5 -5
  293. package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +188 -0
  294. package/es-modules/Stock/Navigator/Navigator.js +42 -27
  295. package/es-modules/Stock/Navigator/NavigatorComposition.js +10 -149
  296. package/es-modules/Stock/Navigator/NavigatorDefaults.js +16 -2
  297. package/es-modules/Stock/Navigator/StandaloneNavigator.js +334 -0
  298. package/es-modules/Stock/Navigator/StandaloneNavigatorDefaults.js +64 -0
  299. package/es-modules/Stock/RangeSelector/RangeSelector.js +28 -16
  300. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +2 -2
  301. package/es-modules/Stock/Scrollbar/Scrollbar.js +10 -10
  302. package/es-modules/Stock/Scrollbar/ScrollbarDefaults.js +1 -3
  303. package/es-modules/Stock/StockTools/StockToolbar.js +6 -5
  304. package/es-modules/Stock/StockTools/StockTools.js +10 -13
  305. package/es-modules/Stock/StockTools/StockToolsBindings.js +35 -35
  306. package/es-modules/Stock/StockTools/StockToolsDefaults.js +2 -1
  307. package/es-modules/Stock/StockTools/StockToolsGui.js +7 -8
  308. package/es-modules/Stock/StockTools/StockToolsUtilities.js +8 -9
  309. package/es-modules/Stock/Utilities/StockUtilities.js +41 -0
  310. package/es-modules/masters/highcharts-3d.src.js +2 -1
  311. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  312. package/es-modules/masters/highcharts-more.src.js +2 -1
  313. package/es-modules/masters/highcharts.src.js +41 -40
  314. package/es-modules/masters/highmaps.src.js +1 -1
  315. package/es-modules/masters/highstock.src.js +1 -1
  316. package/es-modules/masters/indicators/acceleration-bands.src.js +3 -1
  317. package/es-modules/masters/indicators/accumulation-distribution.src.js +3 -1
  318. package/es-modules/masters/indicators/ao.src.js +3 -1
  319. package/es-modules/masters/indicators/apo.src.js +3 -1
  320. package/es-modules/masters/indicators/aroon-oscillator.src.js +3 -1
  321. package/es-modules/masters/indicators/aroon.src.js +3 -1
  322. package/es-modules/masters/indicators/atr.src.js +3 -1
  323. package/es-modules/masters/indicators/bollinger-bands.src.js +3 -1
  324. package/es-modules/masters/indicators/cci.src.js +3 -1
  325. package/es-modules/masters/indicators/chaikin.src.js +3 -1
  326. package/es-modules/masters/indicators/cmf.src.js +3 -1
  327. package/es-modules/masters/indicators/cmo.src.js +3 -1
  328. package/es-modules/masters/indicators/dema.src.js +3 -1
  329. package/es-modules/masters/indicators/disparity-index.src.js +3 -1
  330. package/es-modules/masters/indicators/dmi.src.js +3 -1
  331. package/es-modules/masters/indicators/dpo.src.js +3 -1
  332. package/es-modules/masters/indicators/ema.src.js +2 -0
  333. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +3 -1
  334. package/es-modules/masters/indicators/indicators-all.src.js +3 -1
  335. package/es-modules/masters/indicators/indicators.src.js +7 -1
  336. package/es-modules/masters/indicators/keltner-channels.src.js +3 -1
  337. package/es-modules/masters/indicators/klinger.src.js +3 -1
  338. package/es-modules/masters/indicators/macd.src.js +3 -1
  339. package/es-modules/masters/indicators/mfi.src.js +3 -1
  340. package/es-modules/masters/indicators/momentum.src.js +3 -1
  341. package/es-modules/masters/indicators/natr.src.js +3 -1
  342. package/es-modules/masters/indicators/obv.src.js +3 -1
  343. package/es-modules/masters/indicators/pivot-points.src.js +3 -1
  344. package/es-modules/masters/indicators/ppo.src.js +3 -1
  345. package/es-modules/masters/indicators/price-channel.src.js +3 -1
  346. package/es-modules/masters/indicators/price-envelopes.src.js +3 -1
  347. package/es-modules/masters/indicators/psar.src.js +3 -1
  348. package/es-modules/masters/indicators/regressions.src.js +3 -1
  349. package/es-modules/masters/indicators/roc.src.js +3 -1
  350. package/es-modules/masters/indicators/rsi.src.js +3 -1
  351. package/es-modules/masters/indicators/slow-stochastic.src.js +3 -1
  352. package/es-modules/masters/indicators/stochastic.src.js +3 -1
  353. package/es-modules/masters/indicators/supertrend.src.js +3 -1
  354. package/es-modules/masters/indicators/tema.src.js +3 -1
  355. package/es-modules/masters/indicators/trendline.src.js +3 -1
  356. package/es-modules/masters/indicators/trix.src.js +3 -1
  357. package/es-modules/masters/indicators/volume-by-price.src.js +3 -1
  358. package/es-modules/masters/indicators/vwap.src.js +3 -1
  359. package/es-modules/masters/indicators/williams-r.src.js +3 -1
  360. package/es-modules/masters/indicators/wma.src.js +3 -1
  361. package/es-modules/masters/indicators/zigzag.src.js +3 -1
  362. package/es-modules/masters/modules/accessibility.src.js +4 -1
  363. package/es-modules/masters/modules/annotations-advanced.src.js +3 -5
  364. package/es-modules/masters/modules/annotations.src.js +6 -3
  365. package/es-modules/masters/modules/arc-diagram.src.js +3 -1
  366. package/es-modules/masters/modules/arrow-symbols.src.js +2 -1
  367. package/es-modules/masters/modules/boost-canvas.src.js +2 -1
  368. package/es-modules/masters/modules/boost.src.js +3 -2
  369. package/es-modules/masters/modules/broken-axis.src.js +4 -3
  370. package/es-modules/masters/modules/bullet.src.js +3 -1
  371. package/es-modules/masters/modules/coloraxis.src.js +4 -3
  372. package/es-modules/masters/modules/current-date-indicator.src.js +2 -1
  373. package/es-modules/masters/modules/cylinder.src.js +3 -1
  374. package/es-modules/masters/modules/data-tools.src.js +9 -8
  375. package/es-modules/masters/modules/data.src.js +9 -8
  376. package/es-modules/masters/modules/datagrouping.src.js +7 -5
  377. package/es-modules/masters/modules/debugger.src.js +3 -2
  378. package/es-modules/masters/modules/dependency-wheel.src.js +3 -1
  379. package/es-modules/masters/modules/dotplot.src.js +3 -1
  380. package/es-modules/masters/modules/drag-panes.src.js +2 -1
  381. package/es-modules/masters/modules/draggable-points.src.js +2 -1
  382. package/es-modules/masters/modules/drilldown.src.js +3 -2
  383. package/es-modules/masters/modules/dumbbell.src.js +3 -1
  384. package/es-modules/masters/modules/export-data.src.js +5 -4
  385. package/es-modules/masters/modules/exporting.src.js +6 -5
  386. package/es-modules/masters/modules/flowmap.src.js +3 -1
  387. package/es-modules/masters/modules/full-screen.src.js +4 -3
  388. package/es-modules/masters/modules/funnel.src.js +2 -1
  389. package/es-modules/masters/modules/funnel3d.src.js +4 -3
  390. package/es-modules/masters/modules/gantt.src.js +15 -17
  391. package/es-modules/masters/modules/geoheatmap.src.js +3 -1
  392. package/es-modules/masters/modules/grid-axis.src.js +2 -1
  393. package/es-modules/masters/modules/heatmap.src.js +3 -5
  394. package/es-modules/masters/modules/heikinashi.src.js +2 -1
  395. package/es-modules/masters/modules/histogram-bellcurve.src.js +3 -1
  396. package/es-modules/masters/modules/hollowcandlestick.src.js +3 -1
  397. package/es-modules/masters/modules/item-series.src.js +3 -1
  398. package/es-modules/masters/modules/lollipop.src.js +3 -1
  399. package/es-modules/masters/modules/map.src.js +15 -10
  400. package/es-modules/masters/modules/marker-clusters.src.js +2 -1
  401. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +4 -2
  402. package/es-modules/masters/modules/navigator.src.d.ts +1 -0
  403. package/es-modules/masters/modules/navigator.src.js +19 -0
  404. package/es-modules/masters/modules/networkgraph.src.js +2 -1
  405. package/es-modules/masters/modules/no-data-to-display.src.js +2 -1
  406. package/es-modules/masters/modules/offline-exporting.src.js +4 -3
  407. package/es-modules/masters/modules/organization.src.js +3 -1
  408. package/es-modules/masters/modules/overlapping-datalabels.src.js +4 -2
  409. package/es-modules/masters/modules/parallel-coordinates.src.js +2 -1
  410. package/es-modules/masters/modules/pareto.src.js +3 -1
  411. package/es-modules/masters/modules/pathfinder.src.js +4 -3
  412. package/es-modules/masters/modules/pattern-fill.src.js +2 -1
  413. package/es-modules/masters/modules/pictorial.src.js +3 -1
  414. package/es-modules/masters/modules/price-indicator.src.js +2 -1
  415. package/es-modules/masters/modules/pyramid3d.src.js +3 -1
  416. package/es-modules/masters/modules/sankey.src.js +3 -1
  417. package/es-modules/masters/modules/series-label.src.js +2 -1
  418. package/es-modules/masters/modules/series-on-point.src.js +2 -1
  419. package/es-modules/masters/modules/solid-gauge.src.js +3 -1
  420. package/es-modules/masters/modules/sonification.src.js +2 -1
  421. package/es-modules/masters/modules/static-scale.src.js +2 -1
  422. package/es-modules/masters/modules/stock-tools.src.js +5 -3
  423. package/es-modules/masters/modules/stock.src.js +20 -15
  424. package/es-modules/masters/modules/streamgraph.src.js +3 -1
  425. package/es-modules/masters/modules/sunburst.src.js +4 -3
  426. package/es-modules/masters/modules/tiledwebmap.src.js +5 -4
  427. package/es-modules/masters/modules/tilemap.src.js +2 -1
  428. package/es-modules/masters/modules/timeline.src.js +3 -1
  429. package/es-modules/masters/modules/treegraph.src.js +3 -1
  430. package/es-modules/masters/modules/treegrid.src.js +2 -2
  431. package/es-modules/masters/modules/treemap.src.js +5 -4
  432. package/es-modules/masters/modules/variable-pie.src.js +3 -1
  433. package/es-modules/masters/modules/variwide.src.js +2 -1
  434. package/es-modules/masters/modules/vector.src.js +3 -1
  435. package/es-modules/masters/modules/venn.src.js +3 -1
  436. package/es-modules/masters/modules/windbarb.src.js +3 -1
  437. package/es-modules/masters/modules/wordcloud.src.js +3 -1
  438. package/es-modules/masters/modules/xrange.src.js +2 -1
  439. package/es-modules/masters/standalone-navigator.src.js +13 -0
  440. package/es-modules/masters/themes/avocado.src.js +2 -1
  441. package/es-modules/masters/themes/brand-dark.src.js +2 -1
  442. package/es-modules/masters/themes/brand-light.src.js +2 -1
  443. package/es-modules/masters/themes/dark-blue.src.js +2 -1
  444. package/es-modules/masters/themes/dark-green.src.js +2 -1
  445. package/es-modules/masters/themes/dark-unica.src.js +2 -1
  446. package/es-modules/masters/themes/gray.src.js +2 -1
  447. package/es-modules/masters/themes/grid-light.src.js +2 -1
  448. package/es-modules/masters/themes/grid.src.js +2 -1
  449. package/es-modules/masters/themes/high-contrast-dark.src.js +2 -1
  450. package/es-modules/masters/themes/high-contrast-light.src.js +2 -1
  451. package/es-modules/masters/themes/sand-signika.src.js +2 -1
  452. package/es-modules/masters/themes/skies.src.js +2 -1
  453. package/es-modules/masters/themes/sunset.src.js +2 -1
  454. package/es-modules/tsconfig.tsbuildinfo +1 -0
  455. package/globals.d.ts +9 -0
  456. package/globals.src.d.ts +9 -0
  457. package/highcharts-3d.js +3 -3
  458. package/highcharts-3d.src.js +32 -33
  459. package/highcharts-gantt.js +4 -4
  460. package/highcharts-gantt.src.js +5703 -5639
  461. package/highcharts-more.d.ts +4 -0
  462. package/highcharts-more.js +3 -3
  463. package/highcharts-more.src.d.ts +4 -0
  464. package/highcharts-more.src.js +88 -87
  465. package/highcharts.d.ts +834 -5365
  466. package/highcharts.js +4 -4
  467. package/highcharts.src.d.ts +834 -5365
  468. package/highcharts.src.js +1583 -1682
  469. package/highmaps.js +4 -4
  470. package/highmaps.src.js +1837 -1835
  471. package/highstock.js +4 -4
  472. package/highstock.src.js +12488 -12510
  473. package/indicators/acceleration-bands.js +3 -3
  474. package/indicators/acceleration-bands.src.js +12 -11
  475. package/indicators/accumulation-distribution.js +3 -3
  476. package/indicators/accumulation-distribution.src.js +6 -3
  477. package/indicators/ao.js +3 -3
  478. package/indicators/ao.src.js +3 -2
  479. package/indicators/apo.js +3 -3
  480. package/indicators/apo.src.js +4 -3
  481. package/indicators/aroon-oscillator.js +3 -3
  482. package/indicators/aroon-oscillator.src.js +12 -11
  483. package/indicators/aroon.js +3 -3
  484. package/indicators/aroon.src.js +13 -12
  485. package/indicators/atr.js +3 -3
  486. package/indicators/atr.src.js +3 -2
  487. package/indicators/bollinger-bands.js +3 -3
  488. package/indicators/bollinger-bands.src.js +12 -11
  489. package/indicators/cci.js +3 -3
  490. package/indicators/cci.src.js +3 -2
  491. package/indicators/chaikin.js +3 -3
  492. package/indicators/chaikin.src.js +7 -4
  493. package/indicators/cmf.js +3 -3
  494. package/indicators/cmf.src.js +4 -3
  495. package/indicators/cmo.js +3 -3
  496. package/indicators/cmo.src.js +5 -4
  497. package/indicators/dema.js +3 -3
  498. package/indicators/dema.src.js +3 -2
  499. package/indicators/disparity-index.js +3 -3
  500. package/indicators/disparity-index.src.js +3 -2
  501. package/indicators/dmi.js +3 -3
  502. package/indicators/dmi.src.js +12 -11
  503. package/indicators/dpo.js +3 -3
  504. package/indicators/dpo.src.js +4 -3
  505. package/indicators/ema.js +1 -1
  506. package/indicators/ema.src.js +2 -1
  507. package/indicators/ichimoku-kinko-hyo.js +3 -3
  508. package/indicators/ichimoku-kinko-hyo.src.js +3 -2
  509. package/indicators/indicators-all.js +3 -3
  510. package/indicators/indicators-all.src.js +63 -60
  511. package/indicators/indicators.js +3 -3
  512. package/indicators/indicators.src.js +286 -3
  513. package/indicators/keltner-channels.js +3 -3
  514. package/indicators/keltner-channels.src.js +12 -11
  515. package/indicators/klinger.js +3 -3
  516. package/indicators/klinger.src.js +13 -12
  517. package/indicators/macd.js +3 -3
  518. package/indicators/macd.src.js +3 -2
  519. package/indicators/mfi.js +3 -3
  520. package/indicators/mfi.src.js +3 -2
  521. package/indicators/momentum.js +3 -3
  522. package/indicators/momentum.src.js +3 -2
  523. package/indicators/natr.js +3 -3
  524. package/indicators/natr.src.js +3 -2
  525. package/indicators/obv.js +3 -3
  526. package/indicators/obv.src.js +4 -3
  527. package/indicators/pivot-points.js +3 -3
  528. package/indicators/pivot-points.src.js +5 -4
  529. package/indicators/ppo.js +3 -3
  530. package/indicators/ppo.src.js +4 -3
  531. package/indicators/price-channel.js +3 -3
  532. package/indicators/price-channel.src.js +12 -11
  533. package/indicators/price-envelopes.js +3 -3
  534. package/indicators/price-envelopes.src.js +12 -11
  535. package/indicators/psar.js +3 -3
  536. package/indicators/psar.src.js +3 -2
  537. package/indicators/regressions.js +3 -3
  538. package/indicators/regressions.src.js +10 -9
  539. package/indicators/roc.js +3 -3
  540. package/indicators/roc.src.js +3 -2
  541. package/indicators/rsi.js +3 -3
  542. package/indicators/rsi.src.js +3 -2
  543. package/indicators/slow-stochastic.js +3 -3
  544. package/indicators/slow-stochastic.src.js +3 -2
  545. package/indicators/stochastic.js +3 -3
  546. package/indicators/stochastic.src.js +12 -11
  547. package/indicators/supertrend.js +3 -3
  548. package/indicators/supertrend.src.js +20 -19
  549. package/indicators/tema.js +3 -3
  550. package/indicators/tema.src.js +3 -2
  551. package/indicators/trendline.js +3 -3
  552. package/indicators/trendline.src.js +3 -2
  553. package/indicators/trix.js +3 -3
  554. package/indicators/trix.src.js +3 -2
  555. package/indicators/volume-by-price.js +3 -3
  556. package/indicators/volume-by-price.src.js +8 -7
  557. package/indicators/vwap.js +3 -3
  558. package/indicators/vwap.src.js +3 -2
  559. package/indicators/williams-r.js +3 -3
  560. package/indicators/williams-r.src.js +4 -3
  561. package/indicators/wma.js +3 -3
  562. package/indicators/wma.src.js +3 -2
  563. package/indicators/zigzag.js +3 -3
  564. package/indicators/zigzag.src.js +8 -7
  565. package/lib/svg2pdf.js +7 -7
  566. package/lib/svg2pdf.src.js +185 -150
  567. package/modules/accessibility.js +3 -3
  568. package/modules/accessibility.src.js +664 -2793
  569. package/modules/annotations-advanced.d.ts +3 -0
  570. package/modules/annotations-advanced.js +3 -3
  571. package/modules/annotations-advanced.src.d.ts +3 -0
  572. package/modules/annotations-advanced.src.js +2949 -2920
  573. package/modules/annotations.d.ts +0 -3
  574. package/modules/annotations.js +3 -3
  575. package/modules/annotations.src.d.ts +0 -3
  576. package/modules/annotations.src.js +2926 -2905
  577. package/modules/arc-diagram.js +3 -3
  578. package/modules/arc-diagram.src.js +8 -6
  579. package/modules/arrow-symbols.js +3 -3
  580. package/modules/arrow-symbols.src.js +10 -13
  581. package/modules/boost-canvas.js +3 -3
  582. package/modules/boost-canvas.src.js +73 -26
  583. package/modules/boost.js +3 -3
  584. package/modules/boost.src.js +108 -30
  585. package/modules/broken-axis.js +3 -3
  586. package/modules/broken-axis.src.js +9 -9
  587. package/modules/bullet.js +3 -3
  588. package/modules/bullet.src.js +5 -4
  589. package/modules/coloraxis.js +3 -3
  590. package/modules/coloraxis.src.js +10 -9
  591. package/modules/current-date-indicator.js +3 -3
  592. package/modules/current-date-indicator.src.js +3 -2
  593. package/modules/cylinder.js +3 -3
  594. package/modules/cylinder.src.js +12 -11
  595. package/modules/data-tools.js +3 -3
  596. package/modules/data-tools.src.js +53 -36
  597. package/modules/data.d.ts +2 -2
  598. package/modules/data.js +3 -3
  599. package/modules/data.src.d.ts +2 -2
  600. package/modules/data.src.js +24 -23
  601. package/modules/datagrouping.js +3 -3
  602. package/modules/datagrouping.src.js +25 -23
  603. package/modules/debugger.js +3 -3
  604. package/modules/debugger.src.js +6 -5
  605. package/modules/dependency-wheel.js +3 -3
  606. package/modules/dependency-wheel.src.js +7 -5
  607. package/modules/dotplot.js +3 -3
  608. package/modules/dotplot.src.js +3 -2
  609. package/modules/drag-panes.js +3 -3
  610. package/modules/drag-panes.src.js +19 -21
  611. package/modules/draggable-points.js +3 -3
  612. package/modules/draggable-points.src.js +18 -16
  613. package/modules/drilldown.js +3 -3
  614. package/modules/drilldown.src.js +29 -26
  615. package/modules/dumbbell.js +3 -3
  616. package/modules/dumbbell.src.js +5 -4
  617. package/modules/export-data.js +3 -3
  618. package/modules/export-data.src.js +33 -22
  619. package/modules/exporting.d.ts +1 -1
  620. package/modules/exporting.js +3 -3
  621. package/modules/exporting.src.d.ts +1 -1
  622. package/modules/exporting.src.js +40 -39
  623. package/modules/flowmap.js +3 -3
  624. package/modules/flowmap.src.js +3 -2
  625. package/modules/full-screen.js +3 -3
  626. package/modules/full-screen.src.js +9 -13
  627. package/modules/funnel.js +3 -3
  628. package/modules/funnel.src.js +3 -2
  629. package/modules/funnel3d.js +3 -3
  630. package/modules/funnel3d.src.js +12 -12
  631. package/modules/gantt.d.ts +3 -4
  632. package/modules/gantt.js +3 -3
  633. package/modules/gantt.src.d.ts +3 -4
  634. package/modules/gantt.src.js +4165 -4002
  635. package/modules/geoheatmap.js +3 -3
  636. package/modules/geoheatmap.src.js +8 -7
  637. package/modules/grid-axis.js +3 -3
  638. package/modules/grid-axis.src.js +9 -8
  639. package/modules/heatmap.d.ts +2 -2
  640. package/modules/heatmap.js +3 -3
  641. package/modules/heatmap.src.d.ts +2 -2
  642. package/modules/heatmap.src.js +21 -15
  643. package/modules/heikinashi.js +3 -3
  644. package/modules/heikinashi.src.js +9 -6
  645. package/modules/histogram-bellcurve.js +3 -3
  646. package/modules/histogram-bellcurve.src.js +4 -3
  647. package/modules/hollowcandlestick.js +3 -3
  648. package/modules/hollowcandlestick.src.js +5 -4
  649. package/modules/item-series.js +3 -3
  650. package/modules/item-series.src.js +4 -3
  651. package/modules/lollipop.js +3 -3
  652. package/modules/lollipop.src.js +6 -3
  653. package/modules/map.d.ts +22 -1
  654. package/modules/map.js +3 -3
  655. package/modules/map.src.d.ts +22 -1
  656. package/modules/map.src.js +256 -155
  657. package/modules/marker-clusters.js +3 -3
  658. package/modules/marker-clusters.src.js +35 -37
  659. package/modules/mouse-wheel-zoom.js +3 -3
  660. package/modules/mouse-wheel-zoom.src.js +55 -163
  661. package/modules/navigator.d.ts +148 -0
  662. package/modules/navigator.js +9 -0
  663. package/modules/navigator.src.d.ts +148 -0
  664. package/modules/navigator.src.js +3921 -0
  665. package/modules/networkgraph.d.ts +2 -2
  666. package/modules/networkgraph.js +3 -3
  667. package/modules/networkgraph.src.d.ts +2 -2
  668. package/modules/networkgraph.src.js +36 -35
  669. package/modules/no-data-to-display.js +3 -3
  670. package/modules/no-data-to-display.src.js +6 -6
  671. package/modules/offline-exporting.js +3 -3
  672. package/modules/offline-exporting.src.js +10 -10
  673. package/modules/organization.js +3 -3
  674. package/modules/organization.src.js +41 -15
  675. package/modules/overlapping-datalabels.js +3 -3
  676. package/modules/overlapping-datalabels.src.js +4 -2
  677. package/modules/parallel-coordinates.js +3 -3
  678. package/modules/parallel-coordinates.src.js +12 -12
  679. package/modules/pareto.js +3 -3
  680. package/modules/pareto.src.js +3 -2
  681. package/modules/pathfinder.js +3 -3
  682. package/modules/pathfinder.src.js +18 -22
  683. package/modules/pattern-fill.js +3 -3
  684. package/modules/pattern-fill.src.js +22 -23
  685. package/modules/pictorial.js +3 -3
  686. package/modules/pictorial.src.js +25 -26
  687. package/modules/price-indicator.js +3 -3
  688. package/modules/price-indicator.src.js +3 -2
  689. package/modules/pyramid3d.js +3 -3
  690. package/modules/pyramid3d.src.js +3 -2
  691. package/modules/sankey.js +3 -3
  692. package/modules/sankey.src.js +93 -26
  693. package/modules/series-label.js +3 -3
  694. package/modules/series-label.src.js +28 -19
  695. package/modules/series-on-point.js +3 -3
  696. package/modules/series-on-point.src.js +5 -4
  697. package/modules/solid-gauge.js +3 -3
  698. package/modules/solid-gauge.src.js +3 -2
  699. package/modules/sonification.d.ts +2 -2
  700. package/modules/sonification.js +3 -3
  701. package/modules/sonification.src.d.ts +2 -2
  702. package/modules/sonification.src.js +8 -6
  703. package/modules/static-scale.js +3 -3
  704. package/modules/static-scale.src.js +6 -6
  705. package/modules/stock-tools.js +3 -3
  706. package/modules/stock-tools.src.js +109 -96
  707. package/modules/stock.d.ts +1 -1
  708. package/modules/stock.js +3 -3
  709. package/modules/stock.src.d.ts +1 -1
  710. package/modules/stock.src.js +10762 -10685
  711. package/modules/streamgraph.js +3 -3
  712. package/modules/streamgraph.src.js +3 -2
  713. package/modules/sunburst.js +3 -3
  714. package/modules/sunburst.src.js +50 -37
  715. package/modules/tiledwebmap.js +4 -4
  716. package/modules/tiledwebmap.src.js +28 -29
  717. package/modules/tilemap.js +3 -3
  718. package/modules/tilemap.src.js +4 -3
  719. package/modules/timeline.js +3 -3
  720. package/modules/timeline.src.js +5 -4
  721. package/modules/treegraph.js +3 -3
  722. package/modules/treegraph.src.js +58 -23
  723. package/modules/treegrid.js +3 -3
  724. package/modules/treegrid.src.js +49 -33
  725. package/modules/treemap.js +3 -3
  726. package/modules/treemap.src.js +44 -26
  727. package/modules/variable-pie.js +3 -3
  728. package/modules/variable-pie.src.js +3 -2
  729. package/modules/variwide.js +3 -3
  730. package/modules/variwide.src.js +9 -4
  731. package/modules/vector.js +3 -3
  732. package/modules/vector.src.js +3 -2
  733. package/modules/venn.js +3 -3
  734. package/modules/venn.src.js +16 -17
  735. package/modules/windbarb.js +3 -3
  736. package/modules/windbarb.src.js +5 -4
  737. package/modules/wordcloud.js +3 -3
  738. package/modules/wordcloud.src.js +10 -8
  739. package/modules/xrange.js +3 -3
  740. package/modules/xrange.src.js +5 -4
  741. package/package.json +1 -1
  742. package/standalone-navigator.js +2 -0
  743. package/standalone-navigator.src.js +49402 -0
  744. package/themes/avocado.js +3 -3
  745. package/themes/avocado.src.js +2 -1
  746. package/themes/brand-dark.js +3 -3
  747. package/themes/brand-dark.src.js +2 -1
  748. package/themes/brand-light.js +3 -3
  749. package/themes/brand-light.src.js +2 -1
  750. package/themes/dark-blue.js +3 -3
  751. package/themes/dark-blue.src.js +2 -1
  752. package/themes/dark-green.js +3 -3
  753. package/themes/dark-green.src.js +2 -1
  754. package/themes/dark-unica.js +3 -3
  755. package/themes/dark-unica.src.js +2 -1
  756. package/themes/gray.js +3 -3
  757. package/themes/gray.src.js +2 -1
  758. package/themes/grid-light.js +3 -3
  759. package/themes/grid-light.src.js +2 -1
  760. package/themes/grid.js +3 -3
  761. package/themes/grid.src.js +2 -1
  762. package/themes/high-contrast-dark.js +3 -3
  763. package/themes/high-contrast-dark.src.js +2 -1
  764. package/themes/high-contrast-light.js +3 -3
  765. package/themes/high-contrast-light.src.js +2 -1
  766. package/themes/sand-signika.js +3 -3
  767. package/themes/sand-signika.src.js +2 -1
  768. package/themes/skies.js +3 -3
  769. package/themes/skies.src.js +2 -1
  770. package/themes/sunset.js +3 -3
  771. package/themes/sunset.src.js +2 -1
  772. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +0 -259
  773. package/lib/canvg.js +0 -8
@@ -0,0 +1,334 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2024 Mateusz Bernacik
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ import Chart from '../../Core/Chart/Chart.js';
12
+ import Navigator from './Navigator.js';
13
+ import G from '../../Core/Globals.js';
14
+ import U from '../../Core/Utilities.js';
15
+ import Axis from '../../Core/Axis/Axis.js';
16
+ import standaloneNavigatorDefaults from './StandaloneNavigatorDefaults.js';
17
+ const { merge, addEvent, fireEvent, pick } = U;
18
+ /* *
19
+ *
20
+ * Class
21
+ *
22
+ * */
23
+ /**
24
+ * The StandaloneNavigator class. The StandaloneNavigator class allows for
25
+ * creating a standalone navigator component that synchronizes the extremes
26
+ * across multiple bound charts.
27
+ *
28
+ * @class
29
+ * @name Highcharts.StandaloneNavigator
30
+ *
31
+ * @param {string|Highcharts.HTMLDOMElement} [renderTo]
32
+ * The DOM element to render to, or its id.
33
+ *
34
+ * @param {StandaloneNavigatorOptions} userOptions
35
+ * The standalone navigator options.
36
+ */
37
+ class StandaloneNavigator {
38
+ /* *
39
+ *
40
+ * Static Functions
41
+ *
42
+ * */
43
+ /**
44
+ * Factory function for standalone navigator.
45
+ *
46
+ * @function Highcharts.navigator
47
+ *
48
+ * @param {string|Highcharts.HTMLDOMElement} [renderTo]
49
+ * The DOM element to render to, or its id.
50
+ *
51
+ * @param {StandaloneNavigatorOptions} options
52
+ * The standalone navigator options with chart-like structure.
53
+ *
54
+ * Returns the navigator object.
55
+ */
56
+ static navigator(renderTo, options) {
57
+ const nav = new StandaloneNavigator(renderTo, options);
58
+ if (!G.navigators) {
59
+ G.navigators = [nav];
60
+ }
61
+ else {
62
+ G.navigators.push(nav);
63
+ }
64
+ return nav;
65
+ }
66
+ /* *
67
+ *
68
+ * Constructor
69
+ *
70
+ * */
71
+ constructor(element, userOptions) {
72
+ this.boundAxes = [];
73
+ this.userOptions = userOptions;
74
+ this.chartOptions = merge(G.getOptions(), standaloneNavigatorDefaults, { navigator: userOptions });
75
+ const chart = new Chart(element, this.chartOptions);
76
+ chart.options = merge(chart.options, { navigator: { enabled: true }, scrollbar: { enabled: true } });
77
+ if (this.chartOptions.navigator && this.chartOptions.scrollbar) {
78
+ this.chartOptions.navigator.enabled = true;
79
+ this.chartOptions.scrollbar.enabled = true;
80
+ }
81
+ this.navigator = new Navigator(chart);
82
+ chart.navigator = this.navigator;
83
+ this.initNavigator();
84
+ }
85
+ /**
86
+ * Binds an axis to the standalone navigator,
87
+ * allowing the navigator to control the axis' range.
88
+ *
89
+ * @sample stock/standalone-navigator/bind/
90
+ * Bind chart with a button
91
+ *
92
+ * @function Highcharts.StandaloneNavigator#bind
93
+ *
94
+ * @param {Axis | Chart} axisOrChart
95
+ * The Axis or Chart to bind to the navigator.
96
+ *
97
+ * @param {boolean} [twoWay=true]
98
+ * Enables two-way binding between the navigator and the axis/chart.
99
+ * When true, changes in the navigator's range will update the axis
100
+ * and vice versa. When false, changes in the navigator's range will
101
+ * be reflected in the axis, but changes in the axis ranges won't be
102
+ * reflected on the navigator.
103
+ */
104
+ bind(axisOrChart, twoWay = true) {
105
+ const nav = this;
106
+ // If the chart is passed, bind the first xAxis
107
+ const axis = (axisOrChart instanceof Chart) ?
108
+ axisOrChart.xAxis[0] :
109
+ axisOrChart;
110
+ if (!(axis instanceof Axis)) {
111
+ return;
112
+ }
113
+ const { min, max } = this.navigator.xAxis, removeEventCallbacks = [];
114
+ if (twoWay) {
115
+ const removeSetExtremesEvent = addEvent(axis, 'setExtremes', (e) => {
116
+ if (e.trigger === 'pan' ||
117
+ e.trigger === 'zoom' ||
118
+ e.trigger === 'mouseWheelZoom') {
119
+ nav.setRange(e.min, e.max, true, e.trigger !== 'pan', { trigger: axis });
120
+ }
121
+ });
122
+ removeEventCallbacks.push(removeSetExtremesEvent);
123
+ }
124
+ const removeSetRangeEvent = addEvent(this.navigator, 'setRange', (e) => {
125
+ axis.setExtremes(e.min, e.max, e.redraw, e.animation);
126
+ });
127
+ removeEventCallbacks.push(removeSetRangeEvent);
128
+ let boundAxis = this.boundAxes.filter(function (boundAxis) {
129
+ return boundAxis.axis === axis;
130
+ })[0];
131
+ if (!boundAxis) {
132
+ boundAxis = { axis, callbacks: [] };
133
+ this.boundAxes.push(boundAxis);
134
+ }
135
+ boundAxis.callbacks = removeEventCallbacks;
136
+ // Show axis' series in navigator based on showInNavigator property
137
+ axis.series.forEach((series) => {
138
+ if (series.options.showInNavigator) {
139
+ nav.addSeries(series.options);
140
+ }
141
+ });
142
+ // Set extremes to match the navigator's extremes
143
+ axis.setExtremes(min, max);
144
+ // Unbind the axis before it's destroyed
145
+ addEvent(axis, 'destroy', (e) => {
146
+ if (!e.keepEvents) {
147
+ this.unbind(axis);
148
+ }
149
+ });
150
+ }
151
+ /**
152
+ * Unbinds a single axis or all bound axes from the standalone navigator.
153
+ *
154
+ * @sample stock/standalone-navigator/unbind/
155
+ * Unbind chart with a button
156
+ *
157
+ * @function Highcharts.StandaloneNavigator#unbind
158
+ *
159
+ * @param {Chart | Axis | undefined} axisOrChart
160
+ * Passing a Chart object unbinds the first X axis of the chart,
161
+ * an Axis object unbinds that specific axis,
162
+ * and undefined unbinds all axes bound to the navigator.
163
+ */
164
+ unbind(axisOrChart) {
165
+ // If no axis or chart is provided, unbind all bound axes
166
+ if (!axisOrChart) {
167
+ this.boundAxes.forEach(({ callbacks }) => {
168
+ callbacks.forEach((removeCallback) => removeCallback());
169
+ });
170
+ this.boundAxes.length = 0;
171
+ return;
172
+ }
173
+ const axis = (axisOrChart instanceof Axis) ?
174
+ axisOrChart :
175
+ axisOrChart.xAxis[0];
176
+ for (let i = this.boundAxes.length - 1; i >= 0; i--) {
177
+ if (this.boundAxes[i].axis === axis) {
178
+ this.boundAxes[i].callbacks.forEach((callback) => callback());
179
+ this.boundAxes.splice(i, 1);
180
+ }
181
+ }
182
+ }
183
+ /**
184
+ * Destroys allocated standalone navigator elements.
185
+ *
186
+ * @function Highcharts.StandaloneNavigator#destroy
187
+ */
188
+ destroy() {
189
+ // Disconnect events
190
+ this.boundAxes.forEach(({ callbacks }) => {
191
+ callbacks.forEach((removeCallback) => removeCallback());
192
+ });
193
+ this.boundAxes.length = 0;
194
+ this.navigator.destroy();
195
+ this.navigator.chart.destroy();
196
+ }
197
+ /**
198
+ * Updates the standalone navigator's options with a new set of user
199
+ * options.
200
+ *
201
+ * @sample stock/standalone-navigator/update/
202
+ * Bind chart with a button
203
+ *
204
+ * @function Highcharts.StandaloneNavigator#update
205
+ *
206
+ * @param {StandaloneNavigatorOptions} newOptions
207
+ * Updates the standalone navigator's options with new user options.
208
+ *
209
+ * @param {boolean | undefined} redraw
210
+ * Whether to redraw the standalone navigator. By default, if not
211
+ * specified, the standalone navigator will be redrawn.
212
+ */
213
+ update(newOptions, redraw) {
214
+ this.chartOptions = merge(this.chartOptions, { navigator: newOptions });
215
+ this.navigator.chart.update(this.chartOptions, redraw);
216
+ }
217
+ /**
218
+ * Redraws the standalone navigator.
219
+ *
220
+ * @function Highcharts.StandaloneNavigator#redraw
221
+ */
222
+ redraw() {
223
+ this.navigator.chart.redraw();
224
+ }
225
+ /**
226
+ * Adds a series to the standalone navigator.
227
+ *
228
+ * @private
229
+ *
230
+ * @param {SeriesOptions} seriesOptions
231
+ * Options for the series to be added to the navigator.
232
+ */
233
+ addSeries(seriesOptions) {
234
+ this.navigator.chart.addSeries(merge(seriesOptions, { showInNavigator: pick(seriesOptions.showInNavigator, true) }));
235
+ this.navigator.setBaseSeries();
236
+ }
237
+ /**
238
+ * Initialize the standalone navigator.
239
+ *
240
+ * @private
241
+ */
242
+ initNavigator() {
243
+ const nav = this.navigator;
244
+ nav.top = 1;
245
+ nav.xAxis.setScale();
246
+ nav.yAxis.setScale();
247
+ nav.xAxis.render();
248
+ nav.yAxis.render();
249
+ nav.series?.forEach((s) => {
250
+ s.translate();
251
+ s.render();
252
+ s.redraw();
253
+ });
254
+ const { min, max } = this.getInitialExtremes();
255
+ nav.chart.xAxis[0].userMin = min;
256
+ nav.chart.xAxis[0].userMax = max;
257
+ nav.render(min, max);
258
+ }
259
+ /**
260
+ * Get the current range of the standalone navigator.
261
+ *
262
+ * @sample stock/standalone-navigator/getrange/
263
+ * Report the standalone navigator's range by clicking on a button
264
+ *
265
+ * @function Highcharts.StandaloneNavigator#getRange
266
+ *
267
+ * @return {Highcharts.ExtremesObject}
268
+ * The current range of the standalone navigator.
269
+ */
270
+ getRange() {
271
+ const { min, max } = this.navigator.chart.xAxis[0].getExtremes(), { userMin, userMax, min: dataMin, max: dataMax } = this.navigator.xAxis.getExtremes();
272
+ return {
273
+ min: pick(min, dataMin),
274
+ max: pick(max, dataMax),
275
+ dataMin,
276
+ dataMax,
277
+ userMin,
278
+ userMax
279
+ };
280
+ }
281
+ /**
282
+ * Set the range of the standalone navigator.
283
+ *
284
+ * @sample stock/standalone-navigator/setrange/
285
+ * Set range from a button
286
+ *
287
+ * @function Highcharts.StandaloneNavigator#setRange
288
+ *
289
+ * @param {number | undefined} min
290
+ * The new minimum value.
291
+ *
292
+ * @param {number | undefined} max
293
+ * The new maximum value.
294
+ *
295
+ * @emits Highcharts.StandaloneNavigator#event:setRange
296
+ */
297
+ setRange(min, max, redraw, animation, eventArguments) {
298
+ fireEvent(this.navigator, 'setRange', {
299
+ min,
300
+ max,
301
+ redraw,
302
+ animation,
303
+ eventArguments: merge(eventArguments, { trigger: 'navigator' })
304
+ });
305
+ }
306
+ /**
307
+ * Get the initial, options based extremes for the standalone navigator.
308
+ *
309
+ * @private
310
+ *
311
+ * @return {{ min: number, max: number }}
312
+ * The initial minimum and maximum extremes values.
313
+ */
314
+ getInitialExtremes() {
315
+ const { min, max } = this.navigator.xAxis.getExtremes();
316
+ return {
317
+ min: min,
318
+ max: max
319
+ };
320
+ }
321
+ }
322
+ export default StandaloneNavigator;
323
+ /* *
324
+ *
325
+ * API Declarations
326
+ *
327
+ * */
328
+ /**
329
+ * Standalone Navigator options.
330
+ *
331
+ * @interface Highcharts.StandaloneNavigatorOptions
332
+ */ /**
333
+ */
334
+ ''; // detach doclets above
@@ -0,0 +1,64 @@
1
+ /* *
2
+ *
3
+ * (c) 2010-2024 Mateusz Bernacik
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * */
10
+ 'use strict';
11
+ /* *
12
+ *
13
+ * Constants
14
+ *
15
+ * */
16
+ const standaloneNavigatorDefaults = {
17
+ chart: {
18
+ height: 70,
19
+ margin: [0, 5, 0, 5]
20
+ },
21
+ exporting: {
22
+ enabled: false
23
+ },
24
+ legend: {
25
+ enabled: false
26
+ },
27
+ navigator: {
28
+ enabled: false
29
+ },
30
+ plotOptions: {
31
+ series: {
32
+ states: {
33
+ hover: {
34
+ enabled: false
35
+ }
36
+ },
37
+ marker: {
38
+ enabled: false
39
+ }
40
+ }
41
+ },
42
+ scrollbar: {
43
+ enabled: false
44
+ },
45
+ title: {
46
+ text: ''
47
+ },
48
+ tooltip: {
49
+ enabled: false
50
+ },
51
+ xAxis: {
52
+ visible: false
53
+ },
54
+ yAxis: {
55
+ height: 0,
56
+ visible: false
57
+ }
58
+ };
59
+ /* *
60
+ *
61
+ * Default Export
62
+ *
63
+ * */
64
+ export default standaloneNavigatorDefaults;
@@ -106,8 +106,6 @@ class RangeSelector {
106
106
  if (dataMin === null || dataMax === null) {
107
107
  return;
108
108
  }
109
- // Set the fixed range before range is altered
110
- chart.fixedRange = range;
111
109
  rangeSelector.setSelected(i);
112
110
  // Apply dataGrouping associated to button
113
111
  if (dataGrouping) {
@@ -200,7 +198,7 @@ class RangeSelector {
200
198
  }
201
199
  // Update the chart
202
200
  if (!baseAxis) {
203
- // Axis not yet instanciated. Temporarily set min and range
201
+ // Axis not yet instantiated. Temporarily set min and range
204
202
  // options and remove them on chart load (#4317).
205
203
  baseXAxisOptions = splat(chart.options.xAxis)[0];
206
204
  rangeSetting = baseXAxisOptions.range;
@@ -208,6 +206,7 @@ class RangeSelector {
208
206
  minSetting = baseXAxisOptions.min;
209
207
  baseXAxisOptions.min = rangeMin;
210
208
  addEvent(chart, 'load', function resetMinAndRange() {
209
+ chart.setFixedRange(rangeOptions._range);
211
210
  baseXAxisOptions.range = rangeSetting;
212
211
  baseXAxisOptions.min = minSetting;
213
212
  });
@@ -219,6 +218,7 @@ class RangeSelector {
219
218
  trigger: 'rangeSelectorButton',
220
219
  rangeSelectorButton: rangeOptions
221
220
  });
221
+ chart.setFixedRange(rangeOptions._range);
222
222
  }
223
223
  fireEvent(this, 'afterBtnClick');
224
224
  }
@@ -260,7 +260,7 @@ class RangeSelector {
260
260
  this.eventsToUnbind.push(addEvent(chart, 'resize', blurInputs));
261
261
  // Extend the buttonOptions with actual range
262
262
  buttonOptions.forEach(rangeSelector.computeButtonRange);
263
- // zoomed range based on a pre-selected button index
263
+ // Zoomed range based on a pre-selected button index
264
264
  if (typeof selectedOption !== 'undefined' &&
265
265
  buttonOptions[selectedOption]) {
266
266
  this.clickButton(selectedOption, false);
@@ -270,8 +270,9 @@ class RangeSelector {
270
270
  // when extremes change
271
271
  if (chart.xAxis && chart.xAxis[0]) {
272
272
  addEvent(chart.xAxis[0], 'setExtremes', function (e) {
273
- if (this.max - this.min !==
274
- chart.fixedRange &&
273
+ if (isNumber(this.max) &&
274
+ isNumber(this.min) &&
275
+ this.max - this.min !== chart.fixedRange &&
275
276
  e.trigger !== 'rangeSelectorButton' &&
276
277
  e.trigger !== 'updatedData' &&
277
278
  rangeSelector.forcedDataGrouping &&
@@ -312,8 +313,19 @@ class RangeSelector {
312
313
  if (isSelected && isTooGreatRange) {
313
314
  isSelectedTooGreat = true;
314
315
  }
315
- // Months and years have a variable range so we check the extremes
316
- if ((type === 'month' || type === 'year') &&
316
+ if (baseAxis.isOrdinal &&
317
+ baseAxis.ordinal?.positions &&
318
+ range &&
319
+ actualRange < range) {
320
+ // Handle ordinal ranges
321
+ const positions = baseAxis.ordinal.positions;
322
+ if (positions[positions.length - 1] - positions[0] > range) {
323
+ isSameRange = true;
324
+ }
325
+ }
326
+ else if (
327
+ // Months and years have variable range so we check the extremes
328
+ (type === 'month' || type === 'year') &&
317
329
  (actualRange + 36e5 >=
318
330
  { month: 28, year: 365 }[type] * day * count - offsetRange) &&
319
331
  (actualRange - 36e5 <=
@@ -574,7 +586,7 @@ class RangeSelector {
574
586
  if (value !== Number(input.getAttribute('data-hc-time-previous')) &&
575
587
  isNumber(value)) {
576
588
  input.setAttribute('data-hc-time-previous', value);
577
- // Validate the extremes. If it goes beyound the data min or
589
+ // Validate the extremes. If it goes beyond the data min or
578
590
  // max, use the actual data extreme (#2438).
579
591
  if (isMin && maxInput && isNumber(dataMin)) {
580
592
  if (value > Number(maxInput.getAttribute('data-hc-time'))) {
@@ -593,7 +605,7 @@ class RangeSelector {
593
605
  }
594
606
  }
595
607
  // Set the extremes
596
- if (typeof value !== 'undefined') { // @todo typof undefined
608
+ if (typeof value !== 'undefined') { // @todo typeof undefined
597
609
  chartAxis.setExtremes(isMin ? value : chartAxis.min, isMin ? chartAxis.max : value, void 0, void 0, { trigger: 'rangeSelectorInput' });
598
610
  }
599
611
  }
@@ -608,8 +620,8 @@ class RangeSelector {
608
620
  height: text ? options.inputBoxHeight : 0
609
621
  })
610
622
  .add(inputGroup);
611
- // Create an SVG label that shows updated date ranges and and records
612
- // click events that bring in the HTML input.
623
+ // Create an SVG label that shows updated date ranges and records click
624
+ // events that bring in the HTML input.
613
625
  const dateBox = renderer
614
626
  .label('', 0)
615
627
  .addClass('highcharts-range-input')
@@ -666,7 +678,7 @@ class RangeSelector {
666
678
  };
667
679
  // Hide away the input box
668
680
  input.onblur = () => {
669
- // update extermes only when inputs are active
681
+ // update extremes only when inputs are active
670
682
  if (input === H.doc.activeElement) { // Only when focused
671
683
  // Update also when no `change` event is triggered, like when
672
684
  // clicking inside the SVG (#4710)
@@ -715,7 +727,7 @@ class RangeSelector {
715
727
  getPosition() {
716
728
  const chart = this.chart, options = chart.options.rangeSelector, top = options.verticalAlign === 'top' ?
717
729
  chart.plotTop - chart.axisOffset[0] :
718
- 0; // set offset only for varticalAlign top
730
+ 0; // set offset only for verticalAlign top
719
731
  return {
720
732
  buttonTop: top + options.buttonPosition.y,
721
733
  inputTop: top + options.inputPosition.y - 10
@@ -933,7 +945,7 @@ class RangeSelector {
933
945
  chartOptions.navigation.buttonOptions);
934
946
  const { buttonPosition, inputPosition, verticalAlign } = options;
935
947
  // Get the X offset required to avoid overlapping with the exporting
936
- // button. This is is used both by the buttonGroup and the inputGroup.
948
+ // button. This is used both by the buttonGroup and the inputGroup.
937
949
  const getXOffsetForExportButton = (group, position) => {
938
950
  if (navButtonOptions &&
939
951
  this.titleCollision(chart) &&
@@ -1065,7 +1077,7 @@ class RangeSelector {
1065
1077
  * @param {number} [width]
1066
1078
  */
1067
1079
  alignButtonGroup(xOffsetForExportButton, width) {
1068
- const { chart, options, buttonGroup, buttons } = this;
1080
+ const { chart, options, buttonGroup } = this;
1069
1081
  const { buttonPosition } = options;
1070
1082
  const plotLeft = chart.plotLeft - chart.spacing[3];
1071
1083
  let translateX = buttonPosition.x - chart.spacing[3];
@@ -66,7 +66,7 @@ function axisMinFromRange() {
66
66
  min = max + getTrueRange(max, -(rangeOptions.count || 1));
67
67
  // Let the fixedRange reflect initial settings (#5930)
68
68
  if (this.chart) {
69
- this.chart.fixedRange = max - min;
69
+ this.chart.setFixedRange(max - min);
70
70
  }
71
71
  }
72
72
  const dataMin = pick(this.dataMin, Number.MIN_VALUE);
@@ -95,7 +95,7 @@ function axisMinFromRange() {
95
95
  */
96
96
  function compose(AxisClass, ChartClass, RangeSelectorClass) {
97
97
  RangeSelectorConstructor = RangeSelectorClass;
98
- if (pushUnique(composed, compose)) {
98
+ if (pushUnique(composed, 'RangeSelector')) {
99
99
  const chartProto = ChartClass.prototype;
100
100
  AxisClass.prototype.minFromRange = axisMinFromRange;
101
101
  addEvent(ChartClass, 'afterGetContainer', onChartAfterGetContainer);
@@ -113,8 +113,8 @@ class Scrollbar {
113
113
  */
114
114
  addEvents() {
115
115
  const buttonsOrder = this.options.inverted ? [1, 0] : [0, 1], buttons = this.scrollbarButtons, bar = this.scrollbarGroup.element, track = this.track.element, mouseDownHandler = this.mouseDownHandler.bind(this), mouseMoveHandler = this.mouseMoveHandler.bind(this), mouseUpHandler = this.mouseUpHandler.bind(this);
116
- // Mouse events
117
116
  const _events = [
117
+ // Mouse events
118
118
  [
119
119
  buttons[buttonsOrder[0]].element,
120
120
  'click',
@@ -128,12 +128,12 @@ class Scrollbar {
128
128
  [track, 'click', this.trackClick.bind(this)],
129
129
  [bar, 'mousedown', mouseDownHandler],
130
130
  [bar.ownerDocument, 'mousemove', mouseMoveHandler],
131
- [bar.ownerDocument, 'mouseup', mouseUpHandler]
131
+ [bar.ownerDocument, 'mouseup', mouseUpHandler],
132
+ // Touch events
133
+ [bar, 'touchstart', mouseDownHandler],
134
+ [bar.ownerDocument, 'touchmove', mouseMoveHandler],
135
+ [bar.ownerDocument, 'touchend', mouseUpHandler]
132
136
  ];
133
- // Touch events
134
- if (H.hasTouch) {
135
- _events.push([bar, 'touchstart', mouseDownHandler], [bar.ownerDocument, 'touchmove', mouseMoveHandler], [bar.ownerDocument, 'touchend', mouseUpHandler]);
136
- }
137
137
  // Add them all
138
138
  _events.forEach(function (args) {
139
139
  addEvent.apply(null, args);
@@ -299,7 +299,7 @@ class Scrollbar {
299
299
  }
300
300
  }
301
301
  mouseDownHandler(e) {
302
- const scroller = this, normalizedEvent = scroller.chart.pointer.normalize(e), mousePosition = scroller.cursorToScrollbarPosition(normalizedEvent);
302
+ const scroller = this, normalizedEvent = scroller.chart.pointer?.normalize(e) || e, mousePosition = scroller.cursorToScrollbarPosition(normalizedEvent);
303
303
  scroller.chartX = mousePosition.chartX;
304
304
  scroller.chartY = mousePosition.chartY;
305
305
  scroller.initPositions = [scroller.from, scroller.to];
@@ -310,7 +310,7 @@ class Scrollbar {
310
310
  * @private
311
311
  */
312
312
  mouseMoveHandler(e) {
313
- const scroller = this, normalizedEvent = scroller.chart.pointer.normalize(e), options = scroller.options, direction = options.vertical ?
313
+ const scroller = this, normalizedEvent = scroller.chart.pointer?.normalize(e) || e, options = scroller.options, direction = options.vertical ?
314
314
  'chartY' : 'chartX', initPositions = scroller.initPositions || [];
315
315
  let scrollPosition, chartPosition, change;
316
316
  // In iOS, a mousemove event with e.pageX === 0 is fired when
@@ -368,7 +368,7 @@ class Scrollbar {
368
368
  * @param {number} width
369
369
  * width of the scrollbar
370
370
  * @param {number} height
371
- * height of the scorllbar
371
+ * height of the scrollbar
372
372
  */
373
373
  position(x, y, width, height) {
374
374
  const scroller = this, options = scroller.options, { buttonsEnabled, margin = 0, vertical } = options, method = scroller.rendered ? 'animate' : 'attr';
@@ -592,7 +592,7 @@ class Scrollbar {
592
592
  }
593
593
  trackClick(e) {
594
594
  const scroller = this;
595
- const normalizedEvent = scroller.chart.pointer.normalize(e), range = scroller.to - scroller.from, top = scroller.y + scroller.scrollbarTop, left = scroller.x + scroller.scrollbarLeft;
595
+ const normalizedEvent = scroller.chart.pointer?.normalize(e) || e, range = scroller.to - scroller.from, top = scroller.y + scroller.scrollbarTop, left = scroller.x + scroller.scrollbarLeft;
596
596
  if ((scroller.options.vertical && normalizedEvent.chartY > top) ||
597
597
  (!scroller.options.vertical && normalizedEvent.chartX > left)) {
598
598
  // On the top or on the left side of the track:
@@ -8,8 +8,6 @@
8
8
  *
9
9
  * */
10
10
  'use strict';
11
- import H from '../../Core/Globals.js';
12
- const { isTouchDevice } = H;
13
11
  /* *
14
12
  *
15
13
  * Constant
@@ -18,7 +16,7 @@ const { isTouchDevice } = H;
18
16
  /**
19
17
  *
20
18
  * The scrollbar is a means of panning over the X axis of a stock chart.
21
- * Scrollbars can also be applied to other types of axes.
19
+ * Scrollbars can also be applied to other types of axes.
22
20
  *
23
21
  * Another approach to scrollable charts is the [chart.scrollablePlotArea](
24
22
  * https://api.highcharts.com/highcharts/chart.scrollablePlotArea) option that
@@ -191,7 +191,7 @@ class Toolbar {
191
191
  });
192
192
  }
193
193
  /**
194
- * Create single button. Consist of HTML elements `li`, `span`, and (if
194
+ * Create single button. Consist of HTML elements `li`, `button`, and (if
195
195
  * exists) submenu container.
196
196
  *
197
197
  * @private
@@ -219,13 +219,14 @@ class Toolbar {
219
219
  title: lang[btnName] || btnName
220
220
  }, void 0, target);
221
221
  // single button
222
- const mainButton = createElement('span', {
222
+ const elementType = (btnOptions.elementType || 'button');
223
+ const mainButton = createElement(elementType, {
223
224
  className: 'highcharts-menu-item-btn'
224
225
  }, void 0, buttonWrapper);
225
226
  // submenu
226
227
  if (items && items.length) {
227
228
  // arrow is a hook to show / hide submenu
228
- const submenuArrow = createElement('span', {
229
+ const submenuArrow = createElement('button', {
229
230
  className: 'highcharts-submenu-item-arrow ' +
230
231
  'highcharts-arrow-right'
231
232
  }, void 0, buttonWrapper);
@@ -312,7 +313,7 @@ class Toolbar {
312
313
  ].forEach((eventType) => {
313
314
  addEvent(wrapper, eventType, (e) => e.stopPropagation());
314
315
  });
315
- addEvent(wrapper, 'mouseover', (e) => chart.pointer.onContainerMouseLeave(e));
316
+ addEvent(wrapper, 'mouseover', (e) => chart.pointer?.onContainerMouseLeave(e));
316
317
  // toolbar
317
318
  this.toolbar = toolbar = createElement('ul', {
318
319
  className: 'highcharts-stocktools-toolbar ' +
@@ -487,7 +488,7 @@ class Toolbar {
487
488
  getIconsURL() {
488
489
  return this.chart.options.navigation.iconsURL ||
489
490
  this.options.iconsURL ||
490
- 'https://code.highcharts.com/11.3.0/gfx/stock-icons/';
491
+ 'https://code.highcharts.com/@product.version@/gfx/stock-icons/';
491
492
  }
492
493
  }
493
494
  Toolbar.prototype.classMapping = {