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
@@ -472,12 +472,22 @@ const Options = {
472
472
  /**
473
473
  * Theme to apply to the chart when Windows High Contrast Mode is
474
474
  * detected. By default, a high contrast theme matching the high
475
- * contrast system system colors is used.
475
+ * contrast system colors is used.
476
476
  *
477
477
  * @type {*}
478
478
  * @since 7.1.3
479
479
  * @apioption accessibility.highContrastTheme
480
480
  */
481
+ /**
482
+ * Controls how [highContrastTheme](#accessibility.highContrastTheme)
483
+ * is applied.
484
+ *
485
+ * The default option is `auto`, which applies the high contrast theme
486
+ * the user's system has a high contrast theme active.
487
+ *
488
+ * @since 11.4.0
489
+ */
490
+ highContrastMode: 'auto',
481
491
  /**
482
492
  * A text description of the chart.
483
493
  *
@@ -150,7 +150,7 @@ class ProxyElement {
150
150
  fireEventOnWrappedOrUnwrappedElement(target, clonedEvent);
151
151
  }
152
152
  e.stopPropagation();
153
- // #9682, #15318: Touch scrolling didnt work when touching
153
+ // #9682, #15318: Touch scrolling didn't work when touching
154
154
  // proxy
155
155
  if (!isTouchEvent) {
156
156
  e.preventDefault();
@@ -188,9 +188,9 @@ class ProxyElement {
188
188
  clickTarget.element :
189
189
  clickTarget;
190
190
  const posElement = this.target.visual || clickTargetElement;
191
- const chartDiv = this.chart.renderTo;
192
- if (chartDiv && posElement && posElement.getBoundingClientRect) {
193
- const rectEl = posElement.getBoundingClientRect(), chartPos = this.chart.pointer.getChartPosition();
191
+ const chartDiv = this.chart.renderTo, pointer = this.chart.pointer;
192
+ if (chartDiv && posElement?.getBoundingClientRect && pointer) {
193
+ const rectEl = posElement.getBoundingClientRect(), chartPos = pointer.getChartPosition();
194
194
  return {
195
195
  x: (rectEl.left - chartPos.left) / chartPos.scaleX,
196
196
  y: (rectEl.top - chartPos.top) / chartPos.scaleY,
@@ -22,7 +22,7 @@ import CU from './Utils/ChartUtilities.js';
22
22
  const { unhideChartElementFromAT } = CU;
23
23
  import DOMElementProvider from './Utils/DOMElementProvider.js';
24
24
  import HU from './Utils/HTMLUtilities.js';
25
- const { removeElement, removeChildNodes } = HU;
25
+ const { removeChildNodes } = HU;
26
26
  import ProxyElement from './ProxyElement.js';
27
27
  /* *
28
28
  *
@@ -181,7 +181,13 @@ class ProxyProvider {
181
181
  removeGroup(groupKey) {
182
182
  const group = this.groups[groupKey];
183
183
  if (group) {
184
- removeElement(group.groupElement);
184
+ // Remove detached HTML elements to prevent memory leak (#20329).
185
+ this.domElementProvider.removeElement(group.groupElement);
186
+ // Sometimes groupElement is a wrapper around the proxyContainer, so
187
+ // the real one proxyContainer needs to be removed also.
188
+ if (group.groupElement !== group.proxyContainerElement) {
189
+ this.domElementProvider.removeElement(group.proxyContainerElement);
190
+ }
185
191
  delete this.groups[groupKey];
186
192
  }
187
193
  }
@@ -42,6 +42,14 @@ class DOMElementProvider {
42
42
  this.elements.push(el);
43
43
  return el;
44
44
  }
45
+ /**
46
+ * Destroy created element, removing it from the DOM.
47
+ * @private
48
+ */
49
+ removeElement(element) {
50
+ removeElement(element);
51
+ this.elements.splice(this.elements.indexOf(element), 1);
52
+ }
45
53
  /**
46
54
  * Destroy all created elements, removing them from the DOM.
47
55
  * @private
@@ -40,6 +40,15 @@ class EventProvider {
40
40
  this.eventRemovers.push(remover);
41
41
  return remover;
42
42
  }
43
+ /**
44
+ * Remove added event.
45
+ * @private
46
+ */
47
+ removeEvent(event) {
48
+ const pos = this.eventRemovers.indexOf(event);
49
+ this.eventRemovers[pos]();
50
+ this.eventRemovers.splice(pos, 1);
51
+ }
43
52
  /**
44
53
  * Remove all added events.
45
54
  * @private
@@ -288,7 +288,7 @@ class Fx {
288
288
  * Copy and append last point until the length matches the end length.
289
289
  * @private
290
290
  */
291
- function append(arr, other) {
291
+ function append(arr) {
292
292
  while (arr.length < fullLength) {
293
293
  // Pull out the slice that is going to be appended or inserted.
294
294
  // In a line graph, the positionFactor is 1, and the last point
@@ -344,11 +344,11 @@ class Fx {
344
344
  fullLength = end.length + shift * positionFactor;
345
345
  if (!reverse) {
346
346
  prepend(end, start);
347
- append(start, end);
347
+ append(start);
348
348
  }
349
349
  else {
350
350
  prepend(start, end);
351
- append(end, start);
351
+ append(end);
352
352
  }
353
353
  }
354
354
  return [start, end];
@@ -23,7 +23,7 @@ import Tick from './Tick.js';
23
23
  import U from '../Utilities.js';
24
24
  const { arrayMax, arrayMin, clamp, correctFloat, defined, destroyObjectProperties, erase, error, extend, fireEvent, getClosestDistance, insertItem, isArray, isNumber, isString, merge, normalizeTickInterval, objectEach, pick, relativeLength, removeEvent, splat, syncTimeout } = U;
25
25
  const getNormalizedTickInterval = (axis, tickInterval) => normalizeTickInterval(tickInterval, void 0, void 0, pick(axis.options.allowDecimals,
26
- // If the tick interval is greather than 0.5, avoid decimals, as
26
+ // If the tick interval is greater than 0.5, avoid decimals, as
27
27
  // linear axes are often used to render discrete values (#3363). If
28
28
  // a tick amount is set, allow decimals by default, as it increases
29
29
  // the chances for a good fit.
@@ -35,7 +35,7 @@ extend(defaultOptions, { xAxis, yAxis: merge(xAxis, yAxis) });
35
35
  *
36
36
  * */
37
37
  /**
38
- * Create a new axis object. Called internally when instanciating a new chart or
38
+ * Create a new axis object. Called internally when instantiating a new chart or
39
39
  * adding axes by {@link Highcharts.Chart#addAxis}.
40
40
  *
41
41
  * A chart can have from 0 axes (pie chart) to multiples. In a normal, single
@@ -199,7 +199,7 @@ class Axis {
199
199
  // Flag, if axis is linked to another axis
200
200
  axis.isLinked = defined(options.linkedTo);
201
201
  /**
202
- * List of major ticks mapped by postition on axis.
202
+ * List of major ticks mapped by position on axis.
203
203
  *
204
204
  * @see {@link Highcharts.Tick}
205
205
  *
@@ -221,7 +221,12 @@ class Axis {
221
221
  axis.plotLinesAndBands = [];
222
222
  // Alternate bands
223
223
  axis.alternateBands = {};
224
- // Axis metrics
224
+ /**
225
+ * The length of the axis in terms of pixels.
226
+ *
227
+ * @name Highcharts.Axis#len
228
+ * @type {number}
229
+ */
225
230
  axis.len = 0;
226
231
  axis.minRange = axis.userMinRange = options.minRange || options.maxZoom;
227
232
  axis.range = options.range;
@@ -331,7 +336,7 @@ class Axis {
331
336
  * @return {string}
332
337
  * The formatted label content.
333
338
  */
334
- defaultLabelFormatter(ctx) {
339
+ defaultLabelFormatter() {
335
340
  const axis = this.axis, chart = this.chart, { numberFormatter } = chart, value = isNumber(this.value) ? this.value : NaN, time = axis.chart.time, categories = axis.categories, dateTimeLabelFormat = this.dateTimeLabelFormat, lang = defaultOptions.lang, numericSymbols = lang.numericSymbols, numSymMagnitude = lang.numericSymbolMagnitude || 1000,
336
341
  // Make sure the same symbol is added for all labels on a linear
337
342
  // axis
@@ -615,12 +620,12 @@ class Axis {
615
620
  }
616
621
  else if (axis.horiz) {
617
622
  y1 = axisTop;
618
- y2 = cHeight - axis.bottom;
623
+ y2 = cHeight - axis.bottom + (chart.scrollablePixelsY || 0);
619
624
  x1 = x2 = between(x1, axisLeft, axisLeft + axis.width);
620
625
  }
621
626
  else {
622
627
  x1 = axisLeft;
623
- x2 = cWidth - axis.right;
628
+ x2 = cWidth - axis.right + (chart.scrollablePixelsX || 0);
624
629
  y1 = y2 = between(y1, axisTop, axisTop + axis.height);
625
630
  }
626
631
  e.path = skip && !force ?
@@ -804,7 +809,7 @@ class Axis {
804
809
  min + minRange,
805
810
  pick(options.max, min + minRange)
806
811
  ];
807
- // If space is availabe, stay within the data range
812
+ // If space is available, stay within the data range
808
813
  if (spaceAvailable) {
809
814
  maxArgs[2] = logarithmic ?
810
815
  logarithmic.log2lin(axis.dataMax) :
@@ -885,7 +890,7 @@ class Axis {
885
890
  pick(names.keys[point.name], -1)) :
886
891
  point.series.autoIncrement();
887
892
  }
888
- if (nameX === -1) { // Not found in currenct categories
893
+ if (nameX === -1) { // Not found in current categories
889
894
  if (!explicitCategories && names) {
890
895
  x = names.length;
891
896
  }
@@ -1202,7 +1207,7 @@ class Axis {
1202
1207
  axis.tickInterval = pick(tickIntervalOption, this.tickAmount ?
1203
1208
  range / Math.max(this.tickAmount - 1, 1) :
1204
1209
  void 0,
1205
- // For categoried axis, 1 is default, for linear axis use
1210
+ // For categorized axis, 1 is default, for linear axis use
1206
1211
  // tickPix
1207
1212
  categories ?
1208
1213
  1 :
@@ -1266,7 +1271,7 @@ class Axis {
1266
1271
  * @emits Highcharts.Axis#event:afterSetTickPositions
1267
1272
  */
1268
1273
  setTickPositions() {
1269
- const axis = this, options = this.options, tickPositionsOption = options.tickPositions, tickPositioner = options.tickPositioner, minorTickIntervalOption = this.getMinorTickInterval(), hasVerticalPanning = this.hasVerticalPanning(), isColorAxis = this.coll === 'colorAxis', startOnTick = ((isColorAxis || !hasVerticalPanning) && options.startOnTick), endOnTick = ((isColorAxis || !hasVerticalPanning) && options.endOnTick);
1274
+ const axis = this, options = this.options, tickPositionsOption = options.tickPositions, tickPositioner = options.tickPositioner, minorTickIntervalOption = this.getMinorTickInterval(), allowEndOnTick = !this.isPanning, startOnTick = allowEndOnTick && options.startOnTick, endOnTick = allowEndOnTick && options.endOnTick;
1270
1275
  let tickPositions = [], tickPositionerResult;
1271
1276
  // Set the tickmarkOffset
1272
1277
  this.tickmarkOffset = (this.categories &&
@@ -1439,7 +1444,7 @@ class Axis {
1439
1444
  * True if there are other axes.
1440
1445
  */
1441
1446
  alignToOthers() {
1442
- const axis = this, alignedAxes = [this], options = axis.options, chartOptions = this.chart.options.chart, alignThresholds = (this.coll === 'yAxis' &&
1447
+ const axis = this, chart = axis.chart, alignedAxes = [this], options = axis.options, chartOptions = chart.options.chart, alignThresholds = (this.coll === 'yAxis' &&
1443
1448
  chartOptions.alignThresholds), thresholdAlignments = [];
1444
1449
  let hasOther;
1445
1450
  axis.thresholdAlignment = void 0;
@@ -1464,7 +1469,7 @@ class Axis {
1464
1469
  ].join(',');
1465
1470
  };
1466
1471
  const thisKey = getKey(this);
1467
- this.chart[this.coll].forEach(function (otherAxis) {
1472
+ chart[this.coll].forEach(function (otherAxis) {
1468
1473
  const { series } = otherAxis;
1469
1474
  if (
1470
1475
  // #4442
@@ -1720,10 +1725,10 @@ class Axis {
1720
1725
  else if (stacking) {
1721
1726
  stacking.cleanStacks();
1722
1727
  }
1723
- // Recalculate panning state object, when the data
1724
- // has changed. It is required when vertical panning is enabled.
1725
- if (isDirtyData && axis.panningState) {
1726
- axis.panningState.isDirty = true;
1728
+ // Recalculate all extremes object when the data has changed. It is
1729
+ // required when vertical panning is enabled.
1730
+ if (isDirtyData) {
1731
+ delete axis.allExtremes;
1727
1732
  }
1728
1733
  fireEvent(this, 'afterSetScale');
1729
1734
  }
@@ -1764,75 +1769,22 @@ class Axis {
1764
1769
  *
1765
1770
  * @emits Highcharts.Axis#event:setExtremes
1766
1771
  */
1767
- setExtremes(newMin, newMax, redraw = true, animation, eventArguments) {
1768
- const axis = this, chart = axis.chart;
1769
- axis.series.forEach((serie) => {
1772
+ setExtremes(min, max, redraw = true, animation, eventArguments) {
1773
+ this.series.forEach((serie) => {
1770
1774
  delete serie.kdTree;
1771
1775
  });
1772
1776
  // Extend the arguments with min and max
1773
- eventArguments = extend(eventArguments, {
1774
- min: newMin,
1775
- max: newMax
1776
- });
1777
+ eventArguments = extend(eventArguments, { min, max });
1777
1778
  // Fire the event
1778
- fireEvent(axis, 'setExtremes', eventArguments, () => {
1779
- axis.userMin = newMin;
1780
- axis.userMax = newMax;
1781
- axis.eventArgs = eventArguments;
1779
+ fireEvent(this, 'setExtremes', eventArguments, (e) => {
1780
+ this.userMin = e.min;
1781
+ this.userMax = e.max;
1782
+ this.eventArgs = e;
1782
1783
  if (redraw) {
1783
- chart.redraw(animation);
1784
+ this.chart.redraw(animation);
1784
1785
  }
1785
1786
  });
1786
1787
  }
1787
- /**
1788
- * Overridable method for zooming chart. Pulled out in a separate method to
1789
- * allow overriding in stock charts.
1790
- *
1791
- * @private
1792
- * @function Highcharts.Axis#zoom
1793
- */
1794
- zoom(newMin, newMax) {
1795
- const axis = this, dataMin = this.dataMin, dataMax = this.dataMax, options = this.options, min = Math.min(dataMin, pick(options.min, dataMin)), max = Math.max(dataMax, pick(options.max, dataMax)), evt = {
1796
- newMin: newMin,
1797
- newMax: newMax
1798
- };
1799
- fireEvent(this, 'zoom', evt, function (e) {
1800
- // Use e.newMin and e.newMax - event handlers may have altered them
1801
- let newMin = e.newMin, newMax = e.newMax;
1802
- if (newMin !== axis.min || newMax !== axis.max) { // #5790
1803
- // Prevent pinch zooming out of range. Check for defined is for
1804
- // #1946. #1734.
1805
- if (!axis.allowZoomOutside) {
1806
- // #6014, sometimes newMax will be smaller than min (or
1807
- // newMin will be larger than max).
1808
- if (defined(dataMin)) {
1809
- if (newMin < min) {
1810
- newMin = min;
1811
- }
1812
- if (newMin > max) {
1813
- newMin = max;
1814
- }
1815
- }
1816
- if (defined(dataMax)) {
1817
- if (newMax < min) {
1818
- newMax = min;
1819
- }
1820
- if (newMax > max) {
1821
- newMax = max;
1822
- }
1823
- }
1824
- }
1825
- // In full view, displaying the reset zoom button is not
1826
- // required
1827
- axis.displayBtn = (typeof newMin !== 'undefined' ||
1828
- typeof newMax !== 'undefined');
1829
- // Do it
1830
- axis.setExtremes(newMin, newMax, false, void 0, { trigger: 'zoom' });
1831
- }
1832
- e.zoomed = true;
1833
- });
1834
- return evt.zoomed;
1835
- }
1836
1788
  /**
1837
1789
  * Update the axis metrics.
1838
1790
  *
@@ -1851,6 +1803,15 @@ class Axis {
1851
1803
  this.right = chart.chartWidth - width - left;
1852
1804
  // Direction agnostic properties
1853
1805
  this.len = Math.max(horiz ? width : height, 0); // Math.max fixes #905
1806
+ /**
1807
+ * The position of the axis in terms of pixels, compared to the chart
1808
+ * edge. In a horizontal axis it is the same as `chart.plotLeft` unless
1809
+ * the axis is explicitly positioned, and in a default vertical axis it
1810
+ * is the same as `chart.plotTop`.
1811
+ *
1812
+ * @name Highcharts.Axis#pos
1813
+ * @type {number}
1814
+ */
1854
1815
  this.pos = horiz ? left : top; // Distance from SVG origin
1855
1816
  }
1856
1817
  /**
@@ -2137,8 +2098,7 @@ class Axis {
2137
2098
  if (label) {
2138
2099
  // Reset ellipsis in order to get the correct
2139
2100
  // bounding box (#4070)
2140
- if (label.styles &&
2141
- label.styles.textOverflow === 'ellipsis') {
2101
+ if (label.styles.textOverflow === 'ellipsis') {
2142
2102
  label.css({ textOverflow: 'clip' });
2143
2103
  // Set the correct width in order to read
2144
2104
  // the bounding box height (#4678, #5034)
@@ -2196,10 +2156,7 @@ class Axis {
2196
2156
  label.css(css);
2197
2157
  // Reset previously shortened label (#8210)
2198
2158
  }
2199
- else if (label.styles &&
2200
- label.styles.width &&
2201
- !css.width &&
2202
- !widthOption) {
2159
+ else if (label.styles.width && !css.width && !widthOption) {
2203
2160
  label.css({ width: null });
2204
2161
  }
2205
2162
  delete label.specificTextOverflow;
@@ -2736,7 +2693,8 @@ class Axis {
2736
2693
  axis.stacking.renderStackTotals();
2737
2694
  }
2738
2695
  // End stacked totals
2739
- // Record old scaling for updating/animation
2696
+ // Record old scaling for updating/animation. Pinch base must be
2697
+ // preserved until the pinch ends.
2740
2698
  axis.old = {
2741
2699
  len: axis.len,
2742
2700
  max: axis.max,
@@ -2954,18 +2912,6 @@ class Axis {
2954
2912
  }
2955
2913
  fireEvent(this, 'afterHideCrosshair');
2956
2914
  }
2957
- /**
2958
- * Check whether the chart has vertical panning ('y' or 'xy' type).
2959
- *
2960
- * @private
2961
- * @function Highcharts.Axis#hasVerticalPanning
2962
- */
2963
- hasVerticalPanning() {
2964
- const panningOptions = this.chart.options.chart.panning;
2965
- return Boolean(panningOptions &&
2966
- panningOptions.enabled && // #14624
2967
- /y/.test(panningOptions.type));
2968
- }
2969
2915
  /**
2970
2916
  * Update an axis object with a new set of options. The options are merged
2971
2917
  * with the existing options, so only new or altered options need to be
@@ -2,7 +2,7 @@
2
2
  *
3
3
  * (c) 2010-2024 Torstein Honsi
4
4
  *
5
- * Extenstion for 3d axes
5
+ * Extension for 3d axes
6
6
  *
7
7
  * License: www.highcharts.com/license
8
8
  *
@@ -14,12 +14,12 @@ import Axis3DDefaults from './Axis3DDefaults.js';
14
14
  import D from '../Defaults.js';
15
15
  const { defaultOptions } = D;
16
16
  import H from '../Globals.js';
17
- const { composed, deg2rad } = H;
17
+ const { deg2rad } = H;
18
18
  import Math3D from '../Math3D.js';
19
19
  const { perspective, perspective3D, shapeArea } = Math3D;
20
20
  import Tick3D from './Tick3DComposition.js';
21
21
  import U from '../Utilities.js';
22
- const { addEvent, merge, pick, pushUnique, wrap } = U;
22
+ const { addEvent, merge, pick, wrap } = U;
23
23
  /* *
24
24
  *
25
25
  * Functions
@@ -251,7 +251,7 @@ class Axis3DAdditions {
251
251
  */
252
252
  static compose(AxisClass, TickClass) {
253
253
  Tick3D.compose(TickClass);
254
- if (pushUnique(composed, this.compose)) {
254
+ if (!AxisClass.keepProps.includes('axis3D')) {
255
255
  merge(true, defaultOptions.xAxis, Axis3DDefaults);
256
256
  AxisClass.keepProps.push('axis3D');
257
257
  addEvent(AxisClass, 'init', onAxisInit);
@@ -396,7 +396,7 @@ class Axis3DAdditions {
396
396
  }
397
397
  }
398
398
  else if (positionMode === 'ortho') {
399
- // Labels will be rotated to be ortogonal to the axis
399
+ // Labels will be rotated to be orthogonal to the axis
400
400
  if (!axis.horiz) { // Y Axis
401
401
  vecX = { x: Math.cos(beta), y: 0, z: Math.sin(beta) };
402
402
  }
@@ -2,7 +2,7 @@
2
2
  *
3
3
  * (c) 2010-2024 Torstein Honsi
4
4
  *
5
- * Extenstion for 3d axes
5
+ * Extension for 3d axes
6
6
  *
7
7
  * License: www.highcharts.com/license
8
8
  *
@@ -1422,15 +1422,26 @@ var AxisDefaults;
1422
1422
  */
1423
1423
  /**
1424
1424
  * Additional range on the right side of the xAxis. Works similar to
1425
- * `xAxis.maxPadding`, but value is set in milliseconds. This property
1426
- * should be set to the same value for both the main `xAxis` and the
1427
- * navigator's `xAxis` to maintain consistent behavior during
1428
- * interactions such as dragging or resizing the navigator.
1425
+ * `xAxis.maxPadding`, but the value is set in terms of axis values,
1426
+ * percentage or pixels.
1429
1427
  *
1430
- * @sample {highstock} stock/xaxis/overscroll/
1431
- * One minute overscroll with live data
1428
+ * If it's a number, it is interpreted as axis values, which in a
1429
+ * datetime axis equals milliseconds.
1432
1430
  *
1433
- * @type {number}
1431
+ * If it's a percentage string, is interpreted as percentages of axis
1432
+ * length. An overscroll of 50% will make a 100px axis 50px longer.
1433
+ *
1434
+ * If it's a pixel string, it is interpreted as a fixed pixel value, but
1435
+ * limited to 90% of the axis length.
1436
+ *
1437
+ * @sample {highstock} stock/xaxis/overscroll/ One minute overscroll
1438
+ * with live data
1439
+ * @sample {highstock} stock/xaxis/overscroll-percent/ Overscroll set in
1440
+ * percentage
1441
+ * @sample {highstock} stock/xaxis/overscroll-pixel/ Overscroll set in
1442
+ * pixels
1443
+ *
1444
+ * @type {number | string}
1434
1445
  * @default 0
1435
1446
  * @since 6.0.0
1436
1447
  * @product highstock
@@ -8,11 +8,9 @@
8
8
  *
9
9
  * */
10
10
  'use strict';
11
- import H from '../Globals.js';
12
- const { composed } = H;
13
11
  import StackItem from './Stacking/StackItem.js';
14
12
  import U from '../Utilities.js';
15
- const { addEvent, find, fireEvent, isArray, isNumber, pick, pushUnique } = U;
13
+ const { addEvent, find, fireEvent, isArray, isNumber, pick } = U;
16
14
  /* *
17
15
  *
18
16
  * Composition
@@ -39,7 +37,7 @@ var BrokenAxis;
39
37
  * @private
40
38
  */
41
39
  function compose(AxisClass, SeriesClass) {
42
- if (pushUnique(composed, compose)) {
40
+ if (!AxisClass.keepProps.includes('brokenAxis')) {
43
41
  AxisClass.keepProps.push('brokenAxis');
44
42
  addEvent(AxisClass, 'init', onAxisInit);
45
43
  addEvent(AxisClass, 'afterInit', onAxisAfterInit);
@@ -440,7 +438,7 @@ var BrokenAxis;
440
438
  }
441
439
  /**
442
440
  * Dynamically set or unset breaks in an axis. This function in lighter
443
- * than usin Axis.update, and it also preserves animation.
441
+ * than using Axis.update, and it also preserves animation.
444
442
  *
445
443
  * @private
446
444
  * @function Highcharts.Axis#setBreaks
@@ -568,7 +566,7 @@ var BrokenAxis;
568
566
  });
569
567
  brokenAxis.breakArray = breakArray;
570
568
  // Used with staticScale, and below the actual axis
571
- // length, when breaks are substracted.
569
+ // length, when breaks are subtracted.
572
570
  if (isNumber(min) &&
573
571
  isNumber(max) &&
574
572
  isNumber(axis.min)) {
@@ -243,7 +243,7 @@ class ColorAxis extends Axis {
243
243
  (horiz ?
244
244
  itemDistance :
245
245
  pick(labelOptions.x, labelOptions.distance) +
246
- this.maxLabelLength));
246
+ (this.maxLabelLength || 0)));
247
247
  legendItem.labelHeight = height + padding + (horiz ? labelPadding : 0);
248
248
  }
249
249
  /**
@@ -506,6 +506,7 @@ class ColorAxis extends Axis {
506
506
  const affectedSeries = [];
507
507
  for (const point of getPointsInDataClass(i)) {
508
508
  point.setVisible(vis);
509
+ point.hiddenInDataClass = !vis; // #20441
509
510
  if (affectedSeries.indexOf(point.series) === -1) {
510
511
  affectedSeries.push(point.series);
511
512
  }
@@ -10,10 +10,8 @@
10
10
  'use strict';
11
11
  import Color from '../../Color/Color.js';
12
12
  const { parse: color } = Color;
13
- import H from '../../Globals.js';
14
- const { composed } = H;
15
13
  import U from '../../Utilities.js';
16
- const { addEvent, extend, merge, pick, pushUnique, splat } = U;
14
+ const { addEvent, extend, merge, pick, splat } = U;
17
15
  /* *
18
16
  *
19
17
  * Composition
@@ -41,9 +39,9 @@ var ColorAxisComposition;
41
39
  * @private
42
40
  */
43
41
  function compose(ColorAxisClass, ChartClass, FxClass, LegendClass, SeriesClass) {
44
- if (pushUnique(composed, compose)) {
42
+ const chartProto = ChartClass.prototype, fxProto = FxClass.prototype, seriesProto = SeriesClass.prototype;
43
+ if (!chartProto.collectionsWithUpdate.includes('colorAxis')) {
45
44
  ColorAxisConstructor = ColorAxisClass;
46
- const chartProto = ChartClass.prototype, fxProto = FxClass.prototype, seriesProto = SeriesClass.prototype;
47
45
  chartProto.collectionsWithUpdate.push('colorAxis');
48
46
  chartProto.collectionsWithInit.colorAxis = [
49
47
  chartProto.addColorAxis
@@ -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, getMagnitude, normalizeTickInterval, pushUnique, timeUnits } = U;
12
+ const { addEvent, getMagnitude, normalizeTickInterval, timeUnits } = U;
15
13
  /* *
16
14
  *
17
15
  * Composition
@@ -35,7 +33,7 @@ var DateTimeAxis;
35
33
  * @private
36
34
  */
37
35
  function compose(AxisClass) {
38
- if (pushUnique(composed, compose)) {
36
+ if (!AxisClass.keepProps.includes('dateTime')) {
39
37
  AxisClass.keepProps.push('dateTime');
40
38
  const axisProto = AxisClass.prototype;
41
39
  axisProto.getTimeTicks = getTimeTicks;
@@ -53,7 +51,7 @@ var DateTimeAxis;
53
51
  * @private
54
52
  * @function Highcharts.Axis#getTimeTicks
55
53
  * @param {Highcharts.TimeNormalizeObject} normalizedInterval
56
- * The interval in axis values (ms) and thecount.
54
+ * The interval in axis values (ms) and the count.
57
55
  * @param {number} min
58
56
  * The minimum in axis values.
59
57
  * @param {number} max
@@ -11,9 +11,9 @@
11
11
  'use strict';
12
12
  import Axis from './Axis.js';
13
13
  import H from '../Globals.js';
14
- const { composed, dateFormats } = H;
14
+ const { dateFormats } = H;
15
15
  import U from '../Utilities.js';
16
- const { addEvent, defined, erase, find, isArray, isNumber, merge, pick, pushUnique, timeUnits, wrap } = U;
16
+ const { addEvent, defined, erase, find, isArray, isNumber, merge, pick, timeUnits, wrap } = U;
17
17
  /* *
18
18
  *
19
19
  * Enums
@@ -81,7 +81,7 @@ function applyGridOptions(axis) {
81
81
  * @private
82
82
  */
83
83
  function compose(AxisClass, ChartClass, TickClass) {
84
- if (pushUnique(composed, compose)) {
84
+ if (!AxisClass.keepProps.includes('grid')) {
85
85
  AxisClass.keepProps.push('grid');
86
86
  AxisClass.prototype.getMaxLabelDimensions = getMaxLabelDimensions;
87
87
  wrap(AxisClass.prototype, 'unsquish', wrapUnsquish);
@@ -285,7 +285,7 @@ function onAfterRender() {
285
285
  !axis.options.title.style.width) {
286
286
  axisTitle.css({ width: `${firstTick.slotWidth}px` });
287
287
  }
288
- // @todo acutual label padding (top, bottom, left, right)
288
+ // @todo actual label padding (top, bottom, left, right)
289
289
  axis.maxLabelDimensions = axis.getMaxLabelDimensions(axis.ticks, axis.tickPositions);
290
290
  // Remove right wall before rendering if updating
291
291
  if (axis.rightWall) {
@@ -486,7 +486,7 @@ function onAfterSetOptions(e) {
486
486
  let gridAxisOptions;
487
487
  if (gridOptions.enabled === true) {
488
488
  // Merge the user options into default grid axis options so
489
- // that when a user option is set, it takes presedence.
489
+ // that when a user option is set, it takes precedence.
490
490
  gridAxisOptions = merge(true, {
491
491
  className: ('highcharts-grid-axis ' + (userOptions.className || '')),
492
492
  dateTimeLabelFormats: {
@@ -522,7 +522,7 @@ function onAfterSetOptions(e) {
522
522
  }
523
523
  },
524
524
  // In a grid axis, only allow one unit of certain types,
525
- // for example we shouln't have one grid cell spanning
525
+ // for example we shouldn't have one grid cell spanning
526
526
  // two days.
527
527
  units: [[
528
528
  'millisecond',
@@ -831,7 +831,7 @@ function onTickLabelFormat(ctx) {
831
831
  * ticks and not the labels directly?
832
832
  */
833
833
  function onTrimTicks() {
834
- const axis = this, chart = axis.chart, options = axis.options, gridOptions = options.grid || {}, categoryAxis = axis.categories, tickPositions = axis.tickPositions, firstPos = tickPositions[0], secondPos = tickPositions[1], lastPos = tickPositions[tickPositions.length - 1], beforeLastPos = tickPositions[tickPositions.length - 2], linkedMin = axis.linkedParent && axis.linkedParent.min, linkedMax = axis.linkedParent && axis.linkedParent.max, min = linkedMin || axis.min, max = linkedMax || axis.max, tickInterval = axis.tickInterval, startLessThanMin = ( // #19845
834
+ const axis = this, options = axis.options, gridOptions = options.grid || {}, categoryAxis = axis.categories, tickPositions = axis.tickPositions, firstPos = tickPositions[0], secondPos = tickPositions[1], lastPos = tickPositions[tickPositions.length - 1], beforeLastPos = tickPositions[tickPositions.length - 2], linkedMin = axis.linkedParent && axis.linkedParent.min, linkedMax = axis.linkedParent && axis.linkedParent.max, min = linkedMin || axis.min, max = linkedMax || axis.max, tickInterval = axis.tickInterval, startLessThanMin = ( // #19845
835
835
  isNumber(min) &&
836
836
  min >= firstPos + tickInterval &&
837
837
  min < secondPos), endMoreThanMin = (isNumber(min) &&