highcharts 9.2.2 → 9.3.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (894) hide show
  1. package/README.md +13 -6
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +48 -8
  4. package/css/annotations/popup.scss +70 -22
  5. package/css/highcharts.css +46 -1
  6. package/css/highcharts.scss +40 -0
  7. package/css/stocktools/gui.css +1 -1
  8. package/css/themes/dark-unica.css +46 -1
  9. package/css/themes/grid-light.css +46 -1
  10. package/css/themes/sand-signika.css +46 -1
  11. package/es-modules/Accessibility/A11yI18n.js +269 -224
  12. package/es-modules/Accessibility/Accessibility.js +244 -129
  13. package/es-modules/Accessibility/AccessibilityComponent.js +78 -313
  14. package/es-modules/Accessibility/Components/AnnotationsA11y.js +19 -5
  15. package/es-modules/Accessibility/Components/ContainerComponent.js +53 -28
  16. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +178 -120
  17. package/es-modules/Accessibility/Components/LegendComponent.js +251 -129
  18. package/es-modules/Accessibility/Components/MenuComponent.js +250 -154
  19. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +172 -93
  20. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +161 -115
  21. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +138 -69
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +67 -28
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +48 -56
  24. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +387 -343
  25. package/es-modules/Accessibility/Components/ZoomComponent.js +156 -70
  26. package/es-modules/Accessibility/FocusBorder.js +192 -152
  27. package/es-modules/Accessibility/HighContrastMode.js +79 -66
  28. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  29. package/es-modules/Accessibility/KeyboardNavigation.js +151 -75
  30. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  31. package/es-modules/Accessibility/Options/DeprecatedOptions.js +21 -4
  32. package/es-modules/Accessibility/Options/LangOptions.js +4 -5
  33. package/es-modules/Accessibility/Options/Options.js +32 -17
  34. package/es-modules/Accessibility/ProxyElement.js +218 -0
  35. package/es-modules/Accessibility/ProxyProvider.js +302 -0
  36. package/es-modules/Accessibility/Utils/Announcer.js +17 -10
  37. package/es-modules/Accessibility/Utils/ChartUtilities.js +55 -45
  38. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  39. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  40. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -42
  41. package/es-modules/Core/Animation/Fx.js +5 -14
  42. package/es-modules/Core/Axis/Axis.js +77 -96
  43. package/es-modules/Core/Axis/Axis3D.js +10 -4
  44. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  45. package/es-modules/Core/Axis/BrokenAxis.js +17 -11
  46. package/es-modules/Core/Axis/Color/ColorAxis.js +7 -4
  47. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +55 -5
  48. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  49. package/es-modules/Core/Axis/DateTimeAxis.js +3 -14
  50. package/es-modules/Core/Axis/GridAxis.js +26 -16
  51. package/es-modules/Core/Axis/NavigatorAxis.js +0 -5
  52. package/es-modules/Core/Axis/OrdinalAxis.js +88 -92
  53. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  54. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +0 -5
  55. package/es-modules/Core/Axis/RadialAxis.js +7 -28
  56. package/es-modules/Core/Axis/ScrollbarAxis.js +27 -12
  57. package/es-modules/Core/Axis/StackingAxis.js +2 -1
  58. package/es-modules/Core/Axis/Tick.js +2 -4
  59. package/es-modules/Core/Axis/TreeGridAxis.js +28 -19
  60. package/es-modules/Core/Axis/TreeGridTick.js +5 -3
  61. package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
  62. package/es-modules/Core/Axis/ZAxis.js +1 -1
  63. package/es-modules/Core/Chart/Chart.js +44 -47
  64. package/es-modules/Core/Chart/Chart3D.js +23 -10
  65. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  66. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  67. package/es-modules/Core/Chart/GanttChart.js +4 -4
  68. package/es-modules/Core/Chart/MapChart.js +13 -25
  69. package/es-modules/Core/Chart/StockChart.js +13 -316
  70. package/es-modules/Core/Color/Palettes.js +22 -0
  71. package/es-modules/Core/DefaultOptions.js +22 -19
  72. package/es-modules/Core/Foundation.js +39 -31
  73. package/es-modules/Core/Geometry/CircleUtilities.js +2 -1
  74. package/es-modules/Core/Globals.js +1 -1
  75. package/es-modules/Core/HttpUtilities.js +8 -7
  76. package/es-modules/Core/Legend/Legend.js +19 -16
  77. package/es-modules/Core/Navigator.js +41 -30
  78. package/es-modules/Core/Pointer.js +52 -45
  79. package/es-modules/Core/Renderer/HTML/AST.js +29 -14
  80. package/es-modules/Core/Renderer/HTML/HTMLElement.js +27 -20
  81. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +8 -6
  82. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  83. package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -20
  84. package/es-modules/Core/Renderer/SVG/SVGLabel.js +17 -8
  85. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +25 -29
  86. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +12 -5
  87. package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -12
  88. package/es-modules/Core/Responsive.js +2 -3
  89. package/es-modules/Core/Scrollbar.js +14 -12
  90. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  91. package/es-modules/Core/Series/DataLabel.js +19 -15
  92. package/es-modules/Core/Series/Point.js +22 -19
  93. package/es-modules/Core/Series/Series.js +197 -235
  94. package/es-modules/Core/Series/SeriesDefaults.js +8 -8
  95. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  96. package/es-modules/Core/Time.js +14 -11
  97. package/es-modules/Core/Tooltip.js +63 -53
  98. package/es-modules/Core/Utilities.js +20 -24
  99. package/es-modules/Data/DataConverter.js +483 -0
  100. package/es-modules/Data/DataPromise.js +252 -0
  101. package/es-modules/Data/DataSeriesConverter.js +207 -0
  102. package/es-modules/Data/DataTable.js +1205 -0
  103. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  104. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  105. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  106. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  107. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  108. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  109. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  110. package/es-modules/Data/Parsers/CSVParser.js +400 -0
  111. package/es-modules/Data/Parsers/DataParser.js +101 -0
  112. package/es-modules/Data/Parsers/GoogleSheetsParser.js +223 -0
  113. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  114. package/es-modules/Data/Stores/CSVStore.js +317 -0
  115. package/es-modules/Data/Stores/DataStore.js +276 -0
  116. package/es-modules/Data/Stores/GoogleSheetsStore.js +169 -0
  117. package/es-modules/Data/Stores/HTMLTableStore.js +353 -0
  118. package/es-modules/Extensions/Annotations/Annotations.js +69 -18
  119. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -3
  120. package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +1 -1
  121. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  122. package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +1 -1
  123. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +3 -6
  124. package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -2
  125. package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +1 -1
  126. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +13 -4
  127. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +0 -1
  128. package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +5 -4
  129. package/es-modules/Extensions/Annotations/NavigationBindings.js +120 -53
  130. package/es-modules/Extensions/Annotations/Popup.js +494 -148
  131. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  132. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +5 -3
  133. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +1 -1
  134. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  135. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  136. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  137. package/es-modules/Extensions/Annotations/Types/Measure.js +29 -19
  138. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +7 -6
  139. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +211 -0
  140. package/es-modules/Extensions/Annotations/Types/Tunnel.js +13 -10
  141. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  142. package/es-modules/Extensions/Boost/BoostOptions.js +2 -2
  143. package/es-modules/Extensions/Boost/BoostOverrides.js +6 -10
  144. package/es-modules/Extensions/Boost/BoostUtils.js +0 -6
  145. package/es-modules/Extensions/Boost/WGLRenderer.js +16 -12
  146. package/es-modules/Extensions/Boost/WGLShader.js +13 -11
  147. package/es-modules/Extensions/Boost/WGLVBuffer.js +4 -7
  148. package/es-modules/Extensions/BoostCanvas.js +1 -2
  149. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  150. package/es-modules/Extensions/Data.js +4 -48
  151. package/es-modules/Extensions/DataGrouping.js +52 -32
  152. package/es-modules/Extensions/DownloadURL.js +2 -2
  153. package/es-modules/Extensions/DragPanes.js +1 -2
  154. package/es-modules/Extensions/DraggablePoints.js +7 -8
  155. package/es-modules/Extensions/Drilldown.js +11 -7
  156. package/es-modules/Extensions/ExportData.js +6 -5
  157. package/es-modules/Extensions/Exporting/Exporting.js +33 -46
  158. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  159. package/es-modules/Extensions/FullScreen.js +4 -3
  160. package/es-modules/Extensions/GeoJSON.js +42 -66
  161. package/es-modules/Extensions/MarkerClusters.js +118 -98
  162. package/es-modules/Extensions/Math3D.js +4 -4
  163. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  164. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +32 -32
  165. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  166. package/es-modules/Extensions/Oldie/Oldie.js +14 -79
  167. package/es-modules/Extensions/Oldie/VMLAxis3D.js +5 -1
  168. package/es-modules/Extensions/OverlappingDataLabels.js +10 -6
  169. package/es-modules/Extensions/Pane.js +11 -12
  170. package/es-modules/Extensions/ParallelCoordinates.js +5 -3
  171. package/es-modules/Extensions/PatternFill.js +17 -11
  172. package/es-modules/Extensions/Polar.js +7 -4
  173. package/es-modules/Extensions/PriceIndication.js +2 -1
  174. package/es-modules/Extensions/RangeSelector.js +22 -59
  175. package/es-modules/Extensions/ScrollablePlotArea.js +2 -2
  176. package/es-modules/Extensions/SeriesLabel.js +1 -1
  177. package/es-modules/Extensions/Sonification/ChartSonify.js +279 -663
  178. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  179. package/es-modules/Extensions/Sonification/Instrument.js +493 -426
  180. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  181. package/es-modules/Extensions/Sonification/Options.js +10 -0
  182. package/es-modules/Extensions/Sonification/PointSonify.js +207 -152
  183. package/es-modules/Extensions/Sonification/SeriesSonify.js +474 -0
  184. package/es-modules/Extensions/Sonification/SignalHandler.js +122 -0
  185. package/es-modules/Extensions/Sonification/Sonification.js +27 -53
  186. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +70 -88
  187. package/es-modules/Extensions/Sonification/Timeline.js +250 -567
  188. package/es-modules/Extensions/Sonification/TimelineEvent.js +157 -0
  189. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  190. package/es-modules/Extensions/Stacking.js +5 -23
  191. package/es-modules/Extensions/Themes/BrandDark.js +293 -0
  192. package/es-modules/Extensions/Themes/BrandLight.js +259 -0
  193. package/es-modules/Extensions/Themes/DarkUnica.js +4 -2
  194. package/es-modules/Extensions/Themes/Grid.js +4 -2
  195. package/es-modules/Extensions/Themes/GridLight.js +4 -2
  196. package/es-modules/Gantt/Connection.js +2 -2
  197. package/es-modules/Gantt/Pathfinder.js +6 -5
  198. package/es-modules/Gantt/PathfinderAlgorithms.js +12 -12
  199. package/es-modules/Maps/MapNavigation.js +30 -68
  200. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  201. package/es-modules/Maps/MapPointer.js +8 -5
  202. package/es-modules/Maps/MapSymbols.js +23 -3
  203. package/es-modules/Maps/MapView.js +450 -0
  204. package/es-modules/Maps/MapViewOptionsDefault.js +97 -0
  205. package/es-modules/Maps/Projection.js +436 -0
  206. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  207. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  208. package/es-modules/Maps/Projections/LambertConformalConic.js +52 -0
  209. package/es-modules/Maps/Projections/Miller.js +16 -0
  210. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  211. package/es-modules/Maps/Projections/ProjectionRegistry.js +19 -0
  212. package/es-modules/Maps/Projections/WebMercator.js +24 -0
  213. package/es-modules/Series/Area/AreaSeries.js +13 -13
  214. package/es-modules/Series/Area3DSeries.js +4 -2
  215. package/es-modules/Series/AreaRange/AreaRangeSeries.js +28 -17
  216. package/es-modules/Series/Bellcurve/BellcurveSeries.js +4 -9
  217. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  218. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  219. package/es-modules/Series/Bubble/BubbleLegendItem.js +5 -15
  220. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  221. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  222. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -19
  223. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  224. package/es-modules/{Mixins/ColorMapSeries.js → Series/ColorMapMixin.js} +10 -8
  225. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  226. package/es-modules/Series/Column/ColumnSeries.js +19 -18
  227. package/es-modules/Series/Column3D/Column3DComposition.js +1 -2
  228. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +11 -8
  229. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
  230. package/es-modules/Series/Cylinder/CylinderComposition.js +36 -4
  231. package/es-modules/Series/DataModifyComposition.js +539 -0
  232. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  233. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +1 -1
  234. package/es-modules/Series/DerivedComposition.js +137 -0
  235. package/es-modules/Series/DrawPointComposition.js +111 -0
  236. package/es-modules/Series/Dumbbell/DumbbellPoint.js +0 -1
  237. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -6
  238. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  239. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  240. package/es-modules/Series/Flags/FlagsSymbols.js +2 -2
  241. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  242. package/es-modules/Series/Funnel3D/Funnel3DComposition.js +14 -8
  243. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +2 -1
  244. package/es-modules/Series/Gantt/GanttPoint.js +1 -1
  245. package/es-modules/Series/Gantt/GanttSeries.js +3 -3
  246. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  247. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  248. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  249. package/es-modules/Series/HLC/HLCSeries.js +378 -0
  250. package/es-modules/Series/Heatmap/HeatmapPoint.js +13 -14
  251. package/es-modules/Series/Heatmap/HeatmapSeries.js +24 -12
  252. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +10 -9
  253. package/es-modules/Series/Histogram/HistogramSeries.js +7 -11
  254. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +1 -4
  255. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +28 -30
  256. package/es-modules/Series/Item/ItemSeries.js +4 -5
  257. package/es-modules/Series/Line/LineSeries.js +1 -2
  258. package/es-modules/Series/Map/MapPoint.js +27 -14
  259. package/es-modules/Series/Map/MapSeries.js +283 -322
  260. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  261. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  262. package/es-modules/Series/MapLine/MapLineSeries.js +2 -4
  263. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  264. package/es-modules/Series/MapPoint/MapPointSeries.js +99 -14
  265. package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -4
  266. package/es-modules/Series/Networkgraph/Integrations.js +8 -22
  267. package/es-modules/Series/Networkgraph/Networkgraph.js +6 -10
  268. package/es-modules/Series/Networkgraph/QuadTree.js +1 -3
  269. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +78 -30
  270. package/es-modules/Series/OHLC/OHLCPoint.js +2 -7
  271. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  272. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  273. package/es-modules/Series/Organization/OrganizationSeries.js +6 -5
  274. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +1 -0
  275. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  276. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +48 -10
  277. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  278. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  279. package/es-modules/Series/Pie/PiePoint.js +2 -2
  280. package/es-modules/Series/Pie/PieSeries.js +7 -8
  281. package/es-modules/Series/Pie3D/Pie3DComposition.js +2 -1
  282. package/es-modules/Series/Pie3D/Pie3DPoint.js +2 -1
  283. package/es-modules/Series/Pie3D/Pie3DSeries.js +1 -1
  284. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +2 -1
  285. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  286. package/es-modules/Series/Sankey/SankeySeries.js +92 -22
  287. package/es-modules/Series/SolidGauge/SolidGaugeComposition.js +3 -1
  288. package/es-modules/Series/Spline/SplineSeries.js +0 -8
  289. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  290. package/es-modules/Series/Sunburst/SunburstSeries.js +6 -6
  291. package/es-modules/Series/Sunburst/SunburstUtilities.js +3 -2
  292. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -5
  293. package/es-modules/Series/Tilemap/TilemapShapes.js +0 -7
  294. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  295. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +88 -78
  296. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  297. package/es-modules/Series/Treemap/TreemapSeries.js +22 -25
  298. package/es-modules/Series/Variwide/VariwideSeries.js +5 -1
  299. package/es-modules/Series/Venn/VennPoint.js +16 -7
  300. package/es-modules/Series/Venn/VennSeries.js +11 -17
  301. package/es-modules/Series/Venn/VennUtils.js +551 -439
  302. package/es-modules/Series/Waterfall/WaterfallSeries.js +8 -6
  303. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  304. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  305. package/es-modules/Series/Wordcloud/WordcloudSeries.js +26 -22
  306. package/es-modules/Series/Wordcloud/WordcloudUtils.js +669 -484
  307. package/es-modules/Series/XRange/XRangePoint.js +7 -12
  308. package/es-modules/Series/XRange/XRangeSeries.js +4 -20
  309. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +15 -6
  310. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  311. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  312. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +4 -6
  313. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  314. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  315. package/es-modules/Stock/Indicators/BB/BBIndicator.js +39 -11
  316. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +35 -15
  317. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  318. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  319. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +28 -16
  320. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +18 -11
  321. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  322. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +6 -6
  323. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +23 -9
  324. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +16 -19
  325. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +32 -14
  326. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  327. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  328. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  329. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +2 -3
  330. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +294 -0
  331. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  332. package/es-modules/Stock/Indicators/PC/PCIndicator.js +25 -13
  333. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  334. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -1
  335. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +2 -1
  336. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  337. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +32 -50
  338. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  339. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +18 -9
  340. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  341. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  342. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  343. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +26 -10
  344. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +19 -7
  345. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  346. package/es-modules/Stock/StockToolsBindings.js +156 -47
  347. package/es-modules/Stock/StockToolsGui.js +442 -37
  348. package/es-modules/masters/highcharts-3d.src.js +1 -1
  349. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  350. package/es-modules/masters/highcharts-more.src.js +1 -1
  351. package/es-modules/masters/highcharts.src.js +1 -1
  352. package/es-modules/masters/highmaps.src.js +1 -1
  353. package/es-modules/masters/highstock.src.js +1 -1
  354. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  355. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  356. package/es-modules/masters/indicators/ao.src.js +1 -1
  357. package/es-modules/masters/indicators/apo.src.js +1 -1
  358. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  359. package/es-modules/masters/indicators/aroon.src.js +1 -1
  360. package/es-modules/masters/indicators/atr.src.js +1 -1
  361. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  362. package/es-modules/masters/indicators/cci.src.js +1 -1
  363. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  364. package/es-modules/masters/indicators/cmf.src.js +1 -1
  365. package/es-modules/masters/indicators/cmo.src.js +1 -1
  366. package/es-modules/masters/indicators/dema.src.js +1 -1
  367. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  368. package/es-modules/masters/indicators/dmi.src.js +1 -1
  369. package/es-modules/masters/indicators/dpo.src.js +1 -1
  370. package/es-modules/masters/indicators/ema.src.js +4 -10
  371. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  372. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  373. package/es-modules/masters/indicators/indicators.src.js +2 -1
  374. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  375. package/es-modules/masters/indicators/klinger.src.js +1 -1
  376. package/es-modules/masters/indicators/macd.src.js +1 -1
  377. package/es-modules/masters/indicators/mfi.src.js +1 -1
  378. package/es-modules/masters/indicators/momentum.src.js +1 -1
  379. package/es-modules/masters/indicators/natr.src.js +1 -1
  380. package/es-modules/masters/indicators/obv.src.js +1 -1
  381. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  382. package/es-modules/masters/indicators/ppo.src.js +1 -1
  383. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  384. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  385. package/es-modules/masters/indicators/psar.src.js +1 -1
  386. package/es-modules/masters/indicators/regressions.src.js +1 -1
  387. package/es-modules/masters/indicators/roc.src.js +1 -1
  388. package/es-modules/masters/indicators/rsi.src.js +1 -1
  389. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  390. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  391. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  392. package/es-modules/masters/indicators/tema.src.js +1 -1
  393. package/es-modules/masters/indicators/trendline.src.js +1 -1
  394. package/es-modules/masters/indicators/trix.src.js +1 -1
  395. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  396. package/es-modules/masters/indicators/vwap.src.js +1 -1
  397. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  398. package/es-modules/masters/indicators/wma.src.js +1 -1
  399. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  400. package/es-modules/masters/modules/accessibility.src.js +16 -2
  401. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  402. package/es-modules/masters/modules/annotations.src.js +1 -1
  403. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  404. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  405. package/es-modules/masters/modules/boost.src.js +1 -1
  406. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  407. package/es-modules/masters/modules/bullet.src.js +1 -1
  408. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  409. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  410. package/es-modules/masters/modules/cylinder.src.js +1 -1
  411. package/es-modules/masters/modules/data.src.js +6 -3
  412. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  413. package/es-modules/masters/modules/debugger.src.js +1 -1
  414. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  415. package/es-modules/masters/modules/dotplot.src.js +1 -1
  416. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  417. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  418. package/es-modules/masters/modules/drilldown.src.js +1 -1
  419. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  420. package/es-modules/masters/modules/export-data.src.js +1 -1
  421. package/es-modules/masters/modules/exporting.src.js +1 -1
  422. package/es-modules/masters/modules/full-screen.src.js +1 -1
  423. package/es-modules/masters/modules/funnel.src.js +1 -1
  424. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  425. package/es-modules/masters/modules/gantt.src.js +1 -1
  426. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  427. package/es-modules/masters/modules/heatmap.src.js +1 -2
  428. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  429. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  430. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  431. package/es-modules/masters/modules/item-series.src.js +1 -1
  432. package/es-modules/masters/modules/lollipop.src.js +1 -1
  433. package/es-modules/masters/modules/map.src.js +1 -3
  434. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  435. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  436. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  437. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  438. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  439. package/es-modules/masters/modules/oldie.src.js +1 -1
  440. package/es-modules/masters/modules/organization.src.js +1 -1
  441. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  442. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  443. package/es-modules/masters/modules/pareto.src.js +1 -1
  444. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  445. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  446. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  447. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  448. package/es-modules/masters/modules/sankey.src.js +1 -1
  449. package/es-modules/masters/modules/series-label.src.js +1 -1
  450. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  451. package/es-modules/masters/modules/sonification.src.js +33 -2
  452. package/es-modules/masters/modules/static-scale.src.js +1 -1
  453. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  454. package/es-modules/masters/modules/stock.src.js +4 -1
  455. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  456. package/es-modules/masters/modules/sunburst.src.js +1 -1
  457. package/es-modules/masters/modules/tilemap.src.js +1 -1
  458. package/es-modules/masters/modules/timeline.src.js +1 -1
  459. package/es-modules/masters/modules/treegrid.src.js +1 -1
  460. package/es-modules/masters/modules/treemap.src.js +1 -1
  461. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  462. package/es-modules/masters/modules/variwide.src.js +1 -1
  463. package/es-modules/masters/modules/vector.src.js +1 -1
  464. package/es-modules/masters/modules/venn.src.js +1 -1
  465. package/es-modules/masters/modules/windbarb.src.js +1 -1
  466. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  467. package/es-modules/masters/modules/xrange.src.js +1 -1
  468. package/es-modules/masters/themes/avocado.src.js +1 -1
  469. package/es-modules/masters/themes/brand-dark.src.js +14 -0
  470. package/es-modules/masters/themes/brand-light.src.js +14 -0
  471. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  472. package/es-modules/masters/themes/dark-green.src.js +1 -1
  473. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  474. package/es-modules/masters/themes/gray.src.js +1 -1
  475. package/es-modules/masters/themes/grid-light.src.js +1 -1
  476. package/es-modules/masters/themes/grid.src.js +1 -1
  477. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  478. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  479. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  480. package/es-modules/masters/themes/skies.src.js +1 -1
  481. package/es-modules/masters/themes/sunset.src.js +1 -1
  482. package/highcharts-3d.js +1 -1
  483. package/highcharts-3d.js.map +1 -1
  484. package/highcharts-3d.src.js +65 -35
  485. package/highcharts-gantt.js +800 -803
  486. package/highcharts-gantt.js.map +1 -1
  487. package/highcharts-gantt.src.js +1356 -1429
  488. package/highcharts-more.js +194 -193
  489. package/highcharts-more.js.map +1 -1
  490. package/highcharts-more.src.js +280 -222
  491. package/highcharts.d.ts +10208 -761
  492. package/highcharts.js +585 -588
  493. package/highcharts.js.map +1 -1
  494. package/highcharts.src.d.ts +10208 -761
  495. package/highcharts.src.js +992 -1066
  496. package/highmaps.js +727 -707
  497. package/highmaps.js.map +1 -1
  498. package/highmaps.src.js +3240 -2135
  499. package/highstock.js +788 -783
  500. package/highstock.js.map +1 -1
  501. package/highstock.src.js +2487 -1981
  502. package/indicators/acceleration-bands.d.ts +17 -1
  503. package/indicators/acceleration-bands.js +11 -9
  504. package/indicators/acceleration-bands.js.map +1 -1
  505. package/indicators/acceleration-bands.src.d.ts +17 -1
  506. package/indicators/acceleration-bands.src.js +238 -112
  507. package/indicators/accumulation-distribution.js +1 -1
  508. package/indicators/accumulation-distribution.src.js +1 -1
  509. package/indicators/ao.js +6 -6
  510. package/indicators/ao.js.map +1 -1
  511. package/indicators/ao.src.js +4 -4
  512. package/indicators/apo.js +5 -6
  513. package/indicators/apo.js.map +1 -1
  514. package/indicators/apo.src.js +16 -84
  515. package/indicators/aroon-oscillator.d.ts +17 -1
  516. package/indicators/aroon-oscillator.js +10 -9
  517. package/indicators/aroon-oscillator.js.map +1 -1
  518. package/indicators/aroon-oscillator.src.d.ts +17 -1
  519. package/indicators/aroon-oscillator.src.js +230 -177
  520. package/indicators/aroon.d.ts +17 -1
  521. package/indicators/aroon.js +11 -9
  522. package/indicators/aroon.js.map +1 -1
  523. package/indicators/aroon.src.d.ts +17 -1
  524. package/indicators/aroon.src.js +227 -112
  525. package/indicators/atr.js +1 -1
  526. package/indicators/atr.src.js +1 -1
  527. package/indicators/bollinger-bands.d.ts +17 -1
  528. package/indicators/bollinger-bands.js +12 -9
  529. package/indicators/bollinger-bands.js.map +1 -1
  530. package/indicators/bollinger-bands.src.d.ts +17 -1
  531. package/indicators/bollinger-bands.src.js +262 -117
  532. package/indicators/cci.js +1 -1
  533. package/indicators/cci.src.js +1 -1
  534. package/indicators/chaikin.js +8 -9
  535. package/indicators/chaikin.js.map +1 -1
  536. package/indicators/chaikin.src.js +8 -76
  537. package/indicators/cmf.js +1 -1
  538. package/indicators/cmf.js.map +1 -1
  539. package/indicators/cmf.src.js +36 -16
  540. package/indicators/cmo.js +1 -1
  541. package/indicators/cmo.src.js +1 -1
  542. package/indicators/dema.js +5 -6
  543. package/indicators/dema.js.map +1 -1
  544. package/indicators/dema.src.js +3 -75
  545. package/indicators/disparity-index.js +6 -7
  546. package/indicators/disparity-index.js.map +1 -1
  547. package/indicators/disparity-index.src.js +20 -74
  548. package/indicators/dmi.js +12 -11
  549. package/indicators/dmi.js.map +1 -1
  550. package/indicators/dmi.src.js +252 -121
  551. package/indicators/dpo.js +1 -1
  552. package/indicators/dpo.src.js +1 -1
  553. package/indicators/ema.js +1 -13
  554. package/indicators/ema.js.map +1 -1
  555. package/indicators/ema.src.js +7 -188
  556. package/indicators/ichimoku-kinko-hyo.js +1 -1
  557. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  558. package/indicators/ichimoku-kinko-hyo.src.js +7 -7
  559. package/indicators/indicators-all.d.ts +17 -1
  560. package/indicators/indicators-all.js +198 -203
  561. package/indicators/indicators-all.js.map +1 -1
  562. package/indicators/indicators-all.src.d.ts +17 -1
  563. package/indicators/indicators-all.src.js +892 -777
  564. package/indicators/indicators.js +12 -12
  565. package/indicators/indicators.js.map +1 -1
  566. package/indicators/indicators.src.js +213 -144
  567. package/indicators/keltner-channels.d.ts +17 -1
  568. package/indicators/keltner-channels.js +11 -10
  569. package/indicators/keltner-channels.js.map +1 -1
  570. package/indicators/keltner-channels.src.d.ts +17 -1
  571. package/indicators/keltner-channels.src.js +246 -118
  572. package/indicators/klinger.js +14 -13
  573. package/indicators/klinger.js.map +1 -1
  574. package/indicators/klinger.src.js +239 -187
  575. package/indicators/macd.js +2 -2
  576. package/indicators/macd.js.map +1 -1
  577. package/indicators/macd.src.js +3 -4
  578. package/indicators/mfi.js +1 -1
  579. package/indicators/mfi.src.js +1 -1
  580. package/indicators/momentum.js +1 -1
  581. package/indicators/momentum.src.js +1 -1
  582. package/indicators/natr.js +3 -3
  583. package/indicators/natr.js.map +1 -1
  584. package/indicators/natr.src.js +2 -4
  585. package/indicators/obv.js +1 -1
  586. package/indicators/obv.src.js +1 -1
  587. package/indicators/pivot-points.js +1 -1
  588. package/indicators/pivot-points.js.map +1 -1
  589. package/indicators/pivot-points.src.js +3 -2
  590. package/indicators/ppo.js +5 -6
  591. package/indicators/ppo.js.map +1 -1
  592. package/indicators/ppo.src.js +3 -75
  593. package/indicators/price-channel.d.ts +17 -1
  594. package/indicators/price-channel.js +11 -9
  595. package/indicators/price-channel.js.map +1 -1
  596. package/indicators/price-channel.src.d.ts +17 -1
  597. package/indicators/price-channel.src.js +288 -168
  598. package/indicators/price-envelopes.js +1 -1
  599. package/indicators/price-envelopes.src.js +1 -1
  600. package/indicators/psar.js +1 -1
  601. package/indicators/psar.src.js +1 -1
  602. package/indicators/regressions.js +1 -1
  603. package/indicators/regressions.js.map +1 -1
  604. package/indicators/regressions.src.js +39 -21
  605. package/indicators/roc.js +1 -1
  606. package/indicators/roc.src.js +1 -1
  607. package/indicators/rsi.js +1 -1
  608. package/indicators/rsi.js.map +1 -1
  609. package/indicators/rsi.src.js +3 -2
  610. package/indicators/slow-stochastic.js +5 -6
  611. package/indicators/slow-stochastic.js.map +1 -1
  612. package/indicators/slow-stochastic.src.js +2 -72
  613. package/indicators/stochastic.d.ts +17 -1
  614. package/indicators/stochastic.js +12 -10
  615. package/indicators/stochastic.js.map +1 -1
  616. package/indicators/stochastic.src.d.ts +17 -1
  617. package/indicators/stochastic.src.js +282 -165
  618. package/indicators/supertrend.js +10 -10
  619. package/indicators/supertrend.js.map +1 -1
  620. package/indicators/supertrend.src.js +6 -7
  621. package/indicators/tema.js +6 -7
  622. package/indicators/tema.js.map +1 -1
  623. package/indicators/tema.src.js +28 -75
  624. package/indicators/trendline.js +1 -1
  625. package/indicators/trendline.src.js +1 -1
  626. package/indicators/trix.js +4 -5
  627. package/indicators/trix.js.map +1 -1
  628. package/indicators/trix.src.js +8 -76
  629. package/indicators/volume-by-price.js +16 -16
  630. package/indicators/volume-by-price.js.map +1 -1
  631. package/indicators/volume-by-price.src.js +27 -10
  632. package/indicators/vwap.js +1 -1
  633. package/indicators/vwap.js.map +1 -1
  634. package/indicators/vwap.src.js +20 -8
  635. package/indicators/williams-r.js +5 -6
  636. package/indicators/williams-r.js.map +1 -1
  637. package/indicators/williams-r.src.js +41 -51
  638. package/indicators/wma.js +1 -1
  639. package/indicators/wma.src.js +1 -1
  640. package/indicators/zigzag.js +1 -1
  641. package/indicators/zigzag.src.js +1 -1
  642. package/modules/accessibility.d.ts +0 -30
  643. package/modules/accessibility.js +241 -216
  644. package/modules/accessibility.js.map +1 -1
  645. package/modules/accessibility.src.d.ts +0 -30
  646. package/modules/accessibility.src.js +7818 -6398
  647. package/modules/annotations-advanced.d.ts +30 -0
  648. package/modules/annotations-advanced.js +192 -165
  649. package/modules/annotations-advanced.js.map +1 -1
  650. package/modules/annotations-advanced.src.d.ts +30 -0
  651. package/modules/annotations-advanced.src.js +1716 -416
  652. package/modules/annotations.js +125 -110
  653. package/modules/annotations.js.map +1 -1
  654. package/modules/annotations.src.js +1059 -304
  655. package/modules/arrow-symbols.js +1 -1
  656. package/modules/arrow-symbols.src.js +1 -1
  657. package/modules/boost-canvas.js +15 -15
  658. package/modules/boost-canvas.js.map +1 -1
  659. package/modules/boost-canvas.src.js +3 -3
  660. package/modules/boost.js +79 -79
  661. package/modules/boost.js.map +1 -1
  662. package/modules/boost.src.js +42 -51
  663. package/modules/broken-axis.js +1 -1
  664. package/modules/broken-axis.js.map +1 -1
  665. package/modules/broken-axis.src.js +18 -12
  666. package/modules/bullet.js +1 -1
  667. package/modules/bullet.src.js +1 -1
  668. package/modules/coloraxis.js +24 -24
  669. package/modules/coloraxis.js.map +1 -1
  670. package/modules/coloraxis.src.js +77 -103
  671. package/modules/current-date-indicator.js +4 -4
  672. package/modules/current-date-indicator.js.map +1 -1
  673. package/modules/current-date-indicator.src.js +4 -4
  674. package/modules/cylinder.js +1 -1
  675. package/modules/cylinder.js.map +1 -1
  676. package/modules/cylinder.src.js +37 -5
  677. package/modules/data.d.ts +6 -6
  678. package/modules/data.js +31 -31
  679. package/modules/data.js.map +1 -1
  680. package/modules/data.src.d.ts +6 -6
  681. package/modules/data.src.js +18 -58
  682. package/modules/datagrouping.js +20 -20
  683. package/modules/datagrouping.js.map +1 -1
  684. package/modules/datagrouping.src.js +54 -33
  685. package/modules/debugger.js +1 -1
  686. package/modules/debugger.src.js +1 -1
  687. package/modules/dependency-wheel.js +11 -11
  688. package/modules/dependency-wheel.js.map +1 -1
  689. package/modules/dependency-wheel.src.js +5 -8
  690. package/modules/dotplot.js +1 -1
  691. package/modules/dotplot.src.js +1 -1
  692. package/modules/drag-panes.js +8 -8
  693. package/modules/drag-panes.js.map +1 -1
  694. package/modules/drag-panes.src.js +3 -3
  695. package/modules/draggable-points.js +1 -1
  696. package/modules/draggable-points.js.map +1 -1
  697. package/modules/draggable-points.src.js +8 -9
  698. package/modules/drilldown.js +24 -24
  699. package/modules/drilldown.js.map +1 -1
  700. package/modules/drilldown.src.js +13 -8
  701. package/modules/dumbbell.js +17 -17
  702. package/modules/dumbbell.js.map +1 -1
  703. package/modules/dumbbell.src.js +4 -8
  704. package/modules/export-data.js +19 -19
  705. package/modules/export-data.js.map +1 -1
  706. package/modules/export-data.src.js +9 -8
  707. package/modules/exporting.js +39 -38
  708. package/modules/exporting.js.map +1 -1
  709. package/modules/exporting.src.js +132 -113
  710. package/modules/full-screen.js +1 -1
  711. package/modules/full-screen.js.map +1 -1
  712. package/modules/full-screen.src.js +5 -4
  713. package/modules/funnel.js +12 -12
  714. package/modules/funnel.js.map +1 -1
  715. package/modules/funnel.src.js +9 -6
  716. package/modules/funnel3d.js +1 -1
  717. package/modules/funnel3d.js.map +1 -1
  718. package/modules/funnel3d.src.js +17 -10
  719. package/modules/gantt.js +217 -218
  720. package/modules/gantt.js.map +1 -1
  721. package/modules/gantt.src.js +364 -363
  722. package/modules/grid-axis.js +1 -1
  723. package/modules/grid-axis.js.map +1 -1
  724. package/modules/grid-axis.src.js +27 -19
  725. package/modules/heatmap.js +39 -39
  726. package/modules/heatmap.js.map +1 -1
  727. package/modules/heatmap.src.js +132 -141
  728. package/modules/heikinashi.js +1 -1
  729. package/modules/heikinashi.js.map +1 -1
  730. package/modules/heikinashi.src.js +12 -10
  731. package/modules/histogram-bellcurve.js +13 -13
  732. package/modules/histogram-bellcurve.js.map +1 -1
  733. package/modules/histogram-bellcurve.src.js +97 -91
  734. package/modules/hollowcandlestick.js +9 -9
  735. package/modules/hollowcandlestick.js.map +1 -1
  736. package/modules/hollowcandlestick.src.js +31 -35
  737. package/modules/item-series.js +6 -6
  738. package/modules/item-series.js.map +1 -1
  739. package/modules/item-series.src.js +6 -6
  740. package/modules/lollipop.js +1 -1
  741. package/modules/lollipop.src.js +1 -1
  742. package/modules/map.d.ts +138 -14
  743. package/modules/map.js +144 -122
  744. package/modules/map.js.map +1 -1
  745. package/modules/map.src.d.ts +138 -14
  746. package/modules/map.src.js +2253 -1074
  747. package/modules/marker-clusters.js +36 -36
  748. package/modules/marker-clusters.js.map +1 -1
  749. package/modules/marker-clusters.src.js +176 -143
  750. package/modules/networkgraph.d.ts +12 -1
  751. package/modules/networkgraph.js +49 -49
  752. package/modules/networkgraph.js.map +1 -1
  753. package/modules/networkgraph.src.d.ts +12 -1
  754. package/modules/networkgraph.src.js +103 -78
  755. package/modules/no-data-to-display.js +5 -5
  756. package/modules/no-data-to-display.js.map +1 -1
  757. package/modules/no-data-to-display.src.js +3 -3
  758. package/modules/offline-exporting.js +18 -18
  759. package/modules/offline-exporting.js.map +1 -1
  760. package/modules/offline-exporting.src.js +38 -43
  761. package/modules/oldie-polyfills.js +1 -1
  762. package/modules/oldie-polyfills.src.js +1 -1
  763. package/modules/oldie.js +26 -26
  764. package/modules/oldie.js.map +1 -1
  765. package/modules/oldie.src.js +21 -81
  766. package/modules/organization.js +13 -13
  767. package/modules/organization.js.map +1 -1
  768. package/modules/organization.src.js +8 -6
  769. package/modules/overlapping-datalabels.js +1 -1
  770. package/modules/overlapping-datalabels.src.js +1 -1
  771. package/modules/parallel-coordinates.js +1 -1
  772. package/modules/parallel-coordinates.js.map +1 -1
  773. package/modules/parallel-coordinates.src.js +6 -4
  774. package/modules/pareto.js +7 -7
  775. package/modules/pareto.js.map +1 -1
  776. package/modules/pareto.src.js +89 -78
  777. package/modules/pathfinder.js +1 -1
  778. package/modules/pathfinder.js.map +1 -1
  779. package/modules/pathfinder.src.js +21 -20
  780. package/modules/pattern-fill.js +1 -1
  781. package/modules/pattern-fill.js.map +1 -1
  782. package/modules/pattern-fill.src.js +18 -12
  783. package/modules/price-indicator.js +1 -1
  784. package/modules/price-indicator.js.map +1 -1
  785. package/modules/price-indicator.src.js +3 -2
  786. package/modules/pyramid3d.js +1 -1
  787. package/modules/pyramid3d.js.map +1 -1
  788. package/modules/pyramid3d.src.js +3 -2
  789. package/modules/sankey.d.ts +12 -1
  790. package/modules/sankey.js +29 -29
  791. package/modules/sankey.js.map +1 -1
  792. package/modules/sankey.src.d.ts +12 -1
  793. package/modules/sankey.src.js +307 -181
  794. package/modules/series-label.js +1 -1
  795. package/modules/series-label.js.map +1 -1
  796. package/modules/series-label.src.js +2 -2
  797. package/modules/solid-gauge.js +1 -1
  798. package/modules/solid-gauge.js.map +1 -1
  799. package/modules/solid-gauge.src.js +17 -2
  800. package/modules/sonification.js +59 -55
  801. package/modules/sonification.js.map +1 -1
  802. package/modules/sonification.src.js +3093 -2594
  803. package/modules/static-scale.js +1 -1
  804. package/modules/static-scale.src.js +1 -1
  805. package/modules/stock-tools.js +178 -163
  806. package/modules/stock-tools.js.map +1 -1
  807. package/modules/stock-tools.src.js +1136 -229
  808. package/modules/stock.d.ts +39 -6
  809. package/modules/stock.js +204 -196
  810. package/modules/stock.js.map +1 -1
  811. package/modules/stock.src.d.ts +39 -6
  812. package/modules/stock.src.js +1820 -1240
  813. package/modules/streamgraph.js +1 -1
  814. package/modules/streamgraph.src.js +1 -1
  815. package/modules/sunburst.js +60 -60
  816. package/modules/sunburst.js.map +1 -1
  817. package/modules/sunburst.src.js +281 -248
  818. package/modules/tilemap.js +17 -17
  819. package/modules/tilemap.js.map +1 -1
  820. package/modules/tilemap.src.js +3 -13
  821. package/modules/timeline.js +18 -18
  822. package/modules/timeline.js.map +1 -1
  823. package/modules/timeline.src.js +5 -5
  824. package/modules/treegrid.js +56 -57
  825. package/modules/treegrid.js.map +1 -1
  826. package/modules/treegrid.src.js +201 -169
  827. package/modules/treemap.js +41 -41
  828. package/modules/treemap.js.map +1 -1
  829. package/modules/treemap.src.js +266 -232
  830. package/modules/variable-pie.js +1 -1
  831. package/modules/variable-pie.src.js +1 -1
  832. package/modules/variwide.js +1 -1
  833. package/modules/variwide.js.map +1 -1
  834. package/modules/variwide.src.js +7 -3
  835. package/modules/vector.js +1 -1
  836. package/modules/vector.src.js +1 -1
  837. package/modules/venn.js +31 -31
  838. package/modules/venn.js.map +1 -1
  839. package/modules/venn.src.js +740 -731
  840. package/modules/windbarb.js +15 -15
  841. package/modules/windbarb.js.map +1 -1
  842. package/modules/windbarb.src.js +90 -62
  843. package/modules/wordcloud.js +23 -24
  844. package/modules/wordcloud.js.map +1 -1
  845. package/modules/wordcloud.src.js +898 -954
  846. package/modules/xrange.js +2 -2
  847. package/modules/xrange.js.map +1 -1
  848. package/modules/xrange.src.js +12 -33
  849. package/package.json +1 -1
  850. package/themes/avocado.js +1 -1
  851. package/themes/avocado.src.js +1 -1
  852. package/themes/brand-dark.js +15 -0
  853. package/themes/brand-dark.js.map +1 -0
  854. package/themes/brand-dark.src.js +328 -0
  855. package/themes/brand-light.js +15 -0
  856. package/themes/brand-light.js.map +1 -0
  857. package/themes/brand-light.src.js +294 -0
  858. package/themes/dark-blue.js +1 -1
  859. package/themes/dark-blue.src.js +1 -1
  860. package/themes/dark-green.js +1 -1
  861. package/themes/dark-green.src.js +1 -1
  862. package/themes/dark-unica.js +1 -1
  863. package/themes/dark-unica.js.map +1 -1
  864. package/themes/dark-unica.src.js +5 -3
  865. package/themes/gray.js +1 -1
  866. package/themes/gray.src.js +1 -1
  867. package/themes/grid-light.js +1 -1
  868. package/themes/grid-light.js.map +1 -1
  869. package/themes/grid-light.src.js +5 -3
  870. package/themes/grid.js +1 -1
  871. package/themes/grid.js.map +1 -1
  872. package/themes/grid.src.js +5 -3
  873. package/themes/high-contrast-dark.js +1 -1
  874. package/themes/high-contrast-dark.src.js +1 -1
  875. package/themes/high-contrast-light.js +1 -1
  876. package/themes/high-contrast-light.src.js +1 -1
  877. package/themes/sand-signika.js +1 -1
  878. package/themes/sand-signika.src.js +1 -1
  879. package/themes/skies.js +1 -1
  880. package/themes/skies.src.js +1 -1
  881. package/themes/sunset.js +1 -1
  882. package/themes/sunset.src.js +1 -1
  883. package/es-modules/Core/Axis/MapAxis.js +0 -157
  884. package/es-modules/Core/Color/Palette.js +0 -82
  885. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  886. package/es-modules/Mixins/ColorSeries.js +0 -77
  887. package/es-modules/Mixins/DerivedSeries.js +0 -118
  888. package/es-modules/Mixins/DrawPoint.js +0 -81
  889. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  890. package/es-modules/Mixins/MultipleLines.js +0 -181
  891. package/es-modules/Mixins/Navigation.js +0 -54
  892. package/es-modules/Mixins/NelderMead.js +0 -132
  893. package/es-modules/Mixins/Polygon.js +0 -259
  894. package/es-modules/Mixins/ReduceArray.js +0 -54
@@ -12,7 +12,6 @@ import Color from './Color/Color.js';
12
12
  var color = Color.parse;
13
13
  import H from './Globals.js';
14
14
  var charts = H.charts, noop = H.noop;
15
- import Palette from '../Core/Color/Palette.js';
16
15
  import Tooltip from './Tooltip.js';
17
16
  import U from './Utilities.js';
18
17
  var addEvent = U.addEvent, attr = U.attr, css = U.css, defined = U.defined, extend = U.extend, find = U.find, fireEvent = U.fireEvent, isNumber = U.isNumber, isObject = U.isObject, objectEach = U.objectEach, offset = U.offset, pick = U.pick, splat = U.splat;
@@ -115,7 +114,7 @@ var Pointer = /** @class */ (function () {
115
114
  Pointer.unbindDocumentMouseUp = Pointer.unbindDocumentMouseUp();
116
115
  }
117
116
  if (Pointer.unbindDocumentTouchEnd) {
118
- Pointer.unbindDocumentTouchEnd = Pointer.unbindDocumentTouchEnd();
117
+ Pointer.unbindDocumentTouchEnd = (Pointer.unbindDocumentTouchEnd());
119
118
  }
120
119
  }
121
120
  // memory and CPU leak
@@ -163,7 +162,7 @@ var Pointer = /** @class */ (function () {
163
162
  visiblePlotOnly: true
164
163
  });
165
164
  // make a selection
166
- if (chart.hasCartesianSeries &&
165
+ if ((chart.hasCartesianSeries || chart.mapView) &&
167
166
  (this.zoomX || this.zoomY) &&
168
167
  clickedInside &&
169
168
  !panKey) {
@@ -178,7 +177,7 @@ var Pointer = /** @class */ (function () {
178
177
  if (!chart.styledMode) {
179
178
  selectionMarker.attr({
180
179
  fill: (chartOptions.selectionMarkerFill ||
181
- color(Palette.highlightColor80)
180
+ color("#335cad" /* highlightColor80 */)
182
181
  .setOpacity(0.25).get())
183
182
  });
184
183
  }
@@ -229,20 +228,22 @@ var Pointer = /** @class */ (function () {
229
228
  Pointer.prototype.drop = function (e) {
230
229
  var pointer = this, chart = this.chart, hasPinched = this.hasPinched;
231
230
  if (this.selectionMarker) {
232
- var selectionData_1 = {
233
- originalEvent: e,
234
- xAxis: [],
235
- yAxis: []
236
- }, selectionBox = this.selectionMarker, selectionLeft_1 = selectionBox.attr ?
237
- selectionBox.attr('x') :
238
- selectionBox.x, selectionTop_1 = selectionBox.attr ?
239
- selectionBox.attr('y') :
240
- selectionBox.y, selectionWidth_1 = selectionBox.attr ?
231
+ var selectionBox = this.selectionMarker, x_1 = selectionBox.attr ? selectionBox.attr('x') : selectionBox.x, y_1 = selectionBox.attr ? selectionBox.attr('y') : selectionBox.y, width_1 = selectionBox.attr ?
241
232
  selectionBox.attr('width') :
242
- selectionBox.width, selectionHeight_1 = selectionBox.attr ?
233
+ selectionBox.width, height_1 = selectionBox.attr ?
243
234
  selectionBox.attr('height') :
244
- selectionBox.height;
245
- var runZoom_1;
235
+ selectionBox.height, selectionData_1 = {
236
+ originalEvent: e,
237
+ xAxis: [],
238
+ yAxis: [],
239
+ x: x_1,
240
+ y: y_1,
241
+ width: width_1,
242
+ height: height_1
243
+ },
244
+ // Start by false runZoom, unless when we have a mapView, in
245
+ // which case the zoom will be handled in the selection event.
246
+ runZoom_1 = Boolean(chart.mapView);
246
247
  // a selection has been made
247
248
  if (this.hasDragged || hasPinched) {
248
249
  // record each axis' min and max
@@ -254,15 +255,13 @@ var Pointer = /** @class */ (function () {
254
255
  xAxis: 'zoomX',
255
256
  yAxis: 'zoomY'
256
257
  }[axis.coll]]) &&
257
- isNumber(selectionLeft_1) &&
258
- isNumber(selectionTop_1)) { // #859, #3569
258
+ isNumber(x_1) &&
259
+ isNumber(y_1)) { // #859, #3569
259
260
  var horiz = axis.horiz, minPixelPadding = e.type === 'touchend' ?
260
261
  axis.minPixelPadding :
261
262
  0, // #1207, #3075
262
- selectionMin = axis.toValue((horiz ? selectionLeft_1 : selectionTop_1) +
263
- minPixelPadding), selectionMax = axis.toValue((horiz ?
264
- selectionLeft_1 + selectionWidth_1 :
265
- selectionTop_1 + selectionHeight_1) - minPixelPadding);
263
+ selectionMin = axis.toValue((horiz ? x_1 : y_1) + minPixelPadding), selectionMax = axis.toValue((horiz ? x_1 + width_1 : y_1 + height_1) -
264
+ minPixelPadding);
266
265
  selectionData_1[axis.coll].push({
267
266
  axis: axis,
268
267
  // Min/max for reversed axes
@@ -440,6 +439,7 @@ var Pointer = /** @class */ (function () {
440
439
  * Pointer event, extended with `chartX` and `chartY` properties.
441
440
  *
442
441
  * @return {Highcharts.PointerAxisCoordinatesObject}
442
+ * Axis coordinates.
443
443
  */
444
444
  Pointer.prototype.getCoordinates = function (e) {
445
445
  var coordinates = {
@@ -478,7 +478,7 @@ var Pointer = /** @class */ (function () {
478
478
  * @param {Highcharts.PointerEventObject} [e]
479
479
  * The triggering event, containing chart coordinates of the pointer.
480
480
  *
481
- * @return {object}
481
+ * @return {Object}
482
482
  * Object containing resulting hover data: hoverPoint, hoverSeries, and
483
483
  * hoverPoints.
484
484
  */
@@ -766,9 +766,8 @@ var Pointer = /** @class */ (function () {
766
766
  // Also reset the chart position, used in #149 fix
767
767
  chart.pointer.chartPosition = void 0;
768
768
  }
769
- if ( // #11635, Firefox wheel scroll does not fire out events consistently
770
- tooltip &&
771
- !tooltip.isHidden) {
769
+ // #11635, Firefox wheel scroll does not fire out events consistently
770
+ if (tooltip && !tooltip.isHidden) {
772
771
  this.reset();
773
772
  }
774
773
  };
@@ -905,7 +904,10 @@ var Pointer = /** @class */ (function () {
905
904
  }
906
905
  // On touch devices, only proceed to trigger click if a handler is
907
906
  // defined
908
- if (hasZoom && self.initiated && !fireClickEvent && e.cancelable !== false) {
907
+ if (hasZoom &&
908
+ self.initiated &&
909
+ !fireClickEvent &&
910
+ e.cancelable !== false) {
909
911
  e.preventDefault();
910
912
  }
911
913
  // Normalize each touch
@@ -939,20 +941,22 @@ var Pointer = /** @class */ (function () {
939
941
  }
940
942
  else if (pinchDown.length) { // can be 0 when releasing, if touchend
941
943
  // fires first
942
- // Set the marker
943
- if (!selectionMarker) {
944
- // @todo It's a mock object, so maybe we need a separate
945
- // interface
946
- self.selectionMarker = selectionMarker = extend({
947
- destroy: noop,
948
- touch: true
949
- }, chart.plotBox);
950
- }
951
- self.pinchTranslate(pinchDown, touches, transform, selectionMarker, clip, lastValidTouch);
952
- self.hasPinched = hasZoom;
953
- // Scale and translate the groups to provide visual feedback during
954
- // pinching
955
- self.scaleGroups(transform, clip);
944
+ fireEvent(chart, 'touchpan', { originalEvent: e }, function () {
945
+ // Set the marker
946
+ if (!selectionMarker) {
947
+ // @todo It's a mock object, so maybe we need a separate
948
+ // interface
949
+ self.selectionMarker = selectionMarker = extend({
950
+ destroy: noop,
951
+ touch: true
952
+ }, chart.plotBox);
953
+ }
954
+ self.pinchTranslate(pinchDown, touches, transform, selectionMarker, clip, lastValidTouch);
955
+ self.hasPinched = hasZoom;
956
+ // Scale and translate the groups to provide visual feedback
957
+ // during pinching
958
+ self.scaleGroups(transform, clip);
959
+ });
956
960
  if (self.res) {
957
961
  self.res = false;
958
962
  this.reset(false, 0);
@@ -1027,7 +1031,8 @@ var Pointer = /** @class */ (function () {
1027
1031
  clip[xy] = clipXY - plotLeftTop;
1028
1032
  clip[wh] = selectionWH;
1029
1033
  }
1030
- var scaleKey = inverted ? (horiz ? 'scaleY' : 'scaleX') : 'scale' + XY;
1034
+ var scaleKey = inverted ?
1035
+ (horiz ? 'scaleY' : 'scaleX') : 'scale' + XY;
1031
1036
  var transformScale = inverted ? 1 / scale : scale;
1032
1037
  selectionMarker[wh] = selectionWH;
1033
1038
  selectionMarker[xy] = selectionXY;
@@ -1124,8 +1129,8 @@ var Pointer = /** @class */ (function () {
1124
1129
  * @private
1125
1130
  * @function Highcharts.Pointer#runPointActions
1126
1131
  *
1127
- * @fires Highcharts.Point#event:mouseOut
1128
- * @fires Highcharts.Point#event:mouseOver
1132
+ * @emits Highcharts.Point#event:mouseOut
1133
+ * @emits Highcharts.Point#event:mouseOver
1129
1134
  */
1130
1135
  Pointer.prototype.runPointActions = function (e, p) {
1131
1136
  var pointer = this, chart = pointer.chart, series = chart.series, tooltip = (chart.tooltip && chart.tooltip.options.enabled ?
@@ -1252,7 +1257,9 @@ var Pointer = /** @class */ (function () {
1252
1257
  // Scale each series
1253
1258
  chart.series.forEach(function (series) {
1254
1259
  var seriesAttribs = attribs || series.getPlotBox(); // #1701
1255
- if (series.xAxis && series.xAxis.zoomEnabled && series.group) {
1260
+ if (series.group &&
1261
+ ((series.xAxis && series.xAxis.zoomEnabled) ||
1262
+ chart.mapView)) {
1256
1263
  series.group.attr(seriesAttribs);
1257
1264
  if (series.markerGroup) {
1258
1265
  series.markerGroup.attr(seriesAttribs);
@@ -9,18 +9,28 @@
9
9
  * */
10
10
  'use strict';
11
11
  import H from '../../Globals.js';
12
- var SVG_NS = H.SVG_NS;
12
+ var SVG_NS = H.SVG_NS, win = H.win;
13
13
  import U from '../../Utilities.js';
14
- var attr = U.attr, createElement = U.createElement, discardElement = U.discardElement, error = U.error, isString = U.isString, objectEach = U.objectEach, splat = U.splat;
14
+ var attr = U.attr, createElement = U.createElement, error = U.error, isFunction = U.isFunction, isString = U.isString, objectEach = U.objectEach, splat = U.splat;
15
+ var trustedTypes = win.trustedTypes;
15
16
  /* *
16
17
  *
17
18
  * Constants
18
19
  *
19
20
  * */
21
+ // Create the trusted type policy. This should not be exposed.
22
+ var trustedTypesPolicy = (trustedTypes &&
23
+ isFunction(trustedTypes.createPolicy) &&
24
+ trustedTypes.createPolicy('highcharts', {
25
+ createHTML: function (s) { return s; }
26
+ }));
27
+ var emptyHTML = trustedTypesPolicy ?
28
+ trustedTypesPolicy.createHTML('') :
29
+ '';
20
30
  // In IE8, DOMParser is undefined. IE9 and PhantomJS are only able to parse XML.
21
31
  var hasValidDOMParser = (function () {
22
32
  try {
23
- return Boolean(new DOMParser().parseFromString('', 'text/html'));
33
+ return Boolean(new DOMParser().parseFromString(emptyHTML, 'text/html'));
24
34
  }
25
35
  catch (e) {
26
36
  return false;
@@ -103,7 +113,7 @@ var AST = /** @class */ (function () {
103
113
  * Markup string
104
114
  */
105
115
  AST.setElementHTML = function (el, html) {
106
- el.innerHTML = ''; // Clear previous
116
+ el.innerHTML = AST.emptyHTML; // Clear previous
107
117
  if (html) {
108
118
  var ast = new AST(html);
109
119
  ast.addToDOM(el);
@@ -128,9 +138,12 @@ var AST = /** @class */ (function () {
128
138
  AST.prototype.addToDOM = function (parent) {
129
139
  /**
130
140
  * @private
131
- * @param {Highcharts.ASTNode} subtree - HTML/SVG definition
132
- * @param {Element} [subParent] - parent node
133
- * @return {Highcharts.SVGDOMElement|Highcharts.HTMLDOMElement} The inserted node.
141
+ * @param {Highcharts.ASTNode} subtree
142
+ * HTML/SVG definition
143
+ * @param {Element} [subParent]
144
+ * parent node
145
+ * @return {Highcharts.SVGDOMElement|Highcharts.HTMLDOMElement}
146
+ * The inserted node.
134
147
  */
135
148
  function recurse(subtree, subParent) {
136
149
  var ret;
@@ -170,7 +183,8 @@ var AST = /** @class */ (function () {
170
183
  node = element;
171
184
  }
172
185
  else {
173
- error("Highcharts warning: Invalid tagName '" + tagName + "' in config");
186
+ error('Highcharts warning: Invalid tagName ' +
187
+ tagName + ' in config');
174
188
  }
175
189
  }
176
190
  // Add to the tree
@@ -200,12 +214,13 @@ var AST = /** @class */ (function () {
200
214
  var nodes = [];
201
215
  markup = markup.trim();
202
216
  var doc;
203
- var body;
204
217
  if (hasValidDOMParser) {
205
- doc = new DOMParser().parseFromString(markup, 'text/html');
218
+ doc = new DOMParser().parseFromString(trustedTypesPolicy ?
219
+ trustedTypesPolicy.createHTML(markup) :
220
+ markup, 'text/html');
206
221
  }
207
222
  else {
208
- body = createElement('div');
223
+ var body = createElement('div');
209
224
  body.innerHTML = markup;
210
225
  doc = { body: body };
211
226
  }
@@ -240,9 +255,6 @@ var AST = /** @class */ (function () {
240
255
  addTo.push(astNode);
241
256
  };
242
257
  [].forEach.call(doc.body.childNodes, function (childNode) { return appendChildNodes(childNode, nodes); });
243
- if (body) {
244
- discardElement(body);
245
- }
246
258
  return nodes;
247
259
  };
248
260
  /* *
@@ -321,6 +333,7 @@ var AST = /** @class */ (function () {
321
333
  'text-align',
322
334
  'textAnchor',
323
335
  'textLength',
336
+ 'title',
324
337
  'type',
325
338
  'valign',
326
339
  'width',
@@ -366,6 +379,7 @@ var AST = /** @class */ (function () {
366
379
  */
367
380
  AST.allowedTags = [
368
381
  'a',
382
+ 'abbr',
369
383
  'b',
370
384
  'br',
371
385
  'button',
@@ -427,6 +441,7 @@ var AST = /** @class */ (function () {
427
441
  'ul',
428
442
  '#text'
429
443
  ];
444
+ AST.emptyHTML = emptyHTML;
430
445
  return AST;
431
446
  }());
432
447
  /* *
@@ -50,10 +50,12 @@ var HTMLElement = /** @class */ (function (_super) {
50
50
  if (HTMLElement.composedClasses.indexOf(SVGElementClass) === -1) {
51
51
  HTMLElement.composedClasses.push(SVGElementClass);
52
52
  var htmlElementProto = HTMLElement.prototype, svgElementProto = SVGElementClass.prototype;
53
- svgElementProto.getSpanCorrection = htmlElementProto.getSpanCorrection;
53
+ svgElementProto.getSpanCorrection = htmlElementProto
54
+ .getSpanCorrection;
54
55
  svgElementProto.htmlCss = htmlElementProto.htmlCss;
55
56
  svgElementProto.htmlGetBBox = htmlElementProto.htmlGetBBox;
56
- svgElementProto.htmlUpdateTransform = htmlElementProto.htmlUpdateTransform;
57
+ svgElementProto.htmlUpdateTransform = htmlElementProto
58
+ .htmlUpdateTransform;
57
59
  svgElementProto.setSpanRotation = htmlElementProto.setSpanRotation;
58
60
  }
59
61
  return SVGElementClass;
@@ -129,6 +131,9 @@ var HTMLElement = /** @class */ (function (_super) {
129
131
  }[align], styles = wrapper.styles, whiteSpace = styles && styles.whiteSpace;
130
132
  /** @private */
131
133
  function getTextPxLength() {
134
+ if (wrapper.textPxLength) {
135
+ return wrapper.textPxLength;
136
+ }
132
137
  // Reset multiline/ellipsis in order to read width (#4928,
133
138
  // #5417)
134
139
  css(elem, {
@@ -164,29 +169,31 @@ var HTMLElement = /** @class */ (function (_super) {
164
169
  wrapper.textWidth,
165
170
  wrapper.textAlign
166
171
  ].join(',');
167
- var baseline = void 0;
172
+ var baseline = void 0, hasBoxWidthChanged = false;
168
173
  // Update textWidth. Use the memoized textPxLength if possible, to
169
174
  // avoid the getTextPxLength function using elem.offsetWidth.
170
175
  // Calling offsetWidth affects rendering time as it forces layout
171
176
  // (#7656).
172
- if (textWidth !== wrapper.oldTextWidth &&
173
- ((textWidth > wrapper.oldTextWidth) ||
174
- (wrapper.textPxLength || getTextPxLength()) > textWidth) && (
175
- // Only set the width if the text is able to word-wrap, or
176
- // text-overflow is ellipsis (#9537)
177
- /[ \-]/.test(elem.textContent || elem.innerText) ||
178
- elem.style.textOverflow === 'ellipsis')) { // #983, #1254
179
- css(elem, {
180
- width: textWidth + 'px',
181
- display: 'block',
182
- whiteSpace: whiteSpace || 'normal' // #3331
183
- });
184
- wrapper.oldTextWidth = textWidth;
185
- wrapper.hasBoxWidthChanged = true; // #8159
186
- }
187
- else {
188
- wrapper.hasBoxWidthChanged = false; // #8159
177
+ if (textWidth !== wrapper.oldTextWidth) { // #983, #1254
178
+ var textPxLength = getTextPxLength();
179
+ if (((textWidth > wrapper.oldTextWidth) ||
180
+ textPxLength > textWidth) && (
181
+ // Only set the width if the text is able to word-wrap,
182
+ // or text-overflow is ellipsis (#9537)
183
+ /[ \-]/.test(elem.textContent || elem.innerText) ||
184
+ elem.style.textOverflow === 'ellipsis')) {
185
+ css(elem, {
186
+ width: (textPxLength > textWidth) || rotation ?
187
+ textWidth + 'px' :
188
+ 'auto',
189
+ display: 'block',
190
+ whiteSpace: whiteSpace || 'normal' // #3331
191
+ });
192
+ wrapper.oldTextWidth = textWidth;
193
+ hasBoxWidthChanged = true; // #8159
194
+ }
189
195
  }
196
+ wrapper.hasBoxWidthChanged = hasBoxWidthChanged; // #8159
190
197
  // Do the calculations and DOM access only if properties changed
191
198
  if (currentTextTransform !== wrapper.cTT) {
192
199
  baseline = renderer.fontMetrics(elem.style.fontSize, elem).b;
@@ -65,15 +65,16 @@ var HTMLRenderer = /** @class */ (function (_super) {
65
65
  * @function Highcharts.SVGRenderer#html
66
66
  *
67
67
  * @param {string} str
68
- * The text of (subset) HTML to draw.
68
+ * The text of (subset) HTML to draw.
69
69
  *
70
70
  * @param {number} x
71
- * The x position of the text's lower left corner.
71
+ * The x position of the text's lower left corner.
72
72
  *
73
73
  * @param {number} y
74
- * The y position of the text's lower left corner.
74
+ * The y position of the text's lower left corner.
75
75
  *
76
76
  * @return {Highcharts.HTMLDOMElement}
77
+ * HTML element.
77
78
  */
78
79
  HTMLRenderer.prototype.html = function (str, x, y) {
79
80
  var wrapper = this.createElement('span'), element = wrapper.element, renderer = wrapper.renderer, isSVG = renderer.isSVG, addSetters = function (gWrapper, style) {
@@ -181,8 +182,7 @@ var HTMLRenderer = /** @class */ (function (_super) {
181
182
  * @private
182
183
  * @param {*} value
183
184
  * @param {string} key
184
- * @return {void}
185
- */
185
+ */
186
186
  function translateSetter(value, key) {
187
187
  parentGroup[key] = value;
188
188
  if (key === 'translateX') {
@@ -205,7 +205,9 @@ var HTMLRenderer = /** @class */ (function (_super) {
205
205
  display: parentGroup.display,
206
206
  opacity: parentGroup.opacity,
207
207
  cursor: parentGroupStyles.cursor,
208
- pointerEvents: parentGroupStyles.pointerEvents,
208
+ pointerEvents: (
209
+ // #5595
210
+ parentGroupStyles.pointerEvents),
209
211
  visibility: parentGroup.visibility
210
212
  // the top group is appended to container
211
213
  }, htmlGroup || container);
@@ -42,8 +42,8 @@ var RendererUtilities;
42
42
  * @private
43
43
  */
44
44
  function distribute(boxes, len, maxDistance) {
45
- var origBoxes = boxes, // Original array will be altered with added .pos
46
- reducedLen = origBoxes.reducedLen || len, sortByRank = function (a, b) {
45
+ // Original array will be altered with added .pos
46
+ var origBoxes = boxes, reducedLen = origBoxes.reducedLen || len, sortByRank = function (a, b) {
47
47
  return (b.rank || 0) - (a.rank || 0);
48
48
  }, sortByTarget = function (a, b) {
49
49
  return a.target - b.target;
@@ -14,7 +14,6 @@ import AST from '../HTML/AST.js';
14
14
  import Color from '../../Color/Color.js';
15
15
  import H from '../../Globals.js';
16
16
  var deg2rad = H.deg2rad, doc = H.doc, noop = H.noop, svg = H.svg, SVG_NS = H.SVG_NS, win = H.win;
17
- import Palette from '../../Color/Palette.js';
18
17
  import U from '../../Utilities.js';
19
18
  var addEvent = U.addEvent, attr = U.attr, createElement = U.createElement, css = U.css, defined = U.defined, erase = U.erase, extend = U.extend, fireEvent = U.fireEvent, isArray = U.isArray, isFunction = U.isFunction, isNumber = U.isNumber, isString = U.isString, merge = U.merge, objectEach = U.objectEach, pick = U.pick, pInt = U.pInt, syncTimeout = U.syncTimeout, uniqueKey = U.uniqueKey;
20
19
  /* *
@@ -111,7 +110,6 @@ var SVGElement = /** @class */ (function () {
111
110
  *
112
111
  * @param {Highcharts.SVGDOMElement} element
113
112
  *
114
- * @return {void}
115
113
  */
116
114
  SVGElement.prototype._defaultSetter = function (value, key, element) {
117
115
  element.setAttribute(key, value);
@@ -257,7 +255,8 @@ var SVGElement = /** @class */ (function () {
257
255
  alignByTranslate = this.alignByTranslate;
258
256
  alignTo = this.alignTo;
259
257
  }
260
- box = pick(box, renderer[alignTo], alignTo === 'scrollablePlotBox' ? renderer.plotBox : void 0, renderer);
258
+ box = pick(box, renderer[alignTo], alignTo === 'scrollablePlotBox' ?
259
+ renderer.plotBox : void 0, renderer);
261
260
  // Assign variables
262
261
  var align = alignOptions.align, vAlign = alignOptions.verticalAlign;
263
262
  // default: left align
@@ -542,7 +541,8 @@ var SVGElement = /** @class */ (function () {
542
541
  // Let the shadow follow the main element
543
542
  if (!this.styledMode &&
544
543
  this.shadows &&
545
- /^(width|height|visibility|x|y|d|transform|cx|cy|r)$/.test(key)) {
544
+ /^(width|height|visibility|x|y|d|transform|cx|cy|r)$/
545
+ .test(key)) {
546
546
  this.updateShadows(key, val, setter);
547
547
  }
548
548
  }
@@ -911,7 +911,6 @@ var SVGElement = /** @class */ (function () {
911
911
  * @private
912
912
  * @function Highcharts.SVGElement#destroyShadows
913
913
  *
914
- * @return {void}
915
914
  */
916
915
  SVGElement.prototype.destroyShadows = function () {
917
916
  (this.shadows || []).forEach(function (shadow) {
@@ -1138,8 +1137,7 @@ var SVGElement = /** @class */ (function () {
1138
1137
  bBox.height = height = ({
1139
1138
  '11px,17': 14,
1140
1139
  '13px,20': 16
1141
- }[styles &&
1142
- styles.fontSize + ',' + Math.round(height)] ||
1140
+ }[(fontSize || '') + "," + Math.round(height)] ||
1143
1141
  height);
1144
1142
  }
1145
1143
  // Adjust for rotated text
@@ -1459,7 +1457,7 @@ var SVGElement = /** @class */ (function () {
1459
1457
  var childNodes = [].slice.call(textNode.childNodes);
1460
1458
  for (var i = 0; i < childNodes.length; i++) {
1461
1459
  var childNode = childNodes[i];
1462
- if (childNode.nodeType === Node.TEXT_NODE ||
1460
+ if (childNode.nodeType === win.Node.TEXT_NODE ||
1463
1461
  childNode.nodeName === 'tspan') {
1464
1462
  textPathElement.appendChild(childNode);
1465
1463
  }
@@ -1551,7 +1549,7 @@ var SVGElement = /** @class */ (function () {
1551
1549
  */
1552
1550
  SVGElement.prototype.shadow = function (shadowOptions, group, cutOff) {
1553
1551
  var shadows = [], element = this.element, oldShadowOptions = this.oldShadowOptions, defaultShadowOptions = {
1554
- color: Palette.neutralColor100,
1552
+ color: "#000000" /* neutralColor100 */,
1555
1553
  offsetX: this.parentInverted ? -1 : 1,
1556
1554
  offsetY: this.parentInverted ? -1 : 1,
1557
1555
  opacity: 0.15,
@@ -1594,7 +1592,7 @@ var SVGElement = /** @class */ (function () {
1594
1592
  strokeWidth = (options.width * 2) + 1 - (2 * i);
1595
1593
  attr(shadow, {
1596
1594
  stroke: (shadowOptions.color ||
1597
- Palette.neutralColor100),
1595
+ "#000000" /* neutralColor100 */),
1598
1596
  'stroke-opacity': shadowElementOpacity * i,
1599
1597
  'stroke-width': strokeWidth,
1600
1598
  transform: transform,
@@ -1803,12 +1801,13 @@ var SVGElement = /** @class */ (function () {
1803
1801
  * @function Highcharts.SVGElement#translate
1804
1802
  *
1805
1803
  * @param {number} x
1806
- * The x value.
1804
+ * The x value.
1807
1805
  *
1808
1806
  * @param {number} y
1809
- * The y value.
1807
+ * The y value.
1810
1808
  *
1811
1809
  * @return {Highcharts.SVGElement}
1810
+ * Translated element.
1812
1811
  */
1813
1812
  SVGElement.prototype.translate = function (x, y) {
1814
1813
  return this.attr({
@@ -1895,7 +1894,6 @@ var SVGElement = /** @class */ (function () {
1895
1894
  *
1896
1895
  * @param {Highcharts.SVGDOMElement} element
1897
1896
  *
1898
- * @return {void}
1899
1897
  */
1900
1898
  SVGElement.prototype.visibilitySetter = function (value, key, element) {
1901
1899
  // IE9-11 doesn't handle visibilty:inherit well, so we remove the
@@ -1911,10 +1909,6 @@ var SVGElement = /** @class */ (function () {
1911
1909
  /**
1912
1910
  * @private
1913
1911
  * @function Highcharts.SVGElement#xGetter
1914
- *
1915
- * @param {string} key
1916
- *
1917
- * @return {number|string|null}
1918
1912
  */
1919
1913
  SVGElement.prototype.xGetter = function (key) {
1920
1914
  if (this.element.nodeName === 'circle') {
@@ -1930,9 +1924,6 @@ var SVGElement = /** @class */ (function () {
1930
1924
  /**
1931
1925
  * @private
1932
1926
  * @function Highcharts.SVGElement#zIndexSetter
1933
- * @param {number} [value]
1934
- * @param {string} [key]
1935
- * @return {boolean}
1936
1927
  */
1937
1928
  SVGElement.prototype.zIndexSetter = function (value, key) {
1938
1929
  var renderer = this.renderer, parentGroup = this.parentGroup, parentWrapper = parentGroup || renderer, parentNode = parentWrapper.element || renderer.box, element = this.element, svgParent = parentNode === renderer.box;
@@ -134,7 +134,8 @@ var SVGLabel = /** @class */ (function (_super) {
134
134
  }
135
135
  });
136
136
  this.text.css(textStyles_1);
137
- var isWidth = 'width' in textStyles_1, isFontStyle = ('fontSize' in textStyles_1 || 'fontWeight' in textStyles_1);
137
+ var isWidth = 'width' in textStyles_1, isFontStyle = ('fontSize' in textStyles_1 ||
138
+ 'fontWeight' in textStyles_1);
138
139
  // Update existing text, box (#9400, #12163)
139
140
  if (isFontStyle) {
140
141
  this.updateTextPadding();
@@ -300,13 +301,15 @@ var SVGLabel = /** @class */ (function (_super) {
300
301
  this.renderer.symbol(this.symbolKey) :
301
302
  this.renderer.rect();
302
303
  box.addClass(// Don't use label className for buttons
303
- (this.className === 'button' ? '' : 'highcharts-label-box') +
304
- (this.className ? ' highcharts-' + this.className + '-box' : ''));
304
+ (this.className === 'button' ?
305
+ '' : 'highcharts-label-box') +
306
+ (this.className ?
307
+ ' highcharts-' + this.className + '-box' : ''));
305
308
  box.add(this);
306
309
  }
307
310
  crispAdjust = this.getCrispAdjust();
308
311
  attribs.x = crispAdjust;
309
- attribs.y = (this.baseline ? -this.baselineOffset : 0) + crispAdjust;
312
+ attribs.y = ((this.baseline ? -this.baselineOffset : 0) + crispAdjust);
310
313
  // Apply the box attributes
311
314
  attribs.width = Math.round(this.width);
312
315
  attribs.height = Math.round(this.height);
@@ -328,8 +331,7 @@ var SVGLabel = /** @class */ (function (_super) {
328
331
  if (defined(this.widthSetting) &&
329
332
  this.bBox &&
330
333
  (this.textAlign === 'center' || this.textAlign === 'right')) {
331
- textX += { center: 0.5, right: 1 }[this.textAlign] *
332
- (this.widthSetting - this.bBox.width);
334
+ textX += { center: 0.5, right: 1 }[this.textAlign] * (this.widthSetting - this.bBox.width);
333
335
  }
334
336
  // update if anything changed
335
337
  if (textX !== text.x || textY !== text.y) {
@@ -355,7 +357,9 @@ var SVGLabel = /** @class */ (function (_super) {
355
357
  var padding = this.padding;
356
358
  var paddingLeft = pick(this.paddingLeft, padding);
357
359
  var paddingRight = pick(this.paddingRight, padding);
358
- return (this.widthSetting || this.bBox.width || 0) + paddingLeft + paddingRight;
360
+ return ((this.widthSetting || this.bBox.width || 0) +
361
+ paddingLeft +
362
+ paddingRight);
359
363
  };
360
364
  SVGLabel.prototype.xSetter = function (value) {
361
365
  this.x = value; // for animation getter
@@ -376,7 +380,12 @@ var SVGLabel = /** @class */ (function (_super) {
376
380
  * Static Properties
377
381
  *
378
382
  * */
379
- SVGLabel.emptyBBox = { width: 0, height: 0, x: 0, y: 0 };
383
+ SVGLabel.emptyBBox = {
384
+ width: 0,
385
+ height: 0,
386
+ x: 0,
387
+ y: 0
388
+ };
380
389
  /**
381
390
  * For labels, these CSS properties are applied to the `text` node directly.
382
391
  *