highcharts 12.3.0 → 12.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (849) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +0 -5
  3. package/es-modules/Accessibility/Components/MenuComponent.js +3 -1
  4. package/es-modules/Accessibility/Components/NavigatorComponent.js +5 -1
  5. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +3 -1
  6. package/es-modules/Accessibility/FocusBorder.js +4 -0
  7. package/es-modules/Accessibility/Options/A11yDefaults.js +12 -0
  8. package/es-modules/Core/Axis/Axis.js +4 -3
  9. package/es-modules/Core/Axis/Axis3DComposition.js +0 -3
  10. package/es-modules/Core/Axis/AxisDefaults.js +0 -8
  11. package/es-modules/Core/Axis/BrokenAxis.js +114 -90
  12. package/es-modules/Core/Axis/Color/ColorAxis.js +3 -3
  13. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +2 -3
  14. package/es-modules/Core/Axis/OrdinalAxis.js +0 -1
  15. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +2 -2
  16. package/es-modules/Core/Axis/RadialAxis.js +15 -3
  17. package/es-modules/Core/Axis/ScrollbarAxis.js +19 -17
  18. package/es-modules/Core/Axis/Stacking/StackingAxis.js +0 -1
  19. package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +36 -51
  20. package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +39 -17
  21. package/es-modules/Core/Chart/Chart.js +10 -9
  22. package/es-modules/Core/Chart/ChartDefaults.js +4 -3
  23. package/es-modules/Core/Chart/StockChart.js +42 -49
  24. package/es-modules/Core/Defaults.js +12 -7
  25. package/es-modules/Core/Geometry/CircleUtilities.js +3 -1
  26. package/es-modules/Core/Globals.js +1 -1
  27. package/es-modules/Core/Legend/Legend.js +8 -7
  28. package/es-modules/Core/Pointer.js +14 -5
  29. package/es-modules/Core/Renderer/HTML/AST.js +1 -1
  30. package/es-modules/Core/Renderer/HTML/HTMLElement.js +2 -1
  31. package/es-modules/Core/Renderer/SVG/SVGElement.js +2 -2
  32. package/es-modules/Core/Renderer/SVG/SVGLabel.js +10 -1
  33. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +7 -7
  34. package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
  35. package/es-modules/Core/Series/Point.js +9 -0
  36. package/es-modules/Core/Series/Series.js +1 -1
  37. package/es-modules/Core/Series/SeriesRegistry.js +8 -1
  38. package/es-modules/Data/Connectors/JSONConnector.js +0 -1
  39. package/es-modules/Data/Converters/HTMLTableConverter.js +1 -1
  40. package/es-modules/Data/Converters/JSONConverter.js +0 -1
  41. package/es-modules/Data/DataTable.js +1 -2
  42. package/es-modules/Data/Formula/FormulaParser.js +33 -1
  43. package/es-modules/Data/Formula/FormulaProcessor.js +97 -45
  44. package/es-modules/Data/Modifiers/DataModifier.js +1 -1
  45. package/es-modules/Data/Modifiers/FilterModifier.js +168 -0
  46. package/es-modules/Data/Modifiers/FilterModifierOptions.js +14 -0
  47. package/es-modules/Data/Modifiers/SortModifier.js +12 -3
  48. package/es-modules/Extensions/Annotations/MockPoint.js +6 -3
  49. package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
  50. package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
  51. package/es-modules/Extensions/Boost/Boost.js +5 -1
  52. package/es-modules/Extensions/Boost/BoostSeries.js +31 -18
  53. package/es-modules/Extensions/Boost/WGLRenderer.js +30 -21
  54. package/es-modules/Extensions/Boost/WGLShader.js +18 -5
  55. package/es-modules/Extensions/BoostCanvas.js +0 -5
  56. package/es-modules/Extensions/BorderRadius.js +6 -2
  57. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +1 -1
  58. package/es-modules/Extensions/DownloadURL.js +3 -1
  59. package/es-modules/Extensions/ExportData/ExportData.js +3 -5
  60. package/es-modules/Extensions/Exporting/Exporting.js +86 -0
  61. package/es-modules/Extensions/Exporting/ExportingDefaults.js +1 -1
  62. package/es-modules/Extensions/NonCartesianSeriesZoom/NonCartesianSeriesZoom.js +25 -25
  63. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +1 -1
  64. package/es-modules/Extensions/Pane/PaneComposition.js +19 -12
  65. package/es-modules/Extensions/ScrollablePlotArea.js +29 -21
  66. package/es-modules/Extensions/Sonification/Sonification.js +1 -1
  67. package/es-modules/Extensions/StaticScale.js +13 -11
  68. package/es-modules/Extensions/TextPath.js +2 -2
  69. package/es-modules/Series/Bellcurve/BellcurveSeries.js +16 -9
  70. package/es-modules/Series/DataModifyComposition.js +0 -2
  71. package/es-modules/Series/DrawPointUtilities.js +1 -1
  72. package/es-modules/Series/Histogram/HistogramSeries.js +19 -17
  73. package/es-modules/Series/Pie/PieDataLabel.js +2 -2
  74. package/es-modules/Series/Pie/PieSeries.js +2 -2
  75. package/es-modules/Series/PolarComposition.js +36 -1
  76. package/es-modules/Series/SeriesOnPointComposition.js +0 -1
  77. package/es-modules/Series/SimulationSeriesUtilities.js +7 -0
  78. package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +13 -0
  79. package/es-modules/Series/Treegraph/TreegraphLayout.js +10 -4
  80. package/es-modules/Series/Treemap/TreemapSeries.js +4 -4
  81. package/es-modules/Series/Variwide/VariwideComposition.js +9 -11
  82. package/es-modules/Series/Waterfall/WaterfallSeries.js +6 -9
  83. package/es-modules/Series/XRange/XRangePoint.js +2 -1
  84. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -1
  85. package/es-modules/Stock/StockTools/StockToolbar.js +1 -1
  86. package/es-modules/masters/highcharts-3d.src.js +2 -2
  87. package/es-modules/masters/highcharts-gantt.src.js +8 -2
  88. package/es-modules/masters/highcharts-more.src.js +2 -2
  89. package/es-modules/masters/highcharts.src.js +2 -2
  90. package/es-modules/masters/highmaps.src.js +2 -2
  91. package/es-modules/masters/highstock.src.js +2 -2
  92. package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
  93. package/es-modules/masters/i18n/fr-FR.src.js +1 -1
  94. package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
  95. package/es-modules/masters/i18n/nb-NO.src.js +1 -1
  96. package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
  97. package/es-modules/masters/i18n/zh-CN.src.js +1 -1
  98. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  99. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  100. package/es-modules/masters/indicators/ao.src.js +1 -1
  101. package/es-modules/masters/indicators/apo.src.js +1 -1
  102. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  103. package/es-modules/masters/indicators/aroon.src.js +1 -1
  104. package/es-modules/masters/indicators/atr.src.js +1 -1
  105. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  106. package/es-modules/masters/indicators/cci.src.js +1 -1
  107. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  108. package/es-modules/masters/indicators/cmf.src.js +1 -1
  109. package/es-modules/masters/indicators/cmo.src.js +1 -1
  110. package/es-modules/masters/indicators/dema.src.js +1 -1
  111. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  112. package/es-modules/masters/indicators/dmi.src.js +1 -1
  113. package/es-modules/masters/indicators/dpo.src.js +1 -1
  114. package/es-modules/masters/indicators/ema.src.js +0 -3
  115. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  116. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  117. package/es-modules/masters/indicators/indicators.src.js +1 -1
  118. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  119. package/es-modules/masters/indicators/klinger.src.js +1 -1
  120. package/es-modules/masters/indicators/macd.src.js +1 -1
  121. package/es-modules/masters/indicators/mfi.src.js +1 -1
  122. package/es-modules/masters/indicators/momentum.src.js +1 -1
  123. package/es-modules/masters/indicators/natr.src.js +1 -1
  124. package/es-modules/masters/indicators/obv.src.js +1 -1
  125. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  126. package/es-modules/masters/indicators/ppo.src.js +1 -1
  127. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  128. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  129. package/es-modules/masters/indicators/psar.src.js +1 -1
  130. package/es-modules/masters/indicators/regressions.src.js +1 -1
  131. package/es-modules/masters/indicators/roc.src.js +1 -1
  132. package/es-modules/masters/indicators/rsi.src.js +1 -1
  133. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  134. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  135. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  136. package/es-modules/masters/indicators/tema.src.js +1 -1
  137. package/es-modules/masters/indicators/trendline.src.js +1 -1
  138. package/es-modules/masters/indicators/trix.src.js +1 -1
  139. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  140. package/es-modules/masters/indicators/vwap.src.js +1 -1
  141. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  142. package/es-modules/masters/indicators/wma.src.js +1 -1
  143. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  144. package/es-modules/masters/modules/accessibility.src.js +1 -1
  145. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  146. package/es-modules/masters/modules/annotations.src.js +1 -1
  147. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  148. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  149. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  150. package/es-modules/masters/modules/boost.src.js +1 -1
  151. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  152. package/es-modules/masters/modules/bullet.src.js +1 -1
  153. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  154. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  155. package/es-modules/masters/modules/cylinder.src.js +1 -1
  156. package/es-modules/masters/modules/data-tools.src.d.ts +1 -0
  157. package/es-modules/masters/modules/data-tools.src.js +2 -1
  158. package/es-modules/masters/modules/data.src.js +1 -1
  159. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  160. package/es-modules/masters/modules/debugger.src.js +1 -1
  161. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  162. package/es-modules/masters/modules/dotplot.src.js +1 -1
  163. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  164. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  165. package/es-modules/masters/modules/drilldown.src.js +1 -1
  166. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  167. package/es-modules/masters/modules/export-data.src.js +1 -1
  168. package/es-modules/masters/modules/exporting.src.js +1 -1
  169. package/es-modules/masters/modules/flowmap.src.js +1 -1
  170. package/es-modules/masters/modules/full-screen.src.js +1 -1
  171. package/es-modules/masters/modules/funnel.src.js +1 -1
  172. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  173. package/es-modules/masters/modules/gantt.src.js +1 -1
  174. package/es-modules/masters/modules/geoheatmap.src.js +1 -1
  175. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  176. package/es-modules/masters/modules/heatmap.src.js +1 -1
  177. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  178. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  179. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  180. package/es-modules/masters/modules/item-series.src.js +1 -1
  181. package/es-modules/masters/modules/lollipop.src.js +1 -1
  182. package/es-modules/masters/modules/map.src.js +1 -1
  183. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  184. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
  185. package/es-modules/masters/modules/navigator.src.js +1 -1
  186. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  187. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  188. package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
  189. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  190. package/es-modules/masters/modules/organization.src.js +1 -1
  191. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  192. package/es-modules/masters/modules/pareto.src.js +1 -1
  193. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  194. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  195. package/es-modules/masters/modules/pictorial.src.js +1 -1
  196. package/es-modules/masters/modules/pointandfigure.src.js +1 -1
  197. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  198. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  199. package/es-modules/masters/modules/renko.src.js +1 -1
  200. package/es-modules/masters/modules/sankey.src.js +1 -1
  201. package/es-modules/masters/modules/series-label.src.js +1 -1
  202. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  203. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  204. package/es-modules/masters/modules/sonification.src.js +1 -1
  205. package/es-modules/masters/modules/static-scale.src.js +1 -1
  206. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  207. package/es-modules/masters/modules/stock.src.js +1 -1
  208. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  209. package/es-modules/masters/modules/sunburst.src.js +1 -1
  210. package/es-modules/masters/modules/textpath.src.js +1 -1
  211. package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
  212. package/es-modules/masters/modules/tilemap.src.js +1 -1
  213. package/es-modules/masters/modules/timeline.src.js +1 -1
  214. package/es-modules/masters/modules/treegraph.src.js +1 -1
  215. package/es-modules/masters/modules/treegrid.src.js +1 -1
  216. package/es-modules/masters/modules/treemap.src.js +1 -1
  217. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  218. package/es-modules/masters/modules/variwide.src.js +1 -1
  219. package/es-modules/masters/modules/vector.src.js +1 -1
  220. package/es-modules/masters/modules/venn.src.js +1 -1
  221. package/es-modules/masters/modules/windbarb.src.js +1 -1
  222. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  223. package/es-modules/masters/modules/xrange.src.js +1 -1
  224. package/es-modules/masters/standalone-navigator.src.js +7 -6
  225. package/es-modules/masters/themes/adaptive.src.js +1 -1
  226. package/es-modules/masters/themes/avocado.src.js +1 -1
  227. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  228. package/es-modules/masters/themes/brand-light.src.js +1 -1
  229. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  230. package/es-modules/masters/themes/dark-green.src.js +1 -1
  231. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  232. package/es-modules/masters/themes/gray.src.js +1 -1
  233. package/es-modules/masters/themes/grid-light.src.js +1 -1
  234. package/es-modules/masters/themes/grid.src.js +1 -1
  235. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  236. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  237. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  238. package/es-modules/masters/themes/skies.src.js +1 -1
  239. package/es-modules/masters/themes/sunset.src.js +1 -1
  240. package/es-modules/tsconfig.tsbuildinfo +1 -1
  241. package/esm/highcharts-3d.js +3 -3
  242. package/esm/highcharts-3d.src.js +2 -5
  243. package/esm/highcharts-gantt.js +8 -2
  244. package/esm/highcharts-gantt.src.js +8 -2
  245. package/esm/highcharts-more.js +3 -3
  246. package/esm/highcharts-more.src.js +475 -31
  247. package/esm/highcharts.js +4 -4
  248. package/esm/highcharts.src.js +140 -93
  249. package/esm/highmaps.js +2 -2
  250. package/esm/highmaps.src.js +2 -2
  251. package/esm/highstock.js +2 -2
  252. package/esm/highstock.src.js +2 -2
  253. package/esm/i18n/fr-FR.js +1 -1
  254. package/esm/i18n/fr-FR.src.js +1 -1
  255. package/esm/i18n/nb-NO.js +1 -1
  256. package/esm/i18n/nb-NO.src.js +1 -1
  257. package/esm/i18n/zh-CN.js +1 -1
  258. package/esm/i18n/zh-CN.src.js +1 -1
  259. package/esm/indicators/acceleration-bands.js +1 -1
  260. package/esm/indicators/acceleration-bands.src.js +1 -1
  261. package/esm/indicators/accumulation-distribution.js +1 -1
  262. package/esm/indicators/accumulation-distribution.src.js +1 -1
  263. package/esm/indicators/ao.js +1 -1
  264. package/esm/indicators/ao.src.js +1 -1
  265. package/esm/indicators/apo.js +1 -1
  266. package/esm/indicators/apo.src.js +1 -1
  267. package/esm/indicators/aroon-oscillator.js +1 -1
  268. package/esm/indicators/aroon-oscillator.src.js +1 -1
  269. package/esm/indicators/aroon.js +1 -1
  270. package/esm/indicators/aroon.src.js +1 -1
  271. package/esm/indicators/atr.js +1 -1
  272. package/esm/indicators/atr.src.js +1 -1
  273. package/esm/indicators/bollinger-bands.js +1 -1
  274. package/esm/indicators/bollinger-bands.src.js +1 -1
  275. package/esm/indicators/cci.js +1 -1
  276. package/esm/indicators/cci.src.js +1 -1
  277. package/esm/indicators/chaikin.js +1 -1
  278. package/esm/indicators/chaikin.src.js +1 -1
  279. package/esm/indicators/cmf.js +1 -1
  280. package/esm/indicators/cmf.src.js +1 -1
  281. package/esm/indicators/cmo.js +1 -1
  282. package/esm/indicators/cmo.src.js +1 -1
  283. package/esm/indicators/dema.js +1 -1
  284. package/esm/indicators/dema.src.js +1 -1
  285. package/esm/indicators/disparity-index.js +1 -1
  286. package/esm/indicators/disparity-index.src.js +1 -1
  287. package/esm/indicators/dmi.js +1 -1
  288. package/esm/indicators/dmi.src.js +1 -1
  289. package/esm/indicators/dpo.js +1 -1
  290. package/esm/indicators/dpo.src.js +1 -1
  291. package/esm/indicators/ema.src.js +0 -3
  292. package/esm/indicators/ichimoku-kinko-hyo.js +1 -1
  293. package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
  294. package/esm/indicators/indicators-all.js +2 -2
  295. package/esm/indicators/indicators-all.src.js +2 -2
  296. package/esm/indicators/indicators.js +1 -1
  297. package/esm/indicators/indicators.src.js +1 -1
  298. package/esm/indicators/keltner-channels.js +1 -1
  299. package/esm/indicators/keltner-channels.src.js +1 -1
  300. package/esm/indicators/klinger.js +1 -1
  301. package/esm/indicators/klinger.src.js +1 -1
  302. package/esm/indicators/macd.js +2 -2
  303. package/esm/indicators/macd.src.js +2 -2
  304. package/esm/indicators/mfi.js +1 -1
  305. package/esm/indicators/mfi.src.js +1 -1
  306. package/esm/indicators/momentum.js +1 -1
  307. package/esm/indicators/momentum.src.js +1 -1
  308. package/esm/indicators/natr.js +1 -1
  309. package/esm/indicators/natr.src.js +1 -1
  310. package/esm/indicators/obv.js +1 -1
  311. package/esm/indicators/obv.src.js +1 -1
  312. package/esm/indicators/pivot-points.js +1 -1
  313. package/esm/indicators/pivot-points.src.js +1 -1
  314. package/esm/indicators/ppo.js +1 -1
  315. package/esm/indicators/ppo.src.js +1 -1
  316. package/esm/indicators/price-channel.js +1 -1
  317. package/esm/indicators/price-channel.src.js +1 -1
  318. package/esm/indicators/price-envelopes.js +1 -1
  319. package/esm/indicators/price-envelopes.src.js +1 -1
  320. package/esm/indicators/psar.js +1 -1
  321. package/esm/indicators/psar.src.js +1 -1
  322. package/esm/indicators/regressions.js +1 -1
  323. package/esm/indicators/regressions.src.js +1 -1
  324. package/esm/indicators/roc.js +1 -1
  325. package/esm/indicators/roc.src.js +1 -1
  326. package/esm/indicators/rsi.js +1 -1
  327. package/esm/indicators/rsi.src.js +1 -1
  328. package/esm/indicators/slow-stochastic.js +1 -1
  329. package/esm/indicators/slow-stochastic.src.js +1 -1
  330. package/esm/indicators/stochastic.js +1 -1
  331. package/esm/indicators/stochastic.src.js +1 -1
  332. package/esm/indicators/supertrend.js +1 -1
  333. package/esm/indicators/supertrend.src.js +1 -1
  334. package/esm/indicators/tema.js +1 -1
  335. package/esm/indicators/tema.src.js +1 -1
  336. package/esm/indicators/trendline.js +1 -1
  337. package/esm/indicators/trendline.src.js +1 -1
  338. package/esm/indicators/trix.js +1 -1
  339. package/esm/indicators/trix.src.js +1 -1
  340. package/esm/indicators/volume-by-price.js +1 -1
  341. package/esm/indicators/volume-by-price.src.js +1 -1
  342. package/esm/indicators/vwap.js +1 -1
  343. package/esm/indicators/vwap.src.js +1 -1
  344. package/esm/indicators/williams-r.js +1 -1
  345. package/esm/indicators/williams-r.src.js +1 -1
  346. package/esm/indicators/wma.js +1 -1
  347. package/esm/indicators/wma.src.js +1 -1
  348. package/esm/indicators/zigzag.js +1 -1
  349. package/esm/indicators/zigzag.src.js +1 -1
  350. package/esm/modules/accessibility.js +2 -2
  351. package/esm/modules/accessibility.src.js +47 -21
  352. package/esm/modules/annotations-advanced.js +2 -2
  353. package/esm/modules/annotations-advanced.src.js +8 -5
  354. package/esm/modules/annotations.js +2 -2
  355. package/esm/modules/annotations.src.js +9 -6
  356. package/esm/modules/arc-diagram.js +2 -2
  357. package/esm/modules/arc-diagram.src.js +3 -3
  358. package/esm/modules/arrow-symbols.js +1 -1
  359. package/esm/modules/arrow-symbols.src.js +1 -1
  360. package/esm/modules/boost-canvas.js +2 -2
  361. package/esm/modules/boost-canvas.src.js +80 -50
  362. package/esm/modules/boost.js +2 -2
  363. package/esm/modules/boost.src.js +85 -46
  364. package/esm/modules/broken-axis.js +2 -2
  365. package/esm/modules/broken-axis.src.js +115 -91
  366. package/esm/modules/bullet.js +1 -1
  367. package/esm/modules/bullet.src.js +1 -1
  368. package/esm/modules/coloraxis.js +2 -2
  369. package/esm/modules/coloraxis.src.js +6 -7
  370. package/esm/modules/current-date-indicator.js +1 -1
  371. package/esm/modules/current-date-indicator.src.js +1 -1
  372. package/esm/modules/cylinder.js +1 -1
  373. package/esm/modules/cylinder.src.js +1 -1
  374. package/esm/modules/data-tools.js +2 -2
  375. package/esm/modules/data-tools.src.js +318 -57
  376. package/esm/modules/data.js +1 -1
  377. package/esm/modules/data.src.js +1 -1
  378. package/esm/modules/datagrouping.js +1 -1
  379. package/esm/modules/datagrouping.src.js +1 -1
  380. package/esm/modules/debugger.js +1 -1
  381. package/esm/modules/debugger.src.js +1 -1
  382. package/esm/modules/dependency-wheel.js +2 -2
  383. package/esm/modules/dependency-wheel.src.js +3 -3
  384. package/esm/modules/dotplot.js +1 -1
  385. package/esm/modules/dotplot.src.js +1 -1
  386. package/esm/modules/drag-panes.js +1 -1
  387. package/esm/modules/drag-panes.src.js +1 -1
  388. package/esm/modules/draggable-points.js +1 -1
  389. package/esm/modules/draggable-points.src.js +1 -1
  390. package/esm/modules/drilldown.js +1 -1
  391. package/esm/modules/drilldown.src.js +2 -2
  392. package/esm/modules/dumbbell.js +1 -1
  393. package/esm/modules/dumbbell.src.js +1 -1
  394. package/esm/modules/export-data.js +2 -2
  395. package/esm/modules/export-data.src.js +7 -7
  396. package/esm/modules/exporting.js +2 -2
  397. package/esm/modules/exporting.src.js +91 -3
  398. package/esm/modules/flowmap.js +1 -1
  399. package/esm/modules/flowmap.src.js +1 -1
  400. package/esm/modules/full-screen.js +1 -1
  401. package/esm/modules/full-screen.src.js +1 -1
  402. package/esm/modules/funnel.js +1 -1
  403. package/esm/modules/funnel.src.js +7 -3
  404. package/esm/modules/funnel3d.js +1 -1
  405. package/esm/modules/funnel3d.src.js +1 -1
  406. package/esm/modules/gantt.js +2 -2
  407. package/esm/modules/gantt.src.js +222 -188
  408. package/esm/modules/geoheatmap.js +1 -1
  409. package/esm/modules/geoheatmap.src.js +1 -1
  410. package/esm/modules/grid-axis.js +1 -1
  411. package/esm/modules/grid-axis.src.js +1 -1
  412. package/esm/modules/heatmap.js +1 -1
  413. package/esm/modules/heatmap.src.js +1 -1
  414. package/esm/modules/heikinashi.js +1 -1
  415. package/esm/modules/heikinashi.src.js +1 -1
  416. package/esm/modules/histogram-bellcurve.js +2 -2
  417. package/esm/modules/histogram-bellcurve.src.js +36 -27
  418. package/esm/modules/hollowcandlestick.js +1 -1
  419. package/esm/modules/hollowcandlestick.src.js +1 -1
  420. package/esm/modules/item-series.js +1 -1
  421. package/esm/modules/item-series.src.js +1 -1
  422. package/esm/modules/lollipop.js +1 -1
  423. package/esm/modules/lollipop.src.js +1 -1
  424. package/esm/modules/map.js +1 -1
  425. package/esm/modules/map.src.js +1 -1
  426. package/esm/modules/marker-clusters.js +1 -1
  427. package/esm/modules/marker-clusters.src.js +1 -1
  428. package/esm/modules/mouse-wheel-zoom.js +1 -1
  429. package/esm/modules/mouse-wheel-zoom.src.js +1 -1
  430. package/esm/modules/navigator.js +2 -2
  431. package/esm/modules/navigator.src.js +20 -18
  432. package/esm/modules/networkgraph.js +2 -2
  433. package/esm/modules/networkgraph.src.js +10 -3
  434. package/esm/modules/no-data-to-display.js +1 -1
  435. package/esm/modules/no-data-to-display.src.js +1 -1
  436. package/esm/modules/non-cartesian-zoom.js +2 -2
  437. package/esm/modules/non-cartesian-zoom.src.js +26 -26
  438. package/esm/modules/offline-exporting.js +2 -2
  439. package/esm/modules/offline-exporting.src.js +5 -3
  440. package/esm/modules/organization.js +2 -2
  441. package/esm/modules/organization.src.js +3 -3
  442. package/esm/modules/parallel-coordinates.js +1 -1
  443. package/esm/modules/parallel-coordinates.src.js +1 -1
  444. package/esm/modules/pareto.js +1 -1
  445. package/esm/modules/pareto.src.js +1 -1
  446. package/esm/modules/pathfinder.js +1 -1
  447. package/esm/modules/pathfinder.src.js +1 -1
  448. package/esm/modules/pattern-fill.js +1 -1
  449. package/esm/modules/pattern-fill.src.js +1 -1
  450. package/esm/modules/pictorial.js +1 -1
  451. package/esm/modules/pictorial.src.js +1 -1
  452. package/esm/modules/pointandfigure.js +1 -1
  453. package/esm/modules/pointandfigure.src.js +1 -1
  454. package/esm/modules/price-indicator.js +1 -1
  455. package/esm/modules/price-indicator.src.js +1 -1
  456. package/esm/modules/pyramid3d.js +1 -1
  457. package/esm/modules/pyramid3d.src.js +1 -1
  458. package/esm/modules/renko.js +1 -1
  459. package/esm/modules/renko.src.js +1 -1
  460. package/esm/modules/sankey.js +2 -2
  461. package/esm/modules/sankey.src.js +3 -3
  462. package/esm/modules/series-label.js +1 -1
  463. package/esm/modules/series-label.src.js +1 -1
  464. package/esm/modules/series-on-point.js +2 -2
  465. package/esm/modules/series-on-point.src.js +1 -9
  466. package/esm/modules/solid-gauge.js +1 -1
  467. package/esm/modules/solid-gauge.src.js +20 -3
  468. package/esm/modules/sonification.js +2 -2
  469. package/esm/modules/sonification.src.js +5 -3
  470. package/esm/modules/static-scale.js +2 -2
  471. package/esm/modules/static-scale.src.js +14 -12
  472. package/esm/modules/stock-tools.js +2 -2
  473. package/esm/modules/stock-tools.src.js +3 -3
  474. package/esm/modules/stock.js +2 -2
  475. package/esm/modules/stock.src.js +68 -76
  476. package/esm/modules/streamgraph.js +1 -1
  477. package/esm/modules/streamgraph.src.js +1 -1
  478. package/esm/modules/sunburst.js +2 -2
  479. package/esm/modules/sunburst.src.js +9 -9
  480. package/esm/modules/textpath.js +2 -2
  481. package/esm/modules/textpath.src.js +3 -3
  482. package/esm/modules/tiledwebmap.js +1 -1
  483. package/esm/modules/tiledwebmap.src.js +1 -1
  484. package/esm/modules/tilemap.js +1 -1
  485. package/esm/modules/tilemap.src.js +1 -1
  486. package/esm/modules/timeline.js +1 -1
  487. package/esm/modules/timeline.src.js +1 -1
  488. package/esm/modules/treegraph.js +2 -2
  489. package/esm/modules/treegraph.src.js +13 -7
  490. package/esm/modules/treegrid.js +2 -2
  491. package/esm/modules/treegrid.src.js +190 -159
  492. package/esm/modules/treemap.js +2 -2
  493. package/esm/modules/treemap.src.js +7 -7
  494. package/esm/modules/variable-pie.js +1 -1
  495. package/esm/modules/variable-pie.src.js +1 -1
  496. package/esm/modules/variwide.js +2 -2
  497. package/esm/modules/variwide.src.js +10 -12
  498. package/esm/modules/vector.js +1 -1
  499. package/esm/modules/vector.src.js +1 -1
  500. package/esm/modules/venn.js +2 -2
  501. package/esm/modules/venn.src.js +5 -3
  502. package/esm/modules/windbarb.js +1 -1
  503. package/esm/modules/windbarb.src.js +1 -1
  504. package/esm/modules/wordcloud.js +1 -1
  505. package/esm/modules/wordcloud.src.js +2 -2
  506. package/esm/modules/xrange.js +2 -2
  507. package/esm/modules/xrange.src.js +3 -2
  508. package/esm/standalone-navigator.js +7 -5
  509. package/esm/standalone-navigator.src.js +172 -122
  510. package/esm/themes/adaptive.js +1 -1
  511. package/esm/themes/adaptive.src.js +1 -1
  512. package/esm/themes/avocado.js +1 -1
  513. package/esm/themes/avocado.src.js +1 -1
  514. package/esm/themes/brand-dark.js +1 -1
  515. package/esm/themes/brand-dark.src.js +1 -1
  516. package/esm/themes/brand-light.js +1 -1
  517. package/esm/themes/brand-light.src.js +1 -1
  518. package/esm/themes/dark-blue.js +1 -1
  519. package/esm/themes/dark-blue.src.js +1 -1
  520. package/esm/themes/dark-green.js +1 -1
  521. package/esm/themes/dark-green.src.js +1 -1
  522. package/esm/themes/dark-unica.js +1 -1
  523. package/esm/themes/dark-unica.src.js +1 -1
  524. package/esm/themes/gray.js +1 -1
  525. package/esm/themes/gray.src.js +1 -1
  526. package/esm/themes/grid-light.js +1 -1
  527. package/esm/themes/grid-light.src.js +1 -1
  528. package/esm/themes/grid.js +1 -1
  529. package/esm/themes/grid.src.js +1 -1
  530. package/esm/themes/high-contrast-dark.js +1 -1
  531. package/esm/themes/high-contrast-dark.src.js +1 -1
  532. package/esm/themes/high-contrast-light.js +1 -1
  533. package/esm/themes/high-contrast-light.src.js +1 -1
  534. package/esm/themes/sand-signika.js +1 -1
  535. package/esm/themes/sand-signika.src.js +1 -1
  536. package/esm/themes/skies.js +1 -1
  537. package/esm/themes/skies.src.js +1 -1
  538. package/esm/themes/sunset.js +1 -1
  539. package/esm/themes/sunset.src.js +1 -1
  540. package/highcharts-3d.js +3 -3
  541. package/highcharts-3d.src.js +2 -5
  542. package/highcharts-gantt.js +10 -11
  543. package/highcharts-gantt.src.js +383 -295
  544. package/highcharts-more.d.ts +9 -0
  545. package/highcharts-more.js +3 -3
  546. package/highcharts-more.src.d.ts +9 -0
  547. package/highcharts-more.src.js +475 -31
  548. package/highcharts.d.ts +28 -46
  549. package/highcharts.js +4 -4
  550. package/highcharts.src.d.ts +28 -46
  551. package/highcharts.src.js +140 -93
  552. package/highmaps.js +4 -11
  553. package/highmaps.src.js +157 -111
  554. package/highstock.js +4 -11
  555. package/highstock.src.js +329 -266
  556. package/i18n/fr-FR.js +1 -1
  557. package/i18n/fr-FR.src.js +1 -1
  558. package/i18n/nb-NO.js +1 -1
  559. package/i18n/nb-NO.src.js +1 -1
  560. package/i18n/zh-CN.js +1 -1
  561. package/i18n/zh-CN.src.js +1 -1
  562. package/indicators/acceleration-bands.js +1 -1
  563. package/indicators/acceleration-bands.src.js +1 -1
  564. package/indicators/accumulation-distribution.js +1 -1
  565. package/indicators/accumulation-distribution.src.js +1 -1
  566. package/indicators/ao.js +1 -1
  567. package/indicators/ao.src.js +1 -1
  568. package/indicators/apo.js +1 -1
  569. package/indicators/apo.src.js +1 -1
  570. package/indicators/aroon-oscillator.js +1 -1
  571. package/indicators/aroon-oscillator.src.js +1 -1
  572. package/indicators/aroon.js +1 -1
  573. package/indicators/aroon.src.js +1 -1
  574. package/indicators/atr.js +1 -1
  575. package/indicators/atr.src.js +1 -1
  576. package/indicators/bollinger-bands.js +1 -1
  577. package/indicators/bollinger-bands.src.js +1 -1
  578. package/indicators/cci.js +1 -1
  579. package/indicators/cci.src.js +1 -1
  580. package/indicators/chaikin.js +1 -1
  581. package/indicators/chaikin.src.js +1 -1
  582. package/indicators/cmf.js +1 -1
  583. package/indicators/cmf.src.js +1 -1
  584. package/indicators/cmo.js +1 -1
  585. package/indicators/cmo.src.js +1 -1
  586. package/indicators/dema.js +1 -1
  587. package/indicators/dema.src.js +1 -1
  588. package/indicators/disparity-index.js +1 -1
  589. package/indicators/disparity-index.src.js +1 -1
  590. package/indicators/dmi.js +1 -1
  591. package/indicators/dmi.src.js +1 -1
  592. package/indicators/dpo.js +1 -1
  593. package/indicators/dpo.src.js +1 -1
  594. package/indicators/ema.src.js +0 -3
  595. package/indicators/ichimoku-kinko-hyo.js +1 -1
  596. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  597. package/indicators/indicators-all.js +2 -2
  598. package/indicators/indicators-all.src.js +2 -2
  599. package/indicators/indicators.js +1 -1
  600. package/indicators/indicators.src.js +1 -1
  601. package/indicators/keltner-channels.js +1 -1
  602. package/indicators/keltner-channels.src.js +1 -1
  603. package/indicators/klinger.js +1 -1
  604. package/indicators/klinger.src.js +1 -1
  605. package/indicators/macd.js +2 -2
  606. package/indicators/macd.src.js +2 -2
  607. package/indicators/mfi.js +1 -1
  608. package/indicators/mfi.src.js +1 -1
  609. package/indicators/momentum.js +1 -1
  610. package/indicators/momentum.src.js +1 -1
  611. package/indicators/natr.js +1 -1
  612. package/indicators/natr.src.js +1 -1
  613. package/indicators/obv.js +1 -1
  614. package/indicators/obv.src.js +1 -1
  615. package/indicators/pivot-points.js +1 -1
  616. package/indicators/pivot-points.src.js +1 -1
  617. package/indicators/ppo.js +1 -1
  618. package/indicators/ppo.src.js +1 -1
  619. package/indicators/price-channel.js +1 -1
  620. package/indicators/price-channel.src.js +1 -1
  621. package/indicators/price-envelopes.js +1 -1
  622. package/indicators/price-envelopes.src.js +1 -1
  623. package/indicators/psar.js +1 -1
  624. package/indicators/psar.src.js +1 -1
  625. package/indicators/regressions.js +1 -1
  626. package/indicators/regressions.src.js +1 -1
  627. package/indicators/roc.js +1 -1
  628. package/indicators/roc.src.js +1 -1
  629. package/indicators/rsi.js +1 -1
  630. package/indicators/rsi.src.js +1 -1
  631. package/indicators/slow-stochastic.js +1 -1
  632. package/indicators/slow-stochastic.src.js +1 -1
  633. package/indicators/stochastic.js +1 -1
  634. package/indicators/stochastic.src.js +1 -1
  635. package/indicators/supertrend.js +1 -1
  636. package/indicators/supertrend.src.js +1 -1
  637. package/indicators/tema.js +1 -1
  638. package/indicators/tema.src.js +1 -1
  639. package/indicators/trendline.js +1 -1
  640. package/indicators/trendline.src.js +1 -1
  641. package/indicators/trix.js +1 -1
  642. package/indicators/trix.src.js +1 -1
  643. package/indicators/volume-by-price.js +1 -1
  644. package/indicators/volume-by-price.src.js +1 -1
  645. package/indicators/vwap.js +1 -1
  646. package/indicators/vwap.src.js +1 -1
  647. package/indicators/williams-r.js +1 -1
  648. package/indicators/williams-r.src.js +1 -1
  649. package/indicators/wma.js +1 -1
  650. package/indicators/wma.src.js +1 -1
  651. package/indicators/zigzag.js +1 -1
  652. package/indicators/zigzag.src.js +1 -1
  653. package/modules/accessibility.d.ts +0 -2
  654. package/modules/accessibility.js +2 -2
  655. package/modules/accessibility.src.d.ts +0 -2
  656. package/modules/accessibility.src.js +47 -21
  657. package/modules/annotations-advanced.js +6 -6
  658. package/modules/annotations-advanced.src.js +22 -19
  659. package/modules/annotations.js +2 -2
  660. package/modules/annotations.src.js +9 -6
  661. package/modules/arc-diagram.js +2 -2
  662. package/modules/arc-diagram.src.js +3 -3
  663. package/modules/arrow-symbols.js +1 -1
  664. package/modules/arrow-symbols.src.js +1 -1
  665. package/modules/boost-canvas.js +2 -2
  666. package/modules/boost-canvas.src.js +80 -50
  667. package/modules/boost.js +2 -2
  668. package/modules/boost.src.js +85 -46
  669. package/modules/broken-axis.js +2 -2
  670. package/modules/broken-axis.src.js +115 -91
  671. package/modules/bullet.js +1 -1
  672. package/modules/bullet.src.js +1 -1
  673. package/modules/coloraxis.js +2 -2
  674. package/modules/coloraxis.src.js +6 -7
  675. package/modules/current-date-indicator.js +1 -1
  676. package/modules/current-date-indicator.src.js +1 -1
  677. package/modules/cylinder.js +1 -1
  678. package/modules/cylinder.src.js +1 -1
  679. package/modules/data-tools.js +2 -2
  680. package/modules/data-tools.src.js +318 -57
  681. package/modules/data.js +1 -1
  682. package/modules/data.src.js +1 -1
  683. package/modules/datagrouping.js +1 -1
  684. package/modules/datagrouping.src.js +1 -1
  685. package/modules/debugger.js +1 -1
  686. package/modules/debugger.src.js +1 -1
  687. package/modules/dependency-wheel.js +2 -2
  688. package/modules/dependency-wheel.src.js +3 -3
  689. package/modules/dotplot.js +1 -1
  690. package/modules/dotplot.src.js +1 -1
  691. package/modules/drag-panes.js +1 -1
  692. package/modules/drag-panes.src.js +1 -1
  693. package/modules/draggable-points.js +1 -1
  694. package/modules/draggable-points.src.js +1 -1
  695. package/modules/drilldown.js +1 -1
  696. package/modules/drilldown.src.js +2 -2
  697. package/modules/dumbbell.js +1 -1
  698. package/modules/dumbbell.src.js +1 -1
  699. package/modules/export-data.js +2 -2
  700. package/modules/export-data.src.js +7 -7
  701. package/modules/exporting.js +2 -2
  702. package/modules/exporting.src.js +91 -3
  703. package/modules/flowmap.js +1 -1
  704. package/modules/flowmap.src.js +1 -1
  705. package/modules/full-screen.js +1 -1
  706. package/modules/full-screen.src.js +1 -1
  707. package/modules/funnel.js +1 -1
  708. package/modules/funnel.src.js +7 -3
  709. package/modules/funnel3d.js +1 -1
  710. package/modules/funnel3d.src.js +1 -1
  711. package/modules/gantt.js +14 -14
  712. package/modules/gantt.src.js +241 -206
  713. package/modules/geoheatmap.js +1 -1
  714. package/modules/geoheatmap.src.js +1 -1
  715. package/modules/grid-axis.js +1 -1
  716. package/modules/grid-axis.src.js +1 -1
  717. package/modules/heatmap.js +10 -10
  718. package/modules/heatmap.src.js +20 -21
  719. package/modules/heikinashi.js +1 -1
  720. package/modules/heikinashi.src.js +1 -1
  721. package/modules/histogram-bellcurve.d.ts +1 -2
  722. package/modules/histogram-bellcurve.js +2 -2
  723. package/modules/histogram-bellcurve.src.d.ts +1 -2
  724. package/modules/histogram-bellcurve.src.js +36 -27
  725. package/modules/hollowcandlestick.js +1 -1
  726. package/modules/hollowcandlestick.src.js +1 -1
  727. package/modules/item-series.js +1 -1
  728. package/modules/item-series.src.js +1 -1
  729. package/modules/lollipop.js +1 -1
  730. package/modules/lollipop.src.js +1 -1
  731. package/modules/map.js +10 -10
  732. package/modules/map.src.js +21 -22
  733. package/modules/marker-clusters.js +1 -1
  734. package/modules/marker-clusters.src.js +1 -1
  735. package/modules/mouse-wheel-zoom.js +1 -1
  736. package/modules/mouse-wheel-zoom.src.js +1 -1
  737. package/modules/navigator.js +2 -2
  738. package/modules/navigator.src.js +20 -18
  739. package/modules/networkgraph.js +2 -2
  740. package/modules/networkgraph.src.js +10 -3
  741. package/modules/no-data-to-display.js +1 -1
  742. package/modules/no-data-to-display.src.js +1 -1
  743. package/modules/non-cartesian-zoom.js +2 -2
  744. package/modules/non-cartesian-zoom.src.js +26 -26
  745. package/modules/offline-exporting.js +2 -2
  746. package/modules/offline-exporting.src.js +5 -3
  747. package/modules/organization.js +2 -2
  748. package/modules/organization.src.js +3 -3
  749. package/modules/parallel-coordinates.js +1 -1
  750. package/modules/parallel-coordinates.src.js +1 -1
  751. package/modules/pareto.js +1 -1
  752. package/modules/pareto.src.js +1 -1
  753. package/modules/pathfinder.js +1 -1
  754. package/modules/pathfinder.src.js +1 -1
  755. package/modules/pattern-fill.js +1 -1
  756. package/modules/pattern-fill.src.js +1 -1
  757. package/modules/pictorial.js +1 -1
  758. package/modules/pictorial.src.js +1 -1
  759. package/modules/pointandfigure.js +1 -1
  760. package/modules/pointandfigure.src.js +1 -1
  761. package/modules/price-indicator.js +1 -1
  762. package/modules/price-indicator.src.js +1 -1
  763. package/modules/pyramid3d.js +1 -1
  764. package/modules/pyramid3d.src.js +1 -1
  765. package/modules/renko.js +1 -1
  766. package/modules/renko.src.js +1 -1
  767. package/modules/sankey.js +2 -2
  768. package/modules/sankey.src.js +3 -3
  769. package/modules/series-label.js +1 -1
  770. package/modules/series-label.src.js +1 -1
  771. package/modules/series-on-point.js +2 -2
  772. package/modules/series-on-point.src.js +6 -16
  773. package/modules/solid-gauge.js +1 -1
  774. package/modules/solid-gauge.src.js +20 -3
  775. package/modules/sonification.js +2 -2
  776. package/modules/sonification.src.js +5 -3
  777. package/modules/static-scale.js +2 -2
  778. package/modules/static-scale.src.js +14 -12
  779. package/modules/stock-tools.js +2 -2
  780. package/modules/stock-tools.src.js +3 -3
  781. package/modules/stock.js +8 -16
  782. package/modules/stock.src.js +203 -187
  783. package/modules/streamgraph.js +1 -1
  784. package/modules/streamgraph.src.js +1 -1
  785. package/modules/sunburst.js +2 -2
  786. package/modules/sunburst.src.js +9 -9
  787. package/modules/textpath.js +2 -2
  788. package/modules/textpath.src.js +3 -3
  789. package/modules/tiledwebmap.js +1 -1
  790. package/modules/tiledwebmap.src.js +1 -1
  791. package/modules/tilemap.js +1 -1
  792. package/modules/tilemap.src.js +1 -1
  793. package/modules/timeline.js +1 -1
  794. package/modules/timeline.src.js +1 -1
  795. package/modules/treegraph.js +2 -2
  796. package/modules/treegraph.src.js +13 -7
  797. package/modules/treegrid.js +2 -2
  798. package/modules/treegrid.src.js +190 -159
  799. package/modules/treemap.js +2 -2
  800. package/modules/treemap.src.js +7 -7
  801. package/modules/variable-pie.js +1 -1
  802. package/modules/variable-pie.src.js +1 -1
  803. package/modules/variwide.js +2 -2
  804. package/modules/variwide.src.js +10 -12
  805. package/modules/vector.js +1 -1
  806. package/modules/vector.src.js +1 -1
  807. package/modules/venn.js +2 -2
  808. package/modules/venn.src.js +5 -3
  809. package/modules/windbarb.js +1 -1
  810. package/modules/windbarb.src.js +1 -1
  811. package/modules/wordcloud.js +1 -1
  812. package/modules/wordcloud.src.js +2 -2
  813. package/modules/xrange.js +2 -2
  814. package/modules/xrange.src.js +3 -2
  815. package/options/solidgauge.d.ts +6 -0
  816. package/options/solidgauge.src.d.ts +6 -0
  817. package/package.json +1 -1
  818. package/standalone-navigator.js +7 -5
  819. package/standalone-navigator.src.js +172 -122
  820. package/themes/adaptive.js +1 -1
  821. package/themes/adaptive.src.js +1 -1
  822. package/themes/avocado.js +1 -1
  823. package/themes/avocado.src.js +1 -1
  824. package/themes/brand-dark.js +1 -1
  825. package/themes/brand-dark.src.js +1 -1
  826. package/themes/brand-light.js +1 -1
  827. package/themes/brand-light.src.js +1 -1
  828. package/themes/dark-blue.js +1 -1
  829. package/themes/dark-blue.src.js +1 -1
  830. package/themes/dark-green.js +1 -1
  831. package/themes/dark-green.src.js +1 -1
  832. package/themes/dark-unica.js +1 -1
  833. package/themes/dark-unica.src.js +1 -1
  834. package/themes/gray.js +1 -1
  835. package/themes/gray.src.js +1 -1
  836. package/themes/grid-light.js +1 -1
  837. package/themes/grid-light.src.js +1 -1
  838. package/themes/grid.js +1 -1
  839. package/themes/grid.src.js +1 -1
  840. package/themes/high-contrast-dark.js +1 -1
  841. package/themes/high-contrast-dark.src.js +1 -1
  842. package/themes/high-contrast-light.js +1 -1
  843. package/themes/high-contrast-light.src.js +1 -1
  844. package/themes/sand-signika.js +1 -1
  845. package/themes/sand-signika.src.js +1 -1
  846. package/themes/skies.js +1 -1
  847. package/themes/skies.src.js +1 -1
  848. package/themes/sunset.js +1 -1
  849. package/themes/sunset.src.js +1 -1
@@ -0,0 +1,168 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Dawid Dragula
11
+ *
12
+ * */
13
+ 'use strict';
14
+ import DataModifier from './DataModifier.js';
15
+ import U from '../../Core/Utilities.js';
16
+ const { isFunction, merge } = U;
17
+ /* *
18
+ *
19
+ * Class
20
+ *
21
+ * */
22
+ /**
23
+ * Filters out table rows matching a given condition.
24
+ */
25
+ class FilterModifier extends DataModifier {
26
+ /* *
27
+ *
28
+ * Static Functions
29
+ *
30
+ * */
31
+ /**
32
+ * Compiles a filter condition into a callback function.
33
+ *
34
+ * @param {FilterCondition} condition
35
+ * Condition to compile.
36
+ */
37
+ static compile(condition) {
38
+ if (isFunction(condition)) {
39
+ return condition;
40
+ }
41
+ const op = condition.operator;
42
+ switch (op) {
43
+ case 'and': {
44
+ const subs = condition.conditions.map((c) => this.compile(c));
45
+ return (row, table, i) => subs.every((cond) => cond(row, table, i));
46
+ }
47
+ case 'or': {
48
+ const subs = condition.conditions.map((c) => this.compile(c));
49
+ return (row, table, i) => subs.some((cond) => cond(row, table, i));
50
+ }
51
+ case 'not': {
52
+ const sub = this.compile(condition.condition);
53
+ return (row, table, i) => !sub(row, table, i);
54
+ }
55
+ }
56
+ const { columnName: col, value } = condition;
57
+ switch (op) {
58
+ case '==':
59
+ // eslint-disable-next-line eqeqeq
60
+ return (row) => row[col] == value;
61
+ case '===':
62
+ return (row) => row[col] === value;
63
+ case '!=':
64
+ // eslint-disable-next-line eqeqeq
65
+ return (row) => row[col] != value;
66
+ case '!==':
67
+ return (row) => row[col] !== value;
68
+ case '>':
69
+ return (row) => (row[col] || 0) > (value || 0);
70
+ case '>=':
71
+ return (row) => (row[col] || 0) >= (value || 0);
72
+ case '<':
73
+ return (row) => (row[col] || 0) < (value || 0);
74
+ case '<=':
75
+ return (row) => (row[col] || 0) <= (value || 0);
76
+ }
77
+ const { ignoreCase } = condition;
78
+ const str = (val) => {
79
+ const s = '' + val;
80
+ return (ignoreCase ?? true) ? s.toLowerCase() : s;
81
+ };
82
+ switch (op) {
83
+ case 'contains':
84
+ return (row) => str(row[col]).includes(str(value));
85
+ default:
86
+ return (row) => str(row[col])[op](str(value));
87
+ }
88
+ }
89
+ /* *
90
+ *
91
+ * Constructor
92
+ *
93
+ * */
94
+ /**
95
+ * Constructs an instance of the filter modifier.
96
+ *
97
+ * @param {Partial<FilterModifier.Options>} [options]
98
+ * Options to configure the filter modifier.
99
+ */
100
+ constructor(options) {
101
+ super();
102
+ this.options = merge(FilterModifier.defaultOptions, options);
103
+ }
104
+ /* *
105
+ *
106
+ * Functions
107
+ *
108
+ * */
109
+ /**
110
+ * Replaces table rows with filtered rows.
111
+ *
112
+ * @param {DataTable} table
113
+ * Table to modify.
114
+ *
115
+ * @param {DataEvent.Detail} [eventDetail]
116
+ * Custom information for pending events.
117
+ *
118
+ * @return {DataTable}
119
+ * Table with `modified` property as a reference.
120
+ */
121
+ modifyTable(table, eventDetail) {
122
+ const modifier = this;
123
+ modifier.emit({ type: 'modify', detail: eventDetail, table });
124
+ const { condition } = modifier.options;
125
+ if (!condition) {
126
+ // If no condition is set, return the unmodified table.
127
+ return table;
128
+ }
129
+ const matchRow = FilterModifier.compile(condition);
130
+ // This line should be investigated further when reworking Data Layer.
131
+ const modified = table.modified;
132
+ const rows = [];
133
+ const indexes = [];
134
+ for (let i = 0, iEnd = table.getRowCount(); i < iEnd; ++i) {
135
+ const row = table.getRowObject(i);
136
+ if (!row) {
137
+ continue;
138
+ }
139
+ if (matchRow(row, table, i)) {
140
+ rows.push(row);
141
+ indexes.push(modified.getOriginalRowIndex(i));
142
+ }
143
+ }
144
+ modified.deleteRows();
145
+ modified.setRows(rows);
146
+ modified.setOriginalRowIndexes(indexes);
147
+ modifier.emit({ type: 'afterModify', detail: eventDetail, table });
148
+ return table;
149
+ }
150
+ }
151
+ /* *
152
+ *
153
+ * Static Properties
154
+ *
155
+ * */
156
+ /**
157
+ * Default options for the filter modifier.
158
+ */
159
+ FilterModifier.defaultOptions = {
160
+ type: 'Filter'
161
+ };
162
+ DataModifier.registerType('Filter', FilterModifier);
163
+ /* *
164
+ *
165
+ * Default Export
166
+ *
167
+ * */
168
+ export default FilterModifier;
@@ -0,0 +1,14 @@
1
+ /* *
2
+ *
3
+ * (c) 2009-2025 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Dawid Dragula
11
+ *
12
+ * */
13
+ 'use strict';
14
+ export {};
@@ -41,6 +41,17 @@ class SortModifier extends DataModifier {
41
41
  (b || 0) > (a || 0) ? 1 :
42
42
  0);
43
43
  }
44
+ static compareFactory(direction, customCompare) {
45
+ if (customCompare) {
46
+ if (direction === 'desc') {
47
+ return (a, b) => -customCompare(a, b);
48
+ }
49
+ return customCompare;
50
+ }
51
+ return (direction === 'asc' ?
52
+ SortModifier.ascending :
53
+ SortModifier.descending);
54
+ }
44
55
  /* *
45
56
  *
46
57
  * Constructor
@@ -214,9 +225,7 @@ class SortModifier extends DataModifier {
214
225
  modifyTable(table, eventDetail) {
215
226
  const modifier = this;
216
227
  modifier.emit({ type: 'modify', detail: eventDetail, table });
217
- const columnNames = table.getColumnNames(), rowCount = table.getRowCount(), rowReferences = this.getRowReferences(table), { direction, orderByColumn, orderInColumn } = modifier.options, compare = (direction === 'asc' ?
218
- SortModifier.ascending :
219
- SortModifier.descending), orderByColumnIndex = columnNames.indexOf(orderByColumn), modified = table.modified;
228
+ const columnNames = table.getColumnNames(), rowCount = table.getRowCount(), rowReferences = this.getRowReferences(table), { direction, orderByColumn, orderInColumn, compare: customCompare } = modifier.options, compare = SortModifier.compareFactory(direction, customCompare), orderByColumnIndex = columnNames.indexOf(orderByColumn), modified = table.modified;
220
229
  if (orderByColumnIndex !== -1) {
221
230
  rowReferences.sort((a, b) => compare(a.row[orderByColumnIndex], b.row[orderByColumnIndex]));
222
231
  }
@@ -211,9 +211,12 @@ class MockPoint {
211
211
  * The mock point's options.
212
212
  */
213
213
  getOptions() {
214
- return this.hasDynamicOptions() ?
215
- this.options(this.target) :
216
- this.options;
214
+ if (this.hasDynamicOptions()) {
215
+ if (typeof this.options === 'function') {
216
+ return this.options(this.target);
217
+ }
218
+ }
219
+ return this.options;
217
220
  }
218
221
  /**
219
222
  * Check if the point has dynamic options.
@@ -319,7 +319,7 @@ const navigation = {
319
319
  * from a different server.
320
320
  *
321
321
  * @type {string}
322
- * @default https://code.highcharts.com/12.3.0/gfx/stock-icons/
322
+ * @default https://code.highcharts.com/12.4.0/gfx/stock-icons/
323
323
  * @since 7.1.3
324
324
  * @apioption navigation.iconsURL
325
325
  */
@@ -47,7 +47,7 @@ function onNavigationBindingsShowPopup(config) {
47
47
  this.popup = new Popup(this.chart.container, (this.chart.options.navigation.iconsURL ||
48
48
  (this.chart.options.stockTools &&
49
49
  this.chart.options.stockTools.gui.iconsURL) ||
50
- 'https://code.highcharts.com/12.3.0/gfx/stock-icons/'), this.chart);
50
+ 'https://code.highcharts.com/12.4.0/gfx/stock-icons/'), this.chart);
51
51
  }
52
52
  this.popup.showForm(config.formType, this.chart, config.options, config.onSubmit);
53
53
  }
@@ -110,7 +110,7 @@ function hasWebGLSupport() {
110
110
  return true;
111
111
  }
112
112
  }
113
- catch (e) {
113
+ catch {
114
114
  // Silent error
115
115
  }
116
116
  }
@@ -158,6 +158,10 @@ export default Boost;
158
158
  * Line chart with hundreds of series
159
159
  * @sample highcharts/boost/scatter
160
160
  * Scatter chart
161
+ * @sample highcharts/boost/scatter-pointcolor
162
+ * Scatter chart with colored points
163
+ * @sample highcharts/boost/scatter-colorbypoint
164
+ * Scatter chart with colorByPoint
161
165
  * @sample highcharts/boost/area
162
166
  * Area chart
163
167
  * @sample highcharts/boost/arearange
@@ -275,15 +275,18 @@ function createAndAttachRenderer(chart, series) {
275
275
  boost.canvas.width = width;
276
276
  boost.canvas.height = height;
277
277
  if (boost.clipRect) {
278
- const box = getBoostClipRect(chart, target),
278
+ const box = getBoostClipRect(chart, target);
279
+ boost.clipRect.attr(box);
279
280
  // When using panes, the image itself must be clipped. When not
280
281
  // using panes, it is better to clip the target group, because then
281
282
  // we preserve clipping on touch- and mousewheel zoom preview.
282
- clippedElement = (box.width === chart.clipBox.width &&
283
- box.height === chart.clipBox.height) ? targetGroup :
284
- (boost.targetFo || boost.target);
285
- boost.clipRect.attr(box);
286
- clippedElement?.clip(boost.clipRect);
283
+ if (box.width === chart.clipBox.width &&
284
+ box.height === chart.clipBox.height) {
285
+ targetGroup?.clip(chart.renderer.clipRect(box.x - 4, box.y, box.width + 4, box.height + 4)); // #9799
286
+ }
287
+ else {
288
+ (boost.targetFo || boost.target).clip(boost.clipRect);
289
+ }
287
290
  }
288
291
  boost.resize();
289
292
  boost.clear();
@@ -467,7 +470,7 @@ function exitBoost(series) {
467
470
  */
468
471
  function hasExtremes(series, checkX) {
469
472
  const options = series.options, dataLength = series.dataTable.modified.rowCount, xAxis = series.xAxis && series.xAxis.options, yAxis = series.yAxis && series.yAxis.options, colorAxis = series.colorAxis && series.colorAxis.options;
470
- return dataLength > (options.boostThreshold || Number.MAX_VALUE) &&
473
+ return dataLength > pick(options.boostThreshold, Number.MAX_VALUE) &&
471
474
  // Defined yAxis extremes
472
475
  isNumber(yAxis.min) &&
473
476
  isNumber(yAxis.max) &&
@@ -491,7 +494,7 @@ const getSeriesBoosting = (series, data) => {
491
494
  }
492
495
  return (isChartSeriesBoosting(series.chart) ||
493
496
  ((data ? data.length : 0) >=
494
- (series.options.boostThreshold || Number.MAX_VALUE)));
497
+ pick(series.options.boostThreshold, Number.MAX_VALUE)));
495
498
  };
496
499
  /**
497
500
  * Extend series.destroy to also remove the fake k-d-tree points (#5137).
@@ -557,7 +560,7 @@ function getPoint(series, boostPoint) {
557
560
  if (boostPoint instanceof PointClass) {
558
561
  return boostPoint;
559
562
  }
560
- const isScatter = series.is('scatter'), xData = ((isScatter && series.getColumn('x', true).length ?
563
+ const data = seriesOptions.data, isScatter = series.is('scatter'), xData = ((isScatter && series.getColumn('x', true).length ?
561
564
  series.getColumn('x', true) :
562
565
  void 0) ||
563
566
  (series.getColumn('x').length ? series.getColumn('x') : void 0) ||
@@ -565,9 +568,19 @@ function getPoint(series, boostPoint) {
565
568
  series.getColumn('x', true) ||
566
569
  false), yData = (series.getColumn('y', true) ||
567
570
  seriesOptions.yData ||
568
- false), point = new PointClass(series, (isScatter && xData && yData) ?
569
- [xData[boostPoint.i], yData[boostPoint.i]] :
570
- (isArray(series.options.data) ? series.options.data : [])[boostPoint.i], xData ? xData[boostPoint.i] : void 0);
571
+ false), pointIndex = boostPoint.i, pointColor = data?.[pointIndex]
572
+ ?.color, point = new PointClass(series, (isScatter && xData && yData) ?
573
+ [xData[pointIndex], yData[pointIndex]] :
574
+ (isArray(data) ? data : [])[pointIndex], xData ? xData[pointIndex] : void 0);
575
+ if (isScatter &&
576
+ seriesOptions?.keys?.length) {
577
+ const keys = seriesOptions.keys;
578
+ // Don't reassign X and Y properties as they're already handled above
579
+ for (let keysIndex = keys.length - 1; keysIndex > -1; keysIndex--) {
580
+ point[keys[keysIndex]] =
581
+ data[pointIndex][keysIndex];
582
+ }
583
+ }
571
584
  point.category = pick(xAxis.categories ?
572
585
  xAxis.categories[point.x] :
573
586
  point.x, // @todo simplify
@@ -577,9 +590,12 @@ function getPoint(series, boostPoint) {
577
590
  point.distX = boostPoint.distX;
578
591
  point.plotX = boostPoint.plotX;
579
592
  point.plotY = boostPoint.plotY;
580
- point.index = boostPoint.i;
593
+ point.index = pointIndex;
581
594
  point.percentage = boostPoint.percentage;
582
595
  point.isInside = series.isPointInside(point);
596
+ if (pointColor) {
597
+ point.color = pointColor; // Set color for hover effect #23370
598
+ }
583
599
  return point;
584
600
  }
585
601
  /**
@@ -795,11 +811,8 @@ function seriesRenderCanvas() {
795
811
  // Do not start building while drawing
796
812
  this.buildKDTree = noop;
797
813
  fireEvent(this, 'renderCanvas');
798
- if (this.is('line') &&
799
- lineWidth > 1 &&
800
- seriesBoost?.target &&
801
- chartBoost &&
802
- !chartBoost.lineWidthFilter) {
814
+ if (chartBoost && seriesBoost?.target && lineWidth > 1 && this.is('line')) {
815
+ chartBoost.lineWidthFilter?.remove();
803
816
  chartBoost.lineWidthFilter = chart.renderer.definition({
804
817
  tagName: 'filter',
805
818
  children: [
@@ -10,6 +10,8 @@
10
10
  *
11
11
  * */
12
12
  'use strict';
13
+ import BoostChart from './BoostChart.js';
14
+ const { getBoostClipRect } = BoostChart;
13
15
  import Color from '../../Core/Color/Color.js';
14
16
  const { parse: color } = Color;
15
17
  import H from '../../Core/Globals.js';
@@ -228,10 +230,9 @@ class WGLRenderer {
228
230
  /// threshold = options.threshold,
229
231
  // yBottom = chart.yAxis[0].getThreshold(threshold),
230
232
  // hasThreshold = isNumber(threshold),
231
- // colorByPoint = series.options.colorByPoint,
233
+ colorByPoint = series.options.colorByPoint,
232
234
  // This is required for color by point, so make sure this is
233
235
  // uncommented if enabling that
234
- // colorIndex = 0,
235
236
  // Required for color axis support
236
237
  // caxis,
237
238
  connectNulls = options.connectNulls,
@@ -243,7 +244,7 @@ class WGLRenderer {
243
244
  //
244
245
  skipped = 0, hadPoints = false,
245
246
  // The following are used in the builder while loop
246
- x, y, d, z, i = -1, px = false, nx = false, low, nextInside = false, prevInside = false, pcolor = false, isXInside = false, isYInside = true, firstPoint = true, zoneColors, zoneDefColor = false, gapSize = false, vlen = 0;
247
+ x, y, d, z, i = -1, px = false, nx = false, low, nextInside = false, prevInside = false, pcolor = void 0, isXInside = false, isYInside = true, firstPoint = true, zoneColors, zoneDefColor = false, gapSize = false, vlen = 0, colorIndex = 0;
247
248
  if (options.boostData && options.boostData.length > 0) {
248
249
  return;
249
250
  }
@@ -456,27 +457,29 @@ class WGLRenderer {
456
457
  if (chartDestroyed) {
457
458
  break;
458
459
  }
459
- // Uncomment this to enable color by point.
460
- // This currently left disabled as the charts look really ugly
461
- // when enabled and there's a lot of points.
462
- // Leaving in for the future (tm).
463
- // if (colorByPoint) {
464
- // colorIndex = ++colorIndex %
465
- // series.chart.options.colors.length;
466
- // pcolor = toRGBAFast(series.chart.options.colors[colorIndex]);
467
- // pcolor[0] /= 255.0;
468
- // pcolor[1] /= 255.0;
469
- // pcolor[2] /= 255.0;
470
- // }
471
460
  // Handle the point.color option (#5999)
472
461
  const pointOptions = rawData && rawData[i];
473
- if (!useRaw && isObject(pointOptions, true)) {
474
- if (pointOptions.color) {
462
+ if (!useRaw) {
463
+ if (isObject(pointOptions, true) && pointOptions.color) {
475
464
  pcolor = color(pointOptions.color).rgba;
465
+ }
466
+ const colorKeyIndex = series.options.keys?.indexOf('color');
467
+ if (Array.isArray(pointOptions) &&
468
+ colorKeyIndex &&
469
+ typeof pointOptions[colorKeyIndex] === 'string') {
470
+ pcolor = color(pointOptions[colorKeyIndex]).rgba;
471
+ }
472
+ else if (colorByPoint && chart.options.colors) {
473
+ colorIndex = colorIndex %
474
+ chart.options.colors.length;
475
+ pcolor = color(chart.options.colors[colorIndex]).rgba;
476
+ }
477
+ if (pcolor) {
476
478
  pcolor[0] /= 255.0;
477
479
  pcolor[1] /= 255.0;
478
480
  pcolor[2] /= 255.0;
479
481
  }
482
+ colorIndex++;
480
483
  }
481
484
  if (useRaw) {
482
485
  x = d[0];
@@ -683,15 +686,15 @@ class WGLRenderer {
683
686
  minVal = yAxis.toPixels(minVal, true);
684
687
  }
685
688
  // Need to add an extra point here
686
- vertice(x, minVal, 0, 0, pcolor);
689
+ vertice(x, minVal, false, 0, pcolor);
687
690
  }
688
691
  // Do step line if enabled.
689
692
  // Draws an additional point at the old Y at the new X.
690
693
  // See #6976.
691
694
  if (options.step && !firstPoint) {
692
- vertice(x, lastY, 0, 2, pcolor);
695
+ vertice(x, lastY, false, 2, pcolor);
693
696
  }
694
- vertice(x, y, 0, series.type === 'bubble' ? (z || 1) : 2, pcolor);
697
+ vertice(x, y, false, series.type === 'bubble' ? (z || 1) : 2, pcolor);
695
698
  // Uncomment this to support color axis.
696
699
  // if (caxis) {
697
700
  // pcolor = color(caxis.toColor(y)).rgba;
@@ -809,6 +812,7 @@ class WGLRenderer {
809
812
  const pixelRatio = this.getPixelRatio();
810
813
  shader.setUniform('xAxisTrans', axis.transA * pixelRatio);
811
814
  shader.setUniform('xAxisMin', axis.min);
815
+ shader.setUniform('xAxisMax', axis.max);
812
816
  shader.setUniform('xAxisMinPad', axis.minPixelPadding * pixelRatio);
813
817
  shader.setUniform('xAxisPointRange', axis.pointRange);
814
818
  shader.setUniform('xAxisLen', axis.len * pixelRatio);
@@ -831,6 +835,7 @@ class WGLRenderer {
831
835
  const pixelRatio = this.getPixelRatio();
832
836
  shader.setUniform('yAxisTrans', axis.transA * pixelRatio);
833
837
  shader.setUniform('yAxisMin', axis.min);
838
+ shader.setUniform('yAxisMax', axis.max);
834
839
  shader.setUniform('yAxisMinPad', axis.minPixelPadding * pixelRatio);
835
840
  shader.setUniform('yAxisPointRange', axis.pointRange);
836
841
  shader.setUniform('yAxisLen', axis.len * pixelRatio);
@@ -997,9 +1002,13 @@ class WGLRenderer {
997
1002
  // Do the actual rendering
998
1003
  // If the line width is < 0, skip rendering of the lines. See #7833.
999
1004
  if (lineWidth > 0 || s.drawMode !== 'LINE_STRIP') {
1005
+ const { x: cx, y: cy, width: cw, height: ch } = getBoostClipRect(chart, s.series);
1006
+ gl.enable(gl.SCISSOR_TEST);
1007
+ gl.scissor(cx, height - cy - ch, cw, ch);
1000
1008
  for (sindex = 0; sindex < s.segments.length; sindex++) {
1001
1009
  vbuffer.render(s.segments[sindex].from, s.segments[sindex].to, s.drawMode);
1002
1010
  }
1011
+ gl.disable(gl.SCISSOR_TEST);
1003
1012
  }
1004
1013
  if (s.hasMarkers && showMarkers) {
1005
1014
  shader.setPointSize(pick(options.marker && options.marker.radius, 5) * 2 * pixelRatio);
@@ -1122,7 +1131,7 @@ class WGLRenderer {
1122
1131
  gl.bindTexture(gl.TEXTURE_2D, null);
1123
1132
  props.isReady = true;
1124
1133
  }
1125
- catch (e) {
1134
+ catch {
1126
1135
  // Silent error
1127
1136
  }
1128
1137
  };
@@ -18,7 +18,7 @@ const { clamp, error, pick } = U;
18
18
  *
19
19
  * */
20
20
  const fragmentShader = [
21
- /* eslint-disable max-len, @typescript-eslint/indent */
21
+ /* eslint-disable max-len, @stylistic/indent */
22
22
  'precision highp float;',
23
23
  'uniform vec4 fillColor;',
24
24
  'varying highp vec2 position;',
@@ -46,10 +46,10 @@ const fragmentShader = [
46
46
  'gl_FragColor = col;',
47
47
  '}',
48
48
  '}'
49
- /* eslint-enable max-len, @typescript-eslint/indent */
49
+ /* eslint-enable max-len, @stylistic/indent */
50
50
  ].join('\n');
51
51
  const vertexShader = [
52
- /* eslint-disable max-len, @typescript-eslint/indent */
52
+ /* eslint-disable max-len, @stylistic/indent */
53
53
  '#version 100',
54
54
  '#define LN10 2.302585092994046',
55
55
  'precision highp float;',
@@ -64,6 +64,7 @@ const vertexShader = [
64
64
  'uniform bool skipTranslation;',
65
65
  'uniform float xAxisTrans;',
66
66
  'uniform float xAxisMin;',
67
+ 'uniform float xAxisMax;',
67
68
  'uniform float xAxisMinPad;',
68
69
  'uniform float xAxisPointRange;',
69
70
  'uniform float xAxisLen;',
@@ -76,6 +77,7 @@ const vertexShader = [
76
77
  'uniform bool xAxisReversed;',
77
78
  'uniform float yAxisTrans;',
78
79
  'uniform float yAxisMin;',
80
+ 'uniform float yAxisMax;',
79
81
  'uniform float yAxisMinPad;',
80
82
  'uniform float yAxisPointRange;',
81
83
  'uniform float yAxisLen;',
@@ -86,6 +88,7 @@ const vertexShader = [
86
88
  'uniform bool yAxisCVSCoord;',
87
89
  'uniform bool yAxisIsLog;',
88
90
  'uniform bool yAxisReversed;',
91
+ 'uniform bool isCircle;',
89
92
  'uniform bool isBubble;',
90
93
  'uniform bool bubbleSizeByArea;',
91
94
  'uniform float bubbleZMin;',
@@ -174,7 +177,17 @@ const vertexShader = [
174
177
  '}',
175
178
  // 'gl_PointSize = 10.0;',
176
179
  'vColor = aColor;',
177
- 'if (skipTranslation && isInverted) {',
180
+ // It's not working correctly on useGPUTranslations off, because we
181
+ // operate on pixel values then, not on axis values. Maybe we should
182
+ // just skip outer points before pushing them to the vertex buffer?
183
+ 'if (!skipTranslation && isCircle && (',
184
+ 'aVertexPosition.x < xAxisMin ||',
185
+ 'aVertexPosition.x > xAxisMax ||',
186
+ 'aVertexPosition.y < yAxisMin ||',
187
+ 'aVertexPosition.y > yAxisMax',
188
+ ')) {',
189
+ 'gl_Position = uPMatrix * vec4(2.0, 2.0, 2.0, 1.0);',
190
+ '} else if (skipTranslation && isInverted) {',
178
191
  // If we get translated values from JS, just swap them (x, y)
179
192
  'gl_Position = uPMatrix * vec4(aVertexPosition.y + yAxisPos, aVertexPosition.x + xAxisPos, 0.0, 1.0);',
180
193
  '} else if (isInverted) {',
@@ -186,7 +199,7 @@ const vertexShader = [
186
199
  '}',
187
200
  // 'gl_Position = uPMatrix * vec4(aVertexPosition.x, aVertexPosition.y, 0.0, 1.0);',
188
201
  '}'
189
- /* eslint-enable max-len, @typescript-eslint/indent */
202
+ /* eslint-enable max-len, @stylistic/indent */
190
203
  ].join('\n');
191
204
  /* *
192
205
  *
@@ -44,7 +44,6 @@ var BoostCanvas;
44
44
  * Variables
45
45
  *
46
46
  * */
47
- let ChartConstructor;
48
47
  let destroyLoadingDiv;
49
48
  /* *
50
49
  *
@@ -82,7 +81,6 @@ var BoostCanvas;
82
81
  const seriesProto = SeriesClass.prototype;
83
82
  if (!seriesProto.renderCanvas) {
84
83
  const { area: AreaSeries, bubble: BubbleSeries, column: ColumnSeries, heatmap: HeatmapSeries, scatter: ScatterSeries } = seriesTypes;
85
- ChartConstructor = ChartClass;
86
84
  ChartClass.prototype.callbacks.push((chart) => {
87
85
  addEvent(chart, 'predraw', onChartClear);
88
86
  addEvent(chart, 'render', onChartCanvasToSVG);
@@ -214,9 +212,6 @@ var BoostCanvas;
214
212
  boost.clipRect = chart.renderer.clipRect();
215
213
  boost.target.clip(boost.clipRect);
216
214
  }
217
- else if (!(target instanceof ChartConstructor)) {
218
- /// ctx.clearRect(0, 0, width, height);
219
- }
220
215
  if (boost.canvas.width !== width) {
221
216
  boost.canvas.width = width;
222
217
  }
@@ -125,7 +125,7 @@ function applyBorderRadius(path, i, r) {
125
125
  * @private
126
126
  */
127
127
  function arc(x, y, w, h, options = {}) {
128
- const path = oldArc(x, y, w, h, options), { innerR = 0, r = w, start = 0, end = 0 } = options;
128
+ const path = oldArc(x, y, w, h, options), { brStart = true, brEnd = true, innerR = 0, r = w, start = 0, end = 0 } = options;
129
129
  if (options.open || !options.borderRadius) {
130
130
  return path;
131
131
  }
@@ -142,6 +142,10 @@ function arc(x, y, w, h, options = {}) {
142
142
  // splicing in arc segments.
143
143
  let i = path.length - 1;
144
144
  while (i--) {
145
+ if ((!brStart && (i === 0 || i === 3)) ||
146
+ (!brEnd && (i === 1 || i === 2))) {
147
+ continue;
148
+ }
145
149
  applyBorderRadius(path, i, i > 1 ? innerBorderRadius : borderRadius);
146
150
  }
147
151
  return path;
@@ -216,7 +220,7 @@ function compose(SeriesClass, SVGElementClass, SVGRendererClass) {
216
220
  order: 9
217
221
  });
218
222
  addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
219
- SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY');
223
+ SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
220
224
  oldArc = symbols.arc;
221
225
  oldRoundedRect = symbols.roundedRect;
222
226
  symbols.arc = arc;
@@ -350,7 +350,7 @@ class Breadcrumbs {
350
350
  renderButton(breadcrumb, posX, posY) {
351
351
  const breadcrumbs = this, chart = this.chart, breadcrumbsOptions = breadcrumbs.options, buttonTheme = merge(breadcrumbsOptions.buttonTheme);
352
352
  const button = chart.renderer
353
- .button(breadcrumbs.getButtonText(breadcrumb), posX, posY, function (e) {
353
+ .button(breadcrumbs.getButtonText(breadcrumb), posX, posY, function (e /* @todo (Event|any) */) {
354
354
  // Extract events from button object and call
355
355
  const buttonEvents = breadcrumbsOptions.events &&
356
356
  breadcrumbsOptions.events.click;
@@ -142,7 +142,9 @@ export function getScript(scriptLocation) {
142
142
  };
143
143
  // Reject in case of fail
144
144
  script.onerror = () => {
145
- reject(error(`Error loading script ${scriptLocation}`));
145
+ const msg = `Error loading script ${scriptLocation}`;
146
+ error(msg);
147
+ reject(new Error(msg));
146
148
  };
147
149
  // Append the newly created script
148
150
  head.appendChild(script);