highcharts 9.3.3 → 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 (670) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +19 -2
  3. package/css/highcharts.scss +17 -2
  4. package/css/themes/dark-unica.css +19 -2
  5. package/css/themes/grid-light.css +19 -2
  6. package/css/themes/sand-signika.css +19 -2
  7. package/es-modules/Accessibility/Accessibility.js +1 -1
  8. package/es-modules/Accessibility/Components/LegendComponent.js +31 -23
  9. package/es-modules/Accessibility/Components/MenuComponent.js +4 -5
  10. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +2 -2
  11. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +7 -6
  12. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +1 -1
  13. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +0 -1
  14. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +3 -3
  15. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +61 -29
  16. package/es-modules/Accessibility/Components/ZoomComponent.js +13 -10
  17. package/es-modules/Accessibility/HighContrastMode.js +2 -2
  18. package/es-modules/Accessibility/KeyboardNavigation.js +113 -98
  19. package/es-modules/Accessibility/ProxyElement.js +14 -6
  20. package/es-modules/Accessibility/ProxyProvider.js +10 -2
  21. package/es-modules/Core/Axis/Axis.js +150 -46
  22. package/es-modules/Core/Axis/Color/ColorAxis.js +22 -5
  23. package/es-modules/Core/Axis/GridAxis.js +10 -9
  24. package/es-modules/Core/Axis/TreeGridTick.js +11 -0
  25. package/es-modules/Core/Chart/Chart3D.js +1 -11
  26. package/es-modules/Core/Chart/ChartDefaults.js +32 -11
  27. package/es-modules/Core/Chart/MapChart.js +1 -6
  28. package/es-modules/Core/DefaultOptions.js +2 -0
  29. package/es-modules/Core/Geometry/PolygonClip.js +84 -0
  30. package/es-modules/Core/Globals.js +4 -18
  31. package/es-modules/Core/HttpUtilities.js +13 -8
  32. package/es-modules/Core/Legend/Legend.js +10 -8
  33. package/es-modules/Core/Navigator.js +9 -6
  34. package/es-modules/Core/Pointer.js +15 -11
  35. package/es-modules/Core/Renderer/HTML/AST.js +62 -5
  36. package/es-modules/Core/Renderer/SVG/SVGElement.js +25 -41
  37. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +17 -5
  38. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +17 -17
  39. package/es-modules/Core/Renderer/SVG/TextBuilder.js +12 -10
  40. package/es-modules/Core/Series/DataLabel.js +11 -3
  41. package/es-modules/Core/Series/Point.js +2 -2
  42. package/es-modules/Core/Series/Series.js +33 -15
  43. package/es-modules/Core/Series/SeriesDefaults.js +4 -1
  44. package/es-modules/Core/Tooltip.js +14 -31
  45. package/es-modules/Core/Utilities.js +28 -28
  46. package/es-modules/Extensions/Annotations/Annotations.js +7 -0
  47. package/es-modules/Extensions/Annotations/MockPoint.js +1 -1
  48. package/es-modules/Extensions/Annotations/NavigationBindings.js +1 -1
  49. package/es-modules/Extensions/Annotations/Popup.js +1 -1
  50. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +5 -3
  51. package/es-modules/Extensions/Boost/BoostInit.js +6 -1
  52. package/es-modules/Extensions/Boost/BoostOptions.js +26 -0
  53. package/es-modules/Extensions/Boost/Boostables.js +1 -0
  54. package/es-modules/Extensions/Boost/WGLRenderer.js +48 -37
  55. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  56. package/es-modules/Extensions/Breadcrumbs.js +874 -0
  57. package/es-modules/Extensions/Data.js +26 -14
  58. package/es-modules/Extensions/DataGrouping.js +5 -2
  59. package/es-modules/Extensions/DraggablePoints.js +9 -7
  60. package/es-modules/Extensions/Drilldown.js +147 -94
  61. package/es-modules/Extensions/Exporting/Exporting.js +9 -7
  62. package/es-modules/Extensions/Exporting/ExportingDefaults.js +49 -1
  63. package/es-modules/Extensions/GeoJSON.js +149 -124
  64. package/es-modules/Extensions/MarkerClusters.js +34 -20
  65. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +110 -22
  66. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  67. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  68. package/es-modules/Extensions/ScrollablePlotArea.js +5 -1
  69. package/es-modules/Extensions/Stacking.js +3 -2
  70. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  71. package/es-modules/Extensions/Themes/HighContrastLight.js +10 -10
  72. package/es-modules/Maps/MapNavigation.js +49 -8
  73. package/es-modules/Maps/MapPointer.js +16 -0
  74. package/es-modules/Maps/MapUtilities.js +56 -0
  75. package/es-modules/Maps/MapView.js +606 -135
  76. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +148 -0
  77. package/es-modules/Maps/MapViewOptionsDefault.js +58 -20
  78. package/es-modules/Maps/Projection.js +169 -77
  79. package/es-modules/Maps/Projections/EqualEarth.js +15 -6
  80. package/es-modules/Maps/Projections/LambertConformalConic.js +27 -19
  81. package/es-modules/Maps/Projections/Miller.js +23 -10
  82. package/es-modules/Maps/Projections/Orthographic.js +21 -10
  83. package/es-modules/Maps/Projections/WebMercator.js +25 -13
  84. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +77 -0
  85. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +581 -0
  86. package/es-modules/Series/Column/ColumnSeries.js +4 -3
  87. package/es-modules/Series/DataModifyComposition.js +1 -0
  88. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -2
  89. package/es-modules/Series/DrawPointComposition.js +7 -4
  90. package/es-modules/Series/Lollipop/LollipopSeries.js +1 -1
  91. package/es-modules/Series/Map/MapPoint.js +24 -1
  92. package/es-modules/Series/Map/MapSeries.js +196 -169
  93. package/es-modules/Series/MapBubble/MapBubblePoint.js +16 -24
  94. package/es-modules/Series/MapBubble/MapBubbleSeries.js +11 -0
  95. package/es-modules/Series/MapPoint/MapPointPoint.js +2 -8
  96. package/es-modules/Series/MapPoint/MapPointSeries.js +36 -14
  97. package/es-modules/Series/NodesComposition.js +60 -13
  98. package/es-modules/Series/OHLC/OHLCSeries.js +7 -0
  99. package/es-modules/Series/Organization/OrganizationPoint.js +68 -2
  100. package/es-modules/Series/Organization/OrganizationSeries.js +79 -25
  101. package/es-modules/Series/Pie/PiePoint.js +12 -5
  102. package/es-modules/Series/Pie3D/Pie3DSeries.js +19 -0
  103. package/es-modules/Series/Sankey/SankeyColumnComposition.js +193 -0
  104. package/es-modules/Series/Sankey/SankeyPoint.js +37 -1
  105. package/es-modules/Series/Sankey/SankeySeries.js +10 -127
  106. package/es-modules/Series/Scatter/ScatterSeries.js +1 -1
  107. package/es-modules/Series/Sunburst/SunburstSeries.js +13 -2
  108. package/es-modules/Series/Treemap/TreemapSeries.js +88 -80
  109. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -0
  110. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -2
  111. package/es-modules/Stock/StockToolsGui.js +1 -1
  112. package/es-modules/masters/highcharts-3d.src.js +1 -1
  113. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  114. package/es-modules/masters/highcharts-more.src.js +1 -1
  115. package/es-modules/masters/highcharts.src.js +1 -1
  116. package/es-modules/masters/highmaps.src.js +1 -1
  117. package/es-modules/masters/highstock.src.js +1 -1
  118. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  119. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  120. package/es-modules/masters/indicators/ao.src.js +1 -1
  121. package/es-modules/masters/indicators/apo.src.js +1 -1
  122. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  123. package/es-modules/masters/indicators/aroon.src.js +1 -1
  124. package/es-modules/masters/indicators/atr.src.js +1 -1
  125. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  126. package/es-modules/masters/indicators/cci.src.js +1 -1
  127. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  128. package/es-modules/masters/indicators/cmf.src.js +1 -1
  129. package/es-modules/masters/indicators/cmo.src.js +1 -1
  130. package/es-modules/masters/indicators/dema.src.js +1 -1
  131. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  132. package/es-modules/masters/indicators/dmi.src.js +1 -1
  133. package/es-modules/masters/indicators/dpo.src.js +1 -1
  134. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  135. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  136. package/es-modules/masters/indicators/indicators.src.js +1 -1
  137. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  138. package/es-modules/masters/indicators/klinger.src.js +1 -1
  139. package/es-modules/masters/indicators/macd.src.js +1 -1
  140. package/es-modules/masters/indicators/mfi.src.js +1 -1
  141. package/es-modules/masters/indicators/momentum.src.js +1 -1
  142. package/es-modules/masters/indicators/natr.src.js +1 -1
  143. package/es-modules/masters/indicators/obv.src.js +1 -1
  144. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  145. package/es-modules/masters/indicators/ppo.src.js +1 -1
  146. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  147. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  148. package/es-modules/masters/indicators/psar.src.js +1 -1
  149. package/es-modules/masters/indicators/regressions.src.js +1 -1
  150. package/es-modules/masters/indicators/roc.src.js +1 -1
  151. package/es-modules/masters/indicators/rsi.src.js +1 -1
  152. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  153. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  154. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  155. package/es-modules/masters/indicators/tema.src.js +1 -1
  156. package/es-modules/masters/indicators/trendline.src.js +1 -1
  157. package/es-modules/masters/indicators/trix.src.js +1 -1
  158. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  159. package/es-modules/masters/indicators/vwap.src.js +1 -1
  160. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  161. package/es-modules/masters/indicators/wma.src.js +1 -1
  162. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  163. package/es-modules/masters/modules/accessibility.src.js +1 -1
  164. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  165. package/es-modules/masters/modules/annotations.src.js +1 -1
  166. package/es-modules/masters/modules/arc-diagram.src.js +14 -0
  167. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  168. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  169. package/es-modules/masters/modules/boost.src.js +1 -1
  170. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  171. package/es-modules/masters/modules/bullet.src.js +1 -1
  172. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  173. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  174. package/es-modules/masters/modules/cylinder.src.js +1 -1
  175. package/es-modules/masters/modules/data.src.js +1 -1
  176. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  177. package/es-modules/masters/modules/debugger.src.js +1 -1
  178. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  179. package/es-modules/masters/modules/dotplot.src.js +1 -1
  180. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  181. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  182. package/es-modules/masters/modules/drilldown.src.js +2 -1
  183. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  184. package/es-modules/masters/modules/export-data.src.js +1 -1
  185. package/es-modules/masters/modules/exporting.src.js +1 -1
  186. package/es-modules/masters/modules/full-screen.src.js +1 -1
  187. package/es-modules/masters/modules/funnel.src.js +1 -1
  188. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  189. package/es-modules/masters/modules/gantt.src.js +1 -1
  190. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  191. package/es-modules/masters/modules/heatmap.src.js +1 -1
  192. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  193. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  194. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  195. package/es-modules/masters/modules/item-series.src.js +1 -1
  196. package/es-modules/masters/modules/lollipop.src.js +1 -1
  197. package/es-modules/masters/modules/map.src.js +5 -1
  198. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  199. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  200. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  201. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  202. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  203. package/es-modules/masters/modules/oldie.src.js +1 -1
  204. package/es-modules/masters/modules/organization.src.js +1 -1
  205. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  206. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  207. package/es-modules/masters/modules/pareto.src.js +1 -1
  208. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  209. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  210. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  211. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  212. package/es-modules/masters/modules/sankey.src.js +1 -1
  213. package/es-modules/masters/modules/series-label.src.js +1 -1
  214. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  215. package/es-modules/masters/modules/sonification.src.js +1 -1
  216. package/es-modules/masters/modules/static-scale.src.js +1 -1
  217. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  218. package/es-modules/masters/modules/stock.src.js +1 -1
  219. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  220. package/es-modules/masters/modules/sunburst.src.js +1 -1
  221. package/es-modules/masters/modules/tilemap.src.js +1 -1
  222. package/es-modules/masters/modules/timeline.src.js +1 -1
  223. package/es-modules/masters/modules/treegrid.src.js +1 -1
  224. package/es-modules/masters/modules/treemap.src.js +5 -1
  225. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  226. package/es-modules/masters/modules/variwide.src.js +1 -1
  227. package/es-modules/masters/modules/vector.src.js +1 -1
  228. package/es-modules/masters/modules/venn.src.js +1 -1
  229. package/es-modules/masters/modules/windbarb.src.js +1 -1
  230. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  231. package/es-modules/masters/modules/xrange.src.js +1 -1
  232. package/es-modules/masters/themes/avocado.src.js +1 -1
  233. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  234. package/es-modules/masters/themes/brand-light.src.js +1 -1
  235. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  236. package/es-modules/masters/themes/dark-green.src.js +1 -1
  237. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  238. package/es-modules/masters/themes/gray.src.js +1 -1
  239. package/es-modules/masters/themes/grid-light.src.js +1 -1
  240. package/es-modules/masters/themes/grid.src.js +1 -1
  241. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  242. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  243. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  244. package/es-modules/masters/themes/skies.src.js +1 -1
  245. package/es-modules/masters/themes/sunset.src.js +1 -1
  246. package/highcharts-3d.js +99 -98
  247. package/highcharts-3d.js.map +1 -1
  248. package/highcharts-3d.src.js +50 -20
  249. package/highcharts-gantt.js +800 -795
  250. package/highcharts-gantt.js.map +1 -1
  251. package/highcharts-gantt.src.js +528 -290
  252. package/highcharts-more.js +195 -194
  253. package/highcharts-more.js.map +1 -1
  254. package/highcharts-more.src.js +13 -2
  255. package/highcharts.d.ts +2162 -504
  256. package/highcharts.js +586 -581
  257. package/highcharts.js.map +1 -1
  258. package/highcharts.src.d.ts +2162 -504
  259. package/highcharts.src.js +494 -272
  260. package/highmaps.js +753 -723
  261. package/highmaps.js.map +1 -1
  262. package/highmaps.src.js +3603 -2117
  263. package/highstock.js +790 -786
  264. package/highstock.js.map +1 -1
  265. package/highstock.src.js +519 -283
  266. package/indicators/acceleration-bands.js +12 -11
  267. package/indicators/acceleration-bands.js.map +1 -1
  268. package/indicators/acceleration-bands.src.js +11 -2
  269. package/indicators/accumulation-distribution.js +5 -5
  270. package/indicators/accumulation-distribution.js.map +1 -1
  271. package/indicators/accumulation-distribution.src.js +11 -2
  272. package/indicators/ao.js +6 -6
  273. package/indicators/ao.js.map +1 -1
  274. package/indicators/ao.src.js +11 -2
  275. package/indicators/apo.js +5 -5
  276. package/indicators/apo.js.map +1 -1
  277. package/indicators/apo.src.js +11 -2
  278. package/indicators/aroon-oscillator.js +10 -10
  279. package/indicators/aroon-oscillator.js.map +1 -1
  280. package/indicators/aroon-oscillator.src.js +11 -2
  281. package/indicators/aroon.js +11 -11
  282. package/indicators/aroon.js.map +1 -1
  283. package/indicators/aroon.src.js +11 -2
  284. package/indicators/atr.js +5 -5
  285. package/indicators/atr.js.map +1 -1
  286. package/indicators/atr.src.js +11 -2
  287. package/indicators/bollinger-bands.js +12 -12
  288. package/indicators/bollinger-bands.js.map +1 -1
  289. package/indicators/bollinger-bands.src.js +11 -2
  290. package/indicators/cci.js +5 -5
  291. package/indicators/cci.js.map +1 -1
  292. package/indicators/cci.src.js +11 -2
  293. package/indicators/chaikin.js +8 -8
  294. package/indicators/chaikin.js.map +1 -1
  295. package/indicators/chaikin.src.js +11 -2
  296. package/indicators/cmf.js +6 -6
  297. package/indicators/cmf.js.map +1 -1
  298. package/indicators/cmf.src.js +11 -2
  299. package/indicators/cmo.js +5 -5
  300. package/indicators/cmo.js.map +1 -1
  301. package/indicators/cmo.src.js +11 -2
  302. package/indicators/dema.js +5 -5
  303. package/indicators/dema.js.map +1 -1
  304. package/indicators/dema.src.js +11 -2
  305. package/indicators/disparity-index.js +6 -6
  306. package/indicators/disparity-index.js.map +1 -1
  307. package/indicators/disparity-index.src.js +11 -2
  308. package/indicators/dmi.js +12 -12
  309. package/indicators/dmi.js.map +1 -1
  310. package/indicators/dmi.src.js +11 -2
  311. package/indicators/dpo.js +5 -5
  312. package/indicators/dpo.js.map +1 -1
  313. package/indicators/dpo.src.js +11 -2
  314. package/indicators/ema.js +2 -1
  315. package/indicators/ema.js.map +1 -1
  316. package/indicators/ema.src.js +10 -1
  317. package/indicators/ichimoku-kinko-hyo.js +16 -16
  318. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  319. package/indicators/ichimoku-kinko-hyo.src.js +11 -2
  320. package/indicators/indicators-all.js +195 -194
  321. package/indicators/indicators-all.js.map +1 -1
  322. package/indicators/indicators-all.src.js +21 -5
  323. package/indicators/indicators.js +13 -12
  324. package/indicators/indicators.js.map +1 -1
  325. package/indicators/indicators.src.js +21 -5
  326. package/indicators/keltner-channels.js +12 -11
  327. package/indicators/keltner-channels.js.map +1 -1
  328. package/indicators/keltner-channels.src.js +11 -2
  329. package/indicators/klinger.js +13 -13
  330. package/indicators/klinger.js.map +1 -1
  331. package/indicators/klinger.src.js +11 -2
  332. package/indicators/macd.js +12 -11
  333. package/indicators/macd.js.map +1 -1
  334. package/indicators/macd.src.js +11 -2
  335. package/indicators/mfi.js +6 -6
  336. package/indicators/mfi.js.map +1 -1
  337. package/indicators/mfi.src.js +11 -2
  338. package/indicators/momentum.js +5 -5
  339. package/indicators/momentum.js.map +1 -1
  340. package/indicators/momentum.src.js +11 -2
  341. package/indicators/natr.js +5 -4
  342. package/indicators/natr.js.map +1 -1
  343. package/indicators/natr.src.js +11 -2
  344. package/indicators/obv.js +5 -5
  345. package/indicators/obv.js.map +1 -1
  346. package/indicators/obv.src.js +11 -2
  347. package/indicators/pivot-points.js +11 -11
  348. package/indicators/pivot-points.js.map +1 -1
  349. package/indicators/pivot-points.src.js +11 -2
  350. package/indicators/ppo.js +5 -5
  351. package/indicators/ppo.js.map +1 -1
  352. package/indicators/ppo.src.js +11 -2
  353. package/indicators/price-channel.js +11 -11
  354. package/indicators/price-channel.js.map +1 -1
  355. package/indicators/price-channel.src.js +11 -2
  356. package/indicators/price-envelopes.js +8 -8
  357. package/indicators/price-envelopes.js.map +1 -1
  358. package/indicators/price-envelopes.src.js +11 -2
  359. package/indicators/psar.js +7 -6
  360. package/indicators/psar.js.map +1 -1
  361. package/indicators/psar.src.js +11 -2
  362. package/indicators/regressions.js +12 -12
  363. package/indicators/regressions.js.map +1 -1
  364. package/indicators/regressions.src.js +11 -2
  365. package/indicators/roc.js +5 -5
  366. package/indicators/roc.js.map +1 -1
  367. package/indicators/roc.src.js +11 -2
  368. package/indicators/rsi.js +6 -5
  369. package/indicators/rsi.js.map +1 -1
  370. package/indicators/rsi.src.js +11 -2
  371. package/indicators/slow-stochastic.js +5 -5
  372. package/indicators/slow-stochastic.js.map +1 -1
  373. package/indicators/slow-stochastic.src.js +11 -2
  374. package/indicators/stochastic.js +12 -12
  375. package/indicators/stochastic.js.map +1 -1
  376. package/indicators/stochastic.src.js +11 -2
  377. package/indicators/supertrend.js +10 -10
  378. package/indicators/supertrend.js.map +1 -1
  379. package/indicators/supertrend.src.js +11 -2
  380. package/indicators/tema.js +6 -6
  381. package/indicators/tema.js.map +1 -1
  382. package/indicators/tema.src.js +11 -2
  383. package/indicators/trendline.js +5 -5
  384. package/indicators/trendline.js.map +1 -1
  385. package/indicators/trendline.src.js +11 -2
  386. package/indicators/trix.js +4 -4
  387. package/indicators/trix.js.map +1 -1
  388. package/indicators/trix.src.js +11 -2
  389. package/indicators/volume-by-price.js +17 -17
  390. package/indicators/volume-by-price.js.map +1 -1
  391. package/indicators/volume-by-price.src.js +11 -2
  392. package/indicators/vwap.js +5 -5
  393. package/indicators/vwap.js.map +1 -1
  394. package/indicators/vwap.src.js +11 -2
  395. package/indicators/williams-r.js +6 -5
  396. package/indicators/williams-r.js.map +1 -1
  397. package/indicators/williams-r.src.js +11 -2
  398. package/indicators/wma.js +5 -5
  399. package/indicators/wma.js.map +1 -1
  400. package/indicators/wma.src.js +11 -2
  401. package/indicators/zigzag.js +6 -6
  402. package/indicators/zigzag.js.map +1 -1
  403. package/indicators/zigzag.src.js +11 -2
  404. package/lib/jspdf.js +299 -184
  405. package/lib/jspdf.src.js +25266 -18067
  406. package/lib/svg2pdf.js +35 -31
  407. package/lib/svg2pdf.src.js +5721 -4179
  408. package/modules/accessibility.js +231 -229
  409. package/modules/accessibility.js.map +1 -1
  410. package/modules/accessibility.src.js +278 -197
  411. package/modules/annotations-advanced.js +144 -144
  412. package/modules/annotations-advanced.js.map +1 -1
  413. package/modules/annotations-advanced.src.js +26 -8
  414. package/modules/annotations.js +79 -79
  415. package/modules/annotations.js.map +1 -1
  416. package/modules/annotations.src.js +21 -5
  417. package/modules/arc-diagram.js +25 -0
  418. package/modules/arc-diagram.js.map +1 -0
  419. package/modules/arc-diagram.src.js +770 -0
  420. package/modules/arrow-symbols.js +4 -3
  421. package/modules/arrow-symbols.js.map +1 -1
  422. package/modules/arrow-symbols.src.js +11 -2
  423. package/modules/boost-canvas.js +15 -15
  424. package/modules/boost-canvas.js.map +1 -1
  425. package/modules/boost-canvas.src.js +11 -2
  426. package/modules/boost.js +80 -79
  427. package/modules/boost.js.map +1 -1
  428. package/modules/boost.src.js +71 -43
  429. package/modules/broken-axis.js +13 -13
  430. package/modules/broken-axis.js.map +1 -1
  431. package/modules/broken-axis.src.js +11 -2
  432. package/modules/bullet.js +9 -9
  433. package/modules/bullet.js.map +1 -1
  434. package/modules/bullet.src.js +11 -2
  435. package/modules/coloraxis.js +24 -24
  436. package/modules/coloraxis.js.map +1 -1
  437. package/modules/coloraxis.src.js +33 -7
  438. package/modules/current-date-indicator.js +5 -4
  439. package/modules/current-date-indicator.js.map +1 -1
  440. package/modules/current-date-indicator.src.js +11 -2
  441. package/modules/cylinder.js +11 -11
  442. package/modules/cylinder.js.map +1 -1
  443. package/modules/cylinder.src.js +11 -2
  444. package/modules/data.js +34 -33
  445. package/modules/data.js.map +1 -1
  446. package/modules/data.src.js +59 -32
  447. package/modules/datagrouping.js +21 -20
  448. package/modules/datagrouping.js.map +1 -1
  449. package/modules/datagrouping.src.js +16 -4
  450. package/modules/debugger.js +6 -6
  451. package/modules/debugger.js.map +1 -1
  452. package/modules/debugger.src.js +11 -2
  453. package/modules/dependency-wheel.js +12 -11
  454. package/modules/dependency-wheel.js.map +1 -1
  455. package/modules/dependency-wheel.src.js +14 -5
  456. package/modules/dotplot.js +6 -6
  457. package/modules/dotplot.js.map +1 -1
  458. package/modules/dotplot.src.js +11 -2
  459. package/modules/drag-panes.js +10 -10
  460. package/modules/drag-panes.js.map +1 -1
  461. package/modules/drag-panes.src.js +11 -2
  462. package/modules/draggable-points.js +35 -34
  463. package/modules/draggable-points.js.map +1 -1
  464. package/modules/draggable-points.src.js +20 -9
  465. package/modules/drilldown.d.ts +19 -0
  466. package/modules/drilldown.js +37 -25
  467. package/modules/drilldown.js.map +1 -1
  468. package/modules/drilldown.src.d.ts +19 -0
  469. package/modules/drilldown.src.js +1090 -105
  470. package/modules/dumbbell.js +17 -17
  471. package/modules/dumbbell.js.map +1 -1
  472. package/modules/dumbbell.src.js +11 -2
  473. package/modules/export-data.js +21 -20
  474. package/modules/export-data.js.map +1 -1
  475. package/modules/export-data.src.js +11 -2
  476. package/modules/exporting.js +39 -39
  477. package/modules/exporting.js.map +1 -1
  478. package/modules/exporting.src.js +82 -18
  479. package/modules/full-screen.js +8 -7
  480. package/modules/full-screen.js.map +1 -1
  481. package/modules/full-screen.src.js +11 -2
  482. package/modules/funnel.js +12 -12
  483. package/modules/funnel.js.map +1 -1
  484. package/modules/funnel.src.js +11 -2
  485. package/modules/funnel3d.js +21 -21
  486. package/modules/funnel3d.js.map +1 -1
  487. package/modules/funnel3d.src.js +11 -2
  488. package/modules/gantt.js +217 -217
  489. package/modules/gantt.js.map +1 -1
  490. package/modules/gantt.src.js +45 -20
  491. package/modules/grid-axis.js +23 -23
  492. package/modules/grid-axis.js.map +1 -1
  493. package/modules/grid-axis.src.js +22 -11
  494. package/modules/heatmap.js +40 -39
  495. package/modules/heatmap.js.map +1 -1
  496. package/modules/heatmap.src.js +33 -7
  497. package/modules/heikinashi.js +8 -8
  498. package/modules/heikinashi.js.map +1 -1
  499. package/modules/heikinashi.src.js +11 -2
  500. package/modules/histogram-bellcurve.js +13 -13
  501. package/modules/histogram-bellcurve.js.map +1 -1
  502. package/modules/histogram-bellcurve.src.js +11 -2
  503. package/modules/hollowcandlestick.js +9 -9
  504. package/modules/hollowcandlestick.js.map +1 -1
  505. package/modules/hollowcandlestick.src.js +11 -2
  506. package/modules/item-series.js +12 -12
  507. package/modules/item-series.js.map +1 -1
  508. package/modules/item-series.src.js +11 -2
  509. package/modules/lollipop.js +7 -7
  510. package/modules/lollipop.js.map +1 -1
  511. package/modules/lollipop.src.js +12 -3
  512. package/modules/map.d.ts +80 -43
  513. package/modules/map.js +169 -144
  514. package/modules/map.js.map +1 -1
  515. package/modules/map.src.d.ts +80 -43
  516. package/modules/map.src.js +7960 -6687
  517. package/modules/marker-clusters.js +36 -36
  518. package/modules/marker-clusters.js.map +1 -1
  519. package/modules/marker-clusters.src.js +47 -23
  520. package/modules/networkgraph.d.ts +5 -0
  521. package/modules/networkgraph.js +49 -48
  522. package/modules/networkgraph.js.map +1 -1
  523. package/modules/networkgraph.src.d.ts +5 -0
  524. package/modules/networkgraph.src.js +77 -15
  525. package/modules/no-data-to-display.js +5 -5
  526. package/modules/no-data-to-display.js.map +1 -1
  527. package/modules/no-data-to-display.src.js +11 -2
  528. package/modules/offline-exporting.js +20 -18
  529. package/modules/offline-exporting.js.map +1 -1
  530. package/modules/offline-exporting.src.js +126 -25
  531. package/modules/oldie-polyfills.js +7 -7
  532. package/modules/oldie-polyfills.js.map +1 -1
  533. package/modules/oldie-polyfills.src.js +11 -2
  534. package/modules/oldie.js +30 -30
  535. package/modules/oldie.js.map +1 -1
  536. package/modules/oldie.src.js +12 -3
  537. package/modules/organization.js +16 -14
  538. package/modules/organization.js.map +1 -1
  539. package/modules/organization.src.js +166 -32
  540. package/modules/overlapping-datalabels.js +3 -2
  541. package/modules/overlapping-datalabels.js.map +1 -1
  542. package/modules/overlapping-datalabels.src.js +11 -2
  543. package/modules/parallel-coordinates.js +11 -11
  544. package/modules/parallel-coordinates.js.map +1 -1
  545. package/modules/parallel-coordinates.src.js +11 -2
  546. package/modules/pareto.js +7 -7
  547. package/modules/pareto.js.map +1 -1
  548. package/modules/pareto.src.js +11 -2
  549. package/modules/pathfinder.js +31 -31
  550. package/modules/pathfinder.js.map +1 -1
  551. package/modules/pathfinder.src.js +11 -2
  552. package/modules/pattern-fill.js +14 -14
  553. package/modules/pattern-fill.js.map +1 -1
  554. package/modules/pattern-fill.src.js +11 -2
  555. package/modules/price-indicator.js +5 -5
  556. package/modules/price-indicator.js.map +1 -1
  557. package/modules/price-indicator.src.js +11 -2
  558. package/modules/pyramid3d.js +4 -4
  559. package/modules/pyramid3d.js.map +1 -1
  560. package/modules/pyramid3d.src.js +11 -2
  561. package/modules/sankey.d.ts +5 -0
  562. package/modules/sankey.js +32 -29
  563. package/modules/sankey.js.map +1 -1
  564. package/modules/sankey.src.d.ts +5 -0
  565. package/modules/sankey.src.js +338 -156
  566. package/modules/series-label.js +18 -17
  567. package/modules/series-label.js.map +1 -1
  568. package/modules/series-label.src.js +11 -2
  569. package/modules/solid-gauge.js +10 -10
  570. package/modules/solid-gauge.js.map +1 -1
  571. package/modules/solid-gauge.src.js +11 -2
  572. package/modules/sonification.js +59 -59
  573. package/modules/sonification.js.map +1 -1
  574. package/modules/sonification.src.js +11 -2
  575. package/modules/static-scale.js +5 -4
  576. package/modules/static-scale.js.map +1 -1
  577. package/modules/static-scale.src.js +11 -2
  578. package/modules/stock-tools.js +78 -78
  579. package/modules/stock-tools.js.map +1 -1
  580. package/modules/stock-tools.src.js +21 -5
  581. package/modules/stock.js +162 -162
  582. package/modules/stock.js.map +1 -1
  583. package/modules/stock.src.js +36 -13
  584. package/modules/streamgraph.js +5 -4
  585. package/modules/streamgraph.js.map +1 -1
  586. package/modules/streamgraph.src.js +11 -2
  587. package/modules/sunburst.d.ts +3 -0
  588. package/modules/sunburst.js +73 -60
  589. package/modules/sunburst.js.map +1 -1
  590. package/modules/sunburst.src.d.ts +3 -0
  591. package/modules/sunburst.src.js +1049 -96
  592. package/modules/tilemap.js +17 -17
  593. package/modules/tilemap.js.map +1 -1
  594. package/modules/tilemap.src.js +11 -2
  595. package/modules/timeline.js +18 -18
  596. package/modules/timeline.js.map +1 -1
  597. package/modules/timeline.src.js +11 -2
  598. package/modules/treegrid.js +57 -56
  599. package/modules/treegrid.js.map +1 -1
  600. package/modules/treegrid.src.js +33 -11
  601. package/modules/treemap.d.ts +3 -0
  602. package/modules/treemap.js +53 -41
  603. package/modules/treemap.js.map +1 -1
  604. package/modules/treemap.src.d.ts +3 -0
  605. package/modules/treemap.src.js +1039 -95
  606. package/modules/variable-pie.js +9 -9
  607. package/modules/variable-pie.js.map +1 -1
  608. package/modules/variable-pie.src.js +11 -2
  609. package/modules/variwide.js +12 -12
  610. package/modules/variwide.js.map +1 -1
  611. package/modules/variwide.src.js +11 -2
  612. package/modules/vector.js +8 -7
  613. package/modules/vector.js.map +1 -1
  614. package/modules/vector.src.js +11 -2
  615. package/modules/venn.js +31 -31
  616. package/modules/venn.js.map +1 -1
  617. package/modules/venn.src.js +18 -6
  618. package/modules/windbarb.js +15 -15
  619. package/modules/windbarb.js.map +1 -1
  620. package/modules/windbarb.src.js +11 -2
  621. package/modules/wordcloud.js +23 -23
  622. package/modules/wordcloud.js.map +1 -1
  623. package/modules/wordcloud.src.js +18 -6
  624. package/modules/xrange.js +16 -16
  625. package/modules/xrange.js.map +1 -1
  626. package/modules/xrange.src.js +11 -2
  627. package/package.json +1 -1
  628. package/themes/avocado.js +4 -3
  629. package/themes/avocado.js.map +1 -1
  630. package/themes/avocado.src.js +11 -2
  631. package/themes/brand-dark.js +9 -8
  632. package/themes/brand-dark.js.map +1 -1
  633. package/themes/brand-dark.src.js +11 -2
  634. package/themes/brand-light.js +8 -8
  635. package/themes/brand-light.js.map +1 -1
  636. package/themes/brand-light.src.js +11 -2
  637. package/themes/dark-blue.js +9 -8
  638. package/themes/dark-blue.js.map +1 -1
  639. package/themes/dark-blue.src.js +11 -2
  640. package/themes/dark-green.js +9 -8
  641. package/themes/dark-green.js.map +1 -1
  642. package/themes/dark-green.src.js +11 -2
  643. package/themes/dark-unica.js +8 -7
  644. package/themes/dark-unica.js.map +1 -1
  645. package/themes/dark-unica.src.js +11 -2
  646. package/themes/gray.js +9 -8
  647. package/themes/gray.js.map +1 -1
  648. package/themes/gray.src.js +11 -2
  649. package/themes/grid-light.js +5 -4
  650. package/themes/grid-light.js.map +1 -1
  651. package/themes/grid-light.src.js +11 -2
  652. package/themes/grid.js +5 -5
  653. package/themes/grid.js.map +1 -1
  654. package/themes/grid.src.js +11 -2
  655. package/themes/high-contrast-dark.js +7 -7
  656. package/themes/high-contrast-dark.js.map +1 -1
  657. package/themes/high-contrast-dark.src.js +21 -12
  658. package/themes/high-contrast-light.js +3 -3
  659. package/themes/high-contrast-light.js.map +1 -1
  660. package/themes/high-contrast-light.src.js +21 -12
  661. package/themes/sand-signika.js +5 -5
  662. package/themes/sand-signika.js.map +1 -1
  663. package/themes/sand-signika.src.js +11 -2
  664. package/themes/skies.js +5 -5
  665. package/themes/skies.js.map +1 -1
  666. package/themes/skies.src.js +11 -2
  667. package/themes/sunset.js +3 -3
  668. package/themes/sunset.js.map +1 -1
  669. package/themes/sunset.src.js +11 -2
  670. package/es-modules/Maps/ProjectionDefinition.js +0 -9
@@ -0,0 +1,874 @@
1
+ /* *
2
+ *
3
+ * Highcharts Breadcrumbs module
4
+ *
5
+ * Authors: Grzegorz Blachlinski, Karol Kolodziej
6
+ *
7
+ * License: www.highcharts.com/license
8
+ *
9
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
10
+ *
11
+ * */
12
+ 'use strict';
13
+ import Chart from '../Core/Chart/Chart.js';
14
+ import H from '../Core/Globals.js';
15
+ import D from '../Core/DefaultOptions.js';
16
+ var defaultOptions = D.defaultOptions;
17
+ import U from '../Core/Utilities.js';
18
+ import F from '../Core/FormatUtilities.js';
19
+ var format = F.format;
20
+ var addEvent = U.addEvent, objectEach = U.objectEach, extend = U.extend, fireEvent = U.fireEvent, merge = U.merge, pick = U.pick, defined = U.defined, isString = U.isString;
21
+ // Add language support.
22
+ extend(defaultOptions.lang,
23
+ /**
24
+ * @optionparent lang
25
+ */
26
+ {
27
+ /**
28
+ * @since 10.0.0
29
+ * @product highcharts
30
+ */
31
+ mainBreadcrumb: 'Main'
32
+ });
33
+ /**
34
+ * The Breadcrumbs class
35
+ *
36
+ * @private
37
+ * @class
38
+ * @name Highcharts.Breadcrumbs
39
+ *
40
+ * @param {Highcharts.Chart} chart
41
+ * Chart object
42
+ * @param {Highcharts.Options} userOptions
43
+ * User options
44
+ */
45
+ var Breadcrumbs = /** @class */ (function () {
46
+ function Breadcrumbs(chart, userOptions) {
47
+ /* *
48
+ *
49
+ * Properties
50
+ *
51
+ * */
52
+ this.group = void 0;
53
+ this.list = [];
54
+ this.elementList = {};
55
+ this.isDirty = true;
56
+ this.level = 0;
57
+ this.options = void 0;
58
+ var chartOptions = merge(chart.options.drilldown &&
59
+ chart.options.drilldown.drillUpButton, Breadcrumbs.defaultBreadcrumbsOptions, chart.options.navigation && chart.options.navigation.breadcrumbs, userOptions);
60
+ this.chart = chart;
61
+ this.options = chartOptions || {};
62
+ }
63
+ /**
64
+ * Update Breadcrumbs properties, like level and list.
65
+ *
66
+ * @requires modules/breadcrumbs
67
+ *
68
+ * @function Highcharts.Breadcrumbs#updateProperties
69
+ * @param {Highcharts.Breadcrumbs} this
70
+ * Breadcrumbs class.
71
+ */
72
+ Breadcrumbs.prototype.updateProperties = function (list) {
73
+ this.setList(list);
74
+ this.setLevel();
75
+ this.isDirty = true;
76
+ };
77
+ /**
78
+ * Set breadcrumbs list.
79
+ * @function Highcharts.Breadcrumbs#setList
80
+ *
81
+ * @requires modules/breadcrumbs
82
+ *
83
+ * @param {Highcharts.Breadcrumbs} this
84
+ * Breadcrumbs class.
85
+ * @param {Highcharts.BreadcrumbsOptions} list
86
+ * Breadcrumbs list.
87
+ */
88
+ Breadcrumbs.prototype.setList = function (list) {
89
+ this.list = list;
90
+ };
91
+ /**
92
+ * Calcule level on which chart currently is.
93
+ *
94
+ * @requires modules/breadcrumbs
95
+ *
96
+ * @function Highcharts.Breadcrumbs#setLevel
97
+ * @param {Highcharts.Breadcrumbs} this
98
+ * Breadcrumbs class.
99
+ */
100
+ Breadcrumbs.prototype.setLevel = function () {
101
+ this.level = this.list.length && this.list.length - 1;
102
+ };
103
+ /**
104
+ * Get Breadcrumbs level
105
+ *
106
+ * @requires modules/breadcrumbs
107
+ *
108
+ * @function Highcharts.Breadcrumbs#getLevel
109
+ * @param {Highcharts.Breadcrumbs} this
110
+ * Breadcrumbs class.
111
+ */
112
+ Breadcrumbs.prototype.getLevel = function () {
113
+ return this.level;
114
+ };
115
+ /**
116
+ * Default button text formatter.
117
+ *
118
+ * @requires modules/breadcrumbs
119
+ *
120
+ * @function Highcharts.Breadcrumbs#getButtonText
121
+ * @param {Highcharts.Breadcrumbs} this
122
+ * Breadcrumbs class.
123
+ * @param {Highcharts.Breadcrumbs} breadcrumb
124
+ * Breadcrumb.
125
+ * @return {string}
126
+ * Formatted text.
127
+ */
128
+ Breadcrumbs.prototype.getButtonText = function (breadcrumb) {
129
+ var breadcrumbs = this, chart = breadcrumbs.chart, breadcrumbsOptions = breadcrumbs.options, lang = chart.options.lang, textFormat = pick(breadcrumbsOptions.format, breadcrumbsOptions.showFullPath ?
130
+ '{level.name}' : '← {level.name}'), defaultText = lang && pick(lang.drillUpText, lang.mainBreadcrumb);
131
+ var returnText = breadcrumbsOptions.formatter &&
132
+ breadcrumbsOptions.formatter(breadcrumb) ||
133
+ format(textFormat, { level: breadcrumb.levelOptions }, chart) || '';
134
+ if (((isString(returnText) &&
135
+ !returnText.length) ||
136
+ returnText === '← ') &&
137
+ defined(defaultText)) {
138
+ returnText = !breadcrumbsOptions.showFullPath ?
139
+ '← ' + defaultText :
140
+ defaultText;
141
+ }
142
+ return returnText;
143
+ };
144
+ /**
145
+ * Redraw.
146
+ *
147
+ * @requires modules/breadcrums
148
+ *
149
+ * @function Highcharts.Breadcrumbs#redraw
150
+ * @param {Highcharts.Breadcrumbs} this
151
+ * Breadcrumbs class.
152
+ */
153
+ Breadcrumbs.prototype.redraw = function () {
154
+ if (this.isDirty) {
155
+ this.render();
156
+ }
157
+ if (this.group) {
158
+ this.group.align();
159
+ }
160
+ this.isDirty = false;
161
+ };
162
+ /**
163
+ * Create a group, then draw breadcrumbs together with the separators.
164
+ *
165
+ * @requires modules/breadcrumbs
166
+ *
167
+ * @function Highcharts.Breadcrumbs#render
168
+ * @param {Highcharts.Breadcrumbs} this
169
+ * Breadcrumbs class.
170
+ */
171
+ Breadcrumbs.prototype.render = function () {
172
+ var breadcrumbs = this, chart = breadcrumbs.chart, breadcrumbsOptions = breadcrumbs.options;
173
+ // A main group for the breadcrumbs.
174
+ if (!breadcrumbs.group && breadcrumbsOptions) {
175
+ breadcrumbs.group = chart.renderer
176
+ .g('breadcrumbs-group')
177
+ .addClass('highcharts-no-tooltip highcharts-breadcrumbs')
178
+ .attr({
179
+ zIndex: breadcrumbsOptions.zIndex
180
+ })
181
+ .add();
182
+ }
183
+ // Draw breadcrumbs.
184
+ if (breadcrumbsOptions.showFullPath) {
185
+ this.renderFullPathButtons();
186
+ }
187
+ else {
188
+ this.renderSingleButton();
189
+ }
190
+ this.alignBreadcrumbsGroup();
191
+ };
192
+ /**
193
+ * Draw breadcrumbs together with the separators.
194
+ *
195
+ * @requires modules/breadcrumbs
196
+ *
197
+ * @function Highcharts.Breadcrumbs#renderFullPathButtons
198
+ * @param {Highcharts.Breadcrumbs} this
199
+ * Breadcrumbs class.
200
+ */
201
+ Breadcrumbs.prototype.renderFullPathButtons = function () {
202
+ // Make sure that only one type of button is visible.
203
+ this.destroySingleButton();
204
+ this.resetElementListState();
205
+ this.updateListElements();
206
+ this.destroyListElements();
207
+ };
208
+ /**
209
+ * Render Single button - when showFullPath is not used. The button is
210
+ * similar to the old drillUpButton
211
+ *
212
+ * @requires modules/breadcrumbs
213
+ *
214
+ * @function Highcharts.Breadcrumbs#renderSingleButton
215
+ * @param {Highcharts.Breadcrumbs} this Breadcrumbs class.
216
+ */
217
+ Breadcrumbs.prototype.renderSingleButton = function () {
218
+ var breadcrumbs = this, chart = breadcrumbs.chart, list = breadcrumbs.list, breadcrumbsOptions = breadcrumbs.options, buttonSpacing = breadcrumbsOptions.buttonSpacing;
219
+ // Make sure that only one type of button is visible.
220
+ this.destroyListElements();
221
+ // Draw breadcrumbs. Inital position for calculating the breadcrumbs
222
+ // group.
223
+ var posX = breadcrumbs.group ?
224
+ breadcrumbs.group.getBBox().width :
225
+ buttonSpacing, posY = buttonSpacing;
226
+ var previousBreadcrumb = list[list.length - 2];
227
+ if (!chart.drillUpButton && (this.level > 0)) {
228
+ chart.drillUpButton = breadcrumbs.renderButton(previousBreadcrumb, posX, posY);
229
+ }
230
+ else if (chart.drillUpButton) {
231
+ if (this.level > 0) {
232
+ // Update button.
233
+ this.updateSingleButton();
234
+ }
235
+ else {
236
+ this.destroySingleButton();
237
+ }
238
+ }
239
+ };
240
+ /**
241
+ * Update group position based on align and it's width.
242
+ *
243
+ * @requires modules/breadcrumbs
244
+ *
245
+ * @function Highcharts.Breadcrumbs#renderSingleButton
246
+ * @param {Highcharts.Breadcrumbs} this
247
+ * Breadcrumbs class.
248
+ */
249
+ Breadcrumbs.prototype.alignBreadcrumbsGroup = function (xOffset) {
250
+ var breadcrumbs = this;
251
+ if (breadcrumbs.group) {
252
+ var breadcrumbsOptions = breadcrumbs.options, buttonTheme = breadcrumbsOptions.buttonTheme, positionOptions = breadcrumbsOptions.position, alignTo = (breadcrumbsOptions.relativeTo === 'chart' ||
253
+ breadcrumbsOptions.relativeTo === 'spacingBox' ?
254
+ void 0 :
255
+ 'scrollablePlotBox'), bBox = breadcrumbs.group.getBBox(), additionalSpace = 2 * (buttonTheme.padding || 0) +
256
+ breadcrumbsOptions.buttonSpacing;
257
+ // Store positionOptions
258
+ positionOptions.width = bBox.width + additionalSpace;
259
+ positionOptions.height = bBox.height + additionalSpace;
260
+ var newPositions = merge(positionOptions);
261
+ // Add x offset if specified.
262
+ if (xOffset) {
263
+ newPositions.x += xOffset;
264
+ }
265
+ newPositions.y = pick(newPositions.y, this.yOffset, 0);
266
+ breadcrumbs.group.align(newPositions, true, alignTo);
267
+ }
268
+ };
269
+ /**
270
+ * Render a button.
271
+ *
272
+ * @requires modules/breadcrums
273
+ *
274
+ * @function Highcharts.Breadcrumbs#renderButton
275
+ * @param {Highcharts.Breadcrumbs} this
276
+ * Breadcrumbs class.
277
+ * @param {Highcharts.Breadcrumbs} breadcrumb
278
+ * Current breadcrumb
279
+ * @param {Highcharts.Breadcrumbs} posX
280
+ * Initial horizontal position
281
+ * @param {Highcharts.Breadcrumbs} posY
282
+ * Initial vertical position
283
+ * @return {SVGElement|void}
284
+ * Returns the SVG button
285
+ */
286
+ Breadcrumbs.prototype.renderButton = function (breadcrumb, posX, posY) {
287
+ var breadcrumbs = this, chart = this.chart, breadcrumbsOptions = breadcrumbs.options, buttonTheme = merge(breadcrumbsOptions.buttonTheme), states = buttonTheme.states;
288
+ delete buttonTheme.states;
289
+ var button = chart.renderer
290
+ .button(breadcrumbs.getButtonText(breadcrumb), posX, posY, function (e) {
291
+ // Extract events from button object and call
292
+ var buttonEvents = breadcrumbsOptions.events &&
293
+ breadcrumbsOptions.events.click;
294
+ var callDefaultEvent;
295
+ if (buttonEvents) {
296
+ callDefaultEvent = buttonEvents.call(breadcrumbs, e, breadcrumb);
297
+ }
298
+ // (difference in behaviour of showFullPath and drillUp)
299
+ if (callDefaultEvent !== false) {
300
+ // For single button we are not going to the button
301
+ // level, but the one level up
302
+ if (!breadcrumbsOptions.showFullPath) {
303
+ e.newLevel = breadcrumbs.level - 1;
304
+ }
305
+ else {
306
+ e.newLevel = breadcrumb.level;
307
+ }
308
+ fireEvent(breadcrumbs, 'up', e);
309
+ }
310
+ }, buttonTheme, states && states.hover, states && states.select, states && states.disabled)
311
+ .addClass('highcharts-breadcrumbs-button')
312
+ .add(breadcrumbs.group);
313
+ if (!chart.styledMode) {
314
+ button.attr(breadcrumbsOptions.style);
315
+ }
316
+ return button;
317
+ };
318
+ /**
319
+ * Render a separator.
320
+ *
321
+ * @requires modules/breadcrums
322
+ *
323
+ * @function Highcharts.Breadcrumbs#renderSeparator
324
+ * @param {Highcharts.Breadcrumbs} this
325
+ * Breadcrumbs class.
326
+ * @param {Highcharts.Breadcrumbs} posX
327
+ * Initial horizontal position
328
+ * @param {Highcharts.Breadcrumbs} posY
329
+ * Initial vertical position
330
+ * @return {Highcharts.SVGElement}
331
+ * Returns the SVG button
332
+ */
333
+ Breadcrumbs.prototype.renderSeparator = function (posX, posY) {
334
+ var breadcrumbs = this, chart = this.chart, breadcrumbsOptions = breadcrumbs.options, separatorOptions = breadcrumbsOptions.separator;
335
+ var separator = chart.renderer
336
+ .label(separatorOptions.text, posX, posY, void 0, void 0, void 0, false)
337
+ .addClass('highcharts-breadcrumbs-separator')
338
+ .add(breadcrumbs.group);
339
+ if (!chart.styledMode) {
340
+ separator.css(separatorOptions.style);
341
+ }
342
+ return separator;
343
+ };
344
+ /**
345
+ * Update.
346
+ * @function Highcharts.Breadcrumbs#update
347
+ *
348
+ * @requires modules/breadcrumbs
349
+ *
350
+ * @param {Highcharts.Breadcrumbs} this
351
+ * Breadcrumbs class.
352
+ * @param {Highcharts.BreadcrumbsOptions} options
353
+ * Breadcrumbs class.
354
+ * @param {boolean} redraw
355
+ * Redraw flag
356
+ */
357
+ Breadcrumbs.prototype.update = function (options) {
358
+ merge(true, this.options, options);
359
+ this.destroy();
360
+ this.isDirty = true;
361
+ };
362
+ /**
363
+ * Update button text when the showFullPath set to false.
364
+ * @function Highcharts.Breadcrumbs#updateSingleButton
365
+ *
366
+ * @requires modules/breadcrumbs
367
+ *
368
+ * @param {Highcharts.Breadcrumbs} this
369
+ * Breadcrumbs class.
370
+ */
371
+ Breadcrumbs.prototype.updateSingleButton = function () {
372
+ var chart = this.chart, currentBreadcrumb = this.list[this.level - 1];
373
+ if (chart.drillUpButton) {
374
+ chart.drillUpButton.attr({
375
+ text: this.getButtonText(currentBreadcrumb)
376
+ });
377
+ }
378
+ };
379
+ /**
380
+ * Destroy the chosen breadcrumbs group
381
+ *
382
+ * @requires modules/breadcrumbs
383
+ *
384
+ * @function Highcharts.Breadcrumbs#destroy
385
+ * @param {Highcharts.Breadcrumbs} this
386
+ * Breadcrumbs class.
387
+ */
388
+ Breadcrumbs.prototype.destroy = function () {
389
+ this.destroySingleButton();
390
+ // Destroy elements one by one. It's necessary beacause
391
+ // g().destroy() does not remove added HTML
392
+ this.destroyListElements(true);
393
+ // Then, destroy the group itself.
394
+ if (this.group) {
395
+ this.group.destroy();
396
+ }
397
+ this.group = void 0;
398
+ };
399
+ /**
400
+ * Destroy the elements' buttons and separators.
401
+ *
402
+ * @requires modules/breadcrumbs
403
+ *
404
+ * @function Highcharts.Breadcrumbs#destroyListElements
405
+ * @param {Highcharts.Breadcrumbs} this
406
+ * Breadcrumbs class.
407
+ */
408
+ Breadcrumbs.prototype.destroyListElements = function (force) {
409
+ var elementList = this.elementList;
410
+ objectEach(elementList, function (element, level) {
411
+ if (force ||
412
+ !elementList[level].updated) {
413
+ element = elementList[level];
414
+ element.button && element.button.destroy();
415
+ element.separator && element.separator.destroy();
416
+ delete element.button;
417
+ delete element.separator;
418
+ delete elementList[level];
419
+ }
420
+ });
421
+ if (force) {
422
+ this.elementList = {};
423
+ }
424
+ };
425
+ /**
426
+ * Destroy the single button if exists.
427
+ *
428
+ * @requires modules/breadcrumbs
429
+ *
430
+ * @function Highcharts.Breadcrumbs#destroySingleButton
431
+ * @param {Highcharts.Breadcrumbs} this
432
+ * Breadcrumbs class.
433
+ */
434
+ Breadcrumbs.prototype.destroySingleButton = function () {
435
+ if (this.chart.drillUpButton) {
436
+ this.chart.drillUpButton.destroy();
437
+ this.chart.drillUpButton = void 0;
438
+ }
439
+ };
440
+ /**
441
+ * Reset state for all buttons in elementList.
442
+ *
443
+ * @requires modules/breadcrumbs
444
+ *
445
+ * @function Highcharts.Breadcrumbs#resetElementListState
446
+ * @param {Highcharts.Breadcrumbs} this
447
+ * Breadcrumbs class.
448
+ */
449
+ Breadcrumbs.prototype.resetElementListState = function () {
450
+ objectEach(this.elementList, function (element) {
451
+ element.updated = false;
452
+ });
453
+ };
454
+ /**
455
+ * Update rendered elements inside the elementList.
456
+ *
457
+ * @requires modules/breadcrumbs
458
+ *
459
+ * @function Highcharts.Breadcrumbs#updateListElements
460
+ * @param {Highcharts.Breadcrumbs} this
461
+ * Breadcrumbs class.
462
+ */
463
+ Breadcrumbs.prototype.updateListElements = function () {
464
+ var updateXPosition = function (element, spacing) {
465
+ return element.getBBox().width + spacing;
466
+ }, breadcrumbs = this, elementList = breadcrumbs.elementList, buttonSpacing = breadcrumbs.options.buttonSpacing, list = breadcrumbs.list;
467
+ // Inital position for calculating the breadcrumbs group.
468
+ var posX = breadcrumbs.group ?
469
+ updateXPosition(breadcrumbs.group, buttonSpacing) :
470
+ buttonSpacing, posY = buttonSpacing, currentBreadcrumb;
471
+ list.forEach(function (breadcrumb, index) {
472
+ var isLast = index === list.length - 1;
473
+ var button, separator;
474
+ if (elementList[breadcrumb.level]) {
475
+ currentBreadcrumb = elementList[breadcrumb.level];
476
+ button = currentBreadcrumb.button;
477
+ // Render a separator if it was not created before.
478
+ if (!currentBreadcrumb.separator &&
479
+ !isLast) {
480
+ // Add spacing for the next separator
481
+ posX += buttonSpacing;
482
+ currentBreadcrumb.separator =
483
+ breadcrumbs.renderSeparator(posX, posY);
484
+ posX += updateXPosition(currentBreadcrumb.separator, buttonSpacing);
485
+ }
486
+ else if (currentBreadcrumb.separator &&
487
+ isLast) {
488
+ currentBreadcrumb.separator.destroy();
489
+ delete currentBreadcrumb.separator;
490
+ }
491
+ elementList[breadcrumb.level].updated = true;
492
+ }
493
+ else {
494
+ // Render a button.
495
+ button = breadcrumbs.renderButton(breadcrumb, posX, posY);
496
+ posX += updateXPosition(button, buttonSpacing);
497
+ // Render a separator.
498
+ if (!isLast) {
499
+ separator = breadcrumbs.renderSeparator(posX, posY);
500
+ posX += updateXPosition(separator, buttonSpacing);
501
+ }
502
+ elementList[breadcrumb.level] = {
503
+ button: button,
504
+ separator: separator,
505
+ updated: true
506
+ };
507
+ }
508
+ if (button) {
509
+ button.setState(isLast ? 2 : 0);
510
+ }
511
+ });
512
+ };
513
+ /**
514
+ * Options for breadcrumbs. Breadcrumbs general options are defined in
515
+ * `navigation.breadcrumbs`. Specific options for drilldown are set in
516
+ * `drilldown.breadcrumbs` and for tree-like series traversing, in
517
+ * `plotOptions[series].breadcrumbs`.
518
+ *
519
+ * @since 10.0.0
520
+ * @product highcharts
521
+ * @optionparent navigation.breadcrumbs
522
+ */
523
+ Breadcrumbs.defaultBreadcrumbsOptions = {
524
+ /**
525
+ * A collection of attributes for the buttons. The object takes SVG
526
+ * attributes like `fill`, `stroke`, `stroke-width`, as well as `style`,
527
+ * a collection of CSS properties for the text.
528
+ *
529
+ * The object can also be extended with states, so you can set
530
+ * presentational options for `hover`, `select` or `disabled` button
531
+ * states.
532
+ *
533
+ * @sample {highcharts} highcharts/breadcrumbs/single-button
534
+ * Themed, single button
535
+ *
536
+ * @type {Highcharts.SVGAttributes}
537
+ * @since 10.0.0
538
+ * @product highcharts
539
+ */
540
+ buttonTheme: {
541
+ /** @ignore */
542
+ fill: 'none',
543
+ /** @ignore */
544
+ height: 18,
545
+ /** @ignore */
546
+ padding: 2,
547
+ /** @ignore */
548
+ 'stroke-width': 0,
549
+ /** @ignore */
550
+ zIndex: 7,
551
+ /** @ignore */
552
+ states: {
553
+ select: {
554
+ fill: 'none'
555
+ }
556
+ },
557
+ style: {
558
+ color: "#335cad" /* highlightColor80 */
559
+ }
560
+ },
561
+ /**
562
+ * The default padding for each button and separator in each direction.
563
+ *
564
+ * @type {number}
565
+ * @since 10.0.0
566
+ */
567
+ buttonSpacing: 5,
568
+ /**
569
+ * Fires when clicking on the breadcrumbs button. Two arguments are
570
+ * passed to the function. First breadcrumb button as an SVG element.
571
+ * Second is the breadcrumbs class, containing reference to the chart,
572
+ * series etc.
573
+ *
574
+ * ```js
575
+ * click: function(button, breadcrumbs) {
576
+ * console.log(button);
577
+ * }
578
+ * ```
579
+ *
580
+ * Return false to stop default buttons click action.
581
+ *
582
+ * @type {Highcharts.BreadcrumbsClickCallbackFunction}
583
+ * @since 10.0.0
584
+ * @apioption navigation.breadcrumbs.events.click
585
+ */
586
+ /**
587
+ * When the breadcrumbs are floating, the plot area will not move to
588
+ * make space for it. By default, the chart will not make space for the
589
+ * buttons. This property won't work when positioned in the middle.
590
+ *
591
+ * @sample highcharts/breadcrumbs/single-button
592
+ * Floating button
593
+ * @type {boolean}
594
+ * @since 10.0.0
595
+ */
596
+ floating: false,
597
+ /**
598
+ * A format string for the breadcrumbs button. Variables are enclosed by
599
+ * curly brackets. Available values are passed in the declared point
600
+ * options.
601
+ *
602
+ * @type {string|undefined}
603
+ * @since 10.0.0
604
+ * @default undefined
605
+ * @sample {highcharts} highcharts/breadcrumbs/format Display custom
606
+ * values in breadcrumb button.
607
+ */
608
+ format: void 0,
609
+ /**
610
+ * Callback function to format the breadcrumb text from scratch.
611
+ *
612
+ * @type {Highcharts.BreadcrumbsFormatterCallbackFunction}
613
+ * @since 10.0.0
614
+ * @default undefined
615
+ * @apioption navigation.breadcrumbs.formatter
616
+ */
617
+ /**
618
+ * What box to align the button to. Can be either `plotBox` or
619
+ * `spacingBox`.
620
+ *
621
+ * @type {Highcharts.ButtonRelativeToValue}
622
+ * @default plotBox
623
+ * @since 10.0.0
624
+ * @product highcharts highmaps
625
+ */
626
+ relativeTo: 'plotBox',
627
+ /**
628
+ * Positioning for the button row. The breadcrumbs buttons will be
629
+ * aligned properly for the default chart layout (title, subtitle,
630
+ * legend, range selector) for the custom chart layout set the position
631
+ * properties.
632
+ * @type {Highcharts.BreadcrumbsAlignOptions}
633
+ * @since 10.0.0
634
+ * @product highcharts highmaps
635
+ * @sample {highcharts} highcharts/breadcrumbs/single-button
636
+ * Single, right aligned button
637
+ */
638
+ position: {
639
+ /**
640
+ * Horizontal alignment of the breadcrumbs buttons.
641
+ *
642
+ * @type {Highcharts.AlignValue}
643
+ */
644
+ align: 'left',
645
+ /**
646
+ * Vertical alignment of the breadcrumbs buttons.
647
+ *
648
+ * @type {Highcharts.VerticalAlignValue}
649
+ */
650
+ verticalAlign: 'top',
651
+ /**
652
+ * The X offset of the breadcrumbs button group.
653
+ *
654
+ * @type {number}
655
+ */
656
+ x: 0,
657
+ /**
658
+ * The Y offset of the breadcrumbs button group. When `undefined`,
659
+ * and `floating` is `false`, the `y` position is adapted so that
660
+ * the breadcrumbs are rendered outside the target area.
661
+ *
662
+ * @type {number|undefined}
663
+ */
664
+ y: void 0
665
+ },
666
+ /**
667
+ * Options object for Breadcrumbs separator.
668
+ *
669
+ * @since 10.0.0
670
+ */
671
+ separator: {
672
+ /**
673
+ * @type {string}
674
+ * @since 10.0.0
675
+ * @product highcharts
676
+ */
677
+ text: '/',
678
+ /**
679
+ * CSS styles for the breadcrumbs separator.
680
+ *
681
+ * In styled mode, the breadcrumbs separators are styled by the
682
+ * `.highcharts-separator` rule with its different states.
683
+ * @type {Highcharts.CSSObject}
684
+ * @since 10.0.0
685
+ */
686
+ style: {
687
+ color: "#666666" /* neutralColor60 */
688
+ }
689
+ },
690
+ /**
691
+ * Show full path or only a single button.
692
+ *
693
+ * @type {boolean}
694
+ * @since 10.0.0
695
+ * @sample {highcharts} highcharts/breadcrumbs/single-button
696
+ * Single, styled button
697
+ */
698
+ showFullPath: true,
699
+ /**
700
+ * CSS styles for all breadcrumbs.
701
+ *
702
+ * In styled mode, the breadcrumbs buttons are styled by the
703
+ * `.highcharts-breadcrumbs-buttons .highcharts-button` rule with its
704
+ * different states.
705
+ * @type {Highcharts.SVGAttributes}
706
+ * @since 10.0.0
707
+ */
708
+ style: {},
709
+ /**
710
+ * Whether to use HTML to render the breadcrumbs items texts.
711
+ *
712
+ * @type {boolean}
713
+ * @since 10.0.0
714
+ */
715
+ useHTML: false,
716
+ /**
717
+ * The z index of the breadcrumbs group.
718
+ *
719
+ * @type {number}
720
+ * @since 10.0.0
721
+ */
722
+ zIndex: 7
723
+ };
724
+ return Breadcrumbs;
725
+ }());
726
+ /* eslint-disable no-invalid-this */
727
+ if (!H.Breadcrumbs) {
728
+ H.Breadcrumbs = Breadcrumbs;
729
+ // Logic for making space for the buttons above the plot area
730
+ addEvent(Chart, 'getMargins', function () {
731
+ var breadcrumbs = this.breadcrumbs;
732
+ if (breadcrumbs &&
733
+ !breadcrumbs.options.floating &&
734
+ breadcrumbs.level) {
735
+ var breadcrumbsOptions = breadcrumbs.options, buttonTheme = breadcrumbsOptions.buttonTheme, breadcrumbsHeight = ((buttonTheme.height || 0) +
736
+ 2 * (buttonTheme.padding || 0) +
737
+ breadcrumbsOptions.buttonSpacing), verticalAlign = breadcrumbsOptions.position.verticalAlign;
738
+ if (verticalAlign === 'bottom') {
739
+ this.marginBottom = (this.marginBottom || 0) + breadcrumbsHeight;
740
+ breadcrumbs.yOffset = breadcrumbsHeight;
741
+ }
742
+ else if (verticalAlign !== 'middle') {
743
+ this.plotTop += breadcrumbsHeight;
744
+ breadcrumbs.yOffset = -breadcrumbsHeight;
745
+ }
746
+ else {
747
+ breadcrumbs.yOffset = void 0;
748
+ }
749
+ }
750
+ });
751
+ addEvent(Chart, 'redraw', function () {
752
+ this.breadcrumbs && this.breadcrumbs.redraw();
753
+ });
754
+ // Remove resize/afterSetExtremes at chart destroy
755
+ addEvent(Chart, 'destroy', function destroyEvents() {
756
+ if (this.breadcrumbs) {
757
+ this.breadcrumbs.destroy();
758
+ this.breadcrumbs = void 0;
759
+ }
760
+ });
761
+ // Shift the drillUpButton to make the space for resetZoomButton, #8095.
762
+ addEvent(Chart, 'afterShowResetZoom', function () {
763
+ var chart = this;
764
+ if (chart.breadcrumbs) {
765
+ var bbox = chart.resetZoomButton &&
766
+ chart.resetZoomButton.getBBox(), breadcrumbsOptions = chart.breadcrumbs.options;
767
+ if (bbox &&
768
+ breadcrumbsOptions.position.align === 'right' &&
769
+ breadcrumbsOptions.relativeTo === 'plotBox') {
770
+ chart.breadcrumbs.alignBreadcrumbsGroup(-bbox.width - breadcrumbsOptions.buttonSpacing);
771
+ }
772
+ }
773
+ });
774
+ // After zooming out, shift the drillUpButton
775
+ // to the previous position, #8095.
776
+ addEvent(Chart, 'selection', function (event) {
777
+ if (event.resetSelection === true &&
778
+ this.breadcrumbs) {
779
+ this.breadcrumbs.alignBreadcrumbsGroup();
780
+ }
781
+ });
782
+ }
783
+ /* *
784
+ *
785
+ * Default Export
786
+ *
787
+ * */
788
+ export default Breadcrumbs;
789
+ /* *
790
+ *
791
+ * API Declarations
792
+ *
793
+ * */
794
+ /**
795
+ * Callback function to react on button clicks.
796
+ *
797
+ * @callback Highcharts.BreadcrumbsClickCallbackFunction
798
+ *
799
+ * @param {Highcharts.Event} event
800
+ * Event.
801
+ *
802
+ * @param {Highcharts.BreadcrumbOptions} options
803
+ * Breadcrumb options.
804
+ *
805
+ * @param {global.Event} e
806
+ * Event arguments.
807
+ */
808
+ /**
809
+ * Callback function to format the breadcrumb text from scratch.
810
+ *
811
+ * @callback Highcharts.BreadcrumbsFormatterCallbackFunction
812
+ *
813
+ * @param {Highcharts.Event} event
814
+ * Event.
815
+ *
816
+ * @param {Highcharts.BreadcrumbOptions} options
817
+ * Breadcrumb options.
818
+ *
819
+ * @return {string}
820
+ * Formatted text or false
821
+ */
822
+ /**
823
+ * Options for the one breadcrumb.
824
+ *
825
+ * @interface Highcharts.BreadcrumbOptions
826
+ */
827
+ /**
828
+ * Level connected to a specific breadcrumb.
829
+ * @name Highcharts.BreadcrumbOptions#level
830
+ * @type {number}
831
+ */
832
+ /**
833
+ * Options for series or point connected to a specific breadcrumb.
834
+ * @name Highcharts.BreadcrumbOptions#levelOptions
835
+ * @type {SeriesOptions|PointOptionsObject}
836
+ */
837
+ /**
838
+ * Options for aligning breadcrumbs group.
839
+ *
840
+ * @interface Highcharts.BreadcrumbsAlignOptions
841
+ */
842
+ /**
843
+ * Align of a Breadcrumb group.
844
+ * @default right
845
+ * @name Highcharts.BreadcrumbsAlignOptions#align
846
+ * @type {AlignValue}
847
+ */
848
+ /**
849
+ * Vertical align of a Breadcrumb group.
850
+ * @default top
851
+ * @name Highcharts.BreadcrumbsAlignOptions#verticalAlign
852
+ * @type {VerticalAlignValue}
853
+ */
854
+ /**
855
+ * X offset of a Breadcrumbs group.
856
+ * @name Highcharts.BreadcrumbsAlignOptions#x
857
+ * @type {number}
858
+ */
859
+ /**
860
+ * Y offset of a Breadcrumbs group.
861
+ * @name Highcharts.BreadcrumbsAlignOptions#y
862
+ * @type {number}
863
+ */
864
+ /**
865
+ * Options for all breadcrumbs.
866
+ *
867
+ * @interface Highcharts.BreadcrumbsOptions
868
+ */
869
+ /**
870
+ * Button theme.
871
+ * @name Highcharts.BreadcrumbsOptions#buttonTheme
872
+ * @type { SVGAttributes | undefined }
873
+ */
874
+ (''); // Keeps doclets above in JS file