highcharts 9.3.1 → 10.0.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 (862) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +1 -1
  3. package/css/highcharts.css +21 -4
  4. package/css/highcharts.scss +18 -3
  5. package/css/stocktools/gui.css +1 -1
  6. package/css/themes/dark-unica.css +21 -4
  7. package/css/themes/grid-light.css +21 -4
  8. package/css/themes/sand-signika.css +21 -4
  9. package/es-modules/Accessibility/A11yI18n.js +1 -5
  10. package/es-modules/Accessibility/Accessibility.js +12 -6
  11. package/es-modules/Accessibility/AccessibilityComponent.js +1 -1
  12. package/es-modules/Accessibility/Components/AnnotationsA11y.js +9 -5
  13. package/es-modules/Accessibility/Components/ContainerComponent.js +1 -1
  14. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +8 -19
  15. package/es-modules/Accessibility/Components/LegendComponent.js +196 -98
  16. package/es-modules/Accessibility/Components/MenuComponent.js +16 -15
  17. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +11 -14
  18. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +22 -12
  19. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +9 -5
  20. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +3 -2
  21. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +19 -44
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +77 -56
  23. package/es-modules/Accessibility/Components/ZoomComponent.js +148 -67
  24. package/es-modules/Accessibility/FocusBorder.js +0 -5
  25. package/es-modules/Accessibility/HighContrastMode.js +4 -3
  26. package/es-modules/Accessibility/KeyboardNavigation.js +117 -101
  27. package/es-modules/Accessibility/Options/DeprecatedOptions.js +12 -5
  28. package/es-modules/Accessibility/Options/LangOptions.js +3 -3
  29. package/es-modules/Accessibility/ProxyElement.js +26 -12
  30. package/es-modules/Accessibility/ProxyProvider.js +10 -5
  31. package/es-modules/Accessibility/Utils/Announcer.js +2 -2
  32. package/es-modules/Accessibility/Utils/ChartUtilities.js +17 -32
  33. package/es-modules/Accessibility/Utils/HTMLUtilities.js +0 -12
  34. package/es-modules/Core/Animation/Fx.js +5 -14
  35. package/es-modules/Core/Axis/Axis.js +189 -111
  36. package/es-modules/Core/Axis/Axis3D.js +10 -4
  37. package/es-modules/Core/Axis/BrokenAxis.js +17 -11
  38. package/es-modules/Core/Axis/Color/ColorAxis.js +28 -8
  39. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -3
  40. package/es-modules/Core/Axis/DateTimeAxis.js +3 -14
  41. package/es-modules/Core/Axis/GridAxis.js +34 -23
  42. package/es-modules/Core/Axis/NavigatorAxis.js +0 -5
  43. package/es-modules/Core/Axis/OrdinalAxis.js +83 -79
  44. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +0 -5
  45. package/es-modules/Core/Axis/RadialAxis.js +7 -28
  46. package/es-modules/Core/Axis/ScrollbarAxis.js +18 -10
  47. package/es-modules/Core/Axis/StackingAxis.js +2 -1
  48. package/es-modules/Core/Axis/Tick.js +2 -4
  49. package/es-modules/Core/Axis/TreeGridAxis.js +26 -17
  50. package/es-modules/Core/Axis/TreeGridTick.js +15 -1
  51. package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
  52. package/es-modules/Core/Axis/ZAxis.js +1 -1
  53. package/es-modules/Core/Chart/Chart.js +42 -44
  54. package/es-modules/Core/Chart/Chart3D.js +24 -21
  55. package/es-modules/Core/Chart/ChartDefaults.js +32 -11
  56. package/es-modules/Core/Chart/GanttChart.js +4 -4
  57. package/es-modules/Core/Chart/MapChart.js +4 -9
  58. package/es-modules/Core/Chart/StockChart.js +10 -23
  59. package/es-modules/Core/DefaultOptions.js +5 -2
  60. package/es-modules/Core/Geometry/CircleUtilities.js +2 -1
  61. package/es-modules/Core/Geometry/PolygonClip.js +84 -0
  62. package/es-modules/Core/Globals.js +4 -18
  63. package/es-modules/Core/HttpUtilities.js +18 -12
  64. package/es-modules/Core/Legend/Legend.js +22 -21
  65. package/es-modules/Core/Navigator.js +43 -28
  66. package/es-modules/Core/Pointer.js +28 -20
  67. package/es-modules/Core/Renderer/HTML/AST.js +88 -18
  68. package/es-modules/Core/Renderer/HTML/HTMLElement.js +4 -2
  69. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +8 -6
  70. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  71. package/es-modules/Core/Renderer/SVG/SVGElement.js +33 -57
  72. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +17 -5
  73. package/es-modules/Core/Renderer/SVG/SVGLabel.js +17 -8
  74. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -28
  75. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +12 -5
  76. package/es-modules/Core/Renderer/SVG/TextBuilder.js +25 -17
  77. package/es-modules/Core/Responsive.js +2 -3
  78. package/es-modules/Core/Scrollbar.js +14 -12
  79. package/es-modules/Core/Series/DataLabel.js +26 -13
  80. package/es-modules/Core/Series/Point.js +19 -18
  81. package/es-modules/Core/Series/Series.js +77 -88
  82. package/es-modules/Core/Series/SeriesDefaults.js +9 -5
  83. package/es-modules/Core/Time.js +14 -11
  84. package/es-modules/Core/Tooltip.js +30 -64
  85. package/es-modules/Core/Utilities.js +33 -45
  86. package/es-modules/Data/DataConverter.js +0 -6
  87. package/es-modules/Data/DataSeriesConverter.js +9 -5
  88. package/es-modules/Data/DataTable.js +2 -1
  89. package/es-modules/Data/Modifiers/DataModifier.js +1 -1
  90. package/es-modules/Data/Parsers/CSVParser.js +3 -2
  91. package/es-modules/Data/Parsers/GoogleSheetsParser.js +5 -2
  92. package/es-modules/Data/Stores/CSVStore.js +2 -2
  93. package/es-modules/Data/Stores/DataStore.js +1 -1
  94. package/es-modules/Data/Stores/GoogleSheetsStore.js +3 -1
  95. package/es-modules/Data/Stores/HTMLTableStore.js +3 -1
  96. package/es-modules/Extensions/Annotations/Annotations.js +18 -10
  97. package/es-modules/Extensions/Annotations/ControlPoint.js +0 -2
  98. package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +1 -1
  99. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +1 -1
  100. package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +1 -1
  101. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +3 -6
  102. package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -2
  103. package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +1 -1
  104. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +6 -3
  105. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +0 -1
  106. package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +5 -4
  107. package/es-modules/Extensions/Annotations/MockPoint.js +1 -1
  108. package/es-modules/Extensions/Annotations/NavigationBindings.js +34 -29
  109. package/es-modules/Extensions/Annotations/Popup.js +40 -32
  110. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +5 -3
  111. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -2
  112. package/es-modules/Extensions/Annotations/Types/ElliottWave.js +1 -1
  113. package/es-modules/Extensions/Annotations/Types/Measure.js +15 -11
  114. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +2 -1
  115. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +8 -4
  116. package/es-modules/Extensions/Annotations/Types/Tunnel.js +10 -5
  117. package/es-modules/Extensions/Boost/BoostInit.js +6 -1
  118. package/es-modules/Extensions/Boost/BoostOptions.js +26 -0
  119. package/es-modules/Extensions/Boost/BoostOverrides.js +3 -9
  120. package/es-modules/Extensions/Boost/BoostUtils.js +0 -6
  121. package/es-modules/Extensions/Boost/Boostables.js +1 -0
  122. package/es-modules/Extensions/Boost/WGLRenderer.js +64 -49
  123. package/es-modules/Extensions/Boost/WGLShader.js +13 -11
  124. package/es-modules/Extensions/Boost/WGLVBuffer.js +4 -7
  125. package/es-modules/Extensions/Breadcrumbs.js +874 -0
  126. package/es-modules/Extensions/Data.js +30 -62
  127. package/es-modules/Extensions/DataGrouping.js +27 -17
  128. package/es-modules/Extensions/DraggablePoints.js +16 -15
  129. package/es-modules/Extensions/Drilldown.js +148 -90
  130. package/es-modules/Extensions/ExportData.js +6 -5
  131. package/es-modules/Extensions/Exporting/Exporting.js +32 -44
  132. package/es-modules/Extensions/Exporting/ExportingDefaults.js +49 -1
  133. package/es-modules/Extensions/FullScreen.js +4 -3
  134. package/es-modules/Extensions/GeoJSON.js +152 -127
  135. package/es-modules/Extensions/MarkerClusters.js +37 -21
  136. package/es-modules/Extensions/Math3D.js +4 -4
  137. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +133 -46
  138. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  139. package/es-modules/Extensions/Oldie/Oldie.js +13 -77
  140. package/es-modules/Extensions/Oldie/VMLAxis3D.js +5 -1
  141. package/es-modules/Extensions/OverlappingDataLabels.js +10 -6
  142. package/es-modules/Extensions/Pane.js +6 -6
  143. package/es-modules/Extensions/ParallelCoordinates.js +5 -3
  144. package/es-modules/Extensions/PatternFill.js +17 -11
  145. package/es-modules/Extensions/Polar.js +6 -3
  146. package/es-modules/Extensions/PriceIndication.js +2 -1
  147. package/es-modules/Extensions/RangeSelector.js +19 -55
  148. package/es-modules/Extensions/ScrollablePlotArea.js +7 -3
  149. package/es-modules/Extensions/SeriesLabel.js +1 -1
  150. package/es-modules/Extensions/Sonification/ChartSonify.js +32 -26
  151. package/es-modules/Extensions/Sonification/Instrument.js +12 -15
  152. package/es-modules/Extensions/Sonification/PointSonify.js +12 -8
  153. package/es-modules/Extensions/Sonification/SeriesSonify.js +33 -18
  154. package/es-modules/Extensions/Sonification/SignalHandler.js +4 -6
  155. package/es-modules/Extensions/Sonification/Sonification.js +1 -1
  156. package/es-modules/Extensions/Sonification/SonificationUtilities.js +11 -7
  157. package/es-modules/Extensions/Sonification/Timeline.js +2 -7
  158. package/es-modules/Extensions/Sonification/TimelineEvent.js +0 -1
  159. package/es-modules/Extensions/Sonification/TimelinePath.js +8 -8
  160. package/es-modules/Extensions/Stacking.js +8 -25
  161. package/es-modules/Extensions/Themes/BrandDark.js +293 -0
  162. package/es-modules/Extensions/Themes/BrandLight.js +259 -0
  163. package/es-modules/Extensions/Themes/DarkUnica.js +4 -2
  164. package/es-modules/Extensions/Themes/Grid.js +4 -2
  165. package/es-modules/Extensions/Themes/GridLight.js +4 -2
  166. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  167. package/es-modules/Extensions/Themes/HighContrastLight.js +10 -10
  168. package/es-modules/Gantt/Connection.js +2 -2
  169. package/es-modules/Gantt/Pathfinder.js +6 -5
  170. package/es-modules/Gantt/PathfinderAlgorithms.js +12 -12
  171. package/es-modules/Maps/MapNavigation.js +54 -14
  172. package/es-modules/Maps/MapPointer.js +18 -1
  173. package/es-modules/Maps/MapSymbols.js +23 -3
  174. package/es-modules/Maps/MapUtilities.js +56 -0
  175. package/es-modules/Maps/MapView.js +606 -135
  176. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +148 -0
  177. package/es-modules/Maps/MapViewOptionsDefault.js +58 -20
  178. package/es-modules/Maps/Projection.js +169 -77
  179. package/es-modules/Maps/Projections/EqualEarth.js +15 -6
  180. package/es-modules/Maps/Projections/LambertConformalConic.js +27 -19
  181. package/es-modules/Maps/Projections/Miller.js +23 -10
  182. package/es-modules/Maps/Projections/Orthographic.js +21 -10
  183. package/es-modules/Maps/Projections/WebMercator.js +25 -13
  184. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +77 -0
  185. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +581 -0
  186. package/es-modules/Series/Area/AreaSeries.js +13 -13
  187. package/es-modules/Series/Area3DSeries.js +4 -2
  188. package/es-modules/Series/AreaRange/AreaRangeSeries.js +24 -12
  189. package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -1
  190. package/es-modules/Series/Bubble/BubbleLegendItem.js +2 -12
  191. package/es-modules/Series/Candlestick/CandlestickSeries.js +0 -1
  192. package/es-modules/Series/ColorMapMixin.js +84 -0
  193. package/es-modules/Series/Column/ColumnSeries.js +20 -17
  194. package/es-modules/Series/Column3D/Column3DComposition.js +1 -2
  195. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +5 -2
  196. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
  197. package/es-modules/Series/Cylinder/CylinderComposition.js +36 -4
  198. package/es-modules/Series/DataModifyComposition.js +1 -0
  199. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +3 -3
  200. package/es-modules/Series/DrawPointComposition.js +7 -4
  201. package/es-modules/Series/Dumbbell/DumbbellPoint.js +0 -1
  202. package/es-modules/Series/Dumbbell/DumbbellSeries.js +0 -3
  203. package/es-modules/Series/Flags/FlagsSymbols.js +2 -2
  204. package/es-modules/Series/Funnel3D/Funnel3DComposition.js +14 -8
  205. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +2 -1
  206. package/es-modules/Series/Gantt/GanttPoint.js +1 -1
  207. package/es-modules/Series/Gantt/GanttSeries.js +3 -1
  208. package/es-modules/Series/HLC/HLCSeries.js +1 -6
  209. package/es-modules/Series/Heatmap/HeatmapPoint.js +10 -10
  210. package/es-modules/Series/Heatmap/HeatmapSeries.js +9 -10
  211. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +8 -6
  212. package/es-modules/Series/Histogram/HistogramSeries.js +4 -4
  213. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +1 -4
  214. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +19 -20
  215. package/es-modules/Series/Item/ItemSeries.js +4 -5
  216. package/es-modules/Series/Lollipop/LollipopSeries.js +1 -1
  217. package/es-modules/Series/Map/MapPoint.js +30 -1
  218. package/es-modules/Series/Map/MapSeries.js +216 -190
  219. package/es-modules/Series/MapBubble/MapBubblePoint.js +16 -24
  220. package/es-modules/Series/MapBubble/MapBubbleSeries.js +11 -0
  221. package/es-modules/Series/MapLine/MapLineSeries.js +0 -4
  222. package/es-modules/Series/MapPoint/MapPointPoint.js +2 -8
  223. package/es-modules/Series/MapPoint/MapPointSeries.js +36 -14
  224. package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -4
  225. package/es-modules/Series/Networkgraph/Integrations.js +8 -22
  226. package/es-modules/Series/Networkgraph/Networkgraph.js +1 -5
  227. package/es-modules/Series/Networkgraph/QuadTree.js +1 -3
  228. package/es-modules/Series/NodesComposition.js +60 -12
  229. package/es-modules/Series/OHLC/OHLCPoint.js +0 -1
  230. package/es-modules/Series/OHLC/OHLCSeries.js +8 -1
  231. package/es-modules/Series/Organization/OrganizationPoint.js +68 -2
  232. package/es-modules/Series/Organization/OrganizationSeries.js +81 -25
  233. package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +1 -0
  234. package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
  235. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +2 -4
  236. package/es-modules/Series/Pie/PiePoint.js +14 -7
  237. package/es-modules/Series/Pie/PieSeries.js +1 -1
  238. package/es-modules/Series/Pie3D/Pie3DComposition.js +2 -1
  239. package/es-modules/Series/Pie3D/Pie3DPoint.js +2 -1
  240. package/es-modules/Series/Pie3D/Pie3DSeries.js +20 -1
  241. package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +2 -1
  242. package/es-modules/Series/Sankey/SankeyColumnComposition.js +193 -0
  243. package/es-modules/Series/Sankey/SankeyPoint.js +37 -1
  244. package/es-modules/Series/Sankey/SankeySeries.js +10 -126
  245. package/es-modules/Series/Scatter/ScatterSeries.js +1 -1
  246. package/es-modules/Series/SolidGauge/SolidGaugeComposition.js +3 -1
  247. package/es-modules/Series/Spline/SplineSeries.js +0 -8
  248. package/es-modules/Series/Sunburst/SunburstSeries.js +15 -4
  249. package/es-modules/Series/Sunburst/SunburstUtilities.js +3 -2
  250. package/es-modules/Series/Tilemap/TilemapPoint.js +0 -2
  251. package/es-modules/Series/Tilemap/TilemapShapes.js +0 -7
  252. package/es-modules/Series/TreeUtilities.js +2 -2
  253. package/es-modules/Series/Treemap/TreemapSeries.js +104 -99
  254. package/es-modules/Series/Variwide/VariwideSeries.js +5 -1
  255. package/es-modules/Series/Venn/VennSeries.js +6 -9
  256. package/es-modules/Series/Venn/VennUtils.js +8 -7
  257. package/es-modules/Series/Waterfall/WaterfallSeries.js +8 -3
  258. package/es-modules/Series/Wordcloud/WordcloudSeries.js +2 -2
  259. package/es-modules/Series/Wordcloud/WordcloudUtils.js +6 -10
  260. package/es-modules/Series/XRange/XRangePoint.js +6 -12
  261. package/es-modules/Series/XRange/XRangeSeries.js +4 -20
  262. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +12 -0
  263. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -0
  264. package/es-modules/Stock/Indicators/BB/BBIndicator.js +12 -0
  265. package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +35 -15
  266. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +9 -5
  267. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +2 -1
  268. package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +6 -6
  269. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +12 -0
  270. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -3
  271. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +30 -12
  272. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -1
  273. package/es-modules/Stock/Indicators/MultipleLinesComposition.js +70 -6
  274. package/es-modules/Stock/Indicators/PC/PCIndicator.js +11 -0
  275. package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -1
  276. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +2 -1
  277. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +11 -5
  278. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +3 -1
  279. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +3 -3
  280. package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +19 -7
  281. package/es-modules/Stock/StockToolsBindings.js +13 -6
  282. package/es-modules/Stock/StockToolsGui.js +34 -23
  283. package/es-modules/masters/highcharts-3d.src.js +1 -1
  284. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  285. package/es-modules/masters/highcharts-more.src.js +1 -1
  286. package/es-modules/masters/highcharts.src.js +1 -1
  287. package/es-modules/masters/highmaps.src.js +1 -1
  288. package/es-modules/masters/highstock.src.js +1 -1
  289. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  290. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  291. package/es-modules/masters/indicators/ao.src.js +1 -1
  292. package/es-modules/masters/indicators/apo.src.js +1 -1
  293. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  294. package/es-modules/masters/indicators/aroon.src.js +1 -1
  295. package/es-modules/masters/indicators/atr.src.js +1 -1
  296. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  297. package/es-modules/masters/indicators/cci.src.js +1 -1
  298. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  299. package/es-modules/masters/indicators/cmf.src.js +1 -1
  300. package/es-modules/masters/indicators/cmo.src.js +1 -1
  301. package/es-modules/masters/indicators/dema.src.js +1 -1
  302. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  303. package/es-modules/masters/indicators/dmi.src.js +1 -1
  304. package/es-modules/masters/indicators/dpo.src.js +1 -1
  305. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  306. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  307. package/es-modules/masters/indicators/indicators.src.js +1 -1
  308. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  309. package/es-modules/masters/indicators/klinger.src.js +1 -1
  310. package/es-modules/masters/indicators/macd.src.js +1 -1
  311. package/es-modules/masters/indicators/mfi.src.js +1 -1
  312. package/es-modules/masters/indicators/momentum.src.js +1 -1
  313. package/es-modules/masters/indicators/natr.src.js +1 -1
  314. package/es-modules/masters/indicators/obv.src.js +1 -1
  315. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  316. package/es-modules/masters/indicators/ppo.src.js +1 -1
  317. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  318. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  319. package/es-modules/masters/indicators/psar.src.js +1 -1
  320. package/es-modules/masters/indicators/regressions.src.js +1 -1
  321. package/es-modules/masters/indicators/roc.src.js +1 -1
  322. package/es-modules/masters/indicators/rsi.src.js +1 -1
  323. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  324. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  325. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  326. package/es-modules/masters/indicators/tema.src.js +1 -1
  327. package/es-modules/masters/indicators/trendline.src.js +1 -1
  328. package/es-modules/masters/indicators/trix.src.js +1 -1
  329. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  330. package/es-modules/masters/indicators/vwap.src.js +1 -1
  331. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  332. package/es-modules/masters/indicators/wma.src.js +1 -1
  333. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  334. package/es-modules/masters/modules/accessibility.src.js +2 -2
  335. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  336. package/es-modules/masters/modules/annotations.src.js +1 -1
  337. package/es-modules/masters/modules/arc-diagram.src.js +14 -0
  338. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  339. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  340. package/es-modules/masters/modules/boost.src.js +1 -1
  341. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  342. package/es-modules/masters/modules/bullet.src.js +1 -1
  343. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  344. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  345. package/es-modules/masters/modules/cylinder.src.js +1 -1
  346. package/es-modules/masters/modules/data.src.js +1 -1
  347. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  348. package/es-modules/masters/modules/debugger.src.js +1 -1
  349. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  350. package/es-modules/masters/modules/dotplot.src.js +1 -1
  351. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  352. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  353. package/es-modules/masters/modules/drilldown.src.js +2 -1
  354. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  355. package/es-modules/masters/modules/export-data.src.js +1 -1
  356. package/es-modules/masters/modules/exporting.src.js +1 -1
  357. package/es-modules/masters/modules/full-screen.src.js +1 -1
  358. package/es-modules/masters/modules/funnel.src.js +1 -1
  359. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  360. package/es-modules/masters/modules/gantt.src.js +1 -1
  361. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  362. package/es-modules/masters/modules/heatmap.src.js +1 -1
  363. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  364. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  365. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  366. package/es-modules/masters/modules/item-series.src.js +1 -1
  367. package/es-modules/masters/modules/lollipop.src.js +1 -1
  368. package/es-modules/masters/modules/map.src.js +5 -1
  369. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  370. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  371. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  372. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  373. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  374. package/es-modules/masters/modules/oldie.src.js +1 -1
  375. package/es-modules/masters/modules/organization.src.js +1 -1
  376. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  377. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  378. package/es-modules/masters/modules/pareto.src.js +1 -1
  379. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  380. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  381. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  382. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  383. package/es-modules/masters/modules/sankey.src.js +1 -1
  384. package/es-modules/masters/modules/series-label.src.js +1 -1
  385. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  386. package/es-modules/masters/modules/sonification.src.js +1 -1
  387. package/es-modules/masters/modules/static-scale.src.js +1 -1
  388. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  389. package/es-modules/masters/modules/stock.src.js +1 -1
  390. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  391. package/es-modules/masters/modules/sunburst.src.js +1 -1
  392. package/es-modules/masters/modules/tilemap.src.js +1 -1
  393. package/es-modules/masters/modules/timeline.src.js +1 -1
  394. package/es-modules/masters/modules/treegrid.src.js +1 -1
  395. package/es-modules/masters/modules/treemap.src.js +5 -1
  396. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  397. package/es-modules/masters/modules/variwide.src.js +1 -1
  398. package/es-modules/masters/modules/vector.src.js +1 -1
  399. package/es-modules/masters/modules/venn.src.js +1 -1
  400. package/es-modules/masters/modules/windbarb.src.js +1 -1
  401. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  402. package/es-modules/masters/modules/xrange.src.js +1 -1
  403. package/es-modules/masters/themes/avocado.src.js +1 -1
  404. package/es-modules/masters/themes/brand-dark.src.js +14 -0
  405. package/es-modules/masters/themes/brand-light.src.js +14 -0
  406. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  407. package/es-modules/masters/themes/dark-green.src.js +1 -1
  408. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  409. package/es-modules/masters/themes/gray.src.js +1 -1
  410. package/es-modules/masters/themes/grid-light.src.js +1 -1
  411. package/es-modules/masters/themes/grid.src.js +1 -1
  412. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  413. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  414. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  415. package/es-modules/masters/themes/skies.src.js +1 -1
  416. package/es-modules/masters/themes/sunset.src.js +1 -1
  417. package/highcharts-3d.js +99 -98
  418. package/highcharts-3d.js.map +1 -1
  419. package/highcharts-3d.src.js +114 -54
  420. package/highcharts-gantt.js +805 -800
  421. package/highcharts-gantt.js.map +1 -1
  422. package/highcharts-gantt.src.js +1102 -973
  423. package/highcharts-more.js +195 -194
  424. package/highcharts-more.js.map +1 -1
  425. package/highcharts-more.src.js +85 -104
  426. package/highcharts.d.ts +8196 -2661
  427. package/highcharts.js +590 -585
  428. package/highcharts.js.map +1 -1
  429. package/highcharts.src.d.ts +8196 -2661
  430. package/highcharts.src.js +872 -745
  431. package/highmaps.js +757 -727
  432. package/highmaps.js.map +1 -1
  433. package/highmaps.src.js +3983 -2601
  434. package/highstock.js +792 -788
  435. package/highstock.js.map +1 -1
  436. package/highstock.src.js +1118 -1001
  437. package/indicators/acceleration-bands.d.ts +17 -1
  438. package/indicators/acceleration-bands.js +12 -10
  439. package/indicators/acceleration-bands.js.map +1 -1
  440. package/indicators/acceleration-bands.src.d.ts +17 -1
  441. package/indicators/acceleration-bands.src.js +98 -7
  442. package/indicators/accumulation-distribution.js +5 -5
  443. package/indicators/accumulation-distribution.js.map +1 -1
  444. package/indicators/accumulation-distribution.src.js +11 -2
  445. package/indicators/ao.js +6 -6
  446. package/indicators/ao.js.map +1 -1
  447. package/indicators/ao.src.js +11 -2
  448. package/indicators/apo.js +5 -5
  449. package/indicators/apo.js.map +1 -1
  450. package/indicators/apo.src.js +11 -2
  451. package/indicators/aroon-oscillator.d.ts +17 -1
  452. package/indicators/aroon-oscillator.js +10 -9
  453. package/indicators/aroon-oscillator.js.map +1 -1
  454. package/indicators/aroon-oscillator.src.d.ts +17 -1
  455. package/indicators/aroon-oscillator.src.js +86 -7
  456. package/indicators/aroon.d.ts +17 -1
  457. package/indicators/aroon.js +11 -9
  458. package/indicators/aroon.js.map +1 -1
  459. package/indicators/aroon.src.d.ts +17 -1
  460. package/indicators/aroon.src.js +87 -7
  461. package/indicators/atr.js +5 -5
  462. package/indicators/atr.js.map +1 -1
  463. package/indicators/atr.src.js +11 -2
  464. package/indicators/bollinger-bands.d.ts +17 -1
  465. package/indicators/bollinger-bands.js +12 -10
  466. package/indicators/bollinger-bands.js.map +1 -1
  467. package/indicators/bollinger-bands.src.d.ts +17 -1
  468. package/indicators/bollinger-bands.src.js +98 -7
  469. package/indicators/cci.js +5 -5
  470. package/indicators/cci.js.map +1 -1
  471. package/indicators/cci.src.js +11 -2
  472. package/indicators/chaikin.js +8 -8
  473. package/indicators/chaikin.js.map +1 -1
  474. package/indicators/chaikin.src.js +11 -2
  475. package/indicators/cmf.js +6 -6
  476. package/indicators/cmf.js.map +1 -1
  477. package/indicators/cmf.src.js +46 -17
  478. package/indicators/cmo.js +5 -5
  479. package/indicators/cmo.js.map +1 -1
  480. package/indicators/cmo.src.js +11 -2
  481. package/indicators/dema.js +5 -5
  482. package/indicators/dema.js.map +1 -1
  483. package/indicators/dema.src.js +11 -2
  484. package/indicators/disparity-index.js +6 -6
  485. package/indicators/disparity-index.js.map +1 -1
  486. package/indicators/disparity-index.src.js +13 -3
  487. package/indicators/dmi.js +12 -11
  488. package/indicators/dmi.js.map +1 -1
  489. package/indicators/dmi.src.js +95 -12
  490. package/indicators/dpo.js +5 -5
  491. package/indicators/dpo.js.map +1 -1
  492. package/indicators/dpo.src.js +11 -2
  493. package/indicators/ema.js +2 -1
  494. package/indicators/ema.js.map +1 -1
  495. package/indicators/ema.src.js +10 -1
  496. package/indicators/ichimoku-kinko-hyo.js +16 -16
  497. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  498. package/indicators/ichimoku-kinko-hyo.src.js +17 -8
  499. package/indicators/indicators-all.d.ts +17 -1
  500. package/indicators/indicators-all.js +199 -197
  501. package/indicators/indicators-all.js.map +1 -1
  502. package/indicators/indicators-all.src.d.ts +17 -1
  503. package/indicators/indicators-all.src.js +266 -69
  504. package/indicators/indicators.js +13 -12
  505. package/indicators/indicators.js.map +1 -1
  506. package/indicators/indicators.src.js +23 -8
  507. package/indicators/keltner-channels.d.ts +17 -1
  508. package/indicators/keltner-channels.js +12 -10
  509. package/indicators/keltner-channels.js.map +1 -1
  510. package/indicators/keltner-channels.src.d.ts +17 -1
  511. package/indicators/keltner-channels.src.js +98 -7
  512. package/indicators/klinger.js +14 -12
  513. package/indicators/klinger.js.map +1 -1
  514. package/indicators/klinger.src.js +94 -10
  515. package/indicators/macd.js +12 -11
  516. package/indicators/macd.js.map +1 -1
  517. package/indicators/macd.src.js +12 -3
  518. package/indicators/mfi.js +6 -6
  519. package/indicators/mfi.js.map +1 -1
  520. package/indicators/mfi.src.js +11 -2
  521. package/indicators/momentum.js +5 -5
  522. package/indicators/momentum.js.map +1 -1
  523. package/indicators/momentum.src.js +11 -2
  524. package/indicators/natr.js +5 -4
  525. package/indicators/natr.js.map +1 -1
  526. package/indicators/natr.src.js +11 -2
  527. package/indicators/obv.js +5 -5
  528. package/indicators/obv.js.map +1 -1
  529. package/indicators/obv.src.js +11 -2
  530. package/indicators/pivot-points.js +11 -11
  531. package/indicators/pivot-points.js.map +1 -1
  532. package/indicators/pivot-points.src.js +13 -3
  533. package/indicators/ppo.js +5 -5
  534. package/indicators/ppo.js.map +1 -1
  535. package/indicators/ppo.src.js +11 -2
  536. package/indicators/price-channel.d.ts +17 -1
  537. package/indicators/price-channel.js +11 -9
  538. package/indicators/price-channel.js.map +1 -1
  539. package/indicators/price-channel.src.d.ts +17 -1
  540. package/indicators/price-channel.src.js +97 -7
  541. package/indicators/price-envelopes.js +8 -8
  542. package/indicators/price-envelopes.js.map +1 -1
  543. package/indicators/price-envelopes.src.js +11 -2
  544. package/indicators/psar.js +7 -6
  545. package/indicators/psar.js.map +1 -1
  546. package/indicators/psar.src.js +11 -2
  547. package/indicators/regressions.js +12 -12
  548. package/indicators/regressions.js.map +1 -1
  549. package/indicators/regressions.src.js +41 -14
  550. package/indicators/roc.js +5 -5
  551. package/indicators/roc.js.map +1 -1
  552. package/indicators/roc.src.js +11 -2
  553. package/indicators/rsi.js +6 -5
  554. package/indicators/rsi.js.map +1 -1
  555. package/indicators/rsi.src.js +13 -3
  556. package/indicators/slow-stochastic.js +5 -5
  557. package/indicators/slow-stochastic.js.map +1 -1
  558. package/indicators/slow-stochastic.src.js +11 -2
  559. package/indicators/stochastic.d.ts +17 -1
  560. package/indicators/stochastic.js +12 -10
  561. package/indicators/stochastic.js.map +1 -1
  562. package/indicators/stochastic.src.d.ts +17 -1
  563. package/indicators/stochastic.src.js +89 -8
  564. package/indicators/supertrend.js +10 -10
  565. package/indicators/supertrend.js.map +1 -1
  566. package/indicators/supertrend.src.js +11 -2
  567. package/indicators/tema.js +6 -6
  568. package/indicators/tema.js.map +1 -1
  569. package/indicators/tema.src.js +11 -2
  570. package/indicators/trendline.js +5 -5
  571. package/indicators/trendline.js.map +1 -1
  572. package/indicators/trendline.src.js +11 -2
  573. package/indicators/trix.js +4 -4
  574. package/indicators/trix.js.map +1 -1
  575. package/indicators/trix.src.js +11 -2
  576. package/indicators/volume-by-price.js +17 -17
  577. package/indicators/volume-by-price.js.map +1 -1
  578. package/indicators/volume-by-price.src.js +14 -5
  579. package/indicators/vwap.js +5 -5
  580. package/indicators/vwap.js.map +1 -1
  581. package/indicators/vwap.src.js +30 -9
  582. package/indicators/williams-r.js +6 -5
  583. package/indicators/williams-r.js.map +1 -1
  584. package/indicators/williams-r.src.js +11 -2
  585. package/indicators/wma.js +5 -5
  586. package/indicators/wma.js.map +1 -1
  587. package/indicators/wma.src.js +11 -2
  588. package/indicators/zigzag.js +6 -6
  589. package/indicators/zigzag.js.map +1 -1
  590. package/indicators/zigzag.src.js +11 -2
  591. package/lib/jspdf.js +299 -184
  592. package/lib/jspdf.src.js +25266 -18067
  593. package/lib/svg2pdf.js +35 -31
  594. package/lib/svg2pdf.src.js +5721 -4179
  595. package/modules/accessibility.d.ts +0 -35
  596. package/modules/accessibility.js +232 -226
  597. package/modules/accessibility.js.map +1 -1
  598. package/modules/accessibility.src.d.ts +0 -35
  599. package/modules/accessibility.src.js +792 -613
  600. package/modules/annotations-advanced.js +175 -175
  601. package/modules/annotations-advanced.js.map +1 -1
  602. package/modules/annotations-advanced.src.js +175 -129
  603. package/modules/annotations.js +124 -124
  604. package/modules/annotations.js.map +1 -1
  605. package/modules/annotations.src.js +130 -102
  606. package/modules/arc-diagram.js +25 -0
  607. package/modules/arc-diagram.js.map +1 -0
  608. package/modules/arc-diagram.src.js +770 -0
  609. package/modules/arrow-symbols.js +4 -3
  610. package/modules/arrow-symbols.js.map +1 -1
  611. package/modules/arrow-symbols.src.js +11 -2
  612. package/modules/boost-canvas.js +15 -15
  613. package/modules/boost-canvas.js.map +1 -1
  614. package/modules/boost-canvas.src.js +11 -2
  615. package/modules/boost.js +80 -79
  616. package/modules/boost.js.map +1 -1
  617. package/modules/boost.src.js +103 -85
  618. package/modules/broken-axis.js +13 -13
  619. package/modules/broken-axis.js.map +1 -1
  620. package/modules/broken-axis.src.js +28 -13
  621. package/modules/bullet.js +9 -9
  622. package/modules/bullet.js.map +1 -1
  623. package/modules/bullet.src.js +11 -2
  624. package/modules/coloraxis.js +24 -24
  625. package/modules/coloraxis.js.map +1 -1
  626. package/modules/coloraxis.src.js +42 -13
  627. package/modules/current-date-indicator.js +5 -4
  628. package/modules/current-date-indicator.js.map +1 -1
  629. package/modules/current-date-indicator.src.js +11 -2
  630. package/modules/cylinder.js +11 -11
  631. package/modules/cylinder.js.map +1 -1
  632. package/modules/cylinder.src.js +47 -6
  633. package/modules/data.d.ts +6 -6
  634. package/modules/data.js +34 -33
  635. package/modules/data.js.map +1 -1
  636. package/modules/data.src.d.ts +6 -6
  637. package/modules/data.src.js +68 -84
  638. package/modules/datagrouping.js +21 -20
  639. package/modules/datagrouping.js.map +1 -1
  640. package/modules/datagrouping.src.js +38 -19
  641. package/modules/debugger.js +6 -6
  642. package/modules/debugger.js.map +1 -1
  643. package/modules/debugger.src.js +11 -2
  644. package/modules/dependency-wheel.js +12 -11
  645. package/modules/dependency-wheel.js.map +1 -1
  646. package/modules/dependency-wheel.src.js +15 -6
  647. package/modules/dotplot.js +6 -6
  648. package/modules/dotplot.js.map +1 -1
  649. package/modules/dotplot.src.js +11 -2
  650. package/modules/drag-panes.js +10 -10
  651. package/modules/drag-panes.js.map +1 -1
  652. package/modules/drag-panes.src.js +11 -2
  653. package/modules/draggable-points.js +35 -34
  654. package/modules/draggable-points.js.map +1 -1
  655. package/modules/draggable-points.src.js +27 -17
  656. package/modules/drilldown.d.ts +19 -0
  657. package/modules/drilldown.js +37 -25
  658. package/modules/drilldown.js.map +1 -1
  659. package/modules/drilldown.src.d.ts +19 -0
  660. package/modules/drilldown.src.js +1091 -101
  661. package/modules/dumbbell.js +17 -17
  662. package/modules/dumbbell.js.map +1 -1
  663. package/modules/dumbbell.src.js +11 -6
  664. package/modules/export-data.js +22 -21
  665. package/modules/export-data.js.map +1 -1
  666. package/modules/export-data.src.js +17 -7
  667. package/modules/exporting.js +39 -39
  668. package/modules/exporting.js.map +1 -1
  669. package/modules/exporting.src.js +114 -62
  670. package/modules/full-screen.js +8 -7
  671. package/modules/full-screen.js.map +1 -1
  672. package/modules/full-screen.src.js +15 -5
  673. package/modules/funnel.js +12 -12
  674. package/modules/funnel.js.map +1 -1
  675. package/modules/funnel.src.js +11 -2
  676. package/modules/funnel3d.js +21 -21
  677. package/modules/funnel3d.js.map +1 -1
  678. package/modules/funnel3d.src.js +27 -11
  679. package/modules/gantt.js +217 -217
  680. package/modules/gantt.js.map +1 -1
  681. package/modules/gantt.src.js +241 -230
  682. package/modules/grid-axis.js +23 -23
  683. package/modules/grid-axis.js.map +1 -1
  684. package/modules/grid-axis.src.js +46 -27
  685. package/modules/heatmap.js +40 -39
  686. package/modules/heatmap.js.map +1 -1
  687. package/modules/heatmap.src.js +119 -117
  688. package/modules/heikinashi.js +8 -8
  689. package/modules/heikinashi.js.map +1 -1
  690. package/modules/heikinashi.src.js +19 -8
  691. package/modules/histogram-bellcurve.js +13 -13
  692. package/modules/histogram-bellcurve.js.map +1 -1
  693. package/modules/histogram-bellcurve.src.js +17 -7
  694. package/modules/hollowcandlestick.js +9 -9
  695. package/modules/hollowcandlestick.js.map +1 -1
  696. package/modules/hollowcandlestick.src.js +31 -26
  697. package/modules/item-series.js +12 -12
  698. package/modules/item-series.js.map +1 -1
  699. package/modules/item-series.src.js +16 -7
  700. package/modules/lollipop.js +7 -7
  701. package/modules/lollipop.js.map +1 -1
  702. package/modules/lollipop.src.js +12 -3
  703. package/modules/map.d.ts +82 -43
  704. package/modules/map.js +169 -144
  705. package/modules/map.js.map +1 -1
  706. package/modules/map.src.d.ts +82 -43
  707. package/modules/map.src.js +8003 -6739
  708. package/modules/marker-clusters.js +36 -36
  709. package/modules/marker-clusters.js.map +1 -1
  710. package/modules/marker-clusters.src.js +50 -24
  711. package/modules/networkgraph.d.ts +5 -0
  712. package/modules/networkgraph.js +49 -48
  713. package/modules/networkgraph.js.map +1 -1
  714. package/modules/networkgraph.src.d.ts +5 -0
  715. package/modules/networkgraph.src.js +87 -48
  716. package/modules/no-data-to-display.js +5 -5
  717. package/modules/no-data-to-display.js.map +1 -1
  718. package/modules/no-data-to-display.src.js +11 -2
  719. package/modules/offline-exporting.js +20 -18
  720. package/modules/offline-exporting.js.map +1 -1
  721. package/modules/offline-exporting.src.js +149 -53
  722. package/modules/oldie-polyfills.js +7 -7
  723. package/modules/oldie-polyfills.js.map +1 -1
  724. package/modules/oldie-polyfills.src.js +11 -2
  725. package/modules/oldie.js +30 -30
  726. package/modules/oldie.js.map +1 -1
  727. package/modules/oldie.src.js +29 -80
  728. package/modules/organization.js +16 -14
  729. package/modules/organization.js.map +1 -1
  730. package/modules/organization.src.js +168 -32
  731. package/modules/overlapping-datalabels.js +3 -2
  732. package/modules/overlapping-datalabels.js.map +1 -1
  733. package/modules/overlapping-datalabels.src.js +11 -2
  734. package/modules/parallel-coordinates.js +11 -11
  735. package/modules/parallel-coordinates.js.map +1 -1
  736. package/modules/parallel-coordinates.src.js +16 -5
  737. package/modules/pareto.js +7 -7
  738. package/modules/pareto.js.map +1 -1
  739. package/modules/pareto.src.js +11 -2
  740. package/modules/pathfinder.js +31 -31
  741. package/modules/pathfinder.js.map +1 -1
  742. package/modules/pathfinder.src.js +31 -21
  743. package/modules/pattern-fill.js +14 -14
  744. package/modules/pattern-fill.js.map +1 -1
  745. package/modules/pattern-fill.src.js +28 -13
  746. package/modules/price-indicator.js +5 -5
  747. package/modules/price-indicator.js.map +1 -1
  748. package/modules/price-indicator.src.js +13 -3
  749. package/modules/pyramid3d.js +4 -4
  750. package/modules/pyramid3d.js.map +1 -1
  751. package/modules/pyramid3d.src.js +13 -3
  752. package/modules/sankey.d.ts +5 -0
  753. package/modules/sankey.js +32 -29
  754. package/modules/sankey.js.map +1 -1
  755. package/modules/sankey.src.d.ts +5 -0
  756. package/modules/sankey.src.js +340 -156
  757. package/modules/series-label.js +18 -17
  758. package/modules/series-label.js.map +1 -1
  759. package/modules/series-label.src.js +12 -3
  760. package/modules/solid-gauge.js +10 -10
  761. package/modules/solid-gauge.js.map +1 -1
  762. package/modules/solid-gauge.src.js +27 -3
  763. package/modules/sonification.js +59 -59
  764. package/modules/sonification.js.map +1 -1
  765. package/modules/sonification.src.js +131 -104
  766. package/modules/static-scale.js +5 -4
  767. package/modules/static-scale.js.map +1 -1
  768. package/modules/static-scale.src.js +11 -2
  769. package/modules/stock-tools.js +107 -107
  770. package/modules/stock-tools.js.map +1 -1
  771. package/modules/stock-tools.src.js +137 -98
  772. package/modules/stock.js +162 -162
  773. package/modules/stock.js.map +1 -1
  774. package/modules/stock.src.js +257 -258
  775. package/modules/streamgraph.js +5 -4
  776. package/modules/streamgraph.js.map +1 -1
  777. package/modules/streamgraph.src.js +11 -2
  778. package/modules/sunburst.d.ts +3 -0
  779. package/modules/sunburst.js +73 -61
  780. package/modules/sunburst.js.map +1 -1
  781. package/modules/sunburst.src.d.ts +3 -0
  782. package/modules/sunburst.src.js +1128 -205
  783. package/modules/tilemap.js +17 -17
  784. package/modules/tilemap.js.map +1 -1
  785. package/modules/tilemap.src.js +11 -11
  786. package/modules/timeline.js +18 -18
  787. package/modules/timeline.js.map +1 -1
  788. package/modules/timeline.src.js +11 -2
  789. package/modules/treegrid.js +57 -56
  790. package/modules/treegrid.js.map +1 -1
  791. package/modules/treegrid.src.js +106 -58
  792. package/modules/treemap.d.ts +3 -0
  793. package/modules/treemap.js +53 -41
  794. package/modules/treemap.js.map +1 -1
  795. package/modules/treemap.src.d.ts +3 -0
  796. package/modules/treemap.src.js +1113 -200
  797. package/modules/variable-pie.js +9 -9
  798. package/modules/variable-pie.js.map +1 -1
  799. package/modules/variable-pie.src.js +11 -2
  800. package/modules/variwide.js +12 -12
  801. package/modules/variwide.js.map +1 -1
  802. package/modules/variwide.src.js +17 -4
  803. package/modules/vector.js +8 -7
  804. package/modules/vector.js.map +1 -1
  805. package/modules/vector.src.js +11 -2
  806. package/modules/venn.js +31 -31
  807. package/modules/venn.js.map +1 -1
  808. package/modules/venn.src.js +34 -23
  809. package/modules/windbarb.js +15 -15
  810. package/modules/windbarb.js.map +1 -1
  811. package/modules/windbarb.src.js +11 -2
  812. package/modules/wordcloud.js +23 -23
  813. package/modules/wordcloud.js.map +1 -1
  814. package/modules/wordcloud.src.js +26 -18
  815. package/modules/xrange.js +16 -16
  816. package/modules/xrange.js.map +1 -1
  817. package/modules/xrange.src.js +21 -34
  818. package/package.json +1 -1
  819. package/themes/avocado.js +4 -3
  820. package/themes/avocado.js.map +1 -1
  821. package/themes/avocado.src.js +11 -2
  822. package/themes/brand-dark.js +16 -0
  823. package/themes/brand-dark.js.map +1 -0
  824. package/themes/brand-dark.src.js +337 -0
  825. package/themes/brand-light.js +15 -0
  826. package/themes/brand-light.js.map +1 -0
  827. package/themes/brand-light.src.js +303 -0
  828. package/themes/dark-blue.js +9 -8
  829. package/themes/dark-blue.js.map +1 -1
  830. package/themes/dark-blue.src.js +11 -2
  831. package/themes/dark-green.js +9 -8
  832. package/themes/dark-green.js.map +1 -1
  833. package/themes/dark-green.src.js +11 -2
  834. package/themes/dark-unica.js +8 -7
  835. package/themes/dark-unica.js.map +1 -1
  836. package/themes/dark-unica.src.js +15 -4
  837. package/themes/gray.js +9 -8
  838. package/themes/gray.js.map +1 -1
  839. package/themes/gray.src.js +11 -2
  840. package/themes/grid-light.js +5 -4
  841. package/themes/grid-light.js.map +1 -1
  842. package/themes/grid-light.src.js +15 -4
  843. package/themes/grid.js +5 -5
  844. package/themes/grid.js.map +1 -1
  845. package/themes/grid.src.js +15 -4
  846. package/themes/high-contrast-dark.js +7 -7
  847. package/themes/high-contrast-dark.js.map +1 -1
  848. package/themes/high-contrast-dark.src.js +21 -12
  849. package/themes/high-contrast-light.js +3 -3
  850. package/themes/high-contrast-light.js.map +1 -1
  851. package/themes/high-contrast-light.src.js +21 -12
  852. package/themes/sand-signika.js +5 -5
  853. package/themes/sand-signika.js.map +1 -1
  854. package/themes/sand-signika.src.js +11 -2
  855. package/themes/skies.js +5 -5
  856. package/themes/skies.js.map +1 -1
  857. package/themes/skies.src.js +11 -2
  858. package/themes/sunset.js +3 -3
  859. package/themes/sunset.js.map +1 -1
  860. package/themes/sunset.src.js +11 -2
  861. package/es-modules/Maps/ProjectionDefinition.js +0 -9
  862. package/es-modules/Series/ColorMapComposition.js +0 -109
@@ -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, css = U.css, 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;
@@ -87,6 +97,17 @@ var AST = /** @class */ (function () {
87
97
  });
88
98
  return attributes;
89
99
  };
100
+ AST.parseStyle = function (style) {
101
+ return style
102
+ .split(';')
103
+ .reduce(function (styles, line) {
104
+ var pair = line.split(':').map(function (s) { return s.trim(); }), key = pair[0].replace(/-([a-z])/g, function (g) { return g[1].toUpperCase(); });
105
+ if (pair[1]) {
106
+ styles[key] = pair[1];
107
+ }
108
+ return styles;
109
+ }, {});
110
+ };
90
111
  /**
91
112
  * Utility function to set html content for an element by passing in a
92
113
  * markup string. The markup is safely parsed by the AST class to avoid
@@ -103,7 +124,7 @@ var AST = /** @class */ (function () {
103
124
  * Markup string
104
125
  */
105
126
  AST.setElementHTML = function (el, html) {
106
- el.innerHTML = ''; // Clear previous
127
+ el.innerHTML = AST.emptyHTML; // Clear previous
107
128
  if (html) {
108
129
  var ast = new AST(html);
109
130
  ast.addToDOM(el);
@@ -128,9 +149,12 @@ var AST = /** @class */ (function () {
128
149
  AST.prototype.addToDOM = function (parent) {
129
150
  /**
130
151
  * @private
131
- * @param {Highcharts.ASTNode} subtree - HTML/SVG definition
132
- * @param {Element} [subParent] - parent node
133
- * @return {Highcharts.SVGDOMElement|Highcharts.HTMLDOMElement} The inserted node.
152
+ * @param {Highcharts.ASTNode} subtree
153
+ * HTML/SVG definition
154
+ * @param {Element} [subParent]
155
+ * parent node
156
+ * @return {Highcharts.SVGDOMElement|Highcharts.HTMLDOMElement}
157
+ * The inserted node.
134
158
  */
135
159
  function recurse(subtree, subParent) {
136
160
  var ret;
@@ -139,12 +163,15 @@ var AST = /** @class */ (function () {
139
163
  var textNode = item.textContent ?
140
164
  H.doc.createTextNode(item.textContent) :
141
165
  void 0;
166
+ // Whether to ignore the AST filtering totally, #15345
167
+ var bypassHTMLFiltering = AST.bypassHTMLFiltering;
142
168
  var node;
143
169
  if (tagName) {
144
170
  if (tagName === '#text') {
145
171
  node = textNode;
146
172
  }
147
- else if (AST.allowedTags.indexOf(tagName) !== -1) {
173
+ else if (AST.allowedTags.indexOf(tagName) !== -1 ||
174
+ bypassHTMLFiltering) {
148
175
  var NS = tagName === 'svg' ?
149
176
  SVG_NS :
150
177
  (subParent.namespaceURI || SVG_NS);
@@ -156,11 +183,17 @@ var AST = /** @class */ (function () {
156
183
  if (key !== 'tagName' &&
157
184
  key !== 'attributes' &&
158
185
  key !== 'children' &&
186
+ key !== 'style' &&
159
187
  key !== 'textContent') {
160
188
  attributes_1[key] = val;
161
189
  }
162
190
  });
163
- attr(element, AST.filterUserAttributes(attributes_1));
191
+ attr(element, bypassHTMLFiltering ?
192
+ attributes_1 :
193
+ AST.filterUserAttributes(attributes_1));
194
+ if (item.style) {
195
+ css(element, item.style);
196
+ }
164
197
  // Add text content
165
198
  if (textNode) {
166
199
  element.appendChild(textNode);
@@ -170,7 +203,8 @@ var AST = /** @class */ (function () {
170
203
  node = element;
171
204
  }
172
205
  else {
173
- error("Highcharts warning: Invalid tagName '" + tagName + "' in config");
206
+ error('Highcharts warning: Invalid tagName ' +
207
+ tagName + ' in config');
174
208
  }
175
209
  }
176
210
  // Add to the tree
@@ -198,14 +232,19 @@ var AST = /** @class */ (function () {
198
232
  */
199
233
  AST.prototype.parseMarkup = function (markup) {
200
234
  var nodes = [];
201
- markup = markup.trim();
235
+ markup = markup
236
+ .trim()
237
+ // The style attribute throws a warning when parsing when CSP is
238
+ // enabled (#6884), so use an alias and pick it up below
239
+ .replace(/ style="/g, ' data-style="');
202
240
  var doc;
203
- var body;
204
241
  if (hasValidDOMParser) {
205
- doc = new DOMParser().parseFromString(markup, 'text/html');
242
+ doc = new DOMParser().parseFromString(trustedTypesPolicy ?
243
+ trustedTypesPolicy.createHTML(markup) :
244
+ markup, 'text/html');
206
245
  }
207
246
  else {
208
- body = createElement('div');
247
+ var body = createElement('div');
209
248
  body.innerHTML = markup;
210
249
  doc = { body: body };
211
250
  }
@@ -223,7 +262,12 @@ var AST = /** @class */ (function () {
223
262
  if (parsedAttributes) {
224
263
  var attributes_2 = {};
225
264
  [].forEach.call(parsedAttributes, function (attrib) {
226
- attributes_2[attrib.name] = attrib.value;
265
+ if (attrib.name === 'data-style') {
266
+ astNode.style = AST.parseStyle(attrib.value);
267
+ }
268
+ else {
269
+ attributes_2[attrib.name] = attrib.value;
270
+ }
227
271
  });
228
272
  astNode.attributes = attributes_2;
229
273
  }
@@ -240,9 +284,6 @@ var AST = /** @class */ (function () {
240
284
  addTo.push(astNode);
241
285
  };
242
286
  [].forEach.call(doc.body.childNodes, function (childNode) { return appendChildNodes(childNode, nodes); });
243
- if (body) {
244
- discardElement(body);
245
- }
246
287
  return nodes;
247
288
  };
248
289
  /* *
@@ -429,6 +470,35 @@ var AST = /** @class */ (function () {
429
470
  'ul',
430
471
  '#text'
431
472
  ];
473
+ AST.emptyHTML = emptyHTML;
474
+ /**
475
+ * Allow all custom SVG and HTML attributes, references and tags (together
476
+ * with potentially harmful ones) to be added to the DOM from the chart
477
+ * configuration. In other words, disable the the allow-listing which is the
478
+ * primary functionality of the AST.
479
+ *
480
+ * WARNING: Setting this property to `true` while allowing untrusted user
481
+ * data in the chart configuration will expose your application to XSS
482
+ * security risks!
483
+ *
484
+ * Note that in case you want to allow a known set of tags or attributes,
485
+ * you should allow-list them instead of disabling the filtering totally.
486
+ * See [allowedAttributes](Highcharts.AST#.allowedAttributes),
487
+ * [allowedReferences](Highcharts.AST#.allowedReferences) and
488
+ * [allowedTags](Highcharts.AST#.allowedTags). The `bypassHTMLFiltering`
489
+ * setting is intended only for those cases where allow-listing is not
490
+ * practical, and the chart configuration already comes from a secure
491
+ * source.
492
+ *
493
+ * @example
494
+ * // Allow all custom attributes, references and tags (disable DOM XSS
495
+ * // filtering)
496
+ * Highcharts.AST.bypassHTMLFiltering = true;
497
+ *
498
+ * @name Highcharts.AST.bypassHTMLFiltering
499
+ * @static
500
+ */
501
+ AST.bypassHTMLFiltering = false;
432
502
  return AST;
433
503
  }());
434
504
  /* *
@@ -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;
@@ -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;
@@ -110,7 +110,6 @@ var SVGElement = /** @class */ (function () {
110
110
  *
111
111
  * @param {Highcharts.SVGDOMElement} element
112
112
  *
113
- * @return {void}
114
113
  */
115
114
  SVGElement.prototype._defaultSetter = function (value, key, element) {
116
115
  element.setAttribute(key, value);
@@ -256,7 +255,8 @@ var SVGElement = /** @class */ (function () {
256
255
  alignByTranslate = this.alignByTranslate;
257
256
  alignTo = this.alignTo;
258
257
  }
259
- 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);
260
260
  // Assign variables
261
261
  var align = alignOptions.align, vAlign = alignOptions.verticalAlign;
262
262
  // default: left align
@@ -351,7 +351,7 @@ var SVGElement = /** @class */ (function () {
351
351
  }, deferTime);
352
352
  }
353
353
  else {
354
- this.attr(params, void 0, complete);
354
+ this.attr(params, void 0, complete || animOptions.complete);
355
355
  // Call the end step synchronously
356
356
  objectEach(params, function (val, prop) {
357
357
  if (animOptions.step) {
@@ -541,7 +541,8 @@ var SVGElement = /** @class */ (function () {
541
541
  // Let the shadow follow the main element
542
542
  if (!this.styledMode &&
543
543
  this.shadows &&
544
- /^(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)) {
545
546
  this.updateShadows(key, val, setter);
546
547
  }
547
548
  }
@@ -730,22 +731,17 @@ var SVGElement = /** @class */ (function () {
730
731
  * Return the SVG element for chaining.
731
732
  */
732
733
  SVGElement.prototype.css = function (styles) {
733
- var oldStyles = this.styles, newStyles = {}, elem = this.element,
734
- // These CSS properties are interpreted internally by the SVG
735
- // renderer, but are not supported by SVG and should not be added to
736
- // the DOM. In styled mode, no CSS should find its way to the DOM
737
- // whatsoever (#6173, #6474).
738
- svgPseudoProps = ['textOutline', 'textOverflow', 'width'];
739
- var textWidth, serializedCss = '', hyphenate, hasNew = !oldStyles;
734
+ var oldStyles = this.styles, newStyles = {}, elem = this.element;
735
+ var textWidth, hasNew = !oldStyles;
740
736
  // convert legacy
741
- if (styles && styles.color) {
737
+ if (styles.color) {
742
738
  styles.fill = styles.color;
743
739
  }
744
740
  // Filter out existing styles to increase performance (#2640)
745
741
  if (oldStyles) {
746
- objectEach(styles, function (style, n) {
747
- if (oldStyles && oldStyles[n] !== style) {
748
- newStyles[n] = style;
742
+ objectEach(styles, function (value, n) {
743
+ if (oldStyles && oldStyles[n] !== value) {
744
+ newStyles[n] = value;
749
745
  hasNew = true;
750
746
  }
751
747
  });
@@ -756,41 +752,30 @@ var SVGElement = /** @class */ (function () {
756
752
  styles = extend(oldStyles, newStyles);
757
753
  }
758
754
  // Get the text width from style
759
- if (styles) {
760
- // Previously set, unset it (#8234)
761
- if (styles.width === null || styles.width === 'auto') {
762
- delete this.textWidth;
763
- // Apply new
764
- }
765
- else if (elem.nodeName.toLowerCase() === 'text' &&
766
- styles.width) {
767
- textWidth = this.textWidth = pInt(styles.width);
768
- }
755
+ // Previously set, unset it (#8234)
756
+ if (styles.width === null || styles.width === 'auto') {
757
+ delete this.textWidth;
758
+ // Apply new
759
+ }
760
+ else if (elem.nodeName.toLowerCase() === 'text' &&
761
+ styles.width) {
762
+ textWidth = this.textWidth = pInt(styles.width);
769
763
  }
770
764
  // store object
771
765
  this.styles = styles;
772
766
  if (textWidth && (!svg && this.renderer.forExport)) {
773
767
  delete styles.width;
774
768
  }
775
- // Serialize and set style attribute
776
- if (elem.namespaceURI === this.SVG_NS) { // #7633
777
- hyphenate = function (a, b) {
778
- return '-' + b.toLowerCase();
779
- };
780
- objectEach(styles, function (style, n) {
781
- if (svgPseudoProps.indexOf(n) === -1) {
782
- serializedCss +=
783
- n.replace(/([A-Z])/g, hyphenate) + ':' +
784
- style + ';';
785
- }
786
- });
787
- if (serializedCss) {
788
- attr(elem, 'style', serializedCss); // #1881
789
- }
790
- }
791
- else {
792
- css(elem, styles);
769
+ var stylesToApply_1 = merge(styles);
770
+ if (elem.namespaceURI === this.SVG_NS) {
771
+ // These CSS properties are interpreted internally by the SVG
772
+ // renderer, but are not supported by SVG and should not be
773
+ // added to the DOM. In styled mode, no CSS should find its way
774
+ // to the DOM whatsoever (#6173, #6474).
775
+ ['textOutline', 'textOverflow', 'width'].forEach(function (key) { return (stylesToApply_1 &&
776
+ delete stylesToApply_1[key]); });
793
777
  }
778
+ css(elem, stylesToApply_1);
794
779
  if (this.added) {
795
780
  // Rebuild text after added. Cache mechanisms in the buildText
796
781
  // will prevent building if there are no significant changes.
@@ -798,7 +783,7 @@ var SVGElement = /** @class */ (function () {
798
783
  this.renderer.buildText(this);
799
784
  }
800
785
  // Apply text outline after added
801
- if (styles && styles.textOutline) {
786
+ if (styles.textOutline) {
802
787
  this.applyTextOutline(styles.textOutline);
803
788
  }
804
789
  }
@@ -910,7 +895,6 @@ var SVGElement = /** @class */ (function () {
910
895
  * @private
911
896
  * @function Highcharts.SVGElement#destroyShadows
912
897
  *
913
- * @return {void}
914
898
  */
915
899
  SVGElement.prototype.destroyShadows = function () {
916
900
  (this.shadows || []).forEach(function (shadow) {
@@ -1137,8 +1121,7 @@ var SVGElement = /** @class */ (function () {
1137
1121
  bBox.height = height = ({
1138
1122
  '11px,17': 14,
1139
1123
  '13px,20': 16
1140
- }[styles &&
1141
- styles.fontSize + ',' + Math.round(height)] ||
1124
+ }[(fontSize || '') + "," + Math.round(height)] ||
1142
1125
  height);
1143
1126
  }
1144
1127
  // Adjust for rotated text
@@ -1802,12 +1785,13 @@ var SVGElement = /** @class */ (function () {
1802
1785
  * @function Highcharts.SVGElement#translate
1803
1786
  *
1804
1787
  * @param {number} x
1805
- * The x value.
1788
+ * The x value.
1806
1789
  *
1807
1790
  * @param {number} y
1808
- * The y value.
1791
+ * The y value.
1809
1792
  *
1810
1793
  * @return {Highcharts.SVGElement}
1794
+ * Translated element.
1811
1795
  */
1812
1796
  SVGElement.prototype.translate = function (x, y) {
1813
1797
  return this.attr({
@@ -1894,7 +1878,6 @@ var SVGElement = /** @class */ (function () {
1894
1878
  *
1895
1879
  * @param {Highcharts.SVGDOMElement} element
1896
1880
  *
1897
- * @return {void}
1898
1881
  */
1899
1882
  SVGElement.prototype.visibilitySetter = function (value, key, element) {
1900
1883
  // IE9-11 doesn't handle visibilty:inherit well, so we remove the
@@ -1910,10 +1893,6 @@ var SVGElement = /** @class */ (function () {
1910
1893
  /**
1911
1894
  * @private
1912
1895
  * @function Highcharts.SVGElement#xGetter
1913
- *
1914
- * @param {string} key
1915
- *
1916
- * @return {number|string|null}
1917
1896
  */
1918
1897
  SVGElement.prototype.xGetter = function (key) {
1919
1898
  if (this.element.nodeName === 'circle') {
@@ -1929,9 +1908,6 @@ var SVGElement = /** @class */ (function () {
1929
1908
  /**
1930
1909
  * @private
1931
1910
  * @function Highcharts.SVGElement#zIndexSetter
1932
- * @param {number} [value]
1933
- * @param {string} [key]
1934
- * @return {boolean}
1935
1911
  */
1936
1912
  SVGElement.prototype.zIndexSetter = function (value, key) {
1937
1913
  var renderer = this.renderer, parentGroup = this.parentGroup, parentWrapper = parentGroup || renderer, parentNode = parentWrapper.element || renderer.box, element = this.element, svgParent = parentNode === renderer.box;
@@ -31,10 +31,21 @@ SVGElement3D.base = {
31
31
  var elem3d = this, renderer = elem3d.renderer, paths = renderer[elem3d.pathType + 'Path'](args), zIndexes = paths.zIndexes;
32
32
  // build parts
33
33
  elem3d.parts.forEach(function (part) {
34
- elem3d[part] = renderer.path(paths[part]).attr({
34
+ var attribs = {
35
35
  'class': 'highcharts-3d-' + part,
36
36
  zIndex: zIndexes[part] || 0
37
- }).add(elem3d);
37
+ };
38
+ if (renderer.styledMode) {
39
+ if (part === 'top') {
40
+ attribs.filter = 'url(#highcharts-brighter)';
41
+ }
42
+ else if (part === 'side') {
43
+ attribs.filter = 'url(#highcharts-darker)';
44
+ }
45
+ }
46
+ elem3d[part] = renderer.path(paths[part])
47
+ .attr(attribs)
48
+ .add(elem3d);
38
49
  });
39
50
  elem3d.attr({
40
51
  'stroke-linejoin': 'round',
@@ -126,11 +137,12 @@ SVGElement3D.cuboid = merge(SVGElement3D.base, {
126
137
  this.attr({
127
138
  zIndex: paths.zIndexes.group
128
139
  });
129
- // If sides that are forced to render changed, recalculate
130
- // colors.
140
+ // If sides that are forced to render changed, recalculate colors.
131
141
  if (forcedSides !== this.forcedSides) {
132
142
  this.forcedSides = forcedSides;
133
- SVGElement3D.cuboid.fillSetter.call(this, this.fill);
143
+ if (!this.renderer.styledMode) {
144
+ SVGElement3D.cuboid.fillSetter.call(this, this.fill);
145
+ }
134
146
  }
135
147
  }
136
148
  else {
@@ -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
  *