highcharts 9.1.1 → 9.1.2

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 (424) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +29 -28
  3. package/css/annotations/popup.scss +29 -27
  4. package/es-modules/Core/Axis/Axis.js +24 -17
  5. package/es-modules/Core/Axis/AxisDefaults.js +0 -1
  6. package/es-modules/Core/Axis/OrdinalAxis.js +141 -61
  7. package/es-modules/Core/Globals.js +7 -1
  8. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +1 -1
  9. package/es-modules/Core/Series/Series.js +16 -1
  10. package/es-modules/Core/Time.js +2 -2
  11. package/es-modules/Core/Tooltip.js +7 -11
  12. package/es-modules/Extensions/Annotations/NavigationBindings.js +1 -1
  13. package/es-modules/Extensions/Annotations/Popup.js +4 -1
  14. package/es-modules/Extensions/Boost/WGLRenderer.js +5 -0
  15. package/es-modules/Extensions/Drilldown.js +39 -12
  16. package/es-modules/Extensions/OfflineExporting.js +1 -1
  17. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  18. package/es-modules/Extensions/PatternFill.js +23 -10
  19. package/es-modules/Stock/StockToolsGui.js +1 -1
  20. package/es-modules/masters/highcharts-3d.src.js +1 -1
  21. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  22. package/es-modules/masters/highcharts-more.src.js +1 -1
  23. package/es-modules/masters/highcharts.src.js +1 -1
  24. package/es-modules/masters/highmaps.src.js +1 -1
  25. package/es-modules/masters/highstock.src.js +1 -1
  26. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  27. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  28. package/es-modules/masters/indicators/ao.src.js +1 -1
  29. package/es-modules/masters/indicators/apo.src.js +1 -1
  30. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  31. package/es-modules/masters/indicators/aroon.src.js +1 -1
  32. package/es-modules/masters/indicators/atr.src.js +1 -1
  33. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  34. package/es-modules/masters/indicators/cci.src.js +1 -1
  35. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  36. package/es-modules/masters/indicators/cmf.src.js +1 -1
  37. package/es-modules/masters/indicators/cmo.src.js +1 -1
  38. package/es-modules/masters/indicators/dema.src.js +1 -1
  39. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  40. package/es-modules/masters/indicators/dmi.src.js +1 -1
  41. package/es-modules/masters/indicators/dpo.src.js +1 -1
  42. package/es-modules/masters/indicators/ema.src.js +1 -1
  43. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  44. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  45. package/es-modules/masters/indicators/indicators.src.js +1 -1
  46. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  47. package/es-modules/masters/indicators/klinger.src.js +1 -1
  48. package/es-modules/masters/indicators/macd.src.js +1 -1
  49. package/es-modules/masters/indicators/mfi.src.js +1 -1
  50. package/es-modules/masters/indicators/momentum.src.js +1 -1
  51. package/es-modules/masters/indicators/natr.src.js +1 -1
  52. package/es-modules/masters/indicators/obv.src.js +1 -1
  53. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  54. package/es-modules/masters/indicators/ppo.src.js +1 -1
  55. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  56. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  57. package/es-modules/masters/indicators/psar.src.js +1 -1
  58. package/es-modules/masters/indicators/regressions.src.js +1 -1
  59. package/es-modules/masters/indicators/roc.src.js +1 -1
  60. package/es-modules/masters/indicators/rsi.src.js +1 -1
  61. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  62. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  63. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  64. package/es-modules/masters/indicators/tema.src.js +1 -1
  65. package/es-modules/masters/indicators/trendline.src.js +1 -1
  66. package/es-modules/masters/indicators/trix.src.js +1 -1
  67. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  68. package/es-modules/masters/indicators/vwap.src.js +1 -1
  69. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  70. package/es-modules/masters/indicators/wma.src.js +1 -1
  71. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  72. package/es-modules/masters/modules/accessibility.src.js +1 -1
  73. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  74. package/es-modules/masters/modules/annotations.src.js +1 -1
  75. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  76. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  77. package/es-modules/masters/modules/boost.src.js +1 -1
  78. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  79. package/es-modules/masters/modules/bullet.src.js +1 -1
  80. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  81. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  82. package/es-modules/masters/modules/cylinder.src.js +1 -1
  83. package/es-modules/masters/modules/data.src.js +1 -1
  84. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  85. package/es-modules/masters/modules/debugger.src.js +1 -1
  86. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  87. package/es-modules/masters/modules/dotplot.src.js +1 -1
  88. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  89. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  90. package/es-modules/masters/modules/drilldown.src.js +1 -1
  91. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  92. package/es-modules/masters/modules/export-data.src.js +1 -1
  93. package/es-modules/masters/modules/exporting.src.js +1 -1
  94. package/es-modules/masters/modules/full-screen.src.js +1 -1
  95. package/es-modules/masters/modules/funnel.src.js +1 -1
  96. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  97. package/es-modules/masters/modules/gantt.src.js +1 -1
  98. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  99. package/es-modules/masters/modules/heatmap.src.js +1 -1
  100. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  101. package/es-modules/masters/modules/item-series.src.js +1 -1
  102. package/es-modules/masters/modules/lollipop.src.js +1 -1
  103. package/es-modules/masters/modules/map.src.js +1 -1
  104. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  105. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  106. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  107. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  108. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  109. package/es-modules/masters/modules/oldie.src.js +1 -1
  110. package/es-modules/masters/modules/organization.src.js +1 -1
  111. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  112. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  113. package/es-modules/masters/modules/pareto.src.js +1 -1
  114. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  115. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  116. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  117. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  118. package/es-modules/masters/modules/sankey.src.js +1 -1
  119. package/es-modules/masters/modules/series-label.src.js +1 -1
  120. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  121. package/es-modules/masters/modules/sonification.src.js +1 -1
  122. package/es-modules/masters/modules/static-scale.src.js +1 -1
  123. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  124. package/es-modules/masters/modules/stock.src.js +1 -1
  125. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  126. package/es-modules/masters/modules/sunburst.src.js +1 -1
  127. package/es-modules/masters/modules/tilemap.src.js +1 -1
  128. package/es-modules/masters/modules/timeline.src.js +1 -1
  129. package/es-modules/masters/modules/treegrid.src.js +1 -1
  130. package/es-modules/masters/modules/treemap.src.js +1 -1
  131. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  132. package/es-modules/masters/modules/variwide.src.js +1 -1
  133. package/es-modules/masters/modules/vector.src.js +1 -1
  134. package/es-modules/masters/modules/venn.src.js +1 -1
  135. package/es-modules/masters/modules/windbarb.src.js +1 -1
  136. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  137. package/es-modules/masters/modules/xrange.src.js +1 -1
  138. package/es-modules/masters/themes/avocado.src.js +1 -1
  139. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  140. package/es-modules/masters/themes/dark-green.src.js +1 -1
  141. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  142. package/es-modules/masters/themes/gray.src.js +1 -1
  143. package/es-modules/masters/themes/grid-light.src.js +1 -1
  144. package/es-modules/masters/themes/grid.src.js +1 -1
  145. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  146. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  147. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  148. package/es-modules/masters/themes/skies.src.js +1 -1
  149. package/es-modules/masters/themes/sunset.src.js +1 -1
  150. package/highcharts-3d.js +1 -1
  151. package/highcharts-3d.src.js +1 -1
  152. package/highcharts-gantt.js +782 -782
  153. package/highcharts-gantt.js.map +1 -1
  154. package/highcharts-gantt.src.js +109 -87
  155. package/highcharts-more.js +1 -1
  156. package/highcharts-more.src.js +1 -1
  157. package/highcharts.d.ts +30 -9
  158. package/highcharts.js +467 -467
  159. package/highcharts.js.map +1 -1
  160. package/highcharts.src.d.ts +30 -9
  161. package/highcharts.src.js +109 -87
  162. package/highmaps.js +697 -697
  163. package/highmaps.js.map +1 -1
  164. package/highmaps.src.js +109 -87
  165. package/highstock.js +757 -755
  166. package/highstock.js.map +1 -1
  167. package/highstock.src.js +270 -157
  168. package/indicators/acceleration-bands.js +1 -1
  169. package/indicators/acceleration-bands.src.js +1 -1
  170. package/indicators/accumulation-distribution.js +1 -1
  171. package/indicators/accumulation-distribution.src.js +1 -1
  172. package/indicators/ao.js +1 -1
  173. package/indicators/ao.src.js +1 -1
  174. package/indicators/apo.js +1 -1
  175. package/indicators/apo.src.js +1 -1
  176. package/indicators/aroon-oscillator.js +1 -1
  177. package/indicators/aroon-oscillator.src.js +1 -1
  178. package/indicators/aroon.js +1 -1
  179. package/indicators/aroon.src.js +1 -1
  180. package/indicators/atr.js +1 -1
  181. package/indicators/atr.src.js +1 -1
  182. package/indicators/bollinger-bands.js +1 -1
  183. package/indicators/bollinger-bands.src.js +1 -1
  184. package/indicators/cci.js +1 -1
  185. package/indicators/cci.src.js +1 -1
  186. package/indicators/chaikin.js +1 -1
  187. package/indicators/chaikin.src.js +1 -1
  188. package/indicators/cmf.js +1 -1
  189. package/indicators/cmf.src.js +1 -1
  190. package/indicators/cmo.js +1 -1
  191. package/indicators/cmo.src.js +1 -1
  192. package/indicators/dema.js +1 -1
  193. package/indicators/dema.src.js +1 -1
  194. package/indicators/disparity-index.js +1 -1
  195. package/indicators/disparity-index.src.js +1 -1
  196. package/indicators/dmi.js +1 -1
  197. package/indicators/dmi.src.js +1 -1
  198. package/indicators/dpo.js +1 -1
  199. package/indicators/dpo.src.js +1 -1
  200. package/indicators/ema.js +1 -1
  201. package/indicators/ema.src.js +1 -1
  202. package/indicators/ichimoku-kinko-hyo.js +1 -1
  203. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  204. package/indicators/indicators-all.js +1 -1
  205. package/indicators/indicators-all.src.js +1 -1
  206. package/indicators/indicators.js +1 -1
  207. package/indicators/indicators.src.js +1 -1
  208. package/indicators/keltner-channels.js +1 -1
  209. package/indicators/keltner-channels.src.js +1 -1
  210. package/indicators/klinger.js +1 -1
  211. package/indicators/klinger.src.js +1 -1
  212. package/indicators/macd.js +1 -1
  213. package/indicators/macd.src.js +1 -1
  214. package/indicators/mfi.js +1 -1
  215. package/indicators/mfi.src.js +1 -1
  216. package/indicators/momentum.js +1 -1
  217. package/indicators/momentum.src.js +1 -1
  218. package/indicators/natr.js +1 -1
  219. package/indicators/natr.src.js +1 -1
  220. package/indicators/obv.js +1 -1
  221. package/indicators/obv.src.js +1 -1
  222. package/indicators/pivot-points.js +1 -1
  223. package/indicators/pivot-points.src.js +1 -1
  224. package/indicators/ppo.js +1 -1
  225. package/indicators/ppo.src.js +1 -1
  226. package/indicators/price-channel.js +1 -1
  227. package/indicators/price-channel.src.js +1 -1
  228. package/indicators/price-envelopes.js +1 -1
  229. package/indicators/price-envelopes.src.js +1 -1
  230. package/indicators/psar.js +1 -1
  231. package/indicators/psar.src.js +1 -1
  232. package/indicators/regressions.js +1 -1
  233. package/indicators/regressions.src.js +1 -1
  234. package/indicators/roc.js +1 -1
  235. package/indicators/roc.src.js +1 -1
  236. package/indicators/rsi.js +1 -1
  237. package/indicators/rsi.src.js +1 -1
  238. package/indicators/slow-stochastic.js +1 -1
  239. package/indicators/slow-stochastic.src.js +1 -1
  240. package/indicators/stochastic.js +1 -1
  241. package/indicators/stochastic.src.js +1 -1
  242. package/indicators/supertrend.js +1 -1
  243. package/indicators/supertrend.src.js +1 -1
  244. package/indicators/tema.js +1 -1
  245. package/indicators/tema.src.js +1 -1
  246. package/indicators/trendline.js +1 -1
  247. package/indicators/trendline.src.js +1 -1
  248. package/indicators/trix.js +1 -1
  249. package/indicators/trix.src.js +1 -1
  250. package/indicators/volume-by-price.js +1 -1
  251. package/indicators/volume-by-price.src.js +1 -1
  252. package/indicators/vwap.js +1 -1
  253. package/indicators/vwap.src.js +1 -1
  254. package/indicators/williams-r.js +1 -1
  255. package/indicators/williams-r.src.js +1 -1
  256. package/indicators/wma.js +1 -1
  257. package/indicators/wma.src.js +1 -1
  258. package/indicators/zigzag.js +1 -1
  259. package/indicators/zigzag.src.js +1 -1
  260. package/modules/accessibility.js +1 -1
  261. package/modules/accessibility.src.js +1 -1
  262. package/modules/annotations-advanced.js +16 -16
  263. package/modules/annotations-advanced.js.map +1 -1
  264. package/modules/annotations-advanced.src.js +6 -3
  265. package/modules/annotations.js +16 -16
  266. package/modules/annotations.js.map +1 -1
  267. package/modules/annotations.src.js +6 -3
  268. package/modules/arrow-symbols.js +1 -1
  269. package/modules/arrow-symbols.src.js +1 -1
  270. package/modules/boost-canvas.js +1 -1
  271. package/modules/boost-canvas.src.js +1 -1
  272. package/modules/boost.js +34 -34
  273. package/modules/boost.js.map +1 -1
  274. package/modules/boost.src.js +6 -1
  275. package/modules/broken-axis.js +1 -1
  276. package/modules/broken-axis.src.js +1 -1
  277. package/modules/bullet.js +1 -1
  278. package/modules/bullet.src.js +1 -1
  279. package/modules/coloraxis.js +1 -1
  280. package/modules/coloraxis.src.js +1 -1
  281. package/modules/current-date-indicator.js +1 -1
  282. package/modules/current-date-indicator.src.js +1 -1
  283. package/modules/cylinder.js +1 -1
  284. package/modules/cylinder.src.js +1 -1
  285. package/modules/data.js +1 -1
  286. package/modules/data.src.js +1 -1
  287. package/modules/datagrouping.js +1 -1
  288. package/modules/datagrouping.src.js +1 -1
  289. package/modules/debugger.js +1 -1
  290. package/modules/debugger.src.js +1 -1
  291. package/modules/dependency-wheel.js +1 -1
  292. package/modules/dependency-wheel.src.js +1 -1
  293. package/modules/dotplot.js +1 -1
  294. package/modules/dotplot.src.js +1 -1
  295. package/modules/drag-panes.js +1 -1
  296. package/modules/drag-panes.src.js +1 -1
  297. package/modules/draggable-points.js +1 -1
  298. package/modules/draggable-points.src.js +1 -1
  299. package/modules/drilldown.d.ts +27 -0
  300. package/modules/drilldown.js +16 -16
  301. package/modules/drilldown.js.map +1 -1
  302. package/modules/drilldown.src.d.ts +27 -0
  303. package/modules/drilldown.src.js +40 -14
  304. package/modules/dumbbell.js +1 -1
  305. package/modules/dumbbell.src.js +1 -1
  306. package/modules/export-data.js +1 -1
  307. package/modules/export-data.src.js +1 -1
  308. package/modules/exporting.js +1 -1
  309. package/modules/exporting.src.js +1 -1
  310. package/modules/full-screen.js +1 -1
  311. package/modules/full-screen.src.js +1 -1
  312. package/modules/funnel.js +1 -1
  313. package/modules/funnel.src.js +1 -1
  314. package/modules/funnel3d.js +1 -1
  315. package/modules/funnel3d.src.js +1 -1
  316. package/modules/gantt.js +1 -1
  317. package/modules/gantt.src.js +1 -1
  318. package/modules/grid-axis.js +1 -1
  319. package/modules/grid-axis.src.js +1 -1
  320. package/modules/heatmap.js +1 -1
  321. package/modules/heatmap.src.js +1 -1
  322. package/modules/histogram-bellcurve.js +1 -1
  323. package/modules/histogram-bellcurve.src.js +1 -1
  324. package/modules/item-series.js +1 -1
  325. package/modules/item-series.src.js +1 -1
  326. package/modules/lollipop.js +1 -1
  327. package/modules/lollipop.src.js +1 -1
  328. package/modules/map.js +1 -1
  329. package/modules/map.src.js +1 -1
  330. package/modules/marker-clusters.js +1 -1
  331. package/modules/marker-clusters.src.js +1 -1
  332. package/modules/networkgraph.js +1 -1
  333. package/modules/networkgraph.src.js +1 -1
  334. package/modules/no-data-to-display.js +1 -1
  335. package/modules/no-data-to-display.src.js +1 -1
  336. package/modules/offline-exporting.js +2 -2
  337. package/modules/offline-exporting.src.js +2 -2
  338. package/modules/oldie-polyfills.js +1 -1
  339. package/modules/oldie-polyfills.src.js +1 -1
  340. package/modules/oldie.js +2 -2
  341. package/modules/oldie.src.js +2 -2
  342. package/modules/organization.js +1 -1
  343. package/modules/organization.src.js +1 -1
  344. package/modules/overlapping-datalabels.js +1 -1
  345. package/modules/overlapping-datalabels.src.js +1 -1
  346. package/modules/parallel-coordinates.js +1 -1
  347. package/modules/parallel-coordinates.src.js +1 -1
  348. package/modules/pareto.js +1 -1
  349. package/modules/pareto.src.js +1 -1
  350. package/modules/pathfinder.js +1 -1
  351. package/modules/pathfinder.src.js +1 -1
  352. package/modules/pattern-fill.js +14 -14
  353. package/modules/pattern-fill.js.map +1 -1
  354. package/modules/pattern-fill.src.js +24 -12
  355. package/modules/price-indicator.js +1 -1
  356. package/modules/price-indicator.src.js +1 -1
  357. package/modules/pyramid3d.js +1 -1
  358. package/modules/pyramid3d.src.js +1 -1
  359. package/modules/sankey.js +1 -1
  360. package/modules/sankey.src.js +1 -1
  361. package/modules/series-label.js +1 -1
  362. package/modules/series-label.src.js +1 -1
  363. package/modules/solid-gauge.js +1 -1
  364. package/modules/solid-gauge.src.js +1 -1
  365. package/modules/sonification.js +1 -1
  366. package/modules/sonification.src.js +1 -1
  367. package/modules/static-scale.js +1 -1
  368. package/modules/static-scale.src.js +1 -1
  369. package/modules/stock-tools.js +2 -2
  370. package/modules/stock-tools.src.js +3 -3
  371. package/modules/stock.js +191 -189
  372. package/modules/stock.js.map +1 -1
  373. package/modules/stock.src.js +162 -71
  374. package/modules/streamgraph.js +1 -1
  375. package/modules/streamgraph.src.js +1 -1
  376. package/modules/sunburst.js +1 -1
  377. package/modules/sunburst.src.js +1 -1
  378. package/modules/tilemap.js +1 -1
  379. package/modules/tilemap.src.js +1 -1
  380. package/modules/timeline.js +1 -1
  381. package/modules/timeline.src.js +1 -1
  382. package/modules/treegrid.js +1 -1
  383. package/modules/treegrid.src.js +1 -1
  384. package/modules/treemap.js +1 -1
  385. package/modules/treemap.src.js +1 -1
  386. package/modules/variable-pie.js +1 -1
  387. package/modules/variable-pie.src.js +1 -1
  388. package/modules/variwide.js +1 -1
  389. package/modules/variwide.src.js +1 -1
  390. package/modules/vector.js +1 -1
  391. package/modules/vector.src.js +1 -1
  392. package/modules/venn.js +1 -1
  393. package/modules/venn.src.js +1 -1
  394. package/modules/windbarb.js +1 -1
  395. package/modules/windbarb.src.js +1 -1
  396. package/modules/wordcloud.js +1 -1
  397. package/modules/wordcloud.src.js +1 -1
  398. package/modules/xrange.js +1 -1
  399. package/modules/xrange.src.js +1 -1
  400. package/package.json +1 -1
  401. package/themes/avocado.js +1 -1
  402. package/themes/avocado.src.js +1 -1
  403. package/themes/dark-blue.js +1 -1
  404. package/themes/dark-blue.src.js +1 -1
  405. package/themes/dark-green.js +1 -1
  406. package/themes/dark-green.src.js +1 -1
  407. package/themes/dark-unica.js +1 -1
  408. package/themes/dark-unica.src.js +1 -1
  409. package/themes/gray.js +1 -1
  410. package/themes/gray.src.js +1 -1
  411. package/themes/grid-light.js +1 -1
  412. package/themes/grid-light.src.js +1 -1
  413. package/themes/grid.js +1 -1
  414. package/themes/grid.src.js +1 -1
  415. package/themes/high-contrast-dark.js +1 -1
  416. package/themes/high-contrast-dark.src.js +1 -1
  417. package/themes/high-contrast-light.js +1 -1
  418. package/themes/high-contrast-light.src.js +1 -1
  419. package/themes/sand-signika.js +1 -1
  420. package/themes/sand-signika.src.js +1 -1
  421. package/themes/skies.js +1 -1
  422. package/themes/skies.src.js +1 -1
  423. package/themes/sunset.js +1 -1
  424. package/themes/sunset.src.js +1 -1
@@ -13,7 +13,7 @@ import Chart from '../Chart/Chart.js';
13
13
  import H from '../Globals.js';
14
14
  import Series from '../Series/Series.js';
15
15
  import U from '../Utilities.js';
16
- var addEvent = U.addEvent, css = U.css, defined = U.defined, error = U.error, pick = U.pick, timeUnits = U.timeUnits;
16
+ var addEvent = U.addEvent, correctFloat = U.correctFloat, css = U.css, defined = U.defined, error = U.error, pick = U.pick, timeUnits = U.timeUnits;
17
17
  // Has a dependency on Navigator due to the use of Axis.toFixedRange
18
18
  import '../Navigator.js';
19
19
  /**
@@ -170,6 +170,39 @@ var OrdinalAxis;
170
170
  axis.isOrdinal = isOrdinal && useOrdinal; // #3818, #4196, #4926
171
171
  ordinal.groupIntervalFactor = null; // reset for next run
172
172
  };
173
+ /**
174
+ * Faster way of using the Array.indexOf method.
175
+ * Works for sorted arrays only with unique values.
176
+ *
177
+ * @param {Array} sortedArray
178
+ * The sorted array inside which we are looking for.
179
+ * @param {number} key
180
+ * The key to being found.
181
+ * @param {boolean} indirectSearch
182
+ * In case of lack of the point in the array, should return
183
+ * value be equal to -1 or the closest bigger index.
184
+ * @private
185
+ */
186
+ Composition.findIndexOf = function (sortedArray, key, indirectSearch) {
187
+ var start = 0, end = sortedArray.length - 1, middle;
188
+ while (start <= end) {
189
+ middle = Math.floor((start + end) / 2);
190
+ // Key found as the middle element.
191
+ if (sortedArray[middle] === key) {
192
+ return middle;
193
+ }
194
+ if (sortedArray[middle] < key) {
195
+ // Continue searching to the right.
196
+ start = middle + 1;
197
+ }
198
+ else {
199
+ // Continue searching to the left.
200
+ end = middle - 1;
201
+ }
202
+ }
203
+ // Key could not be found.
204
+ return !indirectSearch ? -1 : middle;
205
+ };
173
206
  /**
174
207
  * Get the ordinal positions for the entire data set. This is necessary
175
208
  * in chart panning because we need to find out what points or data
@@ -304,6 +337,31 @@ var OrdinalAxis;
304
337
  // Return the factor needed for data grouping
305
338
  return groupIntervalFactor;
306
339
  };
340
+ /**
341
+ * Get index of point inside the ordinal positions array.
342
+ *
343
+ * @private
344
+ * @param {number} val
345
+ * The pixel value of a point.
346
+ *
347
+ * @param {Array<number>} [ordinallArray]
348
+ * An array of all points available on the axis
349
+ * for the given data set.
350
+ * Either ordinalPositions if the value is inside the plotArea
351
+ * or extendedOrdinalPositions if not.
352
+ *
353
+ * @return {number}
354
+ */
355
+ Composition.prototype.getIndexOfPoint = function (val, ordinalArray) {
356
+ var ordinal = this, axis = ordinal.axis, firstPointVal = ordinal.positions ? ordinal.positions[0] : 0,
357
+ // toValue for the first point.
358
+ firstPointX = ordinal.slope ? ordinal.slope * axis.transA : 0;
359
+ // Distance in pixels between two points
360
+ // on the ordinal axis in the current zoom.
361
+ var ordinalPointPixelInterval = axis.translationSlope *
362
+ (ordinal.slope || axis.closestPointRange || ordinal.overscrollPointsRange), shiftIndex = (val - firstPointX) / ordinalPointPixelInterval;
363
+ return Composition.findIndexOf(ordinalArray, firstPointVal) + shiftIndex;
364
+ };
307
365
  /**
308
366
  * Get ticks for an ordinal axis within a range where points don't
309
367
  * exist. It is required when overscroll is enabled. We can't base on
@@ -528,6 +586,46 @@ var OrdinalAxis;
528
586
  }
529
587
  return groupPositions;
530
588
  };
589
+ /**
590
+ * Get axis position of given index of the extended ordinal positions.
591
+ * Used only when panning an ordinal axis.
592
+ *
593
+ * @private
594
+ * @function Highcharts.Axis#index2val
595
+ *
596
+ * @param {number} index
597
+ * The index value of searched point
598
+ *
599
+ * @return {number}
600
+ */
601
+ axisProto.index2val = function (index) {
602
+ var axis = this, ordinal = axis.ordinal,
603
+ // Context could be changed to extendedOrdinalPositions.
604
+ ordinalPositions = ordinal.positions;
605
+ // The visible range contains only equally spaced values.
606
+ if (!ordinalPositions) {
607
+ return index;
608
+ }
609
+ var i = ordinalPositions.length - 1, distance;
610
+ if (index < 0) { // out of range, in effect panning to the left
611
+ index = ordinalPositions[0];
612
+ }
613
+ else if (index > i) { // out of range, panning to the right
614
+ index = ordinalPositions[i];
615
+ }
616
+ else { // split it up
617
+ i = Math.floor(index);
618
+ distance = index - i; // the decimal
619
+ }
620
+ if (typeof distance !== 'undefined' &&
621
+ typeof ordinalPositions[i] !== 'undefined') {
622
+ return ordinalPositions[i] + (distance ?
623
+ distance *
624
+ (ordinalPositions[i + 1] - ordinalPositions[i]) :
625
+ 0);
626
+ }
627
+ return index;
628
+ };
531
629
  /**
532
630
  * Translate from linear (internal) to axis value.
533
631
  *
@@ -537,65 +635,49 @@ var OrdinalAxis;
537
635
  * @param {number} val
538
636
  * The linear abstracted value.
539
637
  *
540
- * @param {boolean} [fromIndex]
541
- * Translate from an index in the ordinal positions rather than a
542
- * value.
543
- *
544
638
  * @return {number}
545
639
  */
546
- axisProto.lin2val = function (val, fromIndex) {
547
- var axis = this, ordinal = axis.ordinal, ordinalPositions = ordinal.positions, ret;
548
- // the visible range contains only equally spaced values
549
- if (!ordinalPositions) {
550
- ret = val;
640
+ axisProto.lin2val = function (val) {
641
+ var axis = this, ordinal = axis.ordinal, isInside = val > axis.left && val < axis.left + axis.len, localMin = axis.old ? axis.old.min : axis.min, localA = axis.old ? axis.old.transA : axis.transA;
642
+ var positions = ordinal.positions; // for the current visible range
643
+ // The visible range contains only equally spaced values.
644
+ if (!positions) {
645
+ return val;
551
646
  }
552
- else {
553
- var ordinalSlope = ordinal.slope, ordinalOffset = ordinal.offset, i = ordinalPositions.length - 1, linearEquivalentLeft = void 0, linearEquivalentRight = void 0, distance = void 0;
554
- // Handle the case where we translate from the index directly,
555
- // used only when panning an ordinal axis
556
- if (fromIndex) {
557
- if (val < 0) { // out of range, in effect panning to the left
558
- val = ordinalPositions[0];
559
- }
560
- else if (val > i) { // out of range, panning to the right
561
- val = ordinalPositions[i];
562
- }
563
- else { // split it up
564
- i = Math.floor(val);
565
- distance = val - i; // the decimal
566
- }
567
- // Loop down along the ordinal positions. When the linear
568
- // equivalent of i matches an ordinal position, interpolate
569
- // between the left and right values.
647
+ // Convert back from modivied value to pixels.
648
+ var pixelVal = (val - localMin) * localA;
649
+ // If the value is not inside the plot area,
650
+ // use the extended positions.
651
+ // (array contains also points that are outside of the plotArea).
652
+ if (!isInside) {
653
+ // When iterating for the first time,
654
+ // get the extended ordinal positional and assign them.
655
+ if (!ordinal.extendedOrdinalPositions) {
656
+ ordinal.extendedOrdinalPositions = ordinal.getExtendedPositions();
570
657
  }
571
- else {
572
- while (i--) {
573
- linearEquivalentLeft =
574
- (ordinalSlope * i) + ordinalOffset;
575
- if (val >= linearEquivalentLeft) {
576
- linearEquivalentRight =
577
- (ordinalSlope *
578
- (i + 1)) +
579
- ordinalOffset;
580
- // something between 0 and 1
581
- distance = (val - linearEquivalentLeft) /
582
- (linearEquivalentRight - linearEquivalentLeft);
583
- break;
584
- }
585
- }
658
+ positions = ordinal.extendedOrdinalPositions;
659
+ }
660
+ // In some cases (especially in early stages of the chart creation)
661
+ // the getExtendedPositions might return undefined.
662
+ if (positions && positions.length) {
663
+ var index = ordinal.getIndexOfPoint(pixelVal, positions), mantissa = correctFloat(index % 1);
664
+ // Check if the index is inside position array.
665
+ // If true, read/approximate value for that exact index.
666
+ if (index >= 0 && index < positions.length) {
667
+ var leftNeighbour = positions[Math.floor(index)], rightNeighbour = positions[Math.ceil(index)], distance = rightNeighbour - leftNeighbour;
668
+ return positions[Math.floor(index)] + mantissa * distance;
586
669
  }
587
- // If the index is within the range of the ordinal positions,
588
- // return the associated or interpolated value. If not, just
589
- // return the value.
590
- return (typeof distance !== 'undefined' &&
591
- typeof ordinalPositions[i] !== 'undefined' ?
592
- ordinalPositions[i] + (distance ?
593
- distance *
594
- (ordinalPositions[i + 1] - ordinalPositions[i]) :
595
- 0) :
596
- val);
670
+ // For cases when the index is not in the extended ordinal
671
+ // position array (EOP), like when the value we are looking
672
+ // for exceed the available data,
673
+ // approximate that value based on the calculated slope.
674
+ var positionsLength = positions.length, firstPositionsValue = positions[0], lastPositionsValue = positions[positionsLength - 1], slope = (lastPositionsValue - firstPositionsValue) / (positionsLength - 1);
675
+ if (index < 0) {
676
+ return firstPositionsValue + slope * index;
677
+ }
678
+ return lastPositionsValue + slope * (index - positionsLength);
597
679
  }
598
- return ret;
680
+ return val;
599
681
  };
600
682
  /**
601
683
  * Translate from a linear axis value to the corresponding ordinal axis
@@ -709,7 +791,7 @@ var OrdinalAxis;
709
791
  // how many ordinal units did we move?
710
792
  movedUnits = (mouseDownX - chartX) / pointPixelWidth,
711
793
  // get index of all the chart's points
712
- extendedAxis = { ordinal: { positions: xAxis.ordinal.getExtendedPositions() } }, ordinalPositions = void 0, searchAxisLeft = void 0, lin2val = xAxis.lin2val, val2lin = xAxis.val2lin, searchAxisRight = void 0;
794
+ extendedAxis = { ordinal: { positions: xAxis.ordinal.getExtendedPositions() } }, ordinalPositions = void 0, searchAxisLeft = void 0, index2val = xAxis.index2val, val2lin = xAxis.val2lin, searchAxisRight = void 0;
713
795
  // we have an ordinal axis, but the data is equally spaced
714
796
  if (!extendedAxis.ordinal.positions) {
715
797
  runBase = true;
@@ -746,12 +828,10 @@ var OrdinalAxis;
746
828
  // range, else it happens on the current x axis which is
747
829
  // smaller and faster.
748
830
  chart.fixedRange = max - min;
749
- trimmedRange = xAxis.navigatorAxis.toFixedRange(null, null, lin2val.apply(searchAxisLeft, [
750
- val2lin.apply(searchAxisLeft, [min, true]) + movedUnits,
751
- true // translate from index
752
- ]), lin2val.apply(searchAxisRight, [
753
- val2lin.apply(searchAxisRight, [max, true]) + movedUnits,
754
- true // translate from index
831
+ trimmedRange = xAxis.navigatorAxis.toFixedRange(null, null, index2val.apply(searchAxisLeft, [
832
+ val2lin.apply(searchAxisLeft, [min, true]) + movedUnits
833
+ ]), index2val.apply(searchAxisRight, [
834
+ val2lin.apply(searchAxisRight, [max, true]) + movedUnits
755
835
  ]));
756
836
  // Apply it if it is within the available data range
757
837
  if (trimmedRange.min >= Math.min(extremes.dataMin, min) &&
@@ -40,7 +40,7 @@ var Globals;
40
40
  * Constants
41
41
  *
42
42
  * */
43
- Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '9.1.1', Globals.win = w, Globals.doc = Globals.win.document, Globals.svg = (Globals.doc &&
43
+ Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '9.1.2', Globals.win = w, Globals.doc = Globals.win.document, Globals.svg = (Globals.doc &&
44
44
  Globals.doc.createElementNS &&
45
45
  !!Globals.doc.createElementNS(Globals.SVG_NS, 'svg').createSVGRect), Globals.userAgent = (Globals.win.navigator && Globals.win.navigator.userAgent) || '', Globals.isChrome = Globals.userAgent.indexOf('Chrome') !== -1, Globals.isFirefox = Globals.userAgent.indexOf('Firefox') !== -1, Globals.isMS = /(edge|msie|trident)/i.test(Globals.userAgent) && !Globals.win.opera, Globals.isSafari = !Globals.isChrome && Globals.userAgent.indexOf('Safari') !== -1, Globals.isTouchDevice = /(Mobile|Android|Windows Phone)/.test(Globals.userAgent), Globals.isWebKit = Globals.userAgent.indexOf('AppleWebKit') !== -1, Globals.deg2rad = Math.PI * 2 / 360, Globals.hasBidiBug = (Globals.isFirefox &&
46
46
  parseInt(Globals.userAgent.split('Firefox/')[1], 10) < 4 // issue #38
@@ -100,6 +100,12 @@ var Globals;
100
100
  * @private
101
101
  */
102
102
  Globals.symbolSizes = {};
103
+ /* *
104
+ *
105
+ * Properties
106
+ *
107
+ * */
108
+ Globals.chartCount = 0;
103
109
  })(Globals || (Globals = {}));
104
110
  /* *
105
111
  *
@@ -194,7 +194,7 @@ var SVGRenderer = /** @class */ (function () {
194
194
  this.url = this.getReferenceURL();
195
195
  // Add description
196
196
  var desc = this.createElement('desc').add();
197
- desc.element.appendChild(doc.createTextNode('Created with Highcharts 9.1.1'));
197
+ desc.element.appendChild(doc.createTextNode('Created with Highcharts 9.1.2'));
198
198
  renderer.defs = this.createElement('defs').add();
199
199
  renderer.allowHTML = allowHTML;
200
200
  renderer.forExport = forExport;
@@ -2333,8 +2333,23 @@ var Series = /** @class */ (function () {
2333
2333
  }
2334
2334
  };
2335
2335
  /**
2336
- * @private
2336
+ * Find the nearest point from a pointer event. This applies to series that
2337
+ * use k-d-trees to get the nearest point. Native pointer events must be
2338
+ * normalized using `Pointer.normalize`, that adds `chartX` and `chartY`
2339
+ * properties.
2340
+ *
2341
+ * @sample highcharts/demo/synchronized-charts
2342
+ * Synchronized charts with tooltips
2343
+ *
2337
2344
  * @function Highcharts.Series#searchPoint
2345
+ *
2346
+ * @param {Highcharts.PointerEvent} e
2347
+ * The normalized pointer event
2348
+ * @param {boolean} [compareX=false]
2349
+ * Search only by the X value, not Y
2350
+ *
2351
+ * @return {Point|undefined}
2352
+ * The closest point to the pointer event
2338
2353
  */
2339
2354
  Series.prototype.searchPoint = function (e, compareX) {
2340
2355
  var series = this, xAxis = series.xAxis, yAxis = series.yAxis, inverted = series.chart.inverted;
@@ -17,9 +17,9 @@ var defined = U.defined, error = U.error, extend = U.extend, isObject = U.isObje
17
17
  * Constants
18
18
  *
19
19
  * */
20
- var hasNewSafariBug = (H.isSafari && Intl.DateTimeFormat.prototype.formatRange);
20
+ var hasNewSafariBug = (H.isSafari && Intl && Intl.DateTimeFormat.prototype.formatRange);
21
21
  // To do: Remove this when we no longer need support for Safari < v14.1
22
- var hasOldSafariBug = (H.isSafari && !Intl.DateTimeFormat.prototype.formatRange);
22
+ var hasOldSafariBug = (H.isSafari && Intl && !Intl.DateTimeFormat.prototype.formatRange);
23
23
  /* *
24
24
  *
25
25
  * Class
@@ -200,12 +200,6 @@ var Tooltip = /** @class */ (function () {
200
200
  }]
201
201
  }]
202
202
  });
203
- chart.renderer.definition({
204
- tagName: 'style',
205
- textContent: '.highcharts-tooltip-' + chart.index + '{' +
206
- 'filter:url(#drop-shadow-' + chart.index + ')' +
207
- '}'
208
- });
209
203
  };
210
204
  /**
211
205
  * Build the body (lines) of the tooltip by iterating over the items and
@@ -493,10 +487,12 @@ var Tooltip = /** @class */ (function () {
493
487
  .shadow(options.shadow);
494
488
  }
495
489
  }
496
- if (styledMode) {
490
+ if (styledMode && options.shadow) {
497
491
  // Apply the drop-shadow filter
498
492
  this.applyFilter();
499
- this.label.addClass('highcharts-tooltip-' + this.chart.index);
493
+ this.label.attr({
494
+ filter: 'url(#drop-shadow-' + this.chart.index + ')'
495
+ });
500
496
  }
501
497
  // Split tooltip use updateTooltipContainer to position the tooltip
502
498
  // container.
@@ -1284,8 +1280,8 @@ var Tooltip = /** @class */ (function () {
1284
1280
  }
1285
1281
  var chart = tooltip.chart;
1286
1282
  var label = tooltip.label;
1287
- var point = chart.hoverPoint;
1288
- if (!label || !point) {
1283
+ var points = tooltip.shared ? chart.hoverPoints : chart.hoverPoint;
1284
+ if (!label || !points) {
1289
1285
  return;
1290
1286
  }
1291
1287
  var box = {
@@ -1295,7 +1291,7 @@ var Tooltip = /** @class */ (function () {
1295
1291
  height: 0
1296
1292
  };
1297
1293
  // Combine anchor and tooltip
1298
- var anchorPos = this.getAnchor(point);
1294
+ var anchorPos = this.getAnchor(points);
1299
1295
  var labelBBox = label.getBBox();
1300
1296
  anchorPos[0] += chart.plotLeft - label.translateX;
1301
1297
  anchorPos[1] += chart.plotTop - label.translateY;
@@ -1020,7 +1020,7 @@ setOptions({
1020
1020
  * from a different server.
1021
1021
  *
1022
1022
  * @type {string}
1023
- * @default https://code.highcharts.com/9.1.1/gfx/stock-icons/
1023
+ * @default https://code.highcharts.com/9.1.2/gfx/stock-icons/
1024
1024
  * @since 7.1.3
1025
1025
  * @apioption navigation.iconsURL
1026
1026
  */
@@ -213,6 +213,7 @@ H.Popup.prototype = {
213
213
  // add close button
214
214
  popupDiv.appendChild(popupCloseBtn);
215
215
  popupDiv.style.display = 'block';
216
+ popupDiv.style.height = '';
216
217
  },
217
218
  /**
218
219
  * Hide popup.
@@ -253,6 +254,8 @@ H.Popup.prototype = {
253
254
  if (type === 'flag') {
254
255
  this.annotations.addForm.call(this, chart, options, callback, true);
255
256
  }
257
+ // Explicit height is needed to make inner elements scrollable
258
+ this.container.style.height = this.container.offsetHeight + 'px';
256
259
  },
257
260
  /**
258
261
  * Return lang definitions for popup.
@@ -756,7 +759,7 @@ addEvent(NavigationBindings, 'showPopup', function (config) {
756
759
  this.popup = new H.Popup(this.chart.container, (this.chart.options.navigation.iconsURL ||
757
760
  (this.chart.options.stockTools &&
758
761
  this.chart.options.stockTools.gui.iconsURL) ||
759
- 'https://code.highcharts.com/9.1.1/gfx/stock-icons/'), this.chart);
762
+ 'https://code.highcharts.com/9.1.2/gfx/stock-icons/'), this.chart);
760
763
  }
761
764
  this.popup.showForm(config.formType, this.chart, config.options, config.onSubmit);
762
765
  });
@@ -909,6 +909,11 @@ function GLRenderer(postRenderCallback) {
909
909
  cbuffer.build(s.colorData, 'aColor', 4);
910
910
  cbuffer.bind();
911
911
  }
912
+ else {
913
+ // #15869, a buffer with fewer points might already be bound by
914
+ // a different series/chart causing out of range errors
915
+ gl.disableVertexAttribArray(gl.getAttribLocation(shader.program(), 'aColor'));
916
+ }
912
917
  // Set series specific uniforms
913
918
  shader.setColor(scolor);
914
919
  setXAxis(s.series.xAxis);
@@ -623,6 +623,9 @@ Chart.prototype.showDrillUpButton = function () {
623
623
  * @requires modules/drilldown
624
624
  *
625
625
  * @function Highcharts.Chart#drillUp
626
+ *
627
+ * @sample {highcharts} highcharts/drilldown/programmatic
628
+ * Programmatic drilldown
626
629
  */
627
630
  Chart.prototype.drillUp = function () {
628
631
  if (!this.drilldownLevels || this.drilldownLevels.length === 0) {
@@ -935,8 +938,26 @@ if (PieSeries) {
935
938
  }
936
939
  });
937
940
  }
938
- Point.prototype.doDrilldown = function (_holdRedraw, category, originalEvent) {
939
- var series = this.series, chart = series.chart, drilldown = chart.options.drilldown, i = (drilldown.series || []).length, seriesOptions;
941
+ /**
942
+ * Perform drilldown on a point instance. The [drilldown](https://api.highcharts.com/highcharts/series.line.data.drilldown)
943
+ * property must be set on the point options.
944
+ *
945
+ * To drill down multiple points in the same category, use
946
+ * `Axis.drilldownCategory` instead.
947
+ *
948
+ * @requires modules/drilldown
949
+ *
950
+ * @function Highcharts.Point#doDrilldown
951
+ *
952
+ * @sample {highcharts} highcharts/drilldown/programmatic
953
+ * Programmatic drilldown
954
+ */
955
+ Point.prototype.doDrilldown = function () {
956
+ this.runDrilldown();
957
+ };
958
+ Point.prototype.runDrilldown = function (holdRedraw, category, originalEvent) {
959
+ var series = this.series, chart = series.chart, drilldown = chart.options.drilldown;
960
+ var i = (drilldown.series || []).length, seriesOptions;
940
961
  if (!chart.ddDupes) {
941
962
  chart.ddDupes = [];
942
963
  }
@@ -959,7 +980,7 @@ Point.prototype.doDrilldown = function (_holdRedraw, category, originalEvent) {
959
980
  }, function (e) {
960
981
  var chart = e.point.series && e.point.series.chart, seriesOptions = e.seriesOptions;
961
982
  if (chart && seriesOptions) {
962
- if (_holdRedraw) {
983
+ if (holdRedraw) {
963
984
  chart.addSingleSeriesAsDrilldown(e.point, seriesOptions);
964
985
  }
965
986
  else {
@@ -970,22 +991,28 @@ Point.prototype.doDrilldown = function (_holdRedraw, category, originalEvent) {
970
991
  };
971
992
  /**
972
993
  * Drill down to a given category. This is the same as clicking on an axis
973
- * label.
994
+ * label. If multiple series with drilldown are present, all will drill down to
995
+ * the given category.
996
+ *
997
+ * See also `Point.doDrilldown` for drilling down on a single point instance.
974
998
  *
975
- * @private
976
999
  * @function Highcharts.Axis#drilldownCategory
1000
+ *
1001
+ * @sample {highcharts} highcharts/drilldown/programmatic
1002
+ * Programmatic drilldown
1003
+ *
977
1004
  * @param {number} x
978
- * Tick position
979
- * @param {global.MouseEvent} e
980
- * Click event
1005
+ * The index of the category
1006
+ * @param {global.MouseEvent} [originalEvent]
1007
+ * The original event, used internally.
981
1008
  */
982
- Axis.prototype.drilldownCategory = function (x, e) {
1009
+ Axis.prototype.drilldownCategory = function (x, originalEvent) {
983
1010
  this.getDDPoints(x).forEach(function (point) {
984
1011
  if (point &&
985
1012
  point.series &&
986
1013
  point.series.visible &&
987
- point.doDrilldown) { // #3197
988
- point.doDrilldown(true, x, e);
1014
+ point.runDrilldown) { // #3197
1015
+ point.runDrilldown(true, x, originalEvent);
989
1016
  }
990
1017
  });
991
1018
  this.chart.applyDrilldown();
@@ -1071,7 +1098,7 @@ var handlePointClick = function (e) {
1071
1098
  series.xAxis.drilldownCategory(point.x, e);
1072
1099
  }
1073
1100
  else {
1074
- point.doDrilldown(void 0, void 0, e);
1101
+ point.runDrilldown(void 0, void 0, e);
1075
1102
  }
1076
1103
  };
1077
1104
  addEvent(Series, 'afterDrawDataLabels', function () {
@@ -581,7 +581,7 @@ Chart.prototype.exportChartLocal = function (exportingOptions, chartOptions) {
581
581
  };
582
582
  // Extend the default options to use the local exporter logic
583
583
  merge(true, getOptions().exporting, {
584
- libURL: 'https://code.highcharts.com/9.1.1/lib/',
584
+ libURL: 'https://code.highcharts.com/9.1.2/lib/',
585
585
  // When offline-exporting is loaded, redefine the menu item definitions
586
586
  // related to download.
587
587
  menuItemDefinitions: {
@@ -37,7 +37,7 @@ var VMLRenderer, VMLElement;
37
37
  * @apioption global.VMLRadialGradientURL
38
38
  */
39
39
  getOptions().global.VMLRadialGradientURL =
40
- 'http://code.highcharts.com/9.1.1/gfx/vml-radial-gradient.png';
40
+ 'http://code.highcharts.com/9.1.2/gfx/vml-radial-gradient.png';
41
41
  // Utilites
42
42
  if (doc && !doc.defaultView) {
43
43
  H.getStyle = U.getStyle = function getStyle(el, prop) {
@@ -25,21 +25,33 @@ var addEvent = U.addEvent, erase = U.erase, merge = U.merge, pick = U.pick, remo
25
25
  // Add the predefined patterns
26
26
  var patterns = H.patterns = (function () {
27
27
  var patterns = [], colors = getOptions().colors;
28
+ // Start with subtle patterns
28
29
  [
29
- 'M 0 0 L 10 10 M 9 -1 L 11 1 M -1 9 L 1 11',
30
- 'M 0 10 L 10 0 M -1 1 L 1 -1 M 9 11 L 11 9',
31
- 'M 3 0 L 3 10 M 8 0 L 8 10',
32
- 'M 0 3 L 10 3 M 0 8 L 10 8',
33
- 'M 0 3 L 5 3 L 5 0 M 5 10 L 5 7 L 10 7',
30
+ 'M 0 0 L 5 5 M 4.5 -0.5 L 5.5 0.5 M -0.5 4.5 L 0.5 5.5',
31
+ 'M 0 5 L 5 0 M -0.5 0.5 L 0.5 -0.5 M 4.5 5.5 L 5.5 4.5',
32
+ 'M 2 0 L 2 5 M 4 0 L 4 5',
33
+ 'M 0 2 L 5 2 M 0 4 L 5 4',
34
+ 'M 0 1.5 L 2.5 1.5 L 2.5 0 M 2.5 5 L 2.5 3.5 L 5 3.5'
35
+ ].forEach(function (pattern, i) {
36
+ patterns.push({
37
+ path: pattern,
38
+ color: colors[i],
39
+ width: 5,
40
+ height: 5,
41
+ patternTransform: 'scale(1.4 1.4)'
42
+ });
43
+ });
44
+ // Then add the more drastic ones
45
+ [
46
+ 'M 0 0 L 5 10 L 10 0',
34
47
  'M 3 3 L 8 3 L 8 8 L 3 8 Z',
35
48
  'M 5 5 m -4 0 a 4 4 0 1 1 8 0 a 4 4 0 1 1 -8 0',
36
- 'M 10 3 L 5 3 L 5 0 M 5 10 L 5 7 L 0 7',
37
- 'M 2 5 L 5 2 L 8 5 L 5 8 Z',
38
- 'M 0 0 L 5 10 L 10 0'
49
+ 'M 0 0 L 10 10 M 9 -1 L 11 1 M -1 9 L 1 11',
50
+ 'M 0 10 L 10 0 M -1 1 L 1 -1 M 9 11 L 11 9'
39
51
  ].forEach(function (pattern, i) {
40
52
  patterns.push({
41
53
  path: pattern,
42
- color: colors[i],
54
+ color: colors[i + 5],
43
55
  width: 10,
44
56
  height: 10
45
57
  });
@@ -64,7 +76,8 @@ var patterns = H.patterns = (function () {
64
76
  * The computed hash.
65
77
  */
66
78
  function hashFromObject(obj, preSeed) {
67
- var str = JSON.stringify(obj), strLen = str.length || 0, hash = 0, i = 0, char, seedStep;
79
+ var str = JSON.stringify(obj), strLen = str.length || 0;
80
+ var hash = 0, i = 0, char, seedStep;
68
81
  if (preSeed) {
69
82
  seedStep = Math.max(Math.floor(strLen / 500), 1);
70
83
  for (var a = 0; a < strLen; a += seedStep) {
@@ -1277,7 +1277,7 @@ var Toolbar = /** @class */ (function () {
1277
1277
  Toolbar.prototype.getIconsURL = function () {
1278
1278
  return this.chart.options.navigation.iconsURL ||
1279
1279
  this.options.iconsURL ||
1280
- 'https://code.highcharts.com/9.1.1/gfx/stock-icons/';
1280
+ 'https://code.highcharts.com/9.1.2/gfx/stock-icons/';
1281
1281
  };
1282
1282
  return Toolbar;
1283
1283
  }());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v9.1.1 (2021-06-04)
2
+ * @license Highcharts JS v9.1.2 (2021-06-16)
3
3
  * @module highcharts/highcharts-3d
4
4
  * @requires highcharts
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts Gantt JS v9.1.1 (2021-06-04)
2
+ * @license Highcharts Gantt JS v9.1.2 (2021-06-16)
3
3
  * @module highcharts/highcharts-gantt
4
4
  *
5
5
  * (c) 2017-2021 Lars Cabrera, Torstein Honsi, Jon Arild Nygard & Oystein Moseng
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v9.1.1 (2021-06-04)
2
+ * @license Highcharts JS v9.1.2 (2021-06-16)
3
3
  * @module highcharts/highcharts-more
4
4
  * @requires highcharts
5
5
  *
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v9.1.1 (2021-06-04)
2
+ * @license Highcharts JS v9.1.2 (2021-06-16)
3
3
  * @module highcharts/highcharts
4
4
  *
5
5
  * (c) 2009-2021 Torstein Honsi
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highmaps JS v9.1.1 (2021-06-04)
2
+ * @license Highmaps JS v9.1.2 (2021-06-16)
3
3
  * @module highcharts/highmaps
4
4
  *
5
5
  * (c) 2011-2021 Torstein Honsi