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
@@ -8,10 +8,8 @@
8
8
  *
9
9
  * */
10
10
  'use strict';
11
- import H from '../Globals.js';
12
- const { composed } = H;
13
11
  import U from '../Utilities.js';
14
- const { addEvent, normalizeTickInterval, pick, pushUnique } = U;
12
+ const { addEvent, normalizeTickInterval, pick } = U;
15
13
  /* *
16
14
  *
17
15
  * Class
@@ -37,7 +35,7 @@ var LogarithmicAxis;
37
35
  * @private
38
36
  */
39
37
  function compose(AxisClass) {
40
- if (pushUnique(composed, compose)) {
38
+ if (!AxisClass.keepProps.includes('logarithmic')) {
41
39
  AxisClass.keepProps.push('logarithmic');
42
40
  addEvent(AxisClass, 'init', onInit);
43
41
  addEvent(AxisClass, 'afterInit', onAfterInit);
@@ -9,9 +9,9 @@
9
9
  * */
10
10
  'use strict';
11
11
  import H from '../Globals.js';
12
- const { composed, isTouchDevice } = H;
12
+ const { isTouchDevice } = H;
13
13
  import U from '../Utilities.js';
14
- const { addEvent, correctFloat, defined, isNumber, pick, pushUnique } = U;
14
+ const { addEvent, correctFloat, defined, isNumber, pick } = U;
15
15
  /* *
16
16
  *
17
17
  * Functions
@@ -32,34 +32,36 @@ function onAxisInit() {
32
32
  * selector.
33
33
  * @private
34
34
  */
35
- function onAxisZoom(e) {
35
+ function onAxisSetExtremes(e) {
36
36
  const axis = this, chart = axis.chart, chartOptions = chart.options, navigator = chartOptions.navigator, navigatorAxis = axis.navigatorAxis, pinchType = chart.zooming.pinchType, rangeSelector = chartOptions.rangeSelector, zoomType = chart.zooming.type;
37
- if (axis.isXAxis && ((navigator && navigator.enabled) ||
38
- (rangeSelector && rangeSelector.enabled))) {
37
+ let zoomed;
38
+ if (axis.isXAxis &&
39
+ (navigator?.enabled || rangeSelector?.enabled)) {
39
40
  // For y only zooming, ignore the X axis completely
40
- if (zoomType === 'y') {
41
- e.zoomed = false;
42
- // For xy zooming, record the state of the zoom before zoom
43
- // selection, then when the reset button is pressed, revert to
44
- // this state. This should apply only if the chart is
45
- // initialized with a range (#6612), otherwise zoom all the way
46
- // out.
41
+ if (zoomType === 'y' && e.trigger === 'zoom') {
42
+ zoomed = false;
43
+ // For xy zooming, record the state of the zoom before zoom selection,
44
+ // then when the reset button is pressed, revert to this state. This
45
+ // should apply only if the chart is initialized with a range (#6612),
46
+ // otherwise zoom all the way out.
47
47
  }
48
- else if (((!isTouchDevice && zoomType === 'xy') ||
48
+ else if (((e.trigger === 'zoom' && zoomType === 'xy') ||
49
49
  (isTouchDevice && pinchType === 'xy')) &&
50
50
  axis.options.range) {
51
51
  const previousZoom = navigatorAxis.previousZoom;
52
- if (defined(e.newMin)) {
52
+ // Minimum defined, zooming in
53
+ if (defined(e.min)) {
53
54
  navigatorAxis.previousZoom = [axis.min, axis.max];
55
+ // Minimum undefined, resetting zoom
54
56
  }
55
57
  else if (previousZoom) {
56
- e.newMin = previousZoom[0];
57
- e.newMax = previousZoom[1];
58
+ e.min = previousZoom[0];
59
+ e.max = previousZoom[1];
58
60
  navigatorAxis.previousZoom = void 0;
59
61
  }
60
62
  }
61
63
  }
62
- if (typeof e.zoomed !== 'undefined') {
64
+ if (typeof zoomed !== 'undefined') {
63
65
  e.preventDefault();
64
66
  }
65
67
  }
@@ -82,10 +84,10 @@ class NavigatorAxisAdditions {
82
84
  * @private
83
85
  */
84
86
  static compose(AxisClass) {
85
- if (pushUnique(composed, this.compose)) {
87
+ if (!AxisClass.keepProps.includes('navigatorAxis')) {
86
88
  AxisClass.keepProps.push('navigatorAxis');
87
89
  addEvent(AxisClass, 'init', onAxisInit);
88
- addEvent(AxisClass, 'zoom', onAxisZoom);
90
+ addEvent(AxisClass, 'setExtremes', onAxisSetExtremes);
89
91
  }
90
92
  }
91
93
  /* *
@@ -115,7 +117,7 @@ class NavigatorAxisAdditions {
115
117
  * @function Highcharts.Axis#toFixedRange
116
118
  */
117
119
  toFixedRange(pxMin, pxMax, fixedMin, fixedMax) {
118
- const axis = this.axis, chart = axis.chart;
120
+ const axis = this.axis, chart = axis.chart, overscroll = pick(axis.ordinal?.convertOverscroll(axis.options.overscroll), 0);
119
121
  let newMin = pick(fixedMin, axis.translate(pxMin, true, !axis.horiz)), newMax = pick(fixedMax, axis.translate(pxMax, true, !axis.horiz));
120
122
  const fixedRange = chart && chart.fixedRange, halfPointRange = (axis.pointRange || 0) / 2;
121
123
  // Add/remove half point range to/from the extremes (#1172)
@@ -127,8 +129,10 @@ class NavigatorAxisAdditions {
127
129
  }
128
130
  // Make sure panning to the edges does not decrease the zoomed range
129
131
  if (fixedRange && axis.dataMin && axis.dataMax) {
130
- if (newMax >= axis.dataMax) {
131
- newMin = correctFloat(axis.dataMax - fixedRange);
132
+ const maxWithOverscroll = axis.dataMax + overscroll;
133
+ if (newMax >= maxWithOverscroll) {
134
+ newMin = correctFloat(maxWithOverscroll - fixedRange);
135
+ newMax = correctFloat(maxWithOverscroll);
132
136
  }
133
137
  if (newMin <= axis.dataMin) {
134
138
  newMax = correctFloat(axis.dataMin + fixedRange);
@@ -10,10 +10,9 @@
10
10
  'use strict';
11
11
  import Axis from './Axis.js';
12
12
  import H from '../Globals.js';
13
- const { composed } = H;
14
13
  import Series from '../Series/Series.js';
15
14
  import U from '../Utilities.js';
16
- const { addEvent, correctFloat, css, defined, error, pick, pushUnique, timeUnits } = U;
15
+ const { addEvent, correctFloat, css, defined, error, isNumber, pick, timeUnits, isString } = U;
17
16
  /* *
18
17
  *
19
18
  * Composition
@@ -50,8 +49,8 @@ var OrdinalAxis;
50
49
  * Series class to use.
51
50
  */
52
51
  function compose(AxisClass, SeriesClass, ChartClass) {
53
- if (pushUnique(composed, compose)) {
54
- const axisProto = AxisClass.prototype;
52
+ const axisProto = AxisClass.prototype;
53
+ if (!axisProto.ordinal2lin) {
55
54
  axisProto.getTimeTicks = getTimeTicks;
56
55
  axisProto.index2val = index2val;
57
56
  axisProto.lin2val = lin2val;
@@ -69,7 +68,7 @@ var OrdinalAxis;
69
68
  }
70
69
  OrdinalAxis.compose = compose;
71
70
  /**
72
- * In an ordinal axis, there might be areas with dense consentrations of
71
+ * In an ordinal axis, there might be areas with dense concentrations of
73
72
  * points, then large gaps between some. Creating equally distributed
74
73
  * ticks over this entire range may lead to a huge number of ticks that
75
74
  * will later be removed. So instead, break the positions up in
@@ -268,7 +267,7 @@ var OrdinalAxis;
268
267
  let positions = ordinal.getExtendedPositions();
269
268
  // In some cases (especially in early stages of the chart creation) the
270
269
  // getExtendedPositions might return undefined.
271
- if (positions.length) {
270
+ if (positions && positions.length) {
272
271
  // Convert back from modivied value to pixels. // #15970
273
272
  const pixelVal = correctFloat((val - localMin) * localA +
274
273
  axis.minPixelPadding), index = correctFloat(ordinal.getIndexOfPoint(pixelVal, positions)), mantissa = correctFloat(index % 1);
@@ -309,22 +308,32 @@ var OrdinalAxis;
309
308
  * @private
310
309
  */
311
310
  function onAxisFoundExtremes() {
312
- const axis = this;
311
+ const axis = this, { eventArgs, options } = axis;
313
312
  if (axis.isXAxis &&
314
- defined(axis.options.overscroll) &&
315
- axis.max === axis.dataMax &&
316
- (
317
- // Panning is an execption. We don't want to apply
318
- // overscroll when panning over the dataMax
319
- !axis.chart.mouseIsDown ||
320
- axis.isInternal) && (
321
- // Scrollbar buttons are the other execption:
322
- !axis.eventArgs ||
323
- axis.eventArgs && axis.eventArgs.trigger !== 'navigator')) {
324
- axis.max += axis.options.overscroll;
325
- // Live data and buttons require translation for the min:
326
- if (!axis.isInternal && defined(axis.userMin)) {
327
- axis.min += axis.options.overscroll;
313
+ defined(options.overscroll) &&
314
+ options.overscroll !== 0 &&
315
+ isNumber(axis.max) &&
316
+ isNumber(axis.min)) {
317
+ if (axis.options.ordinal && !axis.ordinal.originalOrdinalRange) {
318
+ // Calculate the original ordinal range
319
+ axis.ordinal.getExtendedPositions(false);
320
+ }
321
+ if (axis.max === axis.dataMax &&
322
+ (
323
+ // Panning is an exception. We don't want to apply
324
+ // overscroll when panning over the dataMax
325
+ eventArgs?.trigger !== 'pan' ||
326
+ axis.isInternal) &&
327
+ // Scrollbar buttons are the other execption
328
+ eventArgs?.trigger !== 'navigator') {
329
+ const overscroll = axis.ordinal.convertOverscroll(options.overscroll);
330
+ axis.max += overscroll;
331
+ // Live data and buttons require translation for the min:
332
+ if (!axis.isInternal &&
333
+ defined(axis.userMin) &&
334
+ eventArgs?.trigger !== 'mousewheel') {
335
+ axis.min += overscroll;
336
+ }
328
337
  }
329
338
  }
330
339
  }
@@ -357,7 +366,7 @@ var OrdinalAxis;
357
366
  * @private
358
367
  */
359
368
  function onChartPan(e) {
360
- const chart = this, xAxis = chart.xAxis[0], overscroll = xAxis.options.overscroll, chartX = e.originalEvent.chartX, panning = chart.options.chart.panning;
369
+ const chart = this, xAxis = chart.xAxis[0], overscroll = xAxis.ordinal.convertOverscroll(xAxis.options.overscroll), chartX = e.originalEvent.chartX, panning = chart.options.chart.panning;
361
370
  let runBase = false;
362
371
  if (panning &&
363
372
  panning.type !== 'y' &&
@@ -375,7 +384,7 @@ var OrdinalAxis;
375
384
  extendedOrdinalPositions: extendedOrdinalPositions
376
385
  }
377
386
  }, index2val = xAxis.index2val, val2lin = xAxis.val2lin;
378
- let trimmedRange, ordinalPositions, searchAxisLeft, searchAxisRight;
387
+ let trimmedRange, ordinalPositions;
379
388
  // we have an ordinal axis, but the data is equally spaced
380
389
  if (!extendedAxis.ordinal.positions) {
381
390
  runBase = true;
@@ -387,21 +396,11 @@ var OrdinalAxis;
387
396
  point.setState();
388
397
  });
389
398
  }
390
- if (movedUnits < 0) {
391
- searchAxisLeft = extendedAxis;
392
- searchAxisRight = xAxis.ordinal.positions ?
393
- xAxis : extendedAxis;
394
- }
395
- else {
396
- searchAxisLeft = xAxis.ordinal.positions ?
397
- xAxis : extendedAxis;
398
- searchAxisRight = extendedAxis;
399
- }
400
399
  // In grouped data series, the last ordinal position represents
401
400
  // the grouped data, which is to the left of the real data max.
402
401
  // If we don't compensate for this, we will be allowed to pan
403
402
  // grouped data series passed the right of the plot area.
404
- ordinalPositions = searchAxisRight.ordinal.positions;
403
+ ordinalPositions = extendedAxis.ordinal.positions;
405
404
  if (dataMax >
406
405
  ordinalPositions[ordinalPositions.length - 1]) {
407
406
  ordinalPositions.push(dataMax);
@@ -411,19 +410,18 @@ var OrdinalAxis;
411
410
  // translate back to values. This happens on the extended
412
411
  // ordinal positions if the new position is out of range, else
413
412
  // it happens on the current x axis which is smaller and faster.
414
- chart.fixedRange = max - min;
413
+ chart.setFixedRange(max - min);
415
414
  trimmedRange = xAxis.navigatorAxis
416
- .toFixedRange(void 0, void 0, index2val.apply(searchAxisLeft, [
417
- val2lin.apply(searchAxisLeft, [min, true]) +
415
+ .toFixedRange(void 0, void 0, index2val.apply(extendedAxis, [
416
+ val2lin.apply(extendedAxis, [min, true]) +
418
417
  movedUnits
419
- ]), index2val.apply(searchAxisRight, [
420
- val2lin.apply(searchAxisRight, [max, true]) +
418
+ ]), index2val.apply(extendedAxis, [
419
+ val2lin.apply(extendedAxis, [max, true]) +
421
420
  movedUnits
422
421
  ]));
423
422
  // Apply it if it is within the available data range
424
423
  if (trimmedRange.min >= Math.min(extremes.dataMin, min) &&
425
- trimmedRange.max <= Math.max(dataMax, max) +
426
- overscroll) {
424
+ trimmedRange.max <= Math.max(dataMax, max) + overscroll) {
427
425
  xAxis.setExtremes(trimmedRange.min, trimmedRange.max, true, false, { trigger: 'pan' });
428
426
  }
429
427
  chart.mouseDownX = chartX; // set new reference for next run
@@ -452,6 +450,7 @@ var OrdinalAxis;
452
450
  // and destroy extendedOrdinalPositions, #16055.
453
451
  if (xAxis && xAxis.options.ordinal) {
454
452
  delete xAxis.ordinal.index;
453
+ delete xAxis.ordinal.originalOrdinalRange;
455
454
  }
456
455
  }
457
456
  /**
@@ -515,9 +514,9 @@ var OrdinalAxis;
515
514
  return val;
516
515
  }
517
516
  // Since ordinal.slope is the average distance between 2
518
- // points on visible plotArea, this can be used to calculete
517
+ // points on visible plotArea, this can be used to calculate
519
518
  // the approximate position of the point, which is outside
520
- // the extededOrdinalPositions.
519
+ // the extendedOrdinalPositions.
521
520
  if (val < extendedOrdinalPositions[0]) {
522
521
  const diff = extendedOrdinalPositions[0] - val, approximateIndexOffset = diff / slope;
523
522
  ordinalIndex =
@@ -622,6 +621,11 @@ var OrdinalAxis;
622
621
  }
623
622
  }
624
623
  });
624
+ if (!axis.ordinal.originalOrdinalRange) {
625
+ // Calculate current originalOrdinalRange
626
+ axis.ordinal.originalOrdinalRange =
627
+ (ordinalPositions.length - 1) * overscrollPointsRange;
628
+ }
625
629
  // If the distance between points is not identical throughout
626
630
  // all series, remove the first and last ordinal position to
627
631
  // avoid enabling ordinal logic when it is not needed, #17405.
@@ -663,7 +667,7 @@ var OrdinalAxis;
663
667
  else if (len === 1) {
664
668
  // We have just one point, closest distance is unknown.
665
669
  // Assume then it is last point and overscrolled range:
666
- overscrollPointsRange = axis.options.overscroll;
670
+ overscrollPointsRange = axis.ordinal.convertOverscroll(axis.options.overscroll);
667
671
  ordinalPositions = [
668
672
  ordinalPositions[0],
669
673
  ordinalPositions[0] + overscrollPointsRange
@@ -749,10 +753,11 @@ var OrdinalAxis;
749
753
  * it will be regenerated the next time a panning operation starts.
750
754
  * @private
751
755
  */
752
- getExtendedPositions() {
753
- const ordinal = this, axis = ordinal.axis, axisProto = axis.constructor.prototype, chart = axis.chart, grouping = axis.series[0].currentDataGrouping, key = grouping ?
756
+ getExtendedPositions(withOverscroll = true) {
757
+ const ordinal = this, axis = ordinal.axis, axisProto = axis.constructor.prototype, chart = axis.chart, grouping = axis.series[0]?.currentDataGrouping, key = grouping ?
754
758
  grouping.count + grouping.unitName :
755
- 'raw', overscroll = axis.options.overscroll, extremes = axis.getExtremes();
759
+ 'raw', overscroll = withOverscroll ?
760
+ axis.ordinal.convertOverscroll(axis.options.overscroll) : 0, extremes = axis.getExtremes();
756
761
  let fakeAxis, fakeSeries = void 0, ordinalIndex = ordinal.index;
757
762
  // If this is the first time, or the ordinal index is deleted by
758
763
  // updatedData,
@@ -801,7 +806,9 @@ var OrdinalAxis;
801
806
  reserveSpace: Series.prototype.reserveSpace,
802
807
  visible: series.visible
803
808
  };
804
- fakeSeries.xData = fakeSeries.xData.concat(ordinal.getOverscrollPositions());
809
+ if (withOverscroll) {
810
+ fakeSeries.xData = fakeSeries.xData.concat(ordinal.getOverscrollPositions());
811
+ }
805
812
  fakeSeries.options = {
806
813
  dataGrouping: grouping ? {
807
814
  firstAnchor: 'firstPoint',
@@ -825,13 +832,18 @@ var OrdinalAxis;
825
832
  fakeAxis.applyGrouping({ hasExtremesChanged: true });
826
833
  // Force to use the ordinal when points are evenly spaced (e.g.
827
834
  // weeks), #3825.
828
- if ((fakeSeries.closestPointRange !==
829
- fakeSeries.basePointRange) &&
835
+ if ((fakeSeries?.closestPointRange !==
836
+ fakeSeries?.basePointRange) &&
830
837
  fakeSeries.currentDataGrouping) {
831
838
  fakeAxis.forceOrdinal = true;
832
839
  }
833
840
  // Run beforeSetTickPositions to compute the ordinalPositions
834
841
  axis.ordinal.beforeSetTickPositions.apply({ axis: fakeAxis });
842
+ if (!axis.ordinal.originalOrdinalRange &&
843
+ fakeAxis.ordinal.originalOrdinalRange) {
844
+ axis.ordinal.originalOrdinalRange =
845
+ fakeAxis.ordinal.originalOrdinalRange;
846
+ }
835
847
  // Cache it
836
848
  ordinalIndex[key] = fakeAxis.ordinal.positions;
837
849
  }
@@ -861,7 +873,7 @@ var OrdinalAxis;
861
873
  * @private
862
874
  */
863
875
  getGroupIntervalFactor(xMin, xMax, series) {
864
- const ordinal = this, axis = ordinal.axis, processedXData = series.processedXData, len = processedXData.length, distances = [];
876
+ const ordinal = this, processedXData = series.processedXData, len = processedXData.length, distances = [];
865
877
  let median, i, groupIntervalFactor = ordinal.groupIntervalFactor;
866
878
  // Only do this computation for the first series, let the other
867
879
  // inherit it (#2416)
@@ -893,7 +905,7 @@ var OrdinalAxis;
893
905
  * @param {number} val
894
906
  * The pixel value of a point.
895
907
  *
896
- * @param {Array<number>} [ordinallArray]
908
+ * @param {Array<number>} [ordinalArray]
897
909
  * An array of all points available on the axis for the given data set.
898
910
  * Either ordinalPositions if the value is inside the plotArea or
899
911
  * extendedOrdinalPositions if not.
@@ -942,7 +954,7 @@ var OrdinalAxis;
942
954
  * @private
943
955
  */
944
956
  getOverscrollPositions() {
945
- const ordinal = this, axis = ordinal.axis, extraRange = axis.options.overscroll, distance = ordinal.overscrollPointsRange, positions = [];
957
+ const ordinal = this, axis = ordinal.axis, extraRange = ordinal.convertOverscroll(axis.options.overscroll), distance = ordinal.overscrollPointsRange, positions = [];
946
958
  let max = axis.dataMax;
947
959
  if (defined(distance)) {
948
960
  // Max + pointRange because we need to scroll to the last
@@ -981,6 +993,38 @@ var OrdinalAxis;
981
993
  }
982
994
  return ret;
983
995
  }
996
+ /**
997
+ * If overscroll is pixel or pecentage value, convert it to axis range.
998
+ *
999
+ * @private
1000
+ * @param {number | string} overscroll
1001
+ * Overscroll value in axis range, pixels or percentage value.
1002
+ * @return {number}
1003
+ * Overscroll value in axis range.
1004
+ */
1005
+ convertOverscroll(overscroll = 0) {
1006
+ const ordinal = this, axis = ordinal.axis, calculateOverscroll = function (overscrollPercentage) {
1007
+ return pick(ordinal.originalOrdinalRange, defined(axis.dataMax) && defined(axis.dataMin) ?
1008
+ axis.dataMax - axis.dataMin : 0) * overscrollPercentage;
1009
+ };
1010
+ if (isString(overscroll)) {
1011
+ const overscrollValue = parseInt(overscroll, 10);
1012
+ if (/%$/.test(overscroll)) {
1013
+ // If overscroll is percentage
1014
+ return calculateOverscroll(overscrollValue / 100);
1015
+ }
1016
+ if (/px/.test(overscroll)) {
1017
+ // If overscroll is pixels, it is limited to 90% of the axis
1018
+ // length to prevent division by zero
1019
+ const limitedOverscrollValue = Math.min(overscrollValue, axis.len * 0.9), pixelToPercent = limitedOverscrollValue / axis.len;
1020
+ return calculateOverscroll(pixelToPercent / (1 - pixelToPercent));
1021
+ }
1022
+ // If overscroll is a string but not pixels or percentage,
1023
+ // return 0 as no overscroll
1024
+ return 0;
1025
+ }
1026
+ return overscroll;
1027
+ }
984
1028
  }
985
1029
  OrdinalAxis.Additions = Additions;
986
1030
  })(OrdinalAxis || (OrdinalAxis = {}));
@@ -139,7 +139,7 @@ class PlotLineOrBand {
139
139
  // before.
140
140
  if (!this.eventsAdded && events) {
141
141
  objectEach(events, (event, eventType) => {
142
- svgElem?.on(eventType, function (e) {
142
+ svgElem?.on(eventType, (e) => {
143
143
  events[eventType].apply(this, [e]);
144
144
  });
145
145
  });
@@ -353,7 +353,7 @@ export default PlotLineOrBand;
353
353
  * Plot band on Y axis
354
354
  *
355
355
  * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
356
- * @default #e6e9ff
356
+ * @default ${palette.highlightColor10}
357
357
  * @apioption xAxis.plotBands.color
358
358
  */
359
359
  /**
@@ -601,7 +601,7 @@ export default PlotLineOrBand;
601
601
  * Plot line on Y axis
602
602
  *
603
603
  * @type {Highcharts.ColorString}
604
- * @default #999999
604
+ * @default ${palette.neutralColor40}
605
605
  * @apioption xAxis.plotLines.color
606
606
  */
607
607
  /**
@@ -8,10 +8,8 @@
8
8
  *
9
9
  * */
10
10
  'use strict';
11
- import H from '../../Globals.js';
12
- const { composed } = H;
13
11
  import U from '../../Utilities.js';
14
- const { erase, extend, isNumber, pushUnique } = U;
12
+ const { erase, extend, isNumber } = U;
15
13
  /* *
16
14
  *
17
15
  * Composition
@@ -110,9 +108,10 @@ var PlotLineOrBandAxis;
110
108
  * @private
111
109
  */
112
110
  function compose(PlotLineOrBandType, AxisClass) {
113
- if (pushUnique(composed, compose)) {
111
+ const axisProto = AxisClass.prototype;
112
+ if (!axisProto.addPlotBand) {
114
113
  PlotLineOrBandClass = PlotLineOrBandType;
115
- extend(AxisClass.prototype, {
114
+ extend(axisProto, {
116
115
  addPlotBand,
117
116
  addPlotLine,
118
117
  addPlotBandOrLine,
@@ -182,7 +182,7 @@ var RadialAxis;
182
182
  * Axis composition.
183
183
  */
184
184
  function compose(AxisClass, TickClass) {
185
- if (pushUnique(composed, compose)) {
185
+ if (pushUnique(composed, 'Axis.Radial')) {
186
186
  addEvent(AxisClass, 'afterInit', onAxisAfterInit);
187
187
  addEvent(AxisClass, 'autoLabelAlign', onAxisAutoLabelAlign);
188
188
  addEvent(AxisClass, 'destroy', onAxisDestroy);
@@ -631,7 +631,7 @@ var RadialAxis;
631
631
  * Modify axis instance with radial logic before common axis init.
632
632
  */
633
633
  function onAxisInit(e) {
634
- const chart = this.chart, inverted = chart.inverted, angular = chart.angular, polar = chart.polar, isX = this.isXAxis, coll = this.coll, isHidden = angular && isX, paneIndex = e.userOptions.pane || 0, pane = this.pane = chart.pane && chart.pane[paneIndex];
634
+ const chart = this.chart, angular = chart.angular, polar = chart.polar, isX = this.isXAxis, coll = this.coll, isHidden = angular && isX, paneIndex = e.userOptions.pane || 0, pane = this.pane = chart.pane && chart.pane[paneIndex];
635
635
  let isCircular;
636
636
  // Prevent changes for colorAxis
637
637
  if (coll === 'colorAxis') {
@@ -762,7 +762,7 @@ var RadialAxis;
762
762
  else {
763
763
  align = (labelDir === 'start') ? 'left' : 'right';
764
764
  }
765
- // For angles beetwen (90 + n * 180) +- 20
765
+ // For angles between (90 + n * 180) +- 20
766
766
  if (reducedAngle2 > 70 && reducedAngle2 < 110) {
767
767
  align = 'center';
768
768
  }
@@ -859,7 +859,7 @@ var RadialAxis;
859
859
  else {
860
860
  // When the pane's startAngle or the axis' angle is set then
861
861
  // new x and y values for vertical axis' center must be
862
- // calulated
862
+ // calculated
863
863
  start = this.postTranslate(this.angleRad, center[3] / 2);
864
864
  center[0] = start.x - this.chart.plotLeft;
865
865
  center[1] = start.y - this.chart.plotTop;
@@ -926,7 +926,7 @@ var RadialAxis;
926
926
  defaultPolarOptions.reversedStacks = true;
927
927
  }
928
928
  const options = this.options = merge(defaultPolarOptions, userOptions);
929
- // Make sure the plotBands array is instanciated for each Axis
929
+ // Make sure the plotBands array is instantiated for each Axis
930
930
  // (#2649)
931
931
  if (!options.plotBands) {
932
932
  options.plotBands = [];
@@ -42,7 +42,7 @@ var ScrollbarAxis;
42
42
  * Scrollbar class to use.
43
43
  */
44
44
  function compose(AxisClass, ScrollbarClass) {
45
- if (pushUnique(composed, compose)) {
45
+ if (pushUnique(composed, 'Axis.Scrollbar')) {
46
46
  Scrollbar = ScrollbarClass;
47
47
  addEvent(AxisClass, 'afterGetOffset', onAxisAfterGetOffset);
48
48
  addEvent(AxisClass, 'afterInit', onAxisAfterInit);
@@ -115,7 +115,7 @@ var ScrollbarAxis;
115
115
  }
116
116
  else {
117
117
  // When live redraw is disabled, don't change extremes
118
- // Only change the position of the scollbar thumb
118
+ // Only change the position of the scrollbar thumb
119
119
  this.setRange(this.from, this.to);
120
120
  }
121
121
  });
@@ -89,7 +89,7 @@ class StackItem {
89
89
  format(formatOption, this, chart) :
90
90
  options.formatter.call(this);
91
91
  // Change the text to reflect the new total and set visibility to hidden
92
- // in case the serie is hidden
92
+ // in case the series is hidden
93
93
  if (this.label) {
94
94
  this.label.attr({ text: str, visibility: 'hidden' });
95
95
  }
@@ -133,7 +133,7 @@ class StackItem {
133
133
  xAxis
134
134
  }), { verticalAlign } = alignOptions;
135
135
  if (label && stackBox) {
136
- const labelBox = label.getBBox(), padding = label.padding;
136
+ const labelBox = label.getBBox(void 0, 0), padding = label.padding;
137
137
  let isJustify = pick(options.overflow, 'justify') === 'justify', visible;
138
138
  // Reset alignOptions property after justify #12337
139
139
  alignOptions.x = options.x || 0;
@@ -160,13 +160,17 @@ class StackItem {
160
160
  // Justify stackLabel into the alignBox
161
161
  Series.prototype.justifyDataLabel.call(axis, label, alignOptions, label.alignAttr, labelBox, stackBox);
162
162
  }
163
- // Add attr to aviod the default animation of justifyDataLabel.
163
+ // Add attr to avoid the default animation of justifyDataLabel.
164
164
  // Also add correct rotation with its rotation origin. #15129
165
165
  label.attr({
166
166
  x: label.alignAttr.x,
167
167
  y: label.alignAttr.y,
168
168
  rotation: options.rotation,
169
- rotationOriginX: labelBox.width / 2,
169
+ rotationOriginX: labelBox.width * {
170
+ left: 0,
171
+ center: 0.5,
172
+ right: 1
173
+ }[options.textAlign || 'center'],
170
174
  rotationOriginY: labelBox.height / 2
171
175
  });
172
176
  // Check if the dataLabel should be visible.
@@ -11,13 +11,11 @@
11
11
  import A from '../../Animation/AnimationUtilities.js';
12
12
  const { getDeferredAnimation } = A;
13
13
  import Axis from '../Axis.js';
14
- import H from '../../Globals.js';
15
- const { composed } = H;
16
14
  import SeriesRegistry from '../../Series/SeriesRegistry.js';
17
15
  const { series: { prototype: seriesProto } } = SeriesRegistry;
18
16
  import StackItem from './StackItem.js';
19
17
  import U from '../../Utilities.js';
20
- const { addEvent, correctFloat, defined, destroyObjectProperties, fireEvent, isArray, isNumber, objectEach, pick, pushUnique } = U;
18
+ const { addEvent, correctFloat, defined, destroyObjectProperties, fireEvent, isArray, isNumber, objectEach, pick } = U;
21
19
  /* *
22
20
  *
23
21
  * Functions
@@ -415,8 +413,8 @@ var StackingAxis;
415
413
  * @private
416
414
  */
417
415
  function compose(AxisClass, ChartClass, SeriesClass) {
418
- if (pushUnique(composed, compose)) {
419
- const chartProto = ChartClass.prototype, seriesProto = SeriesClass.prototype;
416
+ const chartProto = ChartClass.prototype, seriesProto = SeriesClass.prototype;
417
+ if (!chartProto.getStacks) {
420
418
  addEvent(AxisClass, 'init', onAxisInit);
421
419
  addEvent(AxisClass, 'destroy', onAxisDestroy);
422
420
  chartProto.getStacks = chartGetStacks;