highcharts 9.2.2 → 9.3.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 (747) hide show
  1. package/README.md +13 -6
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +48 -8
  4. package/css/annotations/popup.scss +70 -22
  5. package/css/highcharts.css +45 -0
  6. package/css/highcharts.scss +40 -0
  7. package/css/themes/dark-unica.css +45 -0
  8. package/css/themes/grid-light.css +45 -0
  9. package/css/themes/sand-signika.css +45 -0
  10. package/es-modules/Accessibility/A11yI18n.js +273 -224
  11. package/es-modules/Accessibility/Accessibility.js +233 -128
  12. package/es-modules/Accessibility/AccessibilityComponent.js +79 -314
  13. package/es-modules/Accessibility/Components/AnnotationsA11y.js +10 -0
  14. package/es-modules/Accessibility/Components/ContainerComponent.js +52 -27
  15. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +46 -23
  16. package/es-modules/Accessibility/Components/LegendComponent.js +97 -65
  17. package/es-modules/Accessibility/Components/MenuComponent.js +59 -40
  18. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -8
  19. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +152 -115
  20. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +133 -68
  21. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +64 -27
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +38 -21
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +380 -325
  24. package/es-modules/Accessibility/Components/ZoomComponent.js +28 -20
  25. package/es-modules/Accessibility/FocusBorder.js +192 -147
  26. package/es-modules/Accessibility/HighContrastMode.js +78 -66
  27. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  28. package/es-modules/Accessibility/KeyboardNavigation.js +144 -70
  29. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  30. package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -1
  31. package/es-modules/Accessibility/Options/LangOptions.js +1 -2
  32. package/es-modules/Accessibility/Options/Options.js +32 -17
  33. package/es-modules/Accessibility/ProxyElement.js +212 -0
  34. package/es-modules/Accessibility/ProxyProvider.js +305 -0
  35. package/es-modules/Accessibility/Utils/Announcer.js +15 -8
  36. package/es-modules/Accessibility/Utils/ChartUtilities.js +41 -16
  37. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  38. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  39. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -30
  40. package/es-modules/Core/Axis/Axis.js +37 -30
  41. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  42. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +54 -4
  43. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  44. package/es-modules/Core/Axis/OrdinalAxis.js +8 -12
  45. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  46. package/es-modules/Core/Axis/ScrollbarAxis.js +10 -3
  47. package/es-modules/Core/Axis/TreeGridAxis.js +2 -2
  48. package/es-modules/Core/Axis/TreeGridTick.js +1 -2
  49. package/es-modules/Core/Chart/Chart.js +2 -3
  50. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  51. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  52. package/es-modules/Core/Chart/MapChart.js +10 -22
  53. package/es-modules/Core/Chart/StockChart.js +3 -293
  54. package/es-modules/Core/Color/Palettes.js +22 -0
  55. package/es-modules/Core/DefaultOptions.js +19 -17
  56. package/es-modules/Core/Foundation.js +39 -31
  57. package/es-modules/Core/Globals.js +1 -1
  58. package/es-modules/Core/HttpUtilities.js +3 -3
  59. package/es-modules/Core/Legend/Legend.js +7 -3
  60. package/es-modules/Core/Navigator.js +7 -8
  61. package/es-modules/Core/Pointer.js +39 -36
  62. package/es-modules/Core/Renderer/HTML/AST.js +2 -0
  63. package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -18
  64. package/es-modules/Core/Renderer/SVG/SVGElement.js +3 -4
  65. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -18
  66. package/es-modules/Core/Renderer/SVG/TextBuilder.js +3 -3
  67. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  68. package/es-modules/Core/Series/DataLabel.js +2 -3
  69. package/es-modules/Core/Series/Point.js +5 -3
  70. package/es-modules/Core/Series/Series.js +153 -162
  71. package/es-modules/Core/Series/SeriesDefaults.js +3 -4
  72. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  73. package/es-modules/Core/Tooltip.js +44 -17
  74. package/es-modules/Core/Utilities.js +15 -7
  75. package/es-modules/Data/DataConverter.js +489 -0
  76. package/es-modules/Data/DataPromise.js +252 -0
  77. package/es-modules/Data/DataSeriesConverter.js +203 -0
  78. package/es-modules/Data/DataTable.js +1204 -0
  79. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  80. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  81. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  82. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  83. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  84. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  85. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  86. package/es-modules/Data/Parsers/CSVParser.js +399 -0
  87. package/es-modules/Data/Parsers/DataParser.js +101 -0
  88. package/es-modules/Data/Parsers/GoogleSheetsParser.js +220 -0
  89. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  90. package/es-modules/Data/Stores/CSVStore.js +317 -0
  91. package/es-modules/Data/Stores/DataStore.js +276 -0
  92. package/es-modules/Data/Stores/GoogleSheetsStore.js +167 -0
  93. package/es-modules/Data/Stores/HTMLTableStore.js +351 -0
  94. package/es-modules/Extensions/Annotations/Annotations.js +61 -11
  95. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  96. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  97. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +7 -1
  98. package/es-modules/Extensions/Annotations/NavigationBindings.js +68 -19
  99. package/es-modules/Extensions/Annotations/Popup.js +479 -141
  100. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  101. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -1
  102. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  103. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  104. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  105. package/es-modules/Extensions/Annotations/Types/Measure.js +14 -8
  106. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +5 -5
  107. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +207 -0
  108. package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -5
  109. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  110. package/es-modules/Extensions/Boost/BoostOverrides.js +3 -1
  111. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  112. package/es-modules/Extensions/BoostCanvas.js +1 -2
  113. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  114. package/es-modules/Extensions/DataGrouping.js +31 -18
  115. package/es-modules/Extensions/DownloadURL.js +2 -2
  116. package/es-modules/Extensions/DragPanes.js +1 -2
  117. package/es-modules/Extensions/Drilldown.js +2 -3
  118. package/es-modules/Extensions/Exporting/Exporting.js +8 -7
  119. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  120. package/es-modules/Extensions/GeoJSON.js +39 -63
  121. package/es-modules/Extensions/MarkerClusters.js +115 -97
  122. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  123. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +9 -8
  124. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  125. package/es-modules/Extensions/Oldie/Oldie.js +2 -3
  126. package/es-modules/Extensions/Pane.js +5 -6
  127. package/es-modules/Extensions/RangeSelector.js +3 -4
  128. package/es-modules/Extensions/Sonification/ChartSonify.js +247 -637
  129. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  130. package/es-modules/Extensions/Sonification/Instrument.js +496 -426
  131. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  132. package/es-modules/Extensions/Sonification/Options.js +10 -0
  133. package/es-modules/Extensions/Sonification/PointSonify.js +203 -152
  134. package/es-modules/Extensions/Sonification/SeriesSonify.js +459 -0
  135. package/es-modules/Extensions/Sonification/SignalHandler.js +124 -0
  136. package/es-modules/Extensions/Sonification/Sonification.js +26 -52
  137. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +62 -84
  138. package/es-modules/Extensions/Sonification/Timeline.js +255 -567
  139. package/es-modules/Extensions/Sonification/TimelineEvent.js +158 -0
  140. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  141. package/es-modules/Maps/MapNavigation.js +27 -64
  142. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  143. package/es-modules/Maps/MapPointer.js +7 -5
  144. package/es-modules/Maps/MapView.js +450 -0
  145. package/es-modules/Maps/MapViewOptionsDefault.js +95 -0
  146. package/es-modules/Maps/Projection.js +433 -0
  147. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  148. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  149. package/es-modules/Maps/Projections/Miller.js +17 -0
  150. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  151. package/es-modules/Maps/Projections/ProjectionRegistry.js +17 -0
  152. package/es-modules/Maps/Projections/WebMercator.js +25 -0
  153. package/es-modules/Series/AreaRange/AreaRangeSeries.js +4 -5
  154. package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -8
  155. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  156. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  157. package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
  158. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  159. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  160. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -18
  161. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  162. package/es-modules/Series/ColorMapComposition.js +109 -0
  163. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  164. package/es-modules/Series/Column/ColumnSeries.js +3 -4
  165. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +6 -6
  166. package/es-modules/Series/DataModifyComposition.js +539 -0
  167. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  168. package/es-modules/Series/DerivedComposition.js +137 -0
  169. package/es-modules/Series/DrawPointComposition.js +111 -0
  170. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -3
  171. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  172. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  173. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  174. package/es-modules/Series/Gantt/GanttSeries.js +0 -2
  175. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  176. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  177. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  178. package/es-modules/Series/HLC/HLCSeries.js +383 -0
  179. package/es-modules/Series/Heatmap/HeatmapPoint.js +3 -4
  180. package/es-modules/Series/Heatmap/HeatmapSeries.js +19 -6
  181. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +2 -3
  182. package/es-modules/Series/Histogram/HistogramSeries.js +3 -7
  183. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -10
  184. package/es-modules/Series/Line/LineSeries.js +1 -2
  185. package/es-modules/Series/Map/MapPoint.js +23 -16
  186. package/es-modules/Series/Map/MapSeries.js +268 -309
  187. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  188. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  189. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  190. package/es-modules/Series/MapPoint/MapPointSeries.js +87 -4
  191. package/es-modules/Series/Networkgraph/Networkgraph.js +5 -5
  192. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +76 -29
  193. package/es-modules/Series/OHLC/OHLCPoint.js +2 -6
  194. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  195. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  196. package/es-modules/Series/Organization/OrganizationSeries.js +2 -3
  197. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +46 -6
  198. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  199. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  200. package/es-modules/Series/Pie/PieSeries.js +6 -7
  201. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  202. package/es-modules/Series/Sankey/SankeySeries.js +89 -20
  203. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  204. package/es-modules/Series/Sunburst/SunburstSeries.js +4 -4
  205. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -3
  206. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  207. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +86 -76
  208. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  209. package/es-modules/Series/Treemap/TreemapSeries.js +8 -8
  210. package/es-modules/Series/Venn/VennPoint.js +16 -7
  211. package/es-modules/Series/Venn/VennSeries.js +5 -8
  212. package/es-modules/Series/Venn/VennUtils.js +550 -439
  213. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -3
  214. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  215. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  216. package/es-modules/Series/Wordcloud/WordcloudSeries.js +24 -20
  217. package/es-modules/Series/Wordcloud/WordcloudUtils.js +673 -484
  218. package/es-modules/Series/XRange/XRangePoint.js +1 -0
  219. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -6
  220. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  221. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  222. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -6
  223. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  224. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  225. package/es-modules/Stock/Indicators/BB/BBIndicator.js +27 -11
  226. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  227. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  228. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +19 -11
  229. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +17 -11
  230. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  231. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +11 -9
  232. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -16
  233. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +2 -2
  234. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  235. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  236. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  237. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  238. package/es-modules/{Mixins/MultipleLines.js → Stock/Indicators/MultipleLinesComposition.js} +136 -87
  239. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  240. package/es-modules/Stock/Indicators/PC/PCIndicator.js +14 -13
  241. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  242. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  243. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -32
  244. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  245. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -8
  246. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  247. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  248. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  249. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +20 -3
  250. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  251. package/es-modules/Stock/StockToolsBindings.js +144 -42
  252. package/es-modules/Stock/StockToolsGui.js +405 -11
  253. package/es-modules/masters/highcharts-3d.src.js +1 -1
  254. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  255. package/es-modules/masters/highcharts-more.src.js +1 -1
  256. package/es-modules/masters/highcharts.src.js +1 -1
  257. package/es-modules/masters/highmaps.src.js +1 -1
  258. package/es-modules/masters/highstock.src.js +1 -1
  259. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  260. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  261. package/es-modules/masters/indicators/ao.src.js +1 -1
  262. package/es-modules/masters/indicators/apo.src.js +1 -1
  263. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  264. package/es-modules/masters/indicators/aroon.src.js +1 -1
  265. package/es-modules/masters/indicators/atr.src.js +1 -1
  266. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  267. package/es-modules/masters/indicators/cci.src.js +1 -1
  268. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  269. package/es-modules/masters/indicators/cmf.src.js +1 -1
  270. package/es-modules/masters/indicators/cmo.src.js +1 -1
  271. package/es-modules/masters/indicators/dema.src.js +1 -1
  272. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  273. package/es-modules/masters/indicators/dmi.src.js +1 -1
  274. package/es-modules/masters/indicators/dpo.src.js +1 -1
  275. package/es-modules/masters/indicators/ema.src.js +4 -10
  276. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  277. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  278. package/es-modules/masters/indicators/indicators.src.js +2 -1
  279. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  280. package/es-modules/masters/indicators/klinger.src.js +1 -1
  281. package/es-modules/masters/indicators/macd.src.js +1 -1
  282. package/es-modules/masters/indicators/mfi.src.js +1 -1
  283. package/es-modules/masters/indicators/momentum.src.js +1 -1
  284. package/es-modules/masters/indicators/natr.src.js +1 -1
  285. package/es-modules/masters/indicators/obv.src.js +1 -1
  286. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  287. package/es-modules/masters/indicators/ppo.src.js +1 -1
  288. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  289. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  290. package/es-modules/masters/indicators/psar.src.js +1 -1
  291. package/es-modules/masters/indicators/regressions.src.js +1 -1
  292. package/es-modules/masters/indicators/roc.src.js +1 -1
  293. package/es-modules/masters/indicators/rsi.src.js +1 -1
  294. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  295. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  296. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  297. package/es-modules/masters/indicators/tema.src.js +1 -1
  298. package/es-modules/masters/indicators/trendline.src.js +1 -1
  299. package/es-modules/masters/indicators/trix.src.js +1 -1
  300. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  301. package/es-modules/masters/indicators/vwap.src.js +1 -1
  302. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  303. package/es-modules/masters/indicators/wma.src.js +1 -1
  304. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  305. package/es-modules/masters/modules/accessibility.src.js +16 -2
  306. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  307. package/es-modules/masters/modules/annotations.src.js +1 -1
  308. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  309. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  310. package/es-modules/masters/modules/boost.src.js +1 -1
  311. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  312. package/es-modules/masters/modules/bullet.src.js +1 -1
  313. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  314. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  315. package/es-modules/masters/modules/cylinder.src.js +1 -1
  316. package/es-modules/masters/modules/data.src.js +6 -3
  317. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  318. package/es-modules/masters/modules/debugger.src.js +1 -1
  319. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  320. package/es-modules/masters/modules/dotplot.src.js +1 -1
  321. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  322. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  323. package/es-modules/masters/modules/drilldown.src.js +1 -1
  324. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  325. package/es-modules/masters/modules/export-data.src.js +1 -1
  326. package/es-modules/masters/modules/exporting.src.js +1 -1
  327. package/es-modules/masters/modules/full-screen.src.js +1 -1
  328. package/es-modules/masters/modules/funnel.src.js +1 -1
  329. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  330. package/es-modules/masters/modules/gantt.src.js +1 -1
  331. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  332. package/es-modules/masters/modules/heatmap.src.js +1 -2
  333. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  334. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  335. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  336. package/es-modules/masters/modules/item-series.src.js +1 -1
  337. package/es-modules/masters/modules/lollipop.src.js +1 -1
  338. package/es-modules/masters/modules/map.src.js +1 -3
  339. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  340. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  341. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  342. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  343. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  344. package/es-modules/masters/modules/oldie.src.js +1 -1
  345. package/es-modules/masters/modules/organization.src.js +1 -1
  346. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  347. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  348. package/es-modules/masters/modules/pareto.src.js +1 -1
  349. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  350. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  351. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  352. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  353. package/es-modules/masters/modules/sankey.src.js +1 -1
  354. package/es-modules/masters/modules/series-label.src.js +1 -1
  355. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  356. package/es-modules/masters/modules/sonification.src.js +33 -2
  357. package/es-modules/masters/modules/static-scale.src.js +1 -1
  358. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  359. package/es-modules/masters/modules/stock.src.js +4 -1
  360. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  361. package/es-modules/masters/modules/sunburst.src.js +1 -1
  362. package/es-modules/masters/modules/tilemap.src.js +1 -1
  363. package/es-modules/masters/modules/timeline.src.js +1 -1
  364. package/es-modules/masters/modules/treegrid.src.js +1 -1
  365. package/es-modules/masters/modules/treemap.src.js +1 -1
  366. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  367. package/es-modules/masters/modules/variwide.src.js +1 -1
  368. package/es-modules/masters/modules/vector.src.js +1 -1
  369. package/es-modules/masters/modules/venn.src.js +1 -1
  370. package/es-modules/masters/modules/windbarb.src.js +1 -1
  371. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  372. package/es-modules/masters/modules/xrange.src.js +1 -1
  373. package/es-modules/masters/themes/avocado.src.js +1 -1
  374. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  375. package/es-modules/masters/themes/dark-green.src.js +1 -1
  376. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  377. package/es-modules/masters/themes/gray.src.js +1 -1
  378. package/es-modules/masters/themes/grid-light.src.js +1 -1
  379. package/es-modules/masters/themes/grid.src.js +1 -1
  380. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  381. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  382. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  383. package/es-modules/masters/themes/skies.src.js +1 -1
  384. package/es-modules/masters/themes/sunset.src.js +1 -1
  385. package/highcharts-3d.js +1 -1
  386. package/highcharts-3d.src.js +1 -1
  387. package/highcharts-gantt.js +801 -804
  388. package/highcharts-gantt.js.map +1 -1
  389. package/highcharts-gantt.src.js +775 -739
  390. package/highcharts-more.js +194 -193
  391. package/highcharts-more.js.map +1 -1
  392. package/highcharts-more.src.js +207 -119
  393. package/highcharts.d.ts +9670 -4217
  394. package/highcharts.js +585 -588
  395. package/highcharts.js.map +1 -1
  396. package/highcharts.src.d.ts +9670 -4217
  397. package/highcharts.src.js +608 -587
  398. package/highmaps.js +726 -708
  399. package/highmaps.js.map +1 -1
  400. package/highmaps.src.js +2708 -1587
  401. package/highstock.js +788 -783
  402. package/highstock.js.map +1 -1
  403. package/highstock.src.js +1896 -1267
  404. package/indicators/acceleration-bands.js +10 -9
  405. package/indicators/acceleration-bands.js.map +1 -1
  406. package/indicators/acceleration-bands.src.js +156 -112
  407. package/indicators/accumulation-distribution.js +1 -1
  408. package/indicators/accumulation-distribution.src.js +1 -1
  409. package/indicators/ao.js +6 -6
  410. package/indicators/ao.js.map +1 -1
  411. package/indicators/ao.src.js +4 -4
  412. package/indicators/apo.js +5 -6
  413. package/indicators/apo.js.map +1 -1
  414. package/indicators/apo.src.js +16 -84
  415. package/indicators/aroon-oscillator.js +9 -9
  416. package/indicators/aroon-oscillator.js.map +1 -1
  417. package/indicators/aroon-oscillator.src.js +160 -177
  418. package/indicators/aroon.js +9 -9
  419. package/indicators/aroon.js.map +1 -1
  420. package/indicators/aroon.src.js +156 -112
  421. package/indicators/atr.js +1 -1
  422. package/indicators/atr.src.js +1 -1
  423. package/indicators/bollinger-bands.js +10 -9
  424. package/indicators/bollinger-bands.js.map +1 -1
  425. package/indicators/bollinger-bands.src.js +180 -117
  426. package/indicators/cci.js +1 -1
  427. package/indicators/cci.src.js +1 -1
  428. package/indicators/chaikin.js +8 -9
  429. package/indicators/chaikin.js.map +1 -1
  430. package/indicators/chaikin.src.js +8 -76
  431. package/indicators/cmf.js +1 -1
  432. package/indicators/cmf.src.js +1 -1
  433. package/indicators/cmo.js +1 -1
  434. package/indicators/cmo.src.js +1 -1
  435. package/indicators/dema.js +5 -6
  436. package/indicators/dema.js.map +1 -1
  437. package/indicators/dema.src.js +3 -75
  438. package/indicators/disparity-index.js +6 -7
  439. package/indicators/disparity-index.js.map +1 -1
  440. package/indicators/disparity-index.src.js +19 -74
  441. package/indicators/dmi.js +11 -11
  442. package/indicators/dmi.js.map +1 -1
  443. package/indicators/dmi.src.js +173 -116
  444. package/indicators/dpo.js +1 -1
  445. package/indicators/dpo.src.js +1 -1
  446. package/indicators/ema.js +1 -13
  447. package/indicators/ema.js.map +1 -1
  448. package/indicators/ema.src.js +7 -188
  449. package/indicators/ichimoku-kinko-hyo.js +1 -1
  450. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  451. package/indicators/indicators-all.js +197 -203
  452. package/indicators/indicators-all.js.map +1 -1
  453. package/indicators/indicators-all.src.js +649 -720
  454. package/indicators/indicators.js +12 -12
  455. package/indicators/indicators.js.map +1 -1
  456. package/indicators/indicators.src.js +188 -124
  457. package/indicators/keltner-channels.js +10 -10
  458. package/indicators/keltner-channels.js.map +1 -1
  459. package/indicators/keltner-channels.src.js +164 -118
  460. package/indicators/klinger.js +12 -13
  461. package/indicators/klinger.js.map +1 -1
  462. package/indicators/klinger.src.js +161 -184
  463. package/indicators/macd.js +2 -2
  464. package/indicators/macd.js.map +1 -1
  465. package/indicators/macd.src.js +2 -3
  466. package/indicators/mfi.js +1 -1
  467. package/indicators/mfi.src.js +1 -1
  468. package/indicators/momentum.js +1 -1
  469. package/indicators/momentum.src.js +1 -1
  470. package/indicators/natr.js +3 -3
  471. package/indicators/natr.js.map +1 -1
  472. package/indicators/natr.src.js +2 -4
  473. package/indicators/obv.js +1 -1
  474. package/indicators/obv.src.js +1 -1
  475. package/indicators/pivot-points.js +1 -1
  476. package/indicators/pivot-points.src.js +1 -1
  477. package/indicators/ppo.js +5 -6
  478. package/indicators/ppo.js.map +1 -1
  479. package/indicators/ppo.src.js +3 -75
  480. package/indicators/price-channel.js +9 -9
  481. package/indicators/price-channel.js.map +1 -1
  482. package/indicators/price-channel.src.js +207 -168
  483. package/indicators/price-envelopes.js +1 -1
  484. package/indicators/price-envelopes.src.js +1 -1
  485. package/indicators/psar.js +1 -1
  486. package/indicators/psar.src.js +1 -1
  487. package/indicators/regressions.js +1 -1
  488. package/indicators/regressions.src.js +9 -9
  489. package/indicators/roc.js +1 -1
  490. package/indicators/roc.src.js +1 -1
  491. package/indicators/rsi.js +1 -1
  492. package/indicators/rsi.src.js +1 -1
  493. package/indicators/slow-stochastic.js +5 -6
  494. package/indicators/slow-stochastic.js.map +1 -1
  495. package/indicators/slow-stochastic.src.js +2 -72
  496. package/indicators/stochastic.js +10 -10
  497. package/indicators/stochastic.js.map +1 -1
  498. package/indicators/stochastic.src.js +209 -164
  499. package/indicators/supertrend.js +10 -10
  500. package/indicators/supertrend.js.map +1 -1
  501. package/indicators/supertrend.src.js +6 -7
  502. package/indicators/tema.js +6 -7
  503. package/indicators/tema.js.map +1 -1
  504. package/indicators/tema.src.js +28 -75
  505. package/indicators/trendline.js +1 -1
  506. package/indicators/trendline.src.js +1 -1
  507. package/indicators/trix.js +4 -5
  508. package/indicators/trix.js.map +1 -1
  509. package/indicators/trix.src.js +8 -76
  510. package/indicators/volume-by-price.js +16 -16
  511. package/indicators/volume-by-price.js.map +1 -1
  512. package/indicators/volume-by-price.src.js +21 -3
  513. package/indicators/vwap.js +1 -1
  514. package/indicators/vwap.src.js +1 -1
  515. package/indicators/williams-r.js +5 -6
  516. package/indicators/williams-r.js.map +1 -1
  517. package/indicators/williams-r.src.js +41 -51
  518. package/indicators/wma.js +1 -1
  519. package/indicators/wma.src.js +1 -1
  520. package/indicators/zigzag.js +1 -1
  521. package/indicators/zigzag.src.js +1 -1
  522. package/modules/accessibility.d.ts +5 -0
  523. package/modules/accessibility.js +234 -216
  524. package/modules/accessibility.js.map +1 -1
  525. package/modules/accessibility.src.d.ts +5 -0
  526. package/modules/accessibility.src.js +9709 -8608
  527. package/modules/annotations-advanced.d.ts +30 -0
  528. package/modules/annotations-advanced.js +191 -165
  529. package/modules/annotations-advanced.js.map +1 -1
  530. package/modules/annotations-advanced.src.d.ts +30 -0
  531. package/modules/annotations-advanced.src.js +1578 -320
  532. package/modules/annotations.js +121 -107
  533. package/modules/annotations.js.map +1 -1
  534. package/modules/annotations.src.js +958 -229
  535. package/modules/arrow-symbols.js +1 -1
  536. package/modules/arrow-symbols.src.js +1 -1
  537. package/modules/boost-canvas.js +15 -15
  538. package/modules/boost-canvas.js.map +1 -1
  539. package/modules/boost-canvas.src.js +3 -3
  540. package/modules/boost.js +79 -79
  541. package/modules/boost.js.map +1 -1
  542. package/modules/boost.src.js +10 -9
  543. package/modules/broken-axis.js +1 -1
  544. package/modules/broken-axis.src.js +1 -1
  545. package/modules/bullet.js +1 -1
  546. package/modules/bullet.src.js +1 -1
  547. package/modules/coloraxis.js +24 -24
  548. package/modules/coloraxis.js.map +1 -1
  549. package/modules/coloraxis.src.js +69 -98
  550. package/modules/current-date-indicator.js +4 -4
  551. package/modules/current-date-indicator.js.map +1 -1
  552. package/modules/current-date-indicator.src.js +4 -4
  553. package/modules/cylinder.js +1 -1
  554. package/modules/cylinder.src.js +1 -1
  555. package/modules/data.js +19 -19
  556. package/modules/data.js.map +1 -1
  557. package/modules/data.src.js +9 -6
  558. package/modules/datagrouping.js +20 -20
  559. package/modules/datagrouping.js.map +1 -1
  560. package/modules/datagrouping.src.js +33 -19
  561. package/modules/debugger.js +1 -1
  562. package/modules/debugger.src.js +1 -1
  563. package/modules/dependency-wheel.js +11 -11
  564. package/modules/dependency-wheel.js.map +1 -1
  565. package/modules/dependency-wheel.src.js +4 -7
  566. package/modules/dotplot.js +1 -1
  567. package/modules/dotplot.src.js +1 -1
  568. package/modules/drag-panes.js +8 -8
  569. package/modules/drag-panes.js.map +1 -1
  570. package/modules/drag-panes.src.js +3 -3
  571. package/modules/draggable-points.js +1 -1
  572. package/modules/draggable-points.src.js +1 -1
  573. package/modules/drilldown.js +24 -24
  574. package/modules/drilldown.js.map +1 -1
  575. package/modules/drilldown.src.js +4 -4
  576. package/modules/dumbbell.js +17 -17
  577. package/modules/dumbbell.js.map +1 -1
  578. package/modules/dumbbell.src.js +4 -4
  579. package/modules/export-data.js +1 -1
  580. package/modules/export-data.js.map +1 -1
  581. package/modules/export-data.src.js +3 -3
  582. package/modules/exporting.js +39 -38
  583. package/modules/exporting.js.map +1 -1
  584. package/modules/exporting.src.js +98 -67
  585. package/modules/full-screen.js +1 -1
  586. package/modules/full-screen.src.js +1 -1
  587. package/modules/funnel.js +12 -12
  588. package/modules/funnel.js.map +1 -1
  589. package/modules/funnel.src.js +9 -6
  590. package/modules/funnel3d.js +1 -1
  591. package/modules/funnel3d.src.js +1 -1
  592. package/modules/gantt.js +217 -218
  593. package/modules/gantt.js.map +1 -1
  594. package/modules/gantt.src.js +167 -152
  595. package/modules/grid-axis.js +1 -1
  596. package/modules/grid-axis.src.js +1 -1
  597. package/modules/heatmap.js +39 -39
  598. package/modules/heatmap.js.map +1 -1
  599. package/modules/heatmap.src.js +177 -162
  600. package/modules/heikinashi.js +1 -1
  601. package/modules/heikinashi.src.js +4 -4
  602. package/modules/histogram-bellcurve.js +13 -13
  603. package/modules/histogram-bellcurve.js.map +1 -1
  604. package/modules/histogram-bellcurve.src.js +91 -86
  605. package/modules/hollowcandlestick.js +9 -9
  606. package/modules/hollowcandlestick.js.map +1 -1
  607. package/modules/hollowcandlestick.src.js +11 -11
  608. package/modules/item-series.js +1 -1
  609. package/modules/item-series.src.js +1 -1
  610. package/modules/lollipop.js +1 -1
  611. package/modules/lollipop.src.js +1 -1
  612. package/modules/map.d.ts +136 -14
  613. package/modules/map.js +142 -122
  614. package/modules/map.js.map +1 -1
  615. package/modules/map.src.d.ts +136 -14
  616. package/modules/map.src.js +2129 -1029
  617. package/modules/marker-clusters.js +36 -36
  618. package/modules/marker-clusters.js.map +1 -1
  619. package/modules/marker-clusters.src.js +173 -142
  620. package/modules/networkgraph.d.ts +12 -1
  621. package/modules/networkgraph.js +49 -49
  622. package/modules/networkgraph.js.map +1 -1
  623. package/modules/networkgraph.src.d.ts +12 -1
  624. package/modules/networkgraph.src.js +91 -43
  625. package/modules/no-data-to-display.js +5 -5
  626. package/modules/no-data-to-display.js.map +1 -1
  627. package/modules/no-data-to-display.src.js +3 -3
  628. package/modules/offline-exporting.js +17 -17
  629. package/modules/offline-exporting.js.map +1 -1
  630. package/modules/offline-exporting.src.js +13 -13
  631. package/modules/oldie-polyfills.js +1 -1
  632. package/modules/oldie-polyfills.src.js +1 -1
  633. package/modules/oldie.js +26 -26
  634. package/modules/oldie.js.map +1 -1
  635. package/modules/oldie.src.js +4 -4
  636. package/modules/organization.js +13 -13
  637. package/modules/organization.js.map +1 -1
  638. package/modules/organization.src.js +4 -4
  639. package/modules/overlapping-datalabels.js +1 -1
  640. package/modules/overlapping-datalabels.src.js +1 -1
  641. package/modules/parallel-coordinates.js +1 -1
  642. package/modules/parallel-coordinates.src.js +1 -1
  643. package/modules/pareto.js +7 -7
  644. package/modules/pareto.js.map +1 -1
  645. package/modules/pareto.src.js +89 -78
  646. package/modules/pathfinder.js +1 -1
  647. package/modules/pathfinder.src.js +1 -1
  648. package/modules/pattern-fill.js +1 -1
  649. package/modules/pattern-fill.src.js +1 -1
  650. package/modules/price-indicator.js +1 -1
  651. package/modules/price-indicator.src.js +1 -1
  652. package/modules/pyramid3d.js +1 -1
  653. package/modules/pyramid3d.src.js +1 -1
  654. package/modules/sankey.d.ts +12 -1
  655. package/modules/sankey.js +29 -29
  656. package/modules/sankey.js.map +1 -1
  657. package/modules/sankey.src.d.ts +12 -1
  658. package/modules/sankey.src.js +300 -176
  659. package/modules/series-label.js +1 -1
  660. package/modules/series-label.src.js +1 -1
  661. package/modules/solid-gauge.js +1 -1
  662. package/modules/solid-gauge.src.js +1 -1
  663. package/modules/sonification.js +59 -55
  664. package/modules/sonification.js.map +1 -1
  665. package/modules/sonification.src.js +3034 -2553
  666. package/modules/static-scale.js +1 -1
  667. package/modules/static-scale.src.js +1 -1
  668. package/modules/stock-tools.js +177 -164
  669. package/modules/stock-tools.js.map +1 -1
  670. package/modules/stock-tools.src.js +1001 -131
  671. package/modules/stock.d.ts +39 -6
  672. package/modules/stock.js +204 -196
  673. package/modules/stock.js.map +1 -1
  674. package/modules/stock.src.d.ts +39 -6
  675. package/modules/stock.src.js +1689 -1081
  676. package/modules/streamgraph.js +1 -1
  677. package/modules/streamgraph.src.js +1 -1
  678. package/modules/sunburst.js +61 -60
  679. package/modules/sunburst.js.map +1 -1
  680. package/modules/sunburst.src.js +329 -266
  681. package/modules/tilemap.js +17 -17
  682. package/modules/tilemap.js.map +1 -1
  683. package/modules/tilemap.src.js +3 -4
  684. package/modules/timeline.js +18 -18
  685. package/modules/timeline.js.map +1 -1
  686. package/modules/timeline.src.js +5 -5
  687. package/modules/treegrid.js +56 -57
  688. package/modules/treegrid.js.map +1 -1
  689. package/modules/treegrid.src.js +126 -120
  690. package/modules/treemap.js +41 -41
  691. package/modules/treemap.js.map +1 -1
  692. package/modules/treemap.src.js +319 -254
  693. package/modules/variable-pie.js +1 -1
  694. package/modules/variable-pie.src.js +1 -1
  695. package/modules/variwide.js +1 -1
  696. package/modules/variwide.src.js +1 -1
  697. package/modules/vector.js +1 -1
  698. package/modules/vector.src.js +1 -1
  699. package/modules/venn.js +31 -31
  700. package/modules/venn.js.map +1 -1
  701. package/modules/venn.src.js +731 -721
  702. package/modules/windbarb.js +15 -15
  703. package/modules/windbarb.js.map +1 -1
  704. package/modules/windbarb.src.js +90 -62
  705. package/modules/wordcloud.js +23 -24
  706. package/modules/wordcloud.js.map +1 -1
  707. package/modules/wordcloud.src.js +897 -949
  708. package/modules/xrange.js +2 -2
  709. package/modules/xrange.js.map +1 -1
  710. package/modules/xrange.src.js +2 -1
  711. package/package.json +1 -1
  712. package/themes/avocado.js +1 -1
  713. package/themes/avocado.src.js +1 -1
  714. package/themes/dark-blue.js +1 -1
  715. package/themes/dark-blue.src.js +1 -1
  716. package/themes/dark-green.js +1 -1
  717. package/themes/dark-green.src.js +1 -1
  718. package/themes/dark-unica.js +1 -1
  719. package/themes/dark-unica.src.js +1 -1
  720. package/themes/gray.js +1 -1
  721. package/themes/gray.src.js +1 -1
  722. package/themes/grid-light.js +1 -1
  723. package/themes/grid-light.src.js +1 -1
  724. package/themes/grid.js +1 -1
  725. package/themes/grid.src.js +1 -1
  726. package/themes/high-contrast-dark.js +1 -1
  727. package/themes/high-contrast-dark.src.js +1 -1
  728. package/themes/high-contrast-light.js +1 -1
  729. package/themes/high-contrast-light.src.js +1 -1
  730. package/themes/sand-signika.js +1 -1
  731. package/themes/sand-signika.src.js +1 -1
  732. package/themes/skies.js +1 -1
  733. package/themes/skies.src.js +1 -1
  734. package/themes/sunset.js +1 -1
  735. package/themes/sunset.src.js +1 -1
  736. package/es-modules/Core/Axis/MapAxis.js +0 -157
  737. package/es-modules/Core/Color/Palette.js +0 -82
  738. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  739. package/es-modules/Mixins/ColorMapSeries.js +0 -82
  740. package/es-modules/Mixins/ColorSeries.js +0 -77
  741. package/es-modules/Mixins/DerivedSeries.js +0 -118
  742. package/es-modules/Mixins/DrawPoint.js +0 -81
  743. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  744. package/es-modules/Mixins/Navigation.js +0 -54
  745. package/es-modules/Mixins/NelderMead.js +0 -132
  746. package/es-modules/Mixins/Polygon.js +0 -259
  747. package/es-modules/Mixins/ReduceArray.js +0 -54
@@ -12,7 +12,6 @@ import F from './FormatUtilities.js';
12
12
  var format = F.format;
13
13
  import H from './Globals.js';
14
14
  var doc = H.doc;
15
- import palette from './Color/Palette.js';
16
15
  import R from './Renderer/RendererUtilities.js';
17
16
  var distribute = R.distribute;
18
17
  import RendererRegistry from './Renderer/RendererRegistry.js';
@@ -43,6 +42,12 @@ var Tooltip = /** @class */ (function () {
43
42
  *
44
43
  * */
45
44
  function Tooltip(chart, options) {
45
+ /* *
46
+ *
47
+ * Properties
48
+ *
49
+ * */
50
+ this.allowShared = true;
46
51
  this.container = void 0;
47
52
  this.crosshairs = [];
48
53
  this.distance = 0;
@@ -182,7 +187,7 @@ var Tooltip = /** @class */ (function () {
182
187
  this.label = this.label.destroy();
183
188
  }
184
189
  if (this.split && this.tt) {
185
- this.cleanSplit(this.chart, true);
190
+ this.cleanSplit(true);
186
191
  this.tt = this.tt.destroy();
187
192
  }
188
193
  if (this.renderer) {
@@ -268,10 +273,11 @@ var Tooltip = /** @class */ (function () {
268
273
  * Creates the Tooltip label element if it does not exist, then returns it.
269
274
  *
270
275
  * @function Highcharts.Tooltip#getLabel
276
+ *
271
277
  * @return {Highcharts.SVGElement}
272
278
  */
273
279
  Tooltip.prototype.getLabel = function () {
274
- var tooltip = this, styledMode = this.chart.styledMode, options = this.options, className = ('tooltip' + (defined(options.className) ?
280
+ var tooltip = this, styledMode = this.chart.styledMode, options = this.options, doSplit = this.split && this.allowShared, className = ('tooltip' + (defined(options.className) ?
275
281
  ' ' + options.className :
276
282
  '')), pointerEvents = (options.style.pointerEvents ||
277
283
  (!this.followPointer && options.stickOnContact ? 'auto' : 'none')), onMouseEnter = function () {
@@ -288,6 +294,14 @@ var Tooltip = /** @class */ (function () {
288
294
  }
289
295
  };
290
296
  var container, renderer = this.chart.renderer;
297
+ // If changing from a split tooltip to a non-split tooltip, we must
298
+ // destroy it in order to get the SVG right. #13868.
299
+ if (tooltip.label) {
300
+ var wasSplit = !tooltip.label.hasClass('highcharts-label');
301
+ if ((doSplit && !wasSplit) || (!doSplit && wasSplit)) {
302
+ tooltip.destroy();
303
+ }
304
+ }
291
305
  if (!this.label) {
292
306
  if (this.outside) {
293
307
  var chartStyle = this.chart.options.chart.style, Renderer = RendererRegistry.getRendererType();
@@ -321,7 +335,7 @@ var Tooltip = /** @class */ (function () {
321
335
  this.renderer = renderer = new Renderer(container, 0, 0, chartStyle, void 0, void 0, renderer.styledMode);
322
336
  }
323
337
  // Create the label
324
- if (this.split) {
338
+ if (doSplit) {
325
339
  this.label = renderer.g(className);
326
340
  }
327
341
  else {
@@ -428,8 +442,17 @@ var Tooltip = /** @class */ (function () {
428
442
  ]);
429
443
  };
430
444
  var first = buildDimensionArray('y'), second = buildDimensionArray('x'), swapped;
445
+ // Handle negative points or reversed axis (#13780)
446
+ var flipped = !!point.negative;
447
+ if (!chart.polar &&
448
+ chart.hoverSeries &&
449
+ chart.hoverSeries.yAxis &&
450
+ chart.hoverSeries.yAxis.reversed) {
451
+ flipped = !flipped;
452
+ }
431
453
  // The far side is right or bottom
432
- var preferFarSide = !this.followPointer && pick(point.ttBelow, !chart.inverted === !!point.negative), // #4984
454
+ var preferFarSide = !this.followPointer &&
455
+ pick(point.ttBelow, !chart.inverted === flipped), // #4984
433
456
  /*
434
457
  * Handle the preferred dimension. When the preferred dimension is
435
458
  * tooltip on top or bottom of the point, it will look for space
@@ -709,14 +732,16 @@ var Tooltip = /** @class */ (function () {
709
732
  return;
710
733
  }
711
734
  U.clearTimeout(this.hideTimer);
735
+ // A switch saying if this specific tooltip configuration allows shared
736
+ // or split modes
737
+ tooltip.allowShared = !(!isArray(pointOrPoints) &&
738
+ pointOrPoints.series &&
739
+ pointOrPoints.series.noSharedTooltip);
712
740
  // get the reference point coordinates (pie charts use tooltipPos)
713
741
  tooltip.followPointer = !tooltip.split && point.series.tooltipOptions.followPointer;
714
742
  var anchor = tooltip.getAnchor(pointOrPoints, mouseEvent), x = anchor[0], y = anchor[1];
715
743
  // shared tooltip, array is sent over
716
- if (shared &&
717
- !(!isArray(pointOrPoints) &&
718
- pointOrPoints.series &&
719
- pointOrPoints.series.noSharedTooltip)) {
744
+ if (shared && tooltip.allowShared) {
720
745
  chart.pointer.applyInactiveState(points);
721
746
  // Now set hover state for the choosen ones:
722
747
  points.forEach(function (item) {
@@ -744,20 +769,22 @@ var Tooltip = /** @class */ (function () {
744
769
  }
745
770
  else {
746
771
  // update text
747
- if (tooltip.split) {
772
+ if (tooltip.split && tooltip.allowShared) { // #13868
748
773
  this.renderSplit(text, points);
749
774
  }
750
775
  else {
751
- var checkX = x;
752
- var checkY = y;
776
+ var checkX_1 = x;
777
+ var checkY_1 = y;
753
778
  if (mouseEvent && chart.pointer.isDirectTouch) {
754
- checkX = mouseEvent.chartX - chart.plotLeft;
755
- checkY = mouseEvent.chartY - chart.plotTop;
779
+ checkX_1 = mouseEvent.chartX - chart.plotLeft;
780
+ checkY_1 = mouseEvent.chartY - chart.plotTop;
756
781
  }
757
782
  // #11493, #13095
758
783
  if (chart.polar ||
759
784
  currentSeries.options.clip === false ||
760
- currentSeries.shouldShowTooltip(checkX, checkY)) {
785
+ points.some(function (p) {
786
+ return p.series.shouldShowTooltip(checkX_1, checkY_1);
787
+ })) {
761
788
  var label = tooltip.getLabel();
762
789
  // Prevent the tooltip from flowing over the chart box
763
790
  // (#6659)
@@ -780,7 +807,7 @@ var Tooltip = /** @class */ (function () {
780
807
  stroke: (options.borderColor ||
781
808
  point.color ||
782
809
  currentSeries.color ||
783
- palette.neutralColor60)
810
+ "#666666" /* neutralColor60 */)
784
811
  });
785
812
  }
786
813
  tooltip.updatePosition({
@@ -951,7 +978,7 @@ var Tooltip = /** @class */ (function () {
951
978
  stroke: (options.borderColor ||
952
979
  point.color ||
953
980
  series.color ||
954
- palette.neutralColor80)
981
+ "#333333" /* neutralColor80 */)
955
982
  });
956
983
  }
957
984
  return tt;
@@ -352,9 +352,13 @@ function defined(obj) {
352
352
  return typeof obj !== 'undefined' && obj !== null;
353
353
  }
354
354
  /**
355
- * Set or get an attribute or an object of attributes. To use as a setter, pass
356
- * a key and a value, or let the second argument be a collection of keys and
357
- * values. To use as a getter, pass only a string as the second argument.
355
+ * Set or get an attribute or an object of attributes.
356
+ *
357
+ * To use as a setter, pass a key and a value, or let the second argument be a
358
+ * collection of keys and values. When using a collection, passing a value of
359
+ * `null` or `undefined` will remove the attribute.
360
+ *
361
+ * To use as a getter, pass only a string as the second argument.
358
362
  *
359
363
  * @function Highcharts.attr
360
364
  *
@@ -390,7 +394,12 @@ function attr(elem, prop, value) {
390
394
  }
391
395
  else {
392
396
  objectEach(prop, function (val, key) {
393
- elem.setAttribute(key, val);
397
+ if (defined(val)) {
398
+ elem.setAttribute(key, val);
399
+ }
400
+ else {
401
+ elem.removeAttribute(key);
402
+ }
394
403
  });
395
404
  }
396
405
  return ret;
@@ -757,8 +766,6 @@ function normalizeTickInterval(interval, multiples, magnitude, allowDecimals, ha
757
766
  *
758
767
  * @param {Function} sortFunction
759
768
  * The function to sort it with, like with regular Array.prototype.sort.
760
- *
761
- * @return {void}
762
769
  */
763
770
  function stableSort(arr, sortFunction) {
764
771
  // @todo It seems like Chrome since v70 sorts in a stable way internally,
@@ -882,7 +889,8 @@ var garbageBin;
882
889
  * The corrected float number.
883
890
  */
884
891
  function correctFloat(num, prec) {
885
- return parseFloat(num.toPrecision(prec || 14));
892
+ // When the number is higher than 1e14 use the number (#16275)
893
+ return num > 1e14 ? num : parseFloat(num.toPrecision(prec || 14));
886
894
  }
887
895
  /**
888
896
  * The time unit lookup
@@ -0,0 +1,489 @@
1
+ /* *
2
+ *
3
+ * (c) 2012-2021 Highsoft AS
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
8
+ *
9
+ * Authors:
10
+ * - Sophie Bremer
11
+ * - Gøran Slettemark
12
+ * - Torstein Hønsi
13
+ * - Wojciech Chmiel
14
+ *
15
+ * */
16
+ 'use strict';
17
+ import U from './../Core/Utilities.js';
18
+ var merge = U.merge, isNumber = U.isNumber;
19
+ /* *
20
+ *
21
+ * Class
22
+ *
23
+ * */
24
+ /**
25
+ * Class to convert between common value types.
26
+ */
27
+ var DataConverter = /** @class */ (function () {
28
+ /* *
29
+ *
30
+ * Constructor
31
+ *
32
+ * */
33
+ /**
34
+ * Constructs an instance of the Data Converter.
35
+ *
36
+ * @param {DataConverter.Options} [options]
37
+ * Options for the Data Converter.
38
+ *
39
+ * @param {DataConverter.ParseDateCallbackFunction} [parseDate]
40
+ * A function to parse string representations of dates
41
+ * into JavaScript timestamps.
42
+ */
43
+ function DataConverter(options, parseDate) {
44
+ /**
45
+ * A collection of available date formats.
46
+ *
47
+ * @name Highcharts.Data#dateFormats
48
+ * @type {Highcharts.Dictionary<Highcharts.DataDateFormatObject>}
49
+ */
50
+ this.dateFormats = {
51
+ 'YYYY/mm/dd': {
52
+ regex: /^([0-9]{4})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{1,2})$/,
53
+ parser: function (match) {
54
+ return (match ?
55
+ Date.UTC(+match[1], match[2] - 1, +match[3]) :
56
+ NaN);
57
+ }
58
+ },
59
+ 'dd/mm/YYYY': {
60
+ regex: /^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,
61
+ parser: function (match) {
62
+ return (match ?
63
+ Date.UTC(+match[3], match[2] - 1, +match[1]) :
64
+ NaN);
65
+ },
66
+ alternative: 'mm/dd/YYYY' // different format with the same regex
67
+ },
68
+ 'mm/dd/YYYY': {
69
+ regex: /^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{4})$/,
70
+ parser: function (match) {
71
+ return (match ?
72
+ Date.UTC(+match[3], match[1] - 1, +match[2]) :
73
+ NaN);
74
+ }
75
+ },
76
+ 'dd/mm/YY': {
77
+ regex: /^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,
78
+ parser: function (match) {
79
+ var d = new Date();
80
+ if (!match) {
81
+ return NaN;
82
+ }
83
+ var year = +match[3];
84
+ if (year > (d.getFullYear() - 2000)) {
85
+ year += 1900;
86
+ }
87
+ else {
88
+ year += 2000;
89
+ }
90
+ return Date.UTC(year, match[2] - 1, +match[1]);
91
+ },
92
+ alternative: 'mm/dd/YY' // different format with the same regex
93
+ },
94
+ 'mm/dd/YY': {
95
+ regex: /^([0-9]{1,2})[\-\/\.]([0-9]{1,2})[\-\/\.]([0-9]{2})$/,
96
+ parser: function (match) {
97
+ return (match ?
98
+ Date.UTC(+match[3] + 2000, match[1] - 1, +match[2]) :
99
+ NaN);
100
+ }
101
+ }
102
+ };
103
+ var decimalPoint;
104
+ this.options = merge(DataConverter.defaultOptions, options);
105
+ this.parseDateFn = parseDate;
106
+ decimalPoint = this.options.decimalPoint;
107
+ if (decimalPoint !== '.' && decimalPoint !== ',') {
108
+ decimalPoint = void 0;
109
+ }
110
+ this.decimalRegex = (decimalPoint &&
111
+ new RegExp('^(-?[0-9]+)' + decimalPoint + '([0-9]+)$'));
112
+ }
113
+ /* *
114
+ *
115
+ * Functions
116
+ *
117
+ * */
118
+ /**
119
+ * Getter for a date format.
120
+ *
121
+ * @return {string|undefined}
122
+ */
123
+ DataConverter.prototype.getDateFormat = function () {
124
+ return this.options.dateFormat;
125
+ };
126
+ /**
127
+ * Converts a value to a boolean.
128
+ *
129
+ * @param {DataConverter.Type} value
130
+ * Value to convert.
131
+ *
132
+ * @return {boolean}
133
+ * Converted value as a boolean.
134
+ */
135
+ DataConverter.prototype.asBoolean = function (value) {
136
+ if (typeof value === 'boolean') {
137
+ return value;
138
+ }
139
+ if (typeof value === 'string') {
140
+ return value !== '' && value !== '0' && value !== 'false';
141
+ }
142
+ return !!this.asNumber(value);
143
+ };
144
+ /**
145
+ * Converts a value to a Date.
146
+ *
147
+ * @param {DataConverter.Type} value
148
+ * Value to convert.
149
+ *
150
+ * @return {globalThis.Date}
151
+ * Converted value as a Date.
152
+ */
153
+ DataConverter.prototype.asDate = function (value) {
154
+ var timestamp;
155
+ if (typeof value === 'string') {
156
+ timestamp = this.parseDate(value);
157
+ }
158
+ else if (typeof value === 'number') {
159
+ timestamp = value;
160
+ }
161
+ else if (value instanceof Date) {
162
+ return value;
163
+ }
164
+ else {
165
+ timestamp = this.parseDate(this.asString(value));
166
+ }
167
+ return new Date(timestamp);
168
+ };
169
+ /**
170
+ * Converts a value to a number.
171
+ *
172
+ * @param {DataConverter.Type} value
173
+ * Value to convert.
174
+ *
175
+ * @return {number}
176
+ * Converted value as a number.
177
+ */
178
+ DataConverter.prototype.asNumber = function (value) {
179
+ if (typeof value === 'number') {
180
+ return value;
181
+ }
182
+ if (typeof value === 'boolean') {
183
+ return value ? 1 : 0;
184
+ }
185
+ if (typeof value === 'string') {
186
+ if (value.indexOf(' ') > -1) {
187
+ value = value.replace(/\s+/g, '');
188
+ }
189
+ if (this.decimalRegex) {
190
+ value = value.replace(this.decimalRegex, '$1.$2');
191
+ }
192
+ return parseFloat(value);
193
+ }
194
+ if (value instanceof Date) {
195
+ return value.getDate();
196
+ }
197
+ if (value) {
198
+ return value.getRowCount();
199
+ }
200
+ return NaN;
201
+ };
202
+ /**
203
+ * Converts a value to a string.
204
+ *
205
+ * @param {DataConverter.Type} value
206
+ * Value to convert.
207
+ *
208
+ * @return {string}
209
+ * Converted value as a string.
210
+ */
211
+ DataConverter.prototype.asString = function (value) {
212
+ return "" + value;
213
+ };
214
+ /**
215
+ * Trim a string from whitespaces.
216
+ *
217
+ * @param {string} str
218
+ * String to trim.
219
+ *
220
+ * @param {boolean} [inside=false]
221
+ * Remove all spaces between numbers.
222
+ *
223
+ * @return {string}
224
+ * Trimed string
225
+ */
226
+ DataConverter.prototype.trim = function (str, inside) {
227
+ var converter = this;
228
+ if (typeof str === 'string') {
229
+ str = str.replace(/^\s+|\s+$/g, '');
230
+ // Clear white space insdie the string, like thousands separators
231
+ if (inside && /^[0-9\s]+$/.test(str)) {
232
+ str = str.replace(/\s/g, '');
233
+ }
234
+ if (converter.decimalRegex) {
235
+ str = str.replace(converter.decimalRegex, '$1.$2');
236
+ }
237
+ }
238
+ return str;
239
+ };
240
+ /**
241
+ * Guesses the potential type of a string value
242
+ * (for parsing CSV etc)
243
+ *
244
+ * @param {string} value
245
+ * The string to examine
246
+ * @return {'number'|'string'|'Date'}
247
+ * `string`, `Date` or `number`
248
+ */
249
+ DataConverter.prototype.guessType = function (value) {
250
+ var converter = this, trimVal = converter.trim(value), trimInsideVal = converter.trim(value, true), floatVal = parseFloat(trimInsideVal);
251
+ var result = 'string', dateVal;
252
+ // is numeric
253
+ if (+trimInsideVal === floatVal) {
254
+ // If the number is greater than milliseconds in a year, assume
255
+ // datetime.
256
+ if (floatVal > 365 * 24 * 3600 * 1000) {
257
+ result = 'Date';
258
+ }
259
+ else {
260
+ result = 'number';
261
+ }
262
+ // String, continue to determine if it is
263
+ // a date string or really a string.
264
+ }
265
+ else {
266
+ if (trimVal && trimVal.length) {
267
+ dateVal = converter.parseDate(value);
268
+ }
269
+ if (dateVal && isNumber(dateVal)) {
270
+ result = 'Date';
271
+ }
272
+ else {
273
+ result = 'string';
274
+ }
275
+ }
276
+ return result;
277
+ };
278
+ /**
279
+ * Casts a string value to it's guessed type
280
+ * @param {string} value
281
+ * The string to examine
282
+ *
283
+ * @return {number|string|Date}
284
+ * The converted value
285
+ */
286
+ DataConverter.prototype.asGuessedType = function (value) {
287
+ var converter = this, typeMap = {
288
+ 'number': converter.asNumber,
289
+ 'Date': converter.asDate,
290
+ 'string': converter.asString
291
+ };
292
+ return typeMap[converter.guessType(value)].call(converter, value);
293
+ };
294
+ /**
295
+ * Parse a date and return it as a number.
296
+ *
297
+ * @function Highcharts.Data#parseDate
298
+ *
299
+ * @param {string} value
300
+ * Value to parse.
301
+ *
302
+ * @param {string} dateFormatProp
303
+ * Which of the predefined date formats
304
+ * to use to parse date values.
305
+ *
306
+ * @return {number}
307
+ */
308
+ DataConverter.prototype.parseDate = function (value, dateFormatProp) {
309
+ var converter = this;
310
+ var dateFormat = dateFormatProp || converter.options.dateFormat, result = NaN, key, format, match;
311
+ if (converter.parseDateFn) {
312
+ result = converter.parseDateFn(value);
313
+ }
314
+ else {
315
+ // Auto-detect the date format the first time
316
+ if (!dateFormat) {
317
+ for (key in converter.dateFormats) { // eslint-disable-line guard-for-in
318
+ format = converter.dateFormats[key];
319
+ match = value.match(format.regex);
320
+ if (match) {
321
+ // converter.options.dateFormat = dateFormat = key;
322
+ dateFormat = key;
323
+ // converter.options.alternativeFormat =
324
+ // format.alternative || '';
325
+ result = format.parser(match);
326
+ break;
327
+ }
328
+ }
329
+ // Next time, use the one previously found
330
+ }
331
+ else {
332
+ format = converter.dateFormats[dateFormat];
333
+ if (!format) {
334
+ // The selected format is invalid
335
+ format = converter.dateFormats['YYYY/mm/dd'];
336
+ }
337
+ match = value.match(format.regex);
338
+ if (match) {
339
+ result = format.parser(match);
340
+ }
341
+ }
342
+ // Fall back to Date.parse
343
+ if (!match) {
344
+ match = Date.parse(value);
345
+ // External tools like Date.js and MooTools extend Date object
346
+ // and returns a date.
347
+ if (typeof match === 'object' &&
348
+ match !== null &&
349
+ match.getTime) {
350
+ result = (match.getTime() -
351
+ match.getTimezoneOffset() *
352
+ 60000);
353
+ // Timestamp
354
+ }
355
+ else if (isNumber(match)) {
356
+ result = match - (new Date(match)).getTimezoneOffset() * 60000;
357
+ if ( // reset dates without year in Chrome
358
+ value.indexOf('2001') === -1 &&
359
+ (new Date(result)).getFullYear() === 2001) {
360
+ result = NaN;
361
+ }
362
+ }
363
+ }
364
+ }
365
+ return result;
366
+ };
367
+ /**
368
+ * Tries to guess the date format
369
+ * - Check if either month candidate exceeds 12
370
+ * - Check if year is missing (use current year)
371
+ * - Check if a shortened year format is used (e.g. 1/1/99)
372
+ * - If no guess can be made, the user must be prompted
373
+ * data is the data to deduce a format based on
374
+ * @private
375
+ *
376
+ * @param {Array<string>} data
377
+ * Data to check the format.
378
+ *
379
+ * @param {number} limit
380
+ * Max data to check the format.
381
+ *
382
+ * @param {boolean} save
383
+ * Whether to save the date format in the converter options.
384
+ *
385
+ * @return {string}
386
+ */
387
+ DataConverter.prototype.deduceDateFormat = function (data, limit, save) {
388
+ var parser = this, stable = [], max = [];
389
+ var format = 'YYYY/mm/dd', thing, guessedFormat = [], i = 0, madeDeduction = false,
390
+ // candidates = {},
391
+ elem, j;
392
+ if (!limit || limit > data.length) {
393
+ limit = data.length;
394
+ }
395
+ for (; i < limit; i++) {
396
+ if (typeof data[i] !== 'undefined' &&
397
+ data[i] && data[i].length) {
398
+ thing = data[i]
399
+ .trim()
400
+ .replace(/\//g, ' ')
401
+ .replace(/\-/g, ' ')
402
+ .replace(/\./g, ' ')
403
+ .split(' ');
404
+ guessedFormat = [
405
+ '',
406
+ '',
407
+ ''
408
+ ];
409
+ for (j = 0; j < thing.length; j++) {
410
+ if (j < guessedFormat.length) {
411
+ elem = parseInt(thing[j], 10);
412
+ if (elem) {
413
+ max[j] = (!max[j] || max[j] < elem) ? elem : max[j];
414
+ if (typeof stable[j] !== 'undefined') {
415
+ if (stable[j] !== elem) {
416
+ stable[j] = false;
417
+ }
418
+ }
419
+ else {
420
+ stable[j] = elem;
421
+ }
422
+ if (elem > 31) {
423
+ if (elem < 100) {
424
+ guessedFormat[j] = 'YY';
425
+ }
426
+ else {
427
+ guessedFormat[j] = 'YYYY';
428
+ }
429
+ // madeDeduction = true;
430
+ }
431
+ else if (elem > 12 &&
432
+ elem <= 31) {
433
+ guessedFormat[j] = 'dd';
434
+ madeDeduction = true;
435
+ }
436
+ else if (!guessedFormat[j].length) {
437
+ guessedFormat[j] = 'mm';
438
+ }
439
+ }
440
+ }
441
+ }
442
+ }
443
+ }
444
+ if (madeDeduction) {
445
+ // This handles a few edge cases with hard to guess dates
446
+ for (j = 0; j < stable.length; j++) {
447
+ if (stable[j] !== false) {
448
+ if (max[j] > 12 &&
449
+ guessedFormat[j] !== 'YY' &&
450
+ guessedFormat[j] !== 'YYYY') {
451
+ guessedFormat[j] = 'YY';
452
+ }
453
+ }
454
+ else if (max[j] > 12 && guessedFormat[j] === 'mm') {
455
+ guessedFormat[j] = 'dd';
456
+ }
457
+ }
458
+ // If the middle one is dd, and the last one is dd,
459
+ // the last should likely be year.
460
+ if (guessedFormat.length === 3 &&
461
+ guessedFormat[1] === 'dd' &&
462
+ guessedFormat[2] === 'dd') {
463
+ guessedFormat[2] = 'YY';
464
+ }
465
+ format = guessedFormat.join('/');
466
+ // If the caculated format is not valid, we need to present an
467
+ // error.
468
+ }
469
+ // Save the deduced format in the converter options.
470
+ if (save) {
471
+ parser.options.dateFormat = format;
472
+ }
473
+ return format;
474
+ };
475
+ /**
476
+ * Default options
477
+ */
478
+ DataConverter.defaultOptions = {
479
+ dateFormat: '',
480
+ alternativeFormat: ''
481
+ };
482
+ return DataConverter;
483
+ }());
484
+ /* *
485
+ *
486
+ * Export
487
+ *
488
+ * */
489
+ export default DataConverter;