highcharts 8.1.0 → 8.2.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 (854) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +12 -0
  3. package/css/highcharts.scss +12 -0
  4. package/css/themes/dark-unica.css +12 -0
  5. package/css/themes/grid-light.css +12 -0
  6. package/css/themes/sand-signika.css +12 -0
  7. package/es-modules/{modules/accessibility/a11y-i18n.js → Accessibility/A11yI18n.js} +2 -2
  8. package/es-modules/{modules/accessibility/accessibility.js → Accessibility/Accessibility.js} +24 -21
  9. package/es-modules/{modules/accessibility → Accessibility}/AccessibilityComponent.js +73 -17
  10. package/es-modules/{modules/accessibility/components → Accessibility/Components}/AnnotationsA11y.js +2 -4
  11. package/es-modules/{modules/accessibility/components → Accessibility/Components}/ContainerComponent.js +8 -9
  12. package/es-modules/{modules/accessibility/components → Accessibility/Components}/InfoRegionsComponent.js +9 -12
  13. package/es-modules/{modules/accessibility/components → Accessibility/Components}/LegendComponent.js +60 -22
  14. package/es-modules/{modules/accessibility/components → Accessibility/Components}/MenuComponent.js +4 -11
  15. package/es-modules/{modules/accessibility/components → Accessibility/Components}/RangeSelectorComponent.js +8 -7
  16. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +171 -0
  17. package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/NewDataAnnouncer.js +8 -7
  18. package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesComponent.js +5 -5
  19. package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesDescriber.js +6 -6
  20. package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesKeyboardNavigation.js +22 -20
  21. package/es-modules/{modules/accessibility/components → Accessibility/Components}/ZoomComponent.js +9 -8
  22. package/es-modules/{modules/accessibility/focusBorder.js → Accessibility/FocusBorder.js} +13 -10
  23. package/es-modules/{modules/accessibility/high-contrast-mode.js → Accessibility/HighContrastMode.js} +3 -2
  24. package/es-modules/{modules/accessibility/high-contrast-theme.js → Accessibility/HighContrastTheme.js} +0 -0
  25. package/es-modules/{modules/accessibility → Accessibility}/KeyboardNavigation.js +35 -22
  26. package/es-modules/{modules/accessibility → Accessibility}/KeyboardNavigationHandler.js +1 -1
  27. package/es-modules/{modules/accessibility/options/deprecatedOptions.js → Accessibility/Options/DeprecatedOptions.js} +10 -20
  28. package/es-modules/{modules/accessibility/options/langOptions.js → Accessibility/Options/LangOptions.js} +1 -1
  29. package/es-modules/{modules/accessibility/options/options.js → Accessibility/Options/Options.js} +1 -2
  30. package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/Announcer.js +2 -2
  31. package/es-modules/{modules/accessibility/utils/chartUtilities.js → Accessibility/Utils/ChartUtilities.js} +8 -9
  32. package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/DOMElementProvider.js +5 -5
  33. package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/EventProvider.js +2 -2
  34. package/es-modules/{modules/accessibility/utils/htmlUtilities.js → Accessibility/Utils/HTMLUtilities.js} +3 -4
  35. package/es-modules/Core/Animation/AnimationUtilities.js +193 -0
  36. package/es-modules/Core/Animation/Fx.js +378 -0
  37. package/es-modules/{parts → Core/Axis}/Axis.js +153 -89
  38. package/es-modules/{parts-3d → Core/Axis}/Axis3D.js +12 -7
  39. package/es-modules/{modules/broken-axis.src.js → Core/Axis/BrokenAxis.js} +6 -8
  40. package/es-modules/{parts-map → Core/Axis}/ColorAxis.js +28 -31
  41. package/es-modules/{parts → Core/Axis}/DateTimeAxis.js +1 -1
  42. package/es-modules/{parts-gantt → Core/Axis}/GridAxis.js +136 -39
  43. package/es-modules/{parts-more → Core/Axis}/HiddenAxis.js +0 -0
  44. package/es-modules/{parts → Core/Axis}/LogarithmicAxis.js +1 -1
  45. package/es-modules/{parts-map → Core/Axis}/MapAxis.js +2 -2
  46. package/es-modules/{parts → Core/Axis}/NavigatorAxis.js +2 -2
  47. package/es-modules/{parts → Core/Axis}/OrdinalAxis.js +241 -224
  48. package/es-modules/{parts → Core/Axis}/PlotLineOrBand.js +24 -15
  49. package/es-modules/{parts-more → Core/Axis}/RadialAxis.js +34 -27
  50. package/es-modules/{parts → Core/Axis}/ScrollbarAxis.js +2 -2
  51. package/es-modules/{parts → Core/Axis}/StackingAxis.js +11 -2
  52. package/es-modules/{parts → Core/Axis}/Tick.js +14 -14
  53. package/es-modules/{parts-3d → Core/Axis}/Tick3D.js +1 -1
  54. package/es-modules/{parts-gantt → Core/Axis}/TreeGridAxis.js +81 -15
  55. package/es-modules/{parts-gantt → Core/Axis}/TreeGridTick.js +1 -1
  56. package/es-modules/{parts-3d → Core/Axis}/ZAxis.js +2 -2
  57. package/es-modules/{parts → Core/Chart}/Chart.js +225 -227
  58. package/es-modules/Core/Chart/Chart3D.js +1674 -0
  59. package/es-modules/{parts-gantt → Core/Chart}/GanttChart.js +13 -12
  60. package/es-modules/{parts → Core/Chart}/StockChart.js +26 -25
  61. package/es-modules/Core/Color/Color.js +419 -0
  62. package/es-modules/Core/Color/ColorType.js +9 -0
  63. package/es-modules/{parts → Core}/Color.js +1 -1
  64. package/es-modules/{parts → Core}/Dynamics.js +91 -61
  65. package/es-modules/{parts → Core}/Globals.js +9 -1
  66. package/es-modules/{parts → Core}/Interaction.js +27 -20
  67. package/es-modules/{parts → Core}/Legend.js +26 -11
  68. package/es-modules/{parts → Core}/MSPointer.js +2 -2
  69. package/es-modules/{parts → Core}/Navigator.js +24 -14
  70. package/es-modules/{parts → Core}/Options.js +157 -69
  71. package/es-modules/{parts → Core}/Pointer.js +50 -27
  72. package/es-modules/Core/Renderer/DOMElementType.js +9 -0
  73. package/es-modules/Core/Renderer/HTML/HTMLElement.js +220 -0
  74. package/es-modules/{parts/Html.js → Core/Renderer/HTML/HTMLRenderer.js} +16 -207
  75. package/es-modules/{parts → Core/Renderer/SVG}/SVGElement.js +186 -32
  76. package/es-modules/Core/Renderer/SVG/SVGLabel.js +410 -0
  77. package/es-modules/{parts/SvgRenderer.js → Core/Renderer/SVG/SVGRenderer.js} +426 -886
  78. package/es-modules/{parts-3d/SVGRenderer.js → Core/Renderer/SVG/SVGRenderer3D.js} +31 -23
  79. package/es-modules/{parts → Core}/Responsive.js +24 -14
  80. package/es-modules/{parts → Core}/Scrollbar.js +5 -4
  81. package/es-modules/Core/Series/BaseSeries.js +157 -0
  82. package/es-modules/{parts/Series.js → Core/Series/CartesianSeries.js} +119 -55
  83. package/es-modules/{parts → Core/Series}/DataLabels.js +40 -36
  84. package/es-modules/{parts → Core/Series}/Point.js +8 -10
  85. package/es-modules/Core/Series/Series.js +158 -0
  86. package/es-modules/{parts-3d/Series.js → Core/Series/Series3D.js} +5 -3
  87. package/es-modules/{parts → Core}/Time.js +11 -133
  88. package/es-modules/{parts → Core}/Tooltip.js +30 -27
  89. package/es-modules/{parts → Core}/Utilities.js +103 -562
  90. package/es-modules/{mixins/ajax.js → Extensions/Ajax.js} +9 -4
  91. package/es-modules/{annotations/annotations.src.js → Extensions/Annotations/Annotations.js} +901 -709
  92. package/es-modules/{annotations → Extensions/Annotations}/ControlPoint.js +2 -2
  93. package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +117 -0
  94. package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +111 -0
  95. package/es-modules/{annotations/controllable → Extensions/Annotations/Controllables}/ControllableLabel.js +186 -146
  96. package/es-modules/{annotations/controllable → Extensions/Annotations/Controllables}/ControllablePath.js +81 -42
  97. package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +121 -0
  98. package/es-modules/{annotations/controllable/controllableMixin.js → Extensions/Annotations/Mixins/ControllableMixin.js} +8 -9
  99. package/es-modules/{annotations/eventEmitterMixin.js → Extensions/Annotations/Mixins/EventEmitterMixin.js} +7 -7
  100. package/es-modules/{annotations/controllable/markerMixin.js → Extensions/Annotations/Mixins/MarkerMixin.js} +10 -8
  101. package/es-modules/{annotations → Extensions/Annotations}/MockPoint.js +6 -6
  102. package/es-modules/{annotations/navigationBindings.js → Extensions/Annotations/NavigationBindings.js} +27 -16
  103. package/es-modules/{annotations/popup.js → Extensions/Annotations/Popup.js} +9 -9
  104. package/es-modules/{annotations/types → Extensions/Annotations/Types}/BasicAnnotation.js +68 -20
  105. package/es-modules/{annotations/types → Extensions/Annotations/Types}/CrookedLine.js +46 -19
  106. package/es-modules/{annotations/types → Extensions/Annotations/Types}/ElliottWave.js +33 -12
  107. package/es-modules/{annotations/types → Extensions/Annotations/Types}/Fibonacci.js +54 -22
  108. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +147 -0
  109. package/es-modules/{annotations/types → Extensions/Annotations/Types}/Measure.js +82 -52
  110. package/es-modules/{annotations/types → Extensions/Annotations/Types}/Pitchfork.js +69 -32
  111. package/es-modules/{annotations/types → Extensions/Annotations/Types}/Tunnel.js +58 -30
  112. package/es-modules/{annotations/types → Extensions/Annotations/Types}/VerticalLine.js +64 -33
  113. package/es-modules/{parts-gantt → Extensions}/ArrowSymbols.js +9 -11
  114. package/es-modules/{modules/boost/boost.js → Extensions/Boost/Boost.js} +8 -8
  115. package/es-modules/{modules/boost/boost-attach.js → Extensions/Boost/BoostAttach.js} +10 -8
  116. package/es-modules/{modules/boost/boost-init.js → Extensions/Boost/BoostInit.js} +7 -6
  117. package/es-modules/{modules/boost/boost-options.js → Extensions/Boost/BoostOptions.js} +1 -1
  118. package/es-modules/{modules/boost/boost-overrides.js → Extensions/Boost/BoostOverrides.js} +14 -11
  119. package/es-modules/{modules/boost/boost-utils.js → Extensions/Boost/BoostUtils.js} +6 -6
  120. package/es-modules/{modules/boost/boostable-map.js → Extensions/Boost/BoostableMap.js} +1 -1
  121. package/es-modules/{modules/boost/boostables.js → Extensions/Boost/Boostables.js} +0 -0
  122. package/es-modules/{modules/boost/named-colors.js → Extensions/Boost/NamedColors.js} +1 -1
  123. package/es-modules/{modules/boost/wgl-renderer.js → Extensions/Boost/WGLRenderer.js} +9 -9
  124. package/es-modules/{modules/boost/wgl-shader.js → Extensions/Boost/WGLShader.js} +3 -4
  125. package/es-modules/{modules/boost/wgl-vbuffer.js → Extensions/Boost/WGLVBuffer.js} +0 -0
  126. package/es-modules/{modules/boost-canvas.src.js → Extensions/BoostCanvas.js} +13 -9
  127. package/es-modules/{parts-gantt/CurrentDateIndicator.js → Extensions/CurrentDateIndication.js} +5 -7
  128. package/es-modules/{modules/data.src.js → Extensions/Data.js} +14 -16
  129. package/es-modules/{parts → Extensions}/DataGrouping.js +12 -9
  130. package/es-modules/{modules/debugger.src.js → Extensions/Debugger.js} +6 -6
  131. package/es-modules/{mixins/download-url.js → Extensions/DownloadURL.js} +15 -7
  132. package/es-modules/{modules/drag-panes.src.js → Extensions/DragPanes.js} +6 -6
  133. package/es-modules/{modules/draggable-points.src.js → Extensions/DraggablePoints.js} +21 -32
  134. package/es-modules/{modules/drilldown.src.js → Extensions/Drilldown.js} +64 -43
  135. package/es-modules/{modules/export-data.src.js → Extensions/ExportData.js} +126 -26
  136. package/es-modules/{modules/exporting.src.js → Extensions/Exporting.js} +26 -12
  137. package/es-modules/{modules/full-screen.src.js → Extensions/FullScreen.js} +5 -3
  138. package/es-modules/{parts-map → Extensions}/GeoJSON.js +112 -7
  139. package/es-modules/{modules/marker-clusters.src.js → Extensions/MarkerClusters.js} +29 -39
  140. package/es-modules/{parts-3d/Math.js → Extensions/Math3D.js} +17 -9
  141. package/es-modules/{modules/no-data-to-display.src.js → Extensions/NoDataToDisplay.js} +14 -15
  142. package/es-modules/{modules/offline-exporting.src.js → Extensions/OfflineExporting.js} +39 -35
  143. package/es-modules/{modules/oldie.src.js → Extensions/Oldie/Oldie.js} +19 -12
  144. package/es-modules/{parts-3d → Extensions/Oldie}/VMLAxis3D.js +1 -1
  145. package/es-modules/Extensions/Oldie/VMLRenderer3D.js +46 -0
  146. package/es-modules/{modules/oldie-polyfills.src.js → Extensions/OldiePolyfills.js} +5 -0
  147. package/es-modules/{modules/overlapping-datalabels.src.js → Extensions/OverlappingDataLabels.js} +14 -13
  148. package/es-modules/{parts-more → Extensions}/Pane.js +13 -12
  149. package/es-modules/{modules/parallel-coordinates.src.js → Extensions/ParallelCoordinates.js} +140 -138
  150. package/es-modules/{modules/pattern-fill.src.js → Extensions/PatternFill.js} +23 -15
  151. package/es-modules/{parts-more → Extensions}/Polar.js +15 -12
  152. package/es-modules/{modules/price-indicator.src.js → Extensions/PriceIndication.js} +5 -3
  153. package/es-modules/{parts → Extensions}/RangeSelector.js +112 -79
  154. package/es-modules/{parts → Extensions}/ScrollablePlotArea.js +19 -9
  155. package/es-modules/{modules/series-label.src.js → Extensions/SeriesLabel.js} +14 -10
  156. package/es-modules/{modules/sonification/chartSonify.js → Extensions/Sonification/ChartSonify.js} +212 -41
  157. package/es-modules/{modules/sonification → Extensions/Sonification}/Earcon.js +3 -7
  158. package/es-modules/{modules/sonification → Extensions/Sonification}/Instrument.js +35 -11
  159. package/es-modules/{modules/sonification/instrumentDefinitions.js → Extensions/Sonification/InstrumentDefinitions.js} +1 -1
  160. package/es-modules/{modules/sonification/musicalFrequencies.js → Extensions/Sonification/MusicalFrequencies.js} +0 -0
  161. package/es-modules/Extensions/Sonification/Options.js +34 -0
  162. package/es-modules/{modules/sonification/pointSonify.js → Extensions/Sonification/PointSonify.js} +43 -28
  163. package/es-modules/{modules/sonification/sonification.js → Extensions/Sonification/Sonification.js} +16 -12
  164. package/es-modules/{modules/sonification → Extensions/Sonification}/Timeline.js +25 -6
  165. package/es-modules/{modules/sonification/utilities.js → Extensions/Sonification/Utilities.js} +8 -5
  166. package/es-modules/{parts → Extensions}/Stacking.js +57 -18
  167. package/es-modules/{modules/static-scale.src.js → Extensions/StaticScale.js} +4 -4
  168. package/es-modules/{themes/avocado.js → Extensions/Themes/Avocado.js} +5 -4
  169. package/es-modules/{themes/dark-blue.js → Extensions/Themes/DarkBlue.js} +4 -2
  170. package/es-modules/{themes/dark-green.js → Extensions/Themes/DarkGreen.js} +4 -2
  171. package/es-modules/{themes/dark-unica.js → Extensions/Themes/DarkUnica.js} +6 -6
  172. package/es-modules/{themes/gray.js → Extensions/Themes/Gray.js} +5 -4
  173. package/es-modules/{themes/grid.js → Extensions/Themes/Grid.js} +4 -2
  174. package/es-modules/{themes/grid-light.js → Extensions/Themes/GridLight.js} +4 -2
  175. package/es-modules/{themes/high-contrast-dark.js → Extensions/Themes/HighContrastDark.js} +5 -4
  176. package/es-modules/{themes/high-contrast-light.js → Extensions/Themes/HighContrastLight.js} +4 -2
  177. package/es-modules/{themes/sand-signika.js → Extensions/Themes/SandSignika.js} +4 -2
  178. package/es-modules/{themes/skies.js → Extensions/Themes/Skies.js} +5 -3
  179. package/es-modules/{themes/sunset.js → Extensions/Themes/Sunset.js} +5 -4
  180. package/es-modules/{parts-gantt/Pathfinder.js → Gantt/Connection.js} +41 -284
  181. package/es-modules/Gantt/Pathfinder.js +816 -0
  182. package/es-modules/Gantt/PathfinderAlgorithms.js +659 -0
  183. package/es-modules/{parts-gantt → Gantt}/Tree.js +1 -1
  184. package/es-modules/{parts-map → Maps}/Map.js +24 -15
  185. package/es-modules/{parts-map → Maps}/MapNavigation.js +4 -5
  186. package/es-modules/{parts-map → Maps}/MapPointer.js +2 -4
  187. package/es-modules/{mixins/centered-series.js → Mixins/CenteredSeries.js} +7 -5
  188. package/es-modules/{parts-map/ColorMapSeriesMixin.js → Mixins/ColorMapSeries.js} +10 -6
  189. package/es-modules/{parts-map/ColorSeriesMixin.js → Mixins/ColorSeries.js} +12 -4
  190. package/es-modules/{mixins/derived-series.js → Mixins/DerivedSeries.js} +3 -3
  191. package/es-modules/{mixins/draw-point.js → Mixins/DrawPoint.js} +6 -1
  192. package/es-modules/{mixins/geometry.js → Mixins/Geometry.js} +0 -0
  193. package/es-modules/{mixins/geometry-circles.js → Mixins/GeometryCircles.js} +2 -2
  194. package/es-modules/{mixins/indicator-required.js → Mixins/IndicatorRequired.js} +1 -1
  195. package/es-modules/{mixins/legend-symbol.js → Mixins/LegendSymbol.js} +6 -10
  196. package/es-modules/{mixins/multipe-lines.js → Mixins/MultipleLines.js} +2 -2
  197. package/es-modules/{mixins/navigation.js → Mixins/Navigation.js} +0 -0
  198. package/es-modules/{mixins/nelder-mead.js → Mixins/NelderMead.js} +2 -2
  199. package/es-modules/{mixins/nodes.js → Mixins/Nodes.js} +7 -5
  200. package/es-modules/{mixins/on-series.js → Mixins/OnSeries.js} +3 -2
  201. package/es-modules/{mixins/polygon.js → Mixins/Polygon.js} +2 -2
  202. package/es-modules/{mixins/reduce-array.js → Mixins/ReduceArray.js} +1 -1
  203. package/es-modules/{mixins/tree-series.js → Mixins/TreeSeries.js} +2 -2
  204. package/es-modules/{parts-more → Series}/AreaRangeSeries.js +75 -38
  205. package/es-modules/{parts → Series}/AreaSeries.js +43 -25
  206. package/es-modules/{parts-more → Series}/AreaSplineRangeSeries.js +47 -10
  207. package/es-modules/{parts → Series}/AreaSplineSeries.js +49 -10
  208. package/es-modules/{parts → Series}/BarSeries.js +2 -5
  209. package/es-modules/{modules/bellcurve.src.js → Series/BellcurveSeries.js} +47 -7
  210. package/es-modules/{parts-more → Series}/BoxPlotSeries.js +18 -13
  211. package/es-modules/{parts-more → Series/Bubble}/BubbleLegend.js +11 -9
  212. package/es-modules/{parts-more → Series/Bubble}/BubbleSeries.js +25 -27
  213. package/es-modules/{modules/bullet.src.js → Series/BulletSeries.js} +9 -8
  214. package/es-modules/{parts → Series}/CandlestickSeries.js +11 -8
  215. package/es-modules/{parts-3d/Column.js → Series/Column3DSeries.js} +108 -28
  216. package/es-modules/{parts-more → Series}/ColumnPyramidSeries.js +9 -9
  217. package/es-modules/{parts-more → Series}/ColumnRangeSeries.js +21 -18
  218. package/es-modules/{parts → Series}/ColumnSeries.js +119 -41
  219. package/es-modules/{modules/cylinder.src.js → Series/CylinderSeries.js} +14 -14
  220. package/es-modules/{modules/dependency-wheel.src.js → Series/DependencyWheelSeries.js} +14 -12
  221. package/es-modules/{modules/dotplot.src.js → Series/DotplotSeries.js} +7 -15
  222. package/es-modules/{modules/dumbbell.src.js → Series/DumbbellSeries.js} +16 -10
  223. package/es-modules/{parts-more → Series}/ErrorBarSeries.js +8 -8
  224. package/es-modules/{parts → Series}/FlagsSeries.js +18 -12
  225. package/es-modules/{modules/funnel3d.src.js → Series/Funnel3DSeries.js} +14 -16
  226. package/es-modules/{modules/funnel.src.js → Series/FunnelSeries.js} +16 -14
  227. package/es-modules/{parts-gantt → Series}/GanttSeries.js +21 -20
  228. package/es-modules/{parts-more → Series}/GaugeSeries.js +14 -12
  229. package/es-modules/{parts-map → Series}/HeatmapSeries.js +23 -16
  230. package/es-modules/{modules/histogram.src.js → Series/HistogramSeries.js} +13 -9
  231. package/es-modules/{modules/item-series.src.js → Series/ItemSeries.js} +22 -14
  232. package/es-modules/Series/LineSeries.js +13 -0
  233. package/es-modules/{modules/lollipop.src.js → Series/LollipopSeries.js} +34 -10
  234. package/es-modules/{parts-map → Series}/MapBubbleSeries.js +8 -9
  235. package/es-modules/{parts-map → Series}/MapLineSeries.js +5 -7
  236. package/es-modules/{parts-map → Series}/MapPointSeries.js +9 -8
  237. package/es-modules/{parts-map → Series}/MapSeries.js +22 -18
  238. package/es-modules/{modules/networkgraph/draggable-nodes.js → Series/Networkgraph/DraggableNodes.js} +15 -30
  239. package/es-modules/{modules/networkgraph/integrations.js → Series/Networkgraph/Integrations.js} +1 -1
  240. package/es-modules/{modules/networkgraph/layouts.js → Series/Networkgraph/Layouts.js} +43 -13
  241. package/es-modules/{modules/networkgraph/networkgraph.src.js → Series/Networkgraph/Networkgraph.js} +29 -23
  242. package/es-modules/{modules/networkgraph → Series/Networkgraph}/QuadTree.js +2 -2
  243. package/es-modules/{parts → Series}/OHLCSeries.js +5 -7
  244. package/es-modules/{modules/organization.src.js → Series/OrganizationSeries.js} +10 -7
  245. package/es-modules/{parts-more → Series}/PackedBubbleSeries.js +104 -28
  246. package/es-modules/{modules/pareto.src.js → Series/ParetoSeries.js} +10 -9
  247. package/es-modules/{parts-3d/Pie.js → Series/Pie3DSeries.js} +5 -4
  248. package/es-modules/{parts → Series}/PieSeries.js +66 -31
  249. package/es-modules/{parts-more → Series}/PolygonSeries.js +13 -13
  250. package/es-modules/{modules/pyramid3d.src.js → Series/Pyramid3DSeries.js} +5 -7
  251. package/es-modules/{modules/sankey.src.js → Series/SankeySeries.js} +23 -21
  252. package/es-modules/{parts-3d/Scatter.js → Series/Scatter3DSeries.js} +10 -9
  253. package/es-modules/{parts → Series}/ScatterSeries.js +15 -10
  254. package/es-modules/{modules/solid-gauge.src.js → Series/SolidGaugeSeries.js} +112 -78
  255. package/es-modules/{parts → Series}/SplineSeries.js +9 -7
  256. package/es-modules/{modules/streamgraph.src.js → Series/StreamgraphSeries.js} +42 -6
  257. package/es-modules/{modules/sunburst.src.js → Series/SunburstSeries.js} +20 -13
  258. package/es-modules/{modules/tilemap.src.js → Series/TilemapSeries.js} +12 -9
  259. package/es-modules/{modules/timeline.src.js → Series/TimelineSeries.js} +16 -11
  260. package/es-modules/{modules/treemap.src.js → Series/TreemapSeries.js} +47 -40
  261. package/es-modules/{modules/variable-pie.src.js → Series/VariablePieSeries.js} +11 -8
  262. package/es-modules/{modules/variwide.src.js → Series/VariwideSeries.js} +12 -10
  263. package/es-modules/{modules/vector.src.js → Series/VectorSeries.js} +11 -7
  264. package/es-modules/{modules/venn.src.js → Series/VennSeries.js} +29 -20
  265. package/es-modules/{parts-more → Series}/WaterfallSeries.js +145 -66
  266. package/es-modules/{modules/windbarb.src.js → Series/WindbarbSeries.js} +13 -9
  267. package/es-modules/{modules/wordcloud.src.js → Series/WordcloudSeries.js} +17 -13
  268. package/es-modules/{modules/xrange.src.js → Series/XRangeSeries.js} +16 -12
  269. package/es-modules/{indicators/acceleration-bands.src.js → Stock/Indicators/ABIndicator.js} +8 -8
  270. package/es-modules/{indicators/accumulation-distribution.src.js → Stock/Indicators/ADIndicator.js} +5 -4
  271. package/es-modules/{indicators/ao.src.js → Stock/Indicators/AOIndicator.js} +6 -5
  272. package/es-modules/{indicators/apo.src.js → Stock/Indicators/APOIndicator.js} +8 -8
  273. package/es-modules/{indicators/atr.src.js → Stock/Indicators/ATRIndicator.js} +6 -6
  274. package/es-modules/{indicators/aroon.src.js → Stock/Indicators/AroonIndicator.js} +7 -6
  275. package/es-modules/{indicators/aroon-oscillator.src.js → Stock/Indicators/AroonOscillatorIndicator.js} +8 -8
  276. package/es-modules/{indicators/bollinger-bands.src.js → Stock/Indicators/BBIndicator.js} +8 -8
  277. package/es-modules/{indicators/cci.src.js → Stock/Indicators/CCIIndicator.js} +5 -4
  278. package/es-modules/{indicators/cmf.src.js → Stock/Indicators/CMFIndicator.js} +3 -4
  279. package/es-modules/{indicators/chaikin.src.js → Stock/Indicators/ChaikinIndicator.js} +10 -9
  280. package/es-modules/{indicators/dema.src.js → Stock/Indicators/DEMAIndicator.js} +8 -8
  281. package/es-modules/{indicators/dpo.src.js → Stock/Indicators/DPOIndicator.js} +5 -4
  282. package/es-modules/{indicators/ema.src.js → Stock/Indicators/EMAIndicator.js} +4 -4
  283. package/es-modules/{indicators/ichimoku-kinko-hyo.src.js → Stock/Indicators/IKHIndicator.js} +23 -20
  284. package/es-modules/{indicators/keltner-channels.src.js → Stock/Indicators/KeltnerChannelsIndicator.js} +11 -8
  285. package/es-modules/{indicators/macd.src.js → Stock/Indicators/MACDIndicator.js} +9 -6
  286. package/es-modules/{indicators/mfi.src.js → Stock/Indicators/MFIIndicator.js} +5 -4
  287. package/es-modules/{indicators/momentum.src.js → Stock/Indicators/MomentumIndicator.js} +5 -4
  288. package/es-modules/{indicators/natr.src.js → Stock/Indicators/NATRIndicator.js} +4 -6
  289. package/es-modules/{indicators/price-channel.src.js → Stock/Indicators/PCIndicator.js} +9 -8
  290. package/es-modules/{indicators/ppo.src.js → Stock/Indicators/PPOIndicator.js} +8 -8
  291. package/es-modules/{indicators/psar.src.js → Stock/Indicators/PSARIndicator.js} +3 -4
  292. package/es-modules/{indicators/pivot-points.src.js → Stock/Indicators/PivotPointsIndicator.js} +6 -6
  293. package/es-modules/{indicators/price-envelopes.src.js → Stock/Indicators/PriceEnvelopesIndicator.js} +6 -6
  294. package/es-modules/{indicators/roc.src.js → Stock/Indicators/ROCIndicator.js} +5 -4
  295. package/es-modules/{indicators/rsi.src.js → Stock/Indicators/RSIIndicator.js} +5 -4
  296. package/es-modules/{indicators/regressions.src.js → Stock/Indicators/RegressionIndicators.js} +8 -7
  297. package/es-modules/{indicators/indicators.src.js → Stock/Indicators/SMAIndicator.js} +12 -8
  298. package/es-modules/{indicators/slow-stochastic.src.js → Stock/Indicators/SlowStochasticIndicator.js} +6 -8
  299. package/es-modules/{indicators/stochastic.src.js → Stock/Indicators/StochasticIndicator.js} +9 -9
  300. package/es-modules/{indicators/supertrend.src.js → Stock/Indicators/SupertrendIndicator.js} +8 -7
  301. package/es-modules/{indicators/tema.src.js → Stock/Indicators/TEMAIndicator.js} +8 -8
  302. package/es-modules/{indicators/trix.src.js → Stock/Indicators/TRIXIndicator.js} +8 -8
  303. package/es-modules/{indicators/trendline.src.js → Stock/Indicators/TrendLineIndicator.js} +5 -4
  304. package/es-modules/{indicators/volume-by-price.src.js → Stock/Indicators/VBPIndicator.js} +10 -7
  305. package/es-modules/{indicators/vwap.src.js → Stock/Indicators/VWAPIndicator.js} +5 -4
  306. package/es-modules/{indicators/wma.src.js → Stock/Indicators/WMAIndicator.js} +5 -4
  307. package/es-modules/{indicators/williams-r.src.js → Stock/Indicators/WilliamsRIndicator.js} +7 -6
  308. package/es-modules/{indicators/zigzag.src.js → Stock/Indicators/ZigzagIndicator.js} +5 -7
  309. package/es-modules/{modules/stock-tools-bindings.js → Stock/StockToolsBindings.js} +22 -7
  310. package/es-modules/{modules/stock-tools-gui.js → Stock/StockToolsGui.js} +17 -17
  311. package/es-modules/error-messages.js +7 -2
  312. package/es-modules/highcharts.src.js +19853 -0
  313. package/es-modules/masters/highcharts-3d.src.js +11 -12
  314. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  315. package/es-modules/masters/highcharts-more.src.js +15 -15
  316. package/es-modules/masters/highcharts.src.js +28 -27
  317. package/es-modules/masters/highmaps.src.js +1 -1
  318. package/es-modules/masters/highstock.src.js +1 -1
  319. package/es-modules/masters/indicators/acceleration-bands.src.js +2 -2
  320. package/es-modules/masters/indicators/accumulation-distribution.src.js +2 -2
  321. package/es-modules/masters/indicators/ao.src.js +2 -2
  322. package/es-modules/masters/indicators/apo.src.js +2 -2
  323. package/es-modules/masters/indicators/aroon-oscillator.src.js +2 -2
  324. package/es-modules/masters/indicators/aroon.src.js +2 -2
  325. package/es-modules/masters/indicators/atr.src.js +2 -2
  326. package/es-modules/masters/indicators/bollinger-bands.src.js +2 -2
  327. package/es-modules/masters/indicators/cci.src.js +2 -2
  328. package/es-modules/masters/indicators/chaikin.src.js +2 -2
  329. package/es-modules/masters/indicators/cmf.src.js +2 -2
  330. package/es-modules/masters/indicators/dema.src.js +2 -2
  331. package/es-modules/masters/indicators/dpo.src.js +2 -2
  332. package/es-modules/masters/indicators/ema.src.js +2 -2
  333. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +2 -2
  334. package/es-modules/masters/indicators/indicators-all.src.js +41 -41
  335. package/es-modules/masters/indicators/indicators.src.js +2 -2
  336. package/es-modules/masters/indicators/keltner-channels.src.js +2 -2
  337. package/es-modules/masters/indicators/macd.src.js +2 -2
  338. package/es-modules/masters/indicators/mfi.src.js +2 -2
  339. package/es-modules/masters/indicators/momentum.src.js +2 -2
  340. package/es-modules/masters/indicators/natr.src.js +2 -2
  341. package/es-modules/masters/indicators/pivot-points.src.js +2 -2
  342. package/es-modules/masters/indicators/ppo.src.js +2 -2
  343. package/es-modules/masters/indicators/price-channel.src.js +2 -2
  344. package/es-modules/masters/indicators/price-envelopes.src.js +2 -2
  345. package/es-modules/masters/indicators/psar.src.js +2 -2
  346. package/es-modules/masters/indicators/regressions.src.js +2 -2
  347. package/es-modules/masters/indicators/roc.src.js +2 -2
  348. package/es-modules/masters/indicators/rsi.src.js +2 -2
  349. package/es-modules/masters/indicators/slow-stochastic.src.js +2 -2
  350. package/es-modules/masters/indicators/stochastic.src.js +2 -2
  351. package/es-modules/masters/indicators/supertrend.src.js +2 -2
  352. package/es-modules/masters/indicators/tema.src.js +2 -2
  353. package/es-modules/masters/indicators/trendline.src.js +2 -2
  354. package/es-modules/masters/indicators/trix.src.js +2 -2
  355. package/es-modules/masters/indicators/volume-by-price.src.js +2 -2
  356. package/es-modules/masters/indicators/vwap.src.js +2 -2
  357. package/es-modules/masters/indicators/williams-r.src.js +2 -2
  358. package/es-modules/masters/indicators/wma.src.js +2 -2
  359. package/es-modules/masters/indicators/zigzag.src.js +2 -2
  360. package/es-modules/masters/modules/accessibility.src.js +2 -2
  361. package/es-modules/masters/modules/annotations-advanced.src.js +13 -13
  362. package/es-modules/masters/modules/annotations.src.js +4 -4
  363. package/es-modules/masters/modules/arrow-symbols.src.js +2 -2
  364. package/es-modules/masters/modules/boost-canvas.src.js +2 -2
  365. package/es-modules/masters/modules/boost.src.js +2 -2
  366. package/es-modules/masters/modules/broken-axis.src.js +2 -2
  367. package/es-modules/masters/modules/bullet.src.js +2 -2
  368. package/es-modules/masters/modules/coloraxis.src.js +2 -2
  369. package/es-modules/masters/modules/current-date-indicator.src.js +2 -2
  370. package/es-modules/masters/modules/cylinder.src.js +2 -2
  371. package/es-modules/masters/modules/data.src.js +2 -2
  372. package/es-modules/masters/modules/datagrouping.src.js +2 -2
  373. package/es-modules/masters/modules/debugger.src.js +2 -2
  374. package/es-modules/masters/modules/dependency-wheel.src.js +2 -2
  375. package/es-modules/masters/modules/dotplot.src.js +2 -2
  376. package/es-modules/masters/modules/drag-panes.src.js +2 -2
  377. package/es-modules/masters/modules/draggable-points.src.js +2 -2
  378. package/es-modules/masters/modules/drilldown.src.js +2 -2
  379. package/es-modules/masters/modules/dumbbell.src.js +2 -2
  380. package/es-modules/masters/modules/export-data.src.js +2 -2
  381. package/es-modules/masters/modules/exporting.src.js +3 -3
  382. package/es-modules/masters/modules/full-screen.src.js +2 -2
  383. package/es-modules/masters/modules/funnel.src.js +2 -2
  384. package/es-modules/masters/modules/funnel3d.src.js +2 -2
  385. package/es-modules/masters/modules/gantt.src.js +6 -6
  386. package/es-modules/masters/modules/grid-axis.src.js +2 -2
  387. package/es-modules/masters/modules/heatmap.src.js +4 -4
  388. package/es-modules/masters/modules/histogram-bellcurve.src.js +3 -3
  389. package/es-modules/masters/modules/item-series.src.js +2 -2
  390. package/es-modules/masters/modules/lollipop.src.js +2 -2
  391. package/es-modules/masters/modules/map.src.js +13 -13
  392. package/es-modules/masters/modules/marker-clusters.src.js +2 -2
  393. package/es-modules/masters/modules/networkgraph.src.js +2 -2
  394. package/es-modules/masters/modules/no-data-to-display.src.js +2 -2
  395. package/es-modules/masters/modules/offline-exporting.src.js +2 -2
  396. package/es-modules/masters/modules/oldie-polyfills.src.js +2 -2
  397. package/es-modules/masters/modules/oldie.src.js +2 -2
  398. package/es-modules/masters/modules/organization.src.js +2 -2
  399. package/es-modules/masters/modules/overlapping-datalabels.src.js +2 -2
  400. package/es-modules/masters/modules/parallel-coordinates.src.js +2 -2
  401. package/es-modules/masters/modules/pareto.src.js +2 -2
  402. package/es-modules/masters/modules/pathfinder.src.js +2 -2
  403. package/es-modules/masters/modules/pattern-fill.src.js +2 -2
  404. package/es-modules/masters/modules/price-indicator.src.js +2 -2
  405. package/es-modules/masters/modules/pyramid3d.src.js +2 -2
  406. package/es-modules/masters/modules/sankey.src.js +2 -2
  407. package/es-modules/masters/modules/series-label.src.js +2 -2
  408. package/es-modules/masters/modules/solid-gauge.src.js +2 -2
  409. package/es-modules/masters/modules/sonification.src.js +2 -2
  410. package/es-modules/masters/modules/static-scale.src.js +2 -2
  411. package/es-modules/masters/modules/stock-tools.src.js +3 -3
  412. package/es-modules/masters/modules/stock.src.js +10 -10
  413. package/es-modules/masters/modules/streamgraph.src.js +2 -2
  414. package/es-modules/masters/modules/sunburst.src.js +2 -2
  415. package/es-modules/masters/modules/tilemap.src.js +2 -2
  416. package/es-modules/masters/modules/timeline.src.js +2 -2
  417. package/es-modules/masters/modules/treegrid.src.js +2 -2
  418. package/es-modules/masters/modules/treemap.src.js +2 -2
  419. package/es-modules/masters/modules/variable-pie.src.js +2 -2
  420. package/es-modules/masters/modules/variwide.src.js +2 -2
  421. package/es-modules/masters/modules/vector.src.js +2 -2
  422. package/es-modules/masters/modules/venn.src.js +2 -2
  423. package/es-modules/masters/modules/windbarb.src.js +2 -2
  424. package/es-modules/masters/modules/wordcloud.src.js +2 -2
  425. package/es-modules/masters/modules/xrange.src.js +2 -2
  426. package/es-modules/masters/themes/avocado.src.js +2 -2
  427. package/es-modules/masters/themes/dark-blue.src.js +2 -2
  428. package/es-modules/masters/themes/dark-green.src.js +2 -2
  429. package/es-modules/masters/themes/dark-unica.src.js +2 -2
  430. package/es-modules/masters/themes/gray.src.js +2 -2
  431. package/es-modules/masters/themes/grid-light.src.js +2 -2
  432. package/es-modules/masters/themes/grid.src.js +2 -2
  433. package/es-modules/masters/themes/high-contrast-dark.src.js +2 -2
  434. package/es-modules/masters/themes/high-contrast-light.src.js +2 -2
  435. package/es-modules/masters/themes/sand-signika.src.js +2 -2
  436. package/es-modules/masters/themes/skies.src.js +2 -2
  437. package/es-modules/masters/themes/sunset.src.js +2 -2
  438. package/highcharts-3d.js +86 -88
  439. package/highcharts-3d.js.map +1 -1
  440. package/highcharts-3d.src.js +1713 -1615
  441. package/highcharts-gantt.js +730 -697
  442. package/highcharts-gantt.js.map +1 -1
  443. package/highcharts-gantt.src.js +11747 -10110
  444. package/highcharts-more.js +164 -161
  445. package/highcharts-more.js.map +1 -1
  446. package/highcharts-more.src.js +766 -523
  447. package/highcharts.d.ts +7728 -1337
  448. package/highcharts.js +538 -515
  449. package/highcharts.js.map +1 -1
  450. package/highcharts.src.d.ts +7728 -1337
  451. package/highcharts.src.js +8517 -7691
  452. package/highmaps.js +636 -612
  453. package/highmaps.js.map +1 -1
  454. package/highmaps.src.js +9151 -8209
  455. package/highstock.js +697 -671
  456. package/highstock.js.map +1 -1
  457. package/highstock.src.js +8919 -8049
  458. package/indicators/acceleration-bands.js +8 -8
  459. package/indicators/acceleration-bands.js.map +1 -1
  460. package/indicators/acceleration-bands.src.js +8 -8
  461. package/indicators/accumulation-distribution.js +4 -4
  462. package/indicators/accumulation-distribution.js.map +1 -1
  463. package/indicators/accumulation-distribution.src.js +5 -5
  464. package/indicators/ao.js +5 -5
  465. package/indicators/ao.js.map +1 -1
  466. package/indicators/ao.src.js +6 -6
  467. package/indicators/apo.js +5 -5
  468. package/indicators/apo.js.map +1 -1
  469. package/indicators/apo.src.js +8 -9
  470. package/indicators/aroon-oscillator.js +8 -8
  471. package/indicators/aroon-oscillator.js.map +1 -1
  472. package/indicators/aroon-oscillator.src.js +8 -9
  473. package/indicators/aroon.js +7 -7
  474. package/indicators/aroon.js.map +1 -1
  475. package/indicators/aroon.src.js +7 -7
  476. package/indicators/atr.js +4 -4
  477. package/indicators/atr.js.map +1 -1
  478. package/indicators/atr.src.js +6 -14
  479. package/indicators/bollinger-bands.js +8 -8
  480. package/indicators/bollinger-bands.js.map +1 -1
  481. package/indicators/bollinger-bands.src.js +8 -8
  482. package/indicators/cci.js +4 -4
  483. package/indicators/cci.js.map +1 -1
  484. package/indicators/cci.src.js +5 -5
  485. package/indicators/chaikin.js +6 -6
  486. package/indicators/chaikin.js.map +1 -1
  487. package/indicators/chaikin.src.js +75 -75
  488. package/indicators/cmf.js +4 -4
  489. package/indicators/cmf.js.map +1 -1
  490. package/indicators/cmf.src.js +4 -4
  491. package/indicators/dema.js +5 -5
  492. package/indicators/dema.js.map +1 -1
  493. package/indicators/dema.src.js +8 -9
  494. package/indicators/dpo.js +4 -4
  495. package/indicators/dpo.js.map +1 -1
  496. package/indicators/dpo.src.js +5 -5
  497. package/indicators/ema.js +4 -4
  498. package/indicators/ema.js.map +1 -1
  499. package/indicators/ema.src.js +4 -5
  500. package/indicators/ichimoku-kinko-hyo.js +13 -13
  501. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  502. package/indicators/ichimoku-kinko-hyo.src.js +21 -20
  503. package/indicators/indicators-all.js +119 -118
  504. package/indicators/indicators-all.js.map +1 -1
  505. package/indicators/indicators-all.src.js +231 -240
  506. package/indicators/indicators.js +9 -9
  507. package/indicators/indicators.js.map +1 -1
  508. package/indicators/indicators.src.js +9 -9
  509. package/indicators/keltner-channels.js +8 -8
  510. package/indicators/keltner-channels.js.map +1 -1
  511. package/indicators/keltner-channels.src.js +13 -10
  512. package/indicators/macd.js +10 -10
  513. package/indicators/macd.js.map +1 -1
  514. package/indicators/macd.src.js +8 -7
  515. package/indicators/mfi.js +4 -4
  516. package/indicators/mfi.js.map +1 -1
  517. package/indicators/mfi.src.js +5 -5
  518. package/indicators/momentum.js +4 -4
  519. package/indicators/momentum.js.map +1 -1
  520. package/indicators/momentum.src.js +5 -5
  521. package/indicators/natr.js +3 -3
  522. package/indicators/natr.js.map +1 -1
  523. package/indicators/natr.src.js +5 -5
  524. package/indicators/pivot-points.js +8 -8
  525. package/indicators/pivot-points.js.map +1 -1
  526. package/indicators/pivot-points.src.js +6 -6
  527. package/indicators/ppo.js +5 -5
  528. package/indicators/ppo.js.map +1 -1
  529. package/indicators/ppo.src.js +8 -9
  530. package/indicators/price-channel.js +8 -8
  531. package/indicators/price-channel.js.map +1 -1
  532. package/indicators/price-channel.src.js +66 -66
  533. package/indicators/price-envelopes.js +6 -6
  534. package/indicators/price-envelopes.js.map +1 -1
  535. package/indicators/price-envelopes.src.js +6 -6
  536. package/indicators/psar.js +3 -3
  537. package/indicators/psar.js.map +1 -1
  538. package/indicators/psar.src.js +4 -4
  539. package/indicators/regressions.js +6 -6
  540. package/indicators/regressions.js.map +1 -1
  541. package/indicators/regressions.src.js +8 -8
  542. package/indicators/roc.js +3 -3
  543. package/indicators/roc.js.map +1 -1
  544. package/indicators/roc.src.js +5 -5
  545. package/indicators/rsi.js +4 -4
  546. package/indicators/rsi.js.map +1 -1
  547. package/indicators/rsi.src.js +5 -5
  548. package/indicators/slow-stochastic.js +5 -5
  549. package/indicators/slow-stochastic.js.map +1 -1
  550. package/indicators/slow-stochastic.src.js +7 -7
  551. package/indicators/stochastic.js +9 -9
  552. package/indicators/stochastic.js.map +1 -1
  553. package/indicators/stochastic.src.js +67 -67
  554. package/indicators/supertrend.js +9 -9
  555. package/indicators/supertrend.js.map +1 -1
  556. package/indicators/supertrend.src.js +9 -7
  557. package/indicators/tema.js +6 -6
  558. package/indicators/tema.js.map +1 -1
  559. package/indicators/tema.src.js +8 -9
  560. package/indicators/trendline.js +3 -3
  561. package/indicators/trendline.js.map +1 -1
  562. package/indicators/trendline.src.js +5 -5
  563. package/indicators/trix.js +4 -4
  564. package/indicators/trix.js.map +1 -1
  565. package/indicators/trix.src.js +8 -8
  566. package/indicators/volume-by-price.js +13 -13
  567. package/indicators/volume-by-price.js.map +1 -1
  568. package/indicators/volume-by-price.src.js +7 -8
  569. package/indicators/vwap.js +4 -4
  570. package/indicators/vwap.js.map +1 -1
  571. package/indicators/vwap.src.js +5 -5
  572. package/indicators/williams-r.js +4 -4
  573. package/indicators/williams-r.js.map +1 -1
  574. package/indicators/williams-r.src.js +7 -7
  575. package/indicators/wma.js +4 -4
  576. package/indicators/wma.js.map +1 -1
  577. package/indicators/wma.src.js +5 -5
  578. package/indicators/zigzag.js +4 -4
  579. package/indicators/zigzag.js.map +1 -1
  580. package/indicators/zigzag.src.js +6 -7
  581. package/modules/accessibility.d.ts +0 -35
  582. package/modules/accessibility.js +171 -168
  583. package/modules/accessibility.js.map +1 -1
  584. package/modules/accessibility.src.d.ts +0 -35
  585. package/modules/accessibility.src.js +369 -252
  586. package/modules/annotations-advanced.js +158 -136
  587. package/modules/annotations-advanced.js.map +1 -1
  588. package/modules/annotations-advanced.src.js +1929 -1263
  589. package/modules/annotations.js +105 -94
  590. package/modules/annotations.js.map +1 -1
  591. package/modules/annotations.src.js +1485 -1101
  592. package/modules/arrow-symbols.js +4 -4
  593. package/modules/arrow-symbols.js.map +1 -1
  594. package/modules/arrow-symbols.src.js +10 -12
  595. package/modules/boost-canvas.js +15 -15
  596. package/modules/boost-canvas.js.map +1 -1
  597. package/modules/boost-canvas.src.js +17 -17
  598. package/modules/boost.d.ts +4 -0
  599. package/modules/boost.js +77 -64
  600. package/modules/boost.js.map +1 -1
  601. package/modules/boost.src.d.ts +4 -0
  602. package/modules/boost.src.js +581 -33
  603. package/modules/broken-axis.js +10 -10
  604. package/modules/broken-axis.js.map +1 -1
  605. package/modules/broken-axis.src.js +4 -5
  606. package/modules/bullet.js +6 -6
  607. package/modules/bullet.js.map +1 -1
  608. package/modules/bullet.src.js +8 -8
  609. package/modules/coloraxis.js +22 -21
  610. package/modules/coloraxis.js.map +1 -1
  611. package/modules/coloraxis.src.js +67 -59
  612. package/modules/current-date-indicator.js +3 -3
  613. package/modules/current-date-indicator.js.map +1 -1
  614. package/modules/current-date-indicator.src.js +4 -5
  615. package/modules/cylinder.js +8 -8
  616. package/modules/cylinder.js.map +1 -1
  617. package/modules/cylinder.src.js +21 -23
  618. package/modules/data.d.ts +2 -2
  619. package/modules/data.js +32 -32
  620. package/modules/data.js.map +1 -1
  621. package/modules/data.src.d.ts +2 -2
  622. package/modules/data.src.js +26 -25
  623. package/modules/datagrouping.js +17 -17
  624. package/modules/datagrouping.js.map +1 -1
  625. package/modules/datagrouping.src.js +6 -7
  626. package/modules/debugger.js +5 -5
  627. package/modules/debugger.js.map +1 -1
  628. package/modules/debugger.src.js +13 -8
  629. package/modules/dependency-wheel.js +8 -8
  630. package/modules/dependency-wheel.js.map +1 -1
  631. package/modules/dependency-wheel.src.js +10 -10
  632. package/modules/dotplot.js +5 -5
  633. package/modules/dotplot.js.map +1 -1
  634. package/modules/dotplot.src.js +6 -14
  635. package/modules/drag-panes.js +10 -10
  636. package/modules/drag-panes.js.map +1 -1
  637. package/modules/drag-panes.src.js +4 -6
  638. package/modules/draggable-points.js +33 -33
  639. package/modules/draggable-points.js.map +1 -1
  640. package/modules/draggable-points.src.js +22 -35
  641. package/modules/drilldown.d.ts +1 -1
  642. package/modules/drilldown.js +23 -22
  643. package/modules/drilldown.js.map +1 -1
  644. package/modules/drilldown.src.d.ts +1 -1
  645. package/modules/drilldown.src.js +66 -53
  646. package/modules/dumbbell.d.ts +4 -0
  647. package/modules/dumbbell.js +24 -9
  648. package/modules/dumbbell.js.map +1 -1
  649. package/modules/dumbbell.src.d.ts +4 -0
  650. package/modules/dumbbell.src.js +1029 -104
  651. package/modules/export-data.d.ts +4 -29
  652. package/modules/export-data.js +21 -21
  653. package/modules/export-data.js.map +1 -1
  654. package/modules/export-data.src.d.ts +4 -29
  655. package/modules/export-data.src.js +155 -189
  656. package/modules/exporting.d.ts +2 -0
  657. package/modules/exporting.js +33 -33
  658. package/modules/exporting.js.map +1 -1
  659. package/modules/exporting.src.d.ts +2 -0
  660. package/modules/exporting.src.js +40 -30
  661. package/modules/full-screen.js +7 -7
  662. package/modules/full-screen.js.map +1 -1
  663. package/modules/full-screen.src.js +4 -3
  664. package/modules/funnel.js +9 -9
  665. package/modules/funnel.js.map +1 -1
  666. package/modules/funnel.src.js +14 -15
  667. package/modules/funnel3d.js +17 -17
  668. package/modules/funnel3d.js.map +1 -1
  669. package/modules/funnel3d.src.js +12 -14
  670. package/modules/gantt.js +194 -183
  671. package/modules/gantt.js.map +1 -1
  672. package/modules/gantt.src.js +2071 -1260
  673. package/modules/grid-axis.js +22 -19
  674. package/modules/grid-axis.js.map +1 -1
  675. package/modules/grid-axis.src.js +149 -43
  676. package/modules/heatmap.js +33 -32
  677. package/modules/heatmap.js.map +1 -1
  678. package/modules/heatmap.src.js +130 -114
  679. package/modules/histogram-bellcurve.js +10 -10
  680. package/modules/histogram-bellcurve.js.map +1 -1
  681. package/modules/histogram-bellcurve.src.js +57 -16
  682. package/modules/item-series.js +9 -9
  683. package/modules/item-series.js.map +1 -1
  684. package/modules/item-series.src.js +20 -13
  685. package/modules/lollipop.d.ts +20 -1
  686. package/modules/lollipop.js +26 -4
  687. package/modules/lollipop.js.map +1 -1
  688. package/modules/lollipop.src.d.ts +20 -1
  689. package/modules/lollipop.src.js +1452 -10
  690. package/modules/map.d.ts +2 -2
  691. package/modules/map.js +99 -98
  692. package/modules/map.js.map +1 -1
  693. package/modules/map.src.d.ts +2 -2
  694. package/modules/map.src.js +1442 -1326
  695. package/modules/marker-clusters.js +35 -36
  696. package/modules/marker-clusters.js.map +1 -1
  697. package/modules/marker-clusters.src.js +31 -51
  698. package/modules/networkgraph.js +47 -46
  699. package/modules/networkgraph.js.map +1 -1
  700. package/modules/networkgraph.src.js +98 -81
  701. package/modules/no-data-to-display.js +4 -4
  702. package/modules/no-data-to-display.js.map +1 -1
  703. package/modules/no-data-to-display.src.js +17 -13
  704. package/modules/offline-exporting.js +15 -15
  705. package/modules/offline-exporting.js.map +1 -1
  706. package/modules/offline-exporting.src.js +63 -46
  707. package/modules/oldie-polyfills.js +6 -6
  708. package/modules/oldie-polyfills.js.map +1 -1
  709. package/modules/oldie-polyfills.src.js +7 -2
  710. package/modules/oldie.js +52 -26
  711. package/modules/oldie.js.map +1 -1
  712. package/modules/oldie.src.js +1411 -34
  713. package/modules/organization.js +11 -11
  714. package/modules/organization.js.map +1 -1
  715. package/modules/organization.src.js +7 -6
  716. package/modules/overlapping-datalabels.js +1 -1
  717. package/modules/overlapping-datalabels.src.js +1 -1
  718. package/modules/parallel-coordinates.js +11 -11
  719. package/modules/parallel-coordinates.js.map +1 -1
  720. package/modules/parallel-coordinates.src.js +144 -136
  721. package/modules/pareto.js +5 -5
  722. package/modules/pareto.js.map +1 -1
  723. package/modules/pareto.src.js +8 -9
  724. package/modules/pathfinder.js +31 -27
  725. package/modules/pathfinder.js.map +1 -1
  726. package/modules/pathfinder.src.js +1589 -985
  727. package/modules/pattern-fill.js +13 -13
  728. package/modules/pattern-fill.js.map +1 -1
  729. package/modules/pattern-fill.src.js +25 -21
  730. package/modules/price-indicator.js +4 -4
  731. package/modules/price-indicator.js.map +1 -1
  732. package/modules/price-indicator.src.js +5 -3
  733. package/modules/pyramid3d.js +3 -3
  734. package/modules/pyramid3d.js.map +1 -1
  735. package/modules/pyramid3d.src.js +4 -5
  736. package/modules/sankey.js +25 -26
  737. package/modules/sankey.js.map +1 -1
  738. package/modules/sankey.src.js +39 -36
  739. package/modules/series-label.js +17 -17
  740. package/modules/series-label.js.map +1 -1
  741. package/modules/series-label.src.js +17 -17
  742. package/modules/solid-gauge.js +8 -8
  743. package/modules/solid-gauge.js.map +1 -1
  744. package/modules/solid-gauge.src.js +123 -91
  745. package/modules/sonification.d.ts +33 -16
  746. package/modules/sonification.js +55 -49
  747. package/modules/sonification.js.map +1 -1
  748. package/modules/sonification.src.d.ts +33 -16
  749. package/modules/sonification.src.js +361 -115
  750. package/modules/static-scale.js +4 -4
  751. package/modules/static-scale.js.map +1 -1
  752. package/modules/static-scale.src.js +3 -4
  753. package/modules/stock-tools.d.ts +23 -1
  754. package/modules/stock-tools.js +150 -84
  755. package/modules/stock-tools.js.map +1 -1
  756. package/modules/stock-tools.src.d.ts +23 -1
  757. package/modules/stock-tools.src.js +3792 -44
  758. package/modules/stock.js +161 -158
  759. package/modules/stock.js.map +1 -1
  760. package/modules/stock.src.js +456 -412
  761. package/modules/streamgraph.js +2 -2
  762. package/modules/streamgraph.js.map +1 -1
  763. package/modules/streamgraph.src.js +42 -5
  764. package/modules/sunburst.js +51 -49
  765. package/modules/sunburst.js.map +1 -1
  766. package/modules/sunburst.src.js +152 -52
  767. package/modules/tilemap.js +14 -14
  768. package/modules/tilemap.js.map +1 -1
  769. package/modules/tilemap.src.js +12 -11
  770. package/modules/timeline.js +14 -14
  771. package/modules/timeline.js.map +1 -1
  772. package/modules/timeline.src.js +19 -18
  773. package/modules/treegrid.js +57 -52
  774. package/modules/treegrid.js.map +1 -1
  775. package/modules/treegrid.src.js +236 -60
  776. package/modules/treemap.js +35 -34
  777. package/modules/treemap.js.map +1 -1
  778. package/modules/treemap.src.js +213 -118
  779. package/modules/variable-pie.js +8 -8
  780. package/modules/variable-pie.js.map +1 -1
  781. package/modules/variable-pie.src.js +12 -10
  782. package/modules/variwide.js +8 -8
  783. package/modules/variwide.js.map +1 -1
  784. package/modules/variwide.src.js +8 -8
  785. package/modules/vector.js +6 -6
  786. package/modules/vector.js.map +1 -1
  787. package/modules/vector.src.js +9 -9
  788. package/modules/venn.js +26 -26
  789. package/modules/venn.js.map +1 -1
  790. package/modules/venn.src.js +49 -37
  791. package/modules/windbarb.js +11 -11
  792. package/modules/windbarb.js.map +1 -1
  793. package/modules/windbarb.src.js +11 -12
  794. package/modules/wordcloud.js +19 -19
  795. package/modules/wordcloud.js.map +1 -1
  796. package/modules/wordcloud.src.js +26 -18
  797. package/modules/xrange.js +12 -12
  798. package/modules/xrange.js.map +1 -1
  799. package/modules/xrange.src.js +19 -20
  800. package/package.json +1 -1
  801. package/themes/avocado.js +3 -3
  802. package/themes/avocado.js.map +1 -1
  803. package/themes/avocado.src.js +5 -4
  804. package/themes/dark-blue.js +3 -3
  805. package/themes/dark-blue.js.map +1 -1
  806. package/themes/dark-blue.src.js +4 -3
  807. package/themes/dark-green.js +3 -3
  808. package/themes/dark-green.js.map +1 -1
  809. package/themes/dark-green.src.js +4 -3
  810. package/themes/dark-unica.js +7 -7
  811. package/themes/dark-unica.js.map +1 -1
  812. package/themes/dark-unica.src.js +6 -6
  813. package/themes/gray.js +3 -3
  814. package/themes/gray.js.map +1 -1
  815. package/themes/gray.src.js +5 -4
  816. package/themes/grid-light.js +4 -4
  817. package/themes/grid-light.js.map +1 -1
  818. package/themes/grid-light.src.js +4 -3
  819. package/themes/grid.js +3 -3
  820. package/themes/grid.js.map +1 -1
  821. package/themes/grid.src.js +4 -3
  822. package/themes/high-contrast-dark.js +6 -6
  823. package/themes/high-contrast-dark.js.map +1 -1
  824. package/themes/high-contrast-dark.src.js +5 -4
  825. package/themes/high-contrast-light.js +3 -3
  826. package/themes/high-contrast-light.js.map +1 -1
  827. package/themes/high-contrast-light.src.js +4 -3
  828. package/themes/sand-signika.js +5 -5
  829. package/themes/sand-signika.js.map +1 -1
  830. package/themes/sand-signika.src.js +4 -3
  831. package/themes/skies.js +4 -4
  832. package/themes/skies.js.map +1 -1
  833. package/themes/skies.src.js +5 -4
  834. package/themes/sunset.js +3 -3
  835. package/themes/sunset.js.map +1 -1
  836. package/themes/sunset.src.js +5 -4
  837. package/es-modules/annotations/controllable/ControllableCircle.js +0 -79
  838. package/es-modules/annotations/controllable/ControllableImage.js +0 -79
  839. package/es-modules/annotations/controllable/ControllableRect.js +0 -82
  840. package/es-modules/annotations/types/InfinityLine.js +0 -110
  841. package/es-modules/masters/modules/map-parser.src.js +0 -12
  842. package/es-modules/modules/accessibility/components/InfoRegionsComponent/AnnotationsA11y.js +0 -80
  843. package/es-modules/modules/accessibility/components/InfoRegionsComponent/InfoRegionsComponent.js +0 -499
  844. package/es-modules/modules/accessibility/components/SeriesComponent/forcedMarkers.js +0 -147
  845. package/es-modules/modules/map-parser.src.js +0 -365
  846. package/es-modules/modules/sonification/options.js +0 -36
  847. package/es-modules/parts-3d/Chart.js +0 -1577
  848. package/es-modules/parts-3d/VMLRenderer.js +0 -35
  849. package/es-modules/parts-gantt/PathfinderAlgorithms.js +0 -656
  850. package/modules/map-parser.d.ts +0 -17
  851. package/modules/map-parser.js +0 -17
  852. package/modules/map-parser.js.map +0 -1
  853. package/modules/map-parser.src.d.ts +0 -17
  854. package/modules/map-parser.src.js +0 -421
@@ -0,0 +1,816 @@
1
+ /* *
2
+ *
3
+ * (c) 2016 Highsoft AS
4
+ * Authors: Øystein Moseng, Lars A. V. Cabrera
5
+ *
6
+ * License: www.highcharts.com/license
7
+ *
8
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
9
+ *
10
+ * */
11
+ 'use strict';
12
+ import Connection from './Connection.js';
13
+ import Chart from '../Core/Chart/Chart.js';
14
+ import H from '../Core/Globals.js';
15
+ /**
16
+ * The default pathfinder algorithm to use for a chart. It is possible to define
17
+ * your own algorithms by adding them to the
18
+ * `Highcharts.Pathfinder.prototype.algorithms`
19
+ * object before the chart has been created.
20
+ *
21
+ * The default algorithms are as follows:
22
+ *
23
+ * `straight`: Draws a straight line between the connecting
24
+ * points. Does not avoid other points when drawing.
25
+ *
26
+ * `simpleConnect`: Finds a path between the points using right angles
27
+ * only. Takes only starting/ending points into
28
+ * account, and will not avoid other points.
29
+ *
30
+ * `fastAvoid`: Finds a path between the points using right angles
31
+ * only. Will attempt to avoid other points, but its
32
+ * focus is performance over accuracy. Works well with
33
+ * less dense datasets.
34
+ *
35
+ * @typedef {"fastAvoid"|"simpleConnect"|"straight"|string} Highcharts.PathfinderTypeValue
36
+ */
37
+ ''; // detach doclets above
38
+ import O from '../Core/Options.js';
39
+ var defaultOptions = O.defaultOptions;
40
+ import Point from '../Core/Series/Point.js';
41
+ import U from '../Core/Utilities.js';
42
+ var addEvent = U.addEvent, defined = U.defined, error = U.error, extend = U.extend, merge = U.merge, objectEach = U.objectEach, pick = U.pick, splat = U.splat;
43
+ import pathfinderAlgorithms from './PathfinderAlgorithms.js';
44
+ import '../Extensions/ArrowSymbols.js';
45
+ var deg2rad = H.deg2rad, max = Math.max, min = Math.min;
46
+ /*
47
+ @todo:
48
+ - Document how to write your own algorithms
49
+ - Consider adding a Point.pathTo method that wraps creating a connection
50
+ and rendering it
51
+ */
52
+ // Set default Pathfinder options
53
+ extend(defaultOptions, {
54
+ /**
55
+ * The Pathfinder module allows you to define connections between any two
56
+ * points, represented as lines - optionally with markers for the start
57
+ * and/or end points. Multiple algorithms are available for calculating how
58
+ * the connecting lines are drawn.
59
+ *
60
+ * Connector functionality requires Highcharts Gantt to be loaded. In Gantt
61
+ * charts, the connectors are used to draw dependencies between tasks.
62
+ *
63
+ * @see [dependency](series.gantt.data.dependency)
64
+ *
65
+ * @sample gantt/pathfinder/demo
66
+ * Pathfinder connections
67
+ *
68
+ * @declare Highcharts.ConnectorsOptions
69
+ * @product gantt
70
+ * @optionparent connectors
71
+ */
72
+ connectors: {
73
+ /**
74
+ * Enable connectors for this chart. Requires Highcharts Gantt.
75
+ *
76
+ * @type {boolean}
77
+ * @default true
78
+ * @since 6.2.0
79
+ * @apioption connectors.enabled
80
+ */
81
+ /**
82
+ * Set the default dash style for this chart's connecting lines.
83
+ *
84
+ * @type {string}
85
+ * @default solid
86
+ * @since 6.2.0
87
+ * @apioption connectors.dashStyle
88
+ */
89
+ /**
90
+ * Set the default color for this chart's Pathfinder connecting lines.
91
+ * Defaults to the color of the point being connected.
92
+ *
93
+ * @type {Highcharts.ColorString}
94
+ * @since 6.2.0
95
+ * @apioption connectors.lineColor
96
+ */
97
+ /**
98
+ * Set the default pathfinder margin to use, in pixels. Some Pathfinder
99
+ * algorithms attempt to avoid obstacles, such as other points in the
100
+ * chart. These algorithms use this margin to determine how close lines
101
+ * can be to an obstacle. The default is to compute this automatically
102
+ * from the size of the obstacles in the chart.
103
+ *
104
+ * To draw connecting lines close to existing points, set this to a low
105
+ * number. For more space around existing points, set this number
106
+ * higher.
107
+ *
108
+ * @sample gantt/pathfinder/algorithm-margin
109
+ * Small algorithmMargin
110
+ *
111
+ * @type {number}
112
+ * @since 6.2.0
113
+ * @apioption connectors.algorithmMargin
114
+ */
115
+ /**
116
+ * Set the default pathfinder algorithm to use for this chart. It is
117
+ * possible to define your own algorithms by adding them to the
118
+ * Highcharts.Pathfinder.prototype.algorithms object before the chart
119
+ * has been created.
120
+ *
121
+ * The default algorithms are as follows:
122
+ *
123
+ * `straight`: Draws a straight line between the connecting
124
+ * points. Does not avoid other points when drawing.
125
+ *
126
+ * `simpleConnect`: Finds a path between the points using right angles
127
+ * only. Takes only starting/ending points into
128
+ * account, and will not avoid other points.
129
+ *
130
+ * `fastAvoid`: Finds a path between the points using right angles
131
+ * only. Will attempt to avoid other points, but its
132
+ * focus is performance over accuracy. Works well with
133
+ * less dense datasets.
134
+ *
135
+ * Default value: `straight` is used as default for most series types,
136
+ * while `simpleConnect` is used as default for Gantt series, to show
137
+ * dependencies between points.
138
+ *
139
+ * @sample gantt/pathfinder/demo
140
+ * Different types used
141
+ *
142
+ * @type {Highcharts.PathfinderTypeValue}
143
+ * @default undefined
144
+ * @since 6.2.0
145
+ */
146
+ type: 'straight',
147
+ /**
148
+ * Set the default pixel width for this chart's Pathfinder connecting
149
+ * lines.
150
+ *
151
+ * @since 6.2.0
152
+ */
153
+ lineWidth: 1,
154
+ /**
155
+ * Marker options for this chart's Pathfinder connectors. Note that
156
+ * this option is overridden by the `startMarker` and `endMarker`
157
+ * options.
158
+ *
159
+ * @declare Highcharts.ConnectorsMarkerOptions
160
+ * @since 6.2.0
161
+ */
162
+ marker: {
163
+ /**
164
+ * Set the radius of the connector markers. The default is
165
+ * automatically computed based on the algorithmMargin setting.
166
+ *
167
+ * Setting marker.width and marker.height will override this
168
+ * setting.
169
+ *
170
+ * @type {number}
171
+ * @since 6.2.0
172
+ * @apioption connectors.marker.radius
173
+ */
174
+ /**
175
+ * Set the width of the connector markers. If not supplied, this
176
+ * is inferred from the marker radius.
177
+ *
178
+ * @type {number}
179
+ * @since 6.2.0
180
+ * @apioption connectors.marker.width
181
+ */
182
+ /**
183
+ * Set the height of the connector markers. If not supplied, this
184
+ * is inferred from the marker radius.
185
+ *
186
+ * @type {number}
187
+ * @since 6.2.0
188
+ * @apioption connectors.marker.height
189
+ */
190
+ /**
191
+ * Set the color of the connector markers. By default this is the
192
+ * same as the connector color.
193
+ *
194
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
195
+ * @since 6.2.0
196
+ * @apioption connectors.marker.color
197
+ */
198
+ /**
199
+ * Set the line/border color of the connector markers. By default
200
+ * this is the same as the marker color.
201
+ *
202
+ * @type {Highcharts.ColorString}
203
+ * @since 6.2.0
204
+ * @apioption connectors.marker.lineColor
205
+ */
206
+ /**
207
+ * Enable markers for the connectors.
208
+ */
209
+ enabled: false,
210
+ /**
211
+ * Horizontal alignment of the markers relative to the points.
212
+ *
213
+ * @type {Highcharts.AlignValue}
214
+ */
215
+ align: 'center',
216
+ /**
217
+ * Vertical alignment of the markers relative to the points.
218
+ *
219
+ * @type {Highcharts.VerticalAlignValue}
220
+ */
221
+ verticalAlign: 'middle',
222
+ /**
223
+ * Whether or not to draw the markers inside the points.
224
+ */
225
+ inside: false,
226
+ /**
227
+ * Set the line/border width of the pathfinder markers.
228
+ */
229
+ lineWidth: 1
230
+ },
231
+ /**
232
+ * Marker options specific to the start markers for this chart's
233
+ * Pathfinder connectors. Overrides the generic marker options.
234
+ *
235
+ * @declare Highcharts.ConnectorsStartMarkerOptions
236
+ * @extends connectors.marker
237
+ * @since 6.2.0
238
+ */
239
+ startMarker: {
240
+ /**
241
+ * Set the symbol of the connector start markers.
242
+ */
243
+ symbol: 'diamond'
244
+ },
245
+ /**
246
+ * Marker options specific to the end markers for this chart's
247
+ * Pathfinder connectors. Overrides the generic marker options.
248
+ *
249
+ * @declare Highcharts.ConnectorsEndMarkerOptions
250
+ * @extends connectors.marker
251
+ * @since 6.2.0
252
+ */
253
+ endMarker: {
254
+ /**
255
+ * Set the symbol of the connector end markers.
256
+ */
257
+ symbol: 'arrow-filled'
258
+ }
259
+ }
260
+ });
261
+ /**
262
+ * Override Pathfinder connector options for a series. Requires Highcharts Gantt
263
+ * to be loaded.
264
+ *
265
+ * @declare Highcharts.SeriesConnectorsOptionsObject
266
+ * @extends connectors
267
+ * @since 6.2.0
268
+ * @excluding enabled, algorithmMargin
269
+ * @product gantt
270
+ * @apioption plotOptions.series.connectors
271
+ */
272
+ /**
273
+ * Connect to a point. This option can be either a string, referring to the ID
274
+ * of another point, or an object, or an array of either. If the option is an
275
+ * array, each element defines a connection.
276
+ *
277
+ * @sample gantt/pathfinder/demo
278
+ * Different connection types
279
+ *
280
+ * @declare Highcharts.XrangePointConnectorsOptionsObject
281
+ * @type {string|Array<string|*>|*}
282
+ * @extends plotOptions.series.connectors
283
+ * @since 6.2.0
284
+ * @excluding enabled
285
+ * @product gantt
286
+ * @requires highcharts-gantt
287
+ * @apioption series.xrange.data.connect
288
+ */
289
+ /**
290
+ * The ID of the point to connect to.
291
+ *
292
+ * @type {string}
293
+ * @since 6.2.0
294
+ * @product gantt
295
+ * @apioption series.xrange.data.connect.to
296
+ */
297
+ /**
298
+ * Get point bounding box using plotX/plotY and shapeArgs. If using
299
+ * graphic.getBBox() directly, the bbox will be affected by animation.
300
+ *
301
+ * @private
302
+ * @function
303
+ *
304
+ * @param {Highcharts.Point} point
305
+ * The point to get BB of.
306
+ *
307
+ * @return {Highcharts.Dictionary<number>|null}
308
+ * Result xMax, xMin, yMax, yMin.
309
+ */
310
+ function getPointBB(point) {
311
+ var shapeArgs = point.shapeArgs, bb;
312
+ // Prefer using shapeArgs (columns)
313
+ if (shapeArgs) {
314
+ return {
315
+ xMin: shapeArgs.x,
316
+ xMax: shapeArgs.x + shapeArgs.width,
317
+ yMin: shapeArgs.y,
318
+ yMax: shapeArgs.y + shapeArgs.height
319
+ };
320
+ }
321
+ // Otherwise use plotX/plotY and bb
322
+ bb = point.graphic && point.graphic.getBBox();
323
+ return bb ? {
324
+ xMin: point.plotX - bb.width / 2,
325
+ xMax: point.plotX + bb.width / 2,
326
+ yMin: point.plotY - bb.height / 2,
327
+ yMax: point.plotY + bb.height / 2
328
+ } : null;
329
+ }
330
+ /**
331
+ * Calculate margin to place around obstacles for the pathfinder in pixels.
332
+ * Returns a minimum of 1 pixel margin.
333
+ *
334
+ * @private
335
+ * @function
336
+ *
337
+ * @param {Array<object>} obstacles
338
+ * Obstacles to calculate margin from.
339
+ *
340
+ * @return {number}
341
+ * The calculated margin in pixels. At least 1.
342
+ */
343
+ function calculateObstacleMargin(obstacles) {
344
+ var len = obstacles.length, i = 0, j, obstacleDistance, distances = [],
345
+ // Compute smallest distance between two rectangles
346
+ distance = function (a, b, bbMargin) {
347
+ // Count the distance even if we are slightly off
348
+ var margin = pick(bbMargin, 10), yOverlap = a.yMax + margin > b.yMin - margin &&
349
+ a.yMin - margin < b.yMax + margin, xOverlap = a.xMax + margin > b.xMin - margin &&
350
+ a.xMin - margin < b.xMax + margin, xDistance = yOverlap ? (a.xMin > b.xMax ? a.xMin - b.xMax : b.xMin - a.xMax) : Infinity, yDistance = xOverlap ? (a.yMin > b.yMax ? a.yMin - b.yMax : b.yMin - a.yMax) : Infinity;
351
+ // If the rectangles collide, try recomputing with smaller margin.
352
+ // If they collide anyway, discard the obstacle.
353
+ if (xOverlap && yOverlap) {
354
+ return (margin ?
355
+ distance(a, b, Math.floor(margin / 2)) :
356
+ Infinity);
357
+ }
358
+ return min(xDistance, yDistance);
359
+ };
360
+ // Go over all obstacles and compare them to the others.
361
+ for (; i < len; ++i) {
362
+ // Compare to all obstacles ahead. We will already have compared this
363
+ // obstacle to the ones before.
364
+ for (j = i + 1; j < len; ++j) {
365
+ obstacleDistance = distance(obstacles[i], obstacles[j]);
366
+ // TODO: Magic number 80
367
+ if (obstacleDistance < 80) { // Ignore large distances
368
+ distances.push(obstacleDistance);
369
+ }
370
+ }
371
+ }
372
+ // Ensure we always have at least one value, even in very spaceous charts
373
+ distances.push(80);
374
+ return max(Math.floor(distances.sort(function (a, b) {
375
+ return (a - b);
376
+ })[
377
+ // Discard first 10% of the relevant distances, and then grab
378
+ // the smallest one.
379
+ Math.floor(distances.length / 10)] / 2 - 1 // Divide the distance by 2 and subtract 1.
380
+ ), 1 // 1 is the minimum margin
381
+ );
382
+ }
383
+ /* eslint-disable no-invalid-this, valid-jsdoc */
384
+ /**
385
+ * The Pathfinder class.
386
+ *
387
+ * @private
388
+ * @class
389
+ * @name Highcharts.Pathfinder
390
+ *
391
+ * @param {Highcharts.Chart} chart
392
+ * The chart to operate on.
393
+ */
394
+ var Pathfinder = /** @class */ (function () {
395
+ function Pathfinder(chart) {
396
+ /* *
397
+ *
398
+ * Properties
399
+ *
400
+ * */
401
+ this.chart = void 0;
402
+ this.chartObstacles = void 0;
403
+ this.chartObstacleMetrics = void 0;
404
+ this.connections = void 0;
405
+ this.group = void 0;
406
+ this.lineObstacles = void 0;
407
+ this.init(chart);
408
+ }
409
+ /**
410
+ * @name Highcharts.Pathfinder#algorithms
411
+ * @type {Highcharts.Dictionary<Function>}
412
+ */
413
+ /**
414
+ * Initialize the Pathfinder object.
415
+ *
416
+ * @function Highcharts.Pathfinder#init
417
+ *
418
+ * @param {Highcharts.Chart} chart
419
+ * The chart context.
420
+ */
421
+ Pathfinder.prototype.init = function (chart) {
422
+ // Initialize pathfinder with chart context
423
+ this.chart = chart;
424
+ // Init connection reference list
425
+ this.connections = [];
426
+ // Recalculate paths/obstacles on chart redraw
427
+ addEvent(chart, 'redraw', function () {
428
+ this.pathfinder.update();
429
+ });
430
+ };
431
+ /**
432
+ * Update Pathfinder connections from scratch.
433
+ *
434
+ * @function Highcharts.Pathfinder#update
435
+ *
436
+ * @param {boolean} [deferRender]
437
+ * Whether or not to defer rendering of connections until
438
+ * series.afterAnimate event has fired. Used on first render.
439
+ */
440
+ Pathfinder.prototype.update = function (deferRender) {
441
+ var chart = this.chart, pathfinder = this, oldConnections = pathfinder.connections;
442
+ // Rebuild pathfinder connections from options
443
+ pathfinder.connections = [];
444
+ chart.series.forEach(function (series) {
445
+ if (series.visible && !series.options.isInternal) {
446
+ series.points.forEach(function (point) {
447
+ var ganttPointOptions = point.options;
448
+ // For Gantt series the connect could be
449
+ // defined as a dependency
450
+ if (ganttPointOptions && ganttPointOptions.dependency) {
451
+ ganttPointOptions.connect = ganttPointOptions.dependency;
452
+ }
453
+ var to, connects = (point.options &&
454
+ point.options.connect &&
455
+ splat(point.options.connect));
456
+ if (point.visible && point.isInside !== false && connects) {
457
+ connects.forEach(function (connect) {
458
+ to = chart.get(typeof connect === 'string' ?
459
+ connect : connect.to);
460
+ if (to instanceof Point &&
461
+ to.series.visible &&
462
+ to.visible &&
463
+ to.isInside !== false) {
464
+ // Add new connection
465
+ pathfinder.connections.push(new Connection(point, // from
466
+ to, typeof connect === 'string' ?
467
+ {} :
468
+ connect));
469
+ }
470
+ });
471
+ }
472
+ });
473
+ }
474
+ });
475
+ // Clear connections that should not be updated, and move old info over
476
+ // to new connections.
477
+ for (var j = 0, k, found, lenOld = oldConnections.length, lenNew = pathfinder.connections.length; j < lenOld; ++j) {
478
+ found = false;
479
+ for (k = 0; k < lenNew; ++k) {
480
+ if (oldConnections[j].fromPoint ===
481
+ pathfinder.connections[k].fromPoint &&
482
+ oldConnections[j].toPoint ===
483
+ pathfinder.connections[k].toPoint) {
484
+ pathfinder.connections[k].graphics =
485
+ oldConnections[j].graphics;
486
+ found = true;
487
+ break;
488
+ }
489
+ }
490
+ if (!found) {
491
+ oldConnections[j].destroy();
492
+ }
493
+ }
494
+ // Clear obstacles to force recalculation. This must be done on every
495
+ // redraw in case positions have changed. Recalculation is handled in
496
+ // Connection.getPath on demand.
497
+ delete this.chartObstacles;
498
+ delete this.lineObstacles;
499
+ // Draw the pending connections
500
+ pathfinder.renderConnections(deferRender);
501
+ };
502
+ /**
503
+ * Draw the chart's connecting paths.
504
+ *
505
+ * @function Highcharts.Pathfinder#renderConnections
506
+ *
507
+ * @param {boolean} [deferRender]
508
+ * Whether or not to defer render until series animation is finished.
509
+ * Used on first render.
510
+ */
511
+ Pathfinder.prototype.renderConnections = function (deferRender) {
512
+ if (deferRender) {
513
+ // Render after series are done animating
514
+ this.chart.series.forEach(function (series) {
515
+ var render = function () {
516
+ // Find pathfinder connections belonging to this series
517
+ // that haven't rendered, and render them now.
518
+ var pathfinder = series.chart.pathfinder, conns = pathfinder && pathfinder.connections || [];
519
+ conns.forEach(function (connection) {
520
+ if (connection.fromPoint &&
521
+ connection.fromPoint.series === series) {
522
+ connection.render();
523
+ }
524
+ });
525
+ if (series.pathfinderRemoveRenderEvent) {
526
+ series.pathfinderRemoveRenderEvent();
527
+ delete series.pathfinderRemoveRenderEvent;
528
+ }
529
+ };
530
+ if (series.options.animation === false) {
531
+ render();
532
+ }
533
+ else {
534
+ series.pathfinderRemoveRenderEvent = addEvent(series, 'afterAnimate', render);
535
+ }
536
+ });
537
+ }
538
+ else {
539
+ // Go through connections and render them
540
+ this.connections.forEach(function (connection) {
541
+ connection.render();
542
+ });
543
+ }
544
+ };
545
+ /**
546
+ * Get obstacles for the points in the chart. Does not include connecting
547
+ * lines from Pathfinder. Applies algorithmMargin to the obstacles.
548
+ *
549
+ * @function Highcharts.Pathfinder#getChartObstacles
550
+ *
551
+ * @param {object} options
552
+ * Options for the calculation. Currenlty only
553
+ * options.algorithmMargin.
554
+ *
555
+ * @return {Array<object>}
556
+ * An array of calculated obstacles. Each obstacle is defined as an
557
+ * object with xMin, xMax, yMin and yMax properties.
558
+ */
559
+ Pathfinder.prototype.getChartObstacles = function (options) {
560
+ var obstacles = [], series = this.chart.series, margin = pick(options.algorithmMargin, 0), calculatedMargin;
561
+ for (var i = 0, sLen = series.length; i < sLen; ++i) {
562
+ if (series[i].visible && !series[i].options.isInternal) {
563
+ for (var j = 0, pLen = series[i].points.length, bb, point; j < pLen; ++j) {
564
+ point = series[i].points[j];
565
+ if (point.visible) {
566
+ bb = getPointBB(point);
567
+ if (bb) {
568
+ obstacles.push({
569
+ xMin: bb.xMin - margin,
570
+ xMax: bb.xMax + margin,
571
+ yMin: bb.yMin - margin,
572
+ yMax: bb.yMax + margin
573
+ });
574
+ }
575
+ }
576
+ }
577
+ }
578
+ }
579
+ // Sort obstacles by xMin for optimization
580
+ obstacles = obstacles.sort(function (a, b) {
581
+ return a.xMin - b.xMin;
582
+ });
583
+ // Add auto-calculated margin if the option is not defined
584
+ if (!defined(options.algorithmMargin)) {
585
+ calculatedMargin =
586
+ options.algorithmMargin =
587
+ calculateObstacleMargin(obstacles);
588
+ obstacles.forEach(function (obstacle) {
589
+ obstacle.xMin -= calculatedMargin;
590
+ obstacle.xMax += calculatedMargin;
591
+ obstacle.yMin -= calculatedMargin;
592
+ obstacle.yMax += calculatedMargin;
593
+ });
594
+ }
595
+ return obstacles;
596
+ };
597
+ /**
598
+ * Utility function to get metrics for obstacles:
599
+ * - Widest obstacle width
600
+ * - Tallest obstacle height
601
+ *
602
+ * @function Highcharts.Pathfinder#getObstacleMetrics
603
+ *
604
+ * @param {Array<object>} obstacles
605
+ * An array of obstacles to inspect.
606
+ *
607
+ * @return {object}
608
+ * The calculated metrics, as an object with maxHeight and maxWidth
609
+ * properties.
610
+ */
611
+ Pathfinder.prototype.getObstacleMetrics = function (obstacles) {
612
+ var maxWidth = 0, maxHeight = 0, width, height, i = obstacles.length;
613
+ while (i--) {
614
+ width = obstacles[i].xMax - obstacles[i].xMin;
615
+ height = obstacles[i].yMax - obstacles[i].yMin;
616
+ if (maxWidth < width) {
617
+ maxWidth = width;
618
+ }
619
+ if (maxHeight < height) {
620
+ maxHeight = height;
621
+ }
622
+ }
623
+ return {
624
+ maxHeight: maxHeight,
625
+ maxWidth: maxWidth
626
+ };
627
+ };
628
+ /**
629
+ * Utility to get which direction to start the pathfinding algorithm
630
+ * (X vs Y), calculated from a set of marker options.
631
+ *
632
+ * @function Highcharts.Pathfinder#getAlgorithmStartDirection
633
+ *
634
+ * @param {Highcharts.ConnectorsMarkerOptions} markerOptions
635
+ * Marker options to calculate from.
636
+ *
637
+ * @return {boolean}
638
+ * Returns true for X, false for Y, and undefined for autocalculate.
639
+ */
640
+ Pathfinder.prototype.getAlgorithmStartDirection = function (markerOptions) {
641
+ var xCenter = markerOptions.align !== 'left' &&
642
+ markerOptions.align !== 'right', yCenter = markerOptions.verticalAlign !== 'top' &&
643
+ markerOptions.verticalAlign !== 'bottom', undef;
644
+ return xCenter ?
645
+ (yCenter ? undef : false) : // x is centered
646
+ (yCenter ? true : undef); // x is off-center
647
+ };
648
+ return Pathfinder;
649
+ }());
650
+ Pathfinder.prototype.algorithms = pathfinderAlgorithms;
651
+ // Add to Highcharts namespace
652
+ H.Pathfinder = Pathfinder;
653
+ // Add pathfinding capabilities to Points
654
+ extend(Point.prototype, /** @lends Point.prototype */ {
655
+ /**
656
+ * Get coordinates of anchor point for pathfinder connection.
657
+ *
658
+ * @private
659
+ * @function Highcharts.Point#getPathfinderAnchorPoint
660
+ *
661
+ * @param {Highcharts.ConnectorsMarkerOptions} markerOptions
662
+ * Connection options for position on point.
663
+ *
664
+ * @return {Highcharts.PositionObject}
665
+ * An object with x/y properties for the position. Coordinates are
666
+ * in plot values, not relative to point.
667
+ */
668
+ getPathfinderAnchorPoint: function (markerOptions) {
669
+ var bb = getPointBB(this), x, y;
670
+ switch (markerOptions.align) { // eslint-disable-line default-case
671
+ case 'right':
672
+ x = 'xMax';
673
+ break;
674
+ case 'left':
675
+ x = 'xMin';
676
+ }
677
+ switch (markerOptions.verticalAlign) { // eslint-disable-line default-case
678
+ case 'top':
679
+ y = 'yMin';
680
+ break;
681
+ case 'bottom':
682
+ y = 'yMax';
683
+ }
684
+ return {
685
+ x: x ? bb[x] : (bb.xMin + bb.xMax) / 2,
686
+ y: y ? bb[y] : (bb.yMin + bb.yMax) / 2
687
+ };
688
+ },
689
+ /**
690
+ * Utility to get the angle from one point to another.
691
+ *
692
+ * @private
693
+ * @function Highcharts.Point#getRadiansToVector
694
+ *
695
+ * @param {Highcharts.PositionObject} v1
696
+ * The first vector, as an object with x/y properties.
697
+ *
698
+ * @param {Highcharts.PositionObject} v2
699
+ * The second vector, as an object with x/y properties.
700
+ *
701
+ * @return {number}
702
+ * The angle in degrees
703
+ */
704
+ getRadiansToVector: function (v1, v2) {
705
+ var box;
706
+ if (!defined(v2)) {
707
+ box = getPointBB(this);
708
+ if (box) {
709
+ v2 = {
710
+ x: (box.xMin + box.xMax) / 2,
711
+ y: (box.yMin + box.yMax) / 2
712
+ };
713
+ }
714
+ }
715
+ return Math.atan2(v2.y - v1.y, v1.x - v2.x);
716
+ },
717
+ /**
718
+ * Utility to get the position of the marker, based on the path angle and
719
+ * the marker's radius.
720
+ *
721
+ * @private
722
+ * @function Highcharts.Point#getMarkerVector
723
+ *
724
+ * @param {number} radians
725
+ * The angle in radians from the point center to another vector.
726
+ *
727
+ * @param {number} markerRadius
728
+ * The radius of the marker, to calculate the additional distance to
729
+ * the center of the marker.
730
+ *
731
+ * @param {object} anchor
732
+ * The anchor point of the path and marker as an object with x/y
733
+ * properties.
734
+ *
735
+ * @return {object}
736
+ * The marker vector as an object with x/y properties.
737
+ */
738
+ getMarkerVector: function (radians, markerRadius, anchor) {
739
+ var twoPI = Math.PI * 2.0, theta = radians, bb = getPointBB(this), rectWidth = bb.xMax - bb.xMin, rectHeight = bb.yMax - bb.yMin, rAtan = Math.atan2(rectHeight, rectWidth), tanTheta = 1, leftOrRightRegion = false, rectHalfWidth = rectWidth / 2.0, rectHalfHeight = rectHeight / 2.0, rectHorizontalCenter = bb.xMin + rectHalfWidth, rectVerticalCenter = bb.yMin + rectHalfHeight, edgePoint = {
740
+ x: rectHorizontalCenter,
741
+ y: rectVerticalCenter
742
+ }, markerPoint = {}, xFactor = 1, yFactor = 1;
743
+ while (theta < -Math.PI) {
744
+ theta += twoPI;
745
+ }
746
+ while (theta > Math.PI) {
747
+ theta -= twoPI;
748
+ }
749
+ tanTheta = Math.tan(theta);
750
+ if ((theta > -rAtan) && (theta <= rAtan)) {
751
+ // Right side
752
+ yFactor = -1;
753
+ leftOrRightRegion = true;
754
+ }
755
+ else if (theta > rAtan && theta <= (Math.PI - rAtan)) {
756
+ // Top side
757
+ yFactor = -1;
758
+ }
759
+ else if (theta > (Math.PI - rAtan) || theta <= -(Math.PI - rAtan)) {
760
+ // Left side
761
+ xFactor = -1;
762
+ leftOrRightRegion = true;
763
+ }
764
+ else {
765
+ // Bottom side
766
+ xFactor = -1;
767
+ }
768
+ // Correct the edgePoint according to the placement of the marker
769
+ if (leftOrRightRegion) {
770
+ edgePoint.x += xFactor * (rectHalfWidth);
771
+ edgePoint.y += yFactor * (rectHalfWidth) * tanTheta;
772
+ }
773
+ else {
774
+ edgePoint.x += xFactor * (rectHeight / (2.0 * tanTheta));
775
+ edgePoint.y += yFactor * (rectHalfHeight);
776
+ }
777
+ if (anchor.x !== rectHorizontalCenter) {
778
+ edgePoint.x = anchor.x;
779
+ }
780
+ if (anchor.y !== rectVerticalCenter) {
781
+ edgePoint.y = anchor.y;
782
+ }
783
+ markerPoint.x = edgePoint.x + (markerRadius * Math.cos(theta));
784
+ markerPoint.y = edgePoint.y - (markerRadius * Math.sin(theta));
785
+ return markerPoint;
786
+ }
787
+ });
788
+ /**
789
+ * Warn if using legacy options. Copy the options over. Note that this will
790
+ * still break if using the legacy options in chart.update, addSeries etc.
791
+ * @private
792
+ */
793
+ function warnLegacy(chart) {
794
+ if (chart.options.pathfinder ||
795
+ chart.series.reduce(function (acc, series) {
796
+ if (series.options) {
797
+ merge(true, (series.options.connectors = series.options.connectors ||
798
+ {}), series.options.pathfinder);
799
+ }
800
+ return acc || series.options && series.options.pathfinder;
801
+ }, false)) {
802
+ merge(true, (chart.options.connectors = chart.options.connectors || {}), chart.options.pathfinder);
803
+ error('WARNING: Pathfinder options have been renamed. ' +
804
+ 'Use "chart.connectors" or "series.connectors" instead.');
805
+ }
806
+ }
807
+ // Initialize Pathfinder for charts
808
+ Chart.prototype.callbacks.push(function (chart) {
809
+ var options = chart.options;
810
+ if (options.connectors.enabled !== false) {
811
+ warnLegacy(chart);
812
+ this.pathfinder = new Pathfinder(this);
813
+ this.pathfinder.update(true); // First draw, defer render
814
+ }
815
+ });
816
+ export default Pathfinder;