aw-highstock_rails 7.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (697) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +9 -0
  3. data/.travis.yml +7 -0
  4. data/CODE_OF_CONDUCT.md +74 -0
  5. data/Gemfile +6 -0
  6. data/Gemfile.lock +22 -0
  7. data/LICENSE.txt +21 -0
  8. data/README.md +53 -0
  9. data/Rakefile +10 -0
  10. data/aw-highstock_rails.gemspec +28 -0
  11. data/bin/console +14 -0
  12. data/bin/setup +8 -0
  13. data/lib/aw/highstock_rails.rb +9 -0
  14. data/lib/aw/highstock_rails/version.rb +5 -0
  15. data/vendor/assets/javascripts/highstock/css/annotations/popup.css +229 -0
  16. data/vendor/assets/javascripts/highstock/css/annotations/popup.scss +235 -0
  17. data/vendor/assets/javascripts/highstock/css/highcharts.css +890 -0
  18. data/vendor/assets/javascripts/highstock/css/highcharts.scss +788 -0
  19. data/vendor/assets/javascripts/highstock/css/stocktools/gui.css +268 -0
  20. data/vendor/assets/javascripts/highstock/css/stocktools/gui.scss +270 -0
  21. data/vendor/assets/javascripts/highstock/css/themes/dark-unica.css +951 -0
  22. data/vendor/assets/javascripts/highstock/css/themes/dark-unica.scss +122 -0
  23. data/vendor/assets/javascripts/highstock/css/themes/grid-light.css +904 -0
  24. data/vendor/assets/javascripts/highstock/css/themes/grid-light.scss +33 -0
  25. data/vendor/assets/javascripts/highstock/css/themes/sand-signika.css +920 -0
  26. data/vendor/assets/javascripts/highstock/css/themes/sand-signika.scss +74 -0
  27. data/vendor/assets/javascripts/highstock/es-modules/annotations/ControlPoint.js +130 -0
  28. data/vendor/assets/javascripts/highstock/es-modules/annotations/MockPoint.js +415 -0
  29. data/vendor/assets/javascripts/highstock/es-modules/annotations/annotations.src.js +1231 -0
  30. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableCircle.js +92 -0
  31. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableImage.js +101 -0
  32. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableLabel.js +452 -0
  33. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllablePath.js +175 -0
  34. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/ControllableRect.js +93 -0
  35. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/controllableMixin.js +411 -0
  36. data/vendor/assets/javascripts/highstock/es-modules/annotations/controllable/markerMixin.js +214 -0
  37. data/vendor/assets/javascripts/highstock/es-modules/annotations/eventEmitterMixin.js +271 -0
  38. data/vendor/assets/javascripts/highstock/es-modules/annotations/navigationBindings.js +1283 -0
  39. data/vendor/assets/javascripts/highstock/es-modules/annotations/popup.js +1069 -0
  40. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/CrookedLine.js +191 -0
  41. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/ElliottWave.js +76 -0
  42. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Fibonacci.js +247 -0
  43. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/InfinityLine.js +185 -0
  44. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Measure.js +928 -0
  45. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Pitchfork.js +203 -0
  46. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/Tunnel.js +242 -0
  47. data/vendor/assets/javascripts/highstock/es-modules/annotations/types/VerticalLine.js +157 -0
  48. data/vendor/assets/javascripts/highstock/es-modules/error-messages.js +128 -0
  49. data/vendor/assets/javascripts/highstock/es-modules/error.js +1 -0
  50. data/vendor/assets/javascripts/highstock/es-modules/indicators/acceleration-bands.src.js +199 -0
  51. data/vendor/assets/javascripts/highstock/es-modules/indicators/accumulation-distribution.src.js +129 -0
  52. data/vendor/assets/javascripts/highstock/es-modules/indicators/ao.src.js +206 -0
  53. data/vendor/assets/javascripts/highstock/es-modules/indicators/apo.src.js +148 -0
  54. data/vendor/assets/javascripts/highstock/es-modules/indicators/aroon-oscillator.src.js +128 -0
  55. data/vendor/assets/javascripts/highstock/es-modules/indicators/aroon.src.js +173 -0
  56. data/vendor/assets/javascripts/highstock/es-modules/indicators/atr.src.js +151 -0
  57. data/vendor/assets/javascripts/highstock/es-modules/indicators/bollinger-bands.src.js +209 -0
  58. data/vendor/assets/javascripts/highstock/es-modules/indicators/cci.src.js +131 -0
  59. data/vendor/assets/javascripts/highstock/es-modules/indicators/chaikin.src.js +167 -0
  60. data/vendor/assets/javascripts/highstock/es-modules/indicators/cmf.src.js +246 -0
  61. data/vendor/assets/javascripts/highstock/es-modules/indicators/dema.src.js +191 -0
  62. data/vendor/assets/javascripts/highstock/es-modules/indicators/dpo.src.js +138 -0
  63. data/vendor/assets/javascripts/highstock/es-modules/indicators/ema.src.js +166 -0
  64. data/vendor/assets/javascripts/highstock/es-modules/indicators/ichimoku-kinko-hyo.src.js +850 -0
  65. data/vendor/assets/javascripts/highstock/es-modules/indicators/indicators.src.js +425 -0
  66. data/vendor/assets/javascripts/highstock/es-modules/indicators/keltner-channels.src.js +193 -0
  67. data/vendor/assets/javascripts/highstock/es-modules/indicators/macd.src.js +417 -0
  68. data/vendor/assets/javascripts/highstock/es-modules/indicators/mfi.src.js +198 -0
  69. data/vendor/assets/javascripts/highstock/es-modules/indicators/momentum.src.js +119 -0
  70. data/vendor/assets/javascripts/highstock/es-modules/indicators/natr.src.js +74 -0
  71. data/vendor/assets/javascripts/highstock/es-modules/indicators/pivot-points.src.js +360 -0
  72. data/vendor/assets/javascripts/highstock/es-modules/indicators/ppo.src.js +152 -0
  73. data/vendor/assets/javascripts/highstock/es-modules/indicators/price-channel.src.js +149 -0
  74. data/vendor/assets/javascripts/highstock/es-modules/indicators/price-envelopes.src.js +251 -0
  75. data/vendor/assets/javascripts/highstock/es-modules/indicators/psar.src.js +307 -0
  76. data/vendor/assets/javascripts/highstock/es-modules/indicators/regressions.src.js +427 -0
  77. data/vendor/assets/javascripts/highstock/es-modules/indicators/roc.src.js +149 -0
  78. data/vendor/assets/javascripts/highstock/es-modules/indicators/rsi.src.js +163 -0
  79. data/vendor/assets/javascripts/highstock/es-modules/indicators/stochastic.src.js +193 -0
  80. data/vendor/assets/javascripts/highstock/es-modules/indicators/supertrend.src.js +544 -0
  81. data/vendor/assets/javascripts/highstock/es-modules/indicators/tema.src.js +247 -0
  82. data/vendor/assets/javascripts/highstock/es-modules/indicators/trix.src.js +96 -0
  83. data/vendor/assets/javascripts/highstock/es-modules/indicators/volume-by-price.src.js +671 -0
  84. data/vendor/assets/javascripts/highstock/es-modules/indicators/vwap.src.js +189 -0
  85. data/vendor/assets/javascripts/highstock/es-modules/indicators/williams-r.src.js +128 -0
  86. data/vendor/assets/javascripts/highstock/es-modules/indicators/wma.src.js +146 -0
  87. data/vendor/assets/javascripts/highstock/es-modules/indicators/zigzag.src.js +221 -0
  88. data/vendor/assets/javascripts/highstock/es-modules/masters/highcharts-3d.src.js +17 -0
  89. data/vendor/assets/javascripts/highstock/es-modules/masters/highcharts-more.src.js +22 -0
  90. data/vendor/assets/javascripts/highstock/es-modules/masters/highstock.src.js +11 -0
  91. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/acceleration-bands.src.js +11 -0
  92. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/accumulation-distribution.src.js +11 -0
  93. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ao.src.js +11 -0
  94. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/apo.src.js +11 -0
  95. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/aroon-oscillator.src.js +11 -0
  96. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/aroon.src.js +11 -0
  97. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/atr.src.js +11 -0
  98. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/bollinger-bands.src.js +11 -0
  99. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/cci.src.js +11 -0
  100. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/chaikin.src.js +11 -0
  101. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/cmf.src.js +10 -0
  102. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/dema.src.js +11 -0
  103. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/dpo.src.js +11 -0
  104. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ema.src.js +11 -0
  105. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +11 -0
  106. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/indicators-all.src.js +49 -0
  107. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/indicators.src.js +11 -0
  108. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/keltner-channels.src.js +11 -0
  109. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/macd.src.js +11 -0
  110. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/mfi.src.js +11 -0
  111. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/momentum.src.js +11 -0
  112. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/natr.src.js +11 -0
  113. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/pivot-points.src.js +11 -0
  114. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/ppo.src.js +11 -0
  115. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/price-channel.src.js +11 -0
  116. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/price-envelopes.src.js +11 -0
  117. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/psar.src.js +11 -0
  118. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/regressions.src.js +11 -0
  119. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/roc.src.js +11 -0
  120. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/rsi.src.js +11 -0
  121. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/stochastic.src.js +11 -0
  122. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/supertrend.src.js +11 -0
  123. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/tema.src.js +11 -0
  124. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/trix.src.js +11 -0
  125. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/volume-by-price.src.js +11 -0
  126. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/vwap.src.js +11 -0
  127. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/williams-r.src.js +11 -0
  128. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/wma.src.js +11 -0
  129. data/vendor/assets/javascripts/highstock/es-modules/masters/indicators/zigzag.src.js +11 -0
  130. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/accessibility.src.js +13 -0
  131. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/annotations-advanced.src.js +20 -0
  132. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/annotations.src.js +12 -0
  133. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/arrow-symbols.src.js +10 -0
  134. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/boost-canvas.src.js +11 -0
  135. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/boost.src.js +11 -0
  136. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/bullet.src.js +11 -0
  137. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/current-date-indicator.src.js +10 -0
  138. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/cylinder.src.js +10 -0
  139. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/data.src.js +10 -0
  140. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/datagrouping.src.js +12 -0
  141. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/debugger.src.js +13 -0
  142. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/dependency-wheel.src.js +10 -0
  143. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/drag-panes.src.js +11 -0
  144. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/draggable-points.src.js +9 -0
  145. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/drilldown.src.js +10 -0
  146. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/export-data.src.js +10 -0
  147. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/exporting.src.js +10 -0
  148. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/full-screen.src.js +11 -0
  149. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/funnel.src.js +10 -0
  150. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/grid-axis.src.js +10 -0
  151. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/heatmap.src.js +11 -0
  152. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/histogram-bellcurve.src.js +11 -0
  153. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/item-series.src.js +11 -0
  154. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/networkgraph.src.js +10 -0
  155. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/no-data-to-display.src.js +11 -0
  156. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/offline-exporting.src.js +10 -0
  157. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/oldie-polyfills.src.js +11 -0
  158. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/oldie.src.js +11 -0
  159. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/overlapping-datalabels.src.js +9 -0
  160. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/parallel-coordinates.src.js +11 -0
  161. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pareto.src.js +11 -0
  162. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pathfinder.src.js +10 -0
  163. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/pattern-fill.src.js +11 -0
  164. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/price-indicator.src.js +11 -0
  165. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sankey.src.js +10 -0
  166. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/series-label.src.js +9 -0
  167. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/solid-gauge.src.js +10 -0
  168. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sonification.src.js +12 -0
  169. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/static-scale.src.js +10 -0
  170. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/stock-tools.src.js +12 -0
  171. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/stock.src.js +19 -0
  172. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/streamgraph.src.js +10 -0
  173. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/sunburst.src.js +10 -0
  174. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/tilemap.src.js +10 -0
  175. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/timeline.src.js +11 -0
  176. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/treegrid.src.js +10 -0
  177. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/treemap.src.js +10 -0
  178. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/variable-pie.src.js +11 -0
  179. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/variwide.src.js +10 -0
  180. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/vector.src.js +10 -0
  181. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/venn.src.js +10 -0
  182. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/windbarb.src.js +10 -0
  183. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/wordcloud.src.js +10 -0
  184. data/vendor/assets/javascripts/highstock/es-modules/masters/modules/xrange.src.js +10 -0
  185. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/avocado.js +9 -0
  186. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/avocado.src.js +9 -0
  187. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-blue.src.js +9 -0
  188. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-green.src.js +9 -0
  189. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/dark-unica.src.js +9 -0
  190. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/gray.src.js +9 -0
  191. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/grid-light.src.js +9 -0
  192. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/grid.src.js +9 -0
  193. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sand-signika.src.js +9 -0
  194. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/skies.src.js +9 -0
  195. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sunset.js +9 -0
  196. data/vendor/assets/javascripts/highstock/es-modules/masters/themes/sunset.src.js +9 -0
  197. data/vendor/assets/javascripts/highstock/es-modules/mixins/ajax.js +123 -0
  198. data/vendor/assets/javascripts/highstock/es-modules/mixins/centered-series.js +116 -0
  199. data/vendor/assets/javascripts/highstock/es-modules/mixins/derived-series.js +150 -0
  200. data/vendor/assets/javascripts/highstock/es-modules/mixins/download-url.js +103 -0
  201. data/vendor/assets/javascripts/highstock/es-modules/mixins/draw-point.js +51 -0
  202. data/vendor/assets/javascripts/highstock/es-modules/mixins/geometry-circles.js +300 -0
  203. data/vendor/assets/javascripts/highstock/es-modules/mixins/geometry.js +50 -0
  204. data/vendor/assets/javascripts/highstock/es-modules/mixins/indicator-required.js +49 -0
  205. data/vendor/assets/javascripts/highstock/es-modules/mixins/multipe-lines.js +223 -0
  206. data/vendor/assets/javascripts/highstock/es-modules/mixins/navigation.js +59 -0
  207. data/vendor/assets/javascripts/highstock/es-modules/mixins/nodes.js +76 -0
  208. data/vendor/assets/javascripts/highstock/es-modules/mixins/on-series.js +167 -0
  209. data/vendor/assets/javascripts/highstock/es-modules/mixins/polygon.js +293 -0
  210. data/vendor/assets/javascripts/highstock/es-modules/mixins/reduce-array.js +53 -0
  211. data/vendor/assets/javascripts/highstock/es-modules/mixins/tree-series.js +256 -0
  212. data/vendor/assets/javascripts/highstock/es-modules/modules/a11y-i18n.src.js +524 -0
  213. data/vendor/assets/javascripts/highstock/es-modules/modules/annotations-legacy.src.js +1951 -0
  214. data/vendor/assets/javascripts/highstock/es-modules/modules/bellcurve.src.js +173 -0
  215. data/vendor/assets/javascripts/highstock/es-modules/modules/boost-canvas.src.js +732 -0
  216. data/vendor/assets/javascripts/highstock/es-modules/modules/boost.src.js +3730 -0
  217. data/vendor/assets/javascripts/highstock/es-modules/modules/bullet.src.js +361 -0
  218. data/vendor/assets/javascripts/highstock/es-modules/modules/cylinder.src.js +389 -0
  219. data/vendor/assets/javascripts/highstock/es-modules/modules/data.src.js +2417 -0
  220. data/vendor/assets/javascripts/highstock/es-modules/modules/debugger.src.js +109 -0
  221. data/vendor/assets/javascripts/highstock/es-modules/modules/dependency-wheel.src.js +199 -0
  222. data/vendor/assets/javascripts/highstock/es-modules/modules/drag-panes.src.js +624 -0
  223. data/vendor/assets/javascripts/highstock/es-modules/modules/draggable-points.src.js +2625 -0
  224. data/vendor/assets/javascripts/highstock/es-modules/modules/drilldown.src.js +1300 -0
  225. data/vendor/assets/javascripts/highstock/es-modules/modules/export-data.src.js +983 -0
  226. data/vendor/assets/javascripts/highstock/es-modules/modules/exporting.src.js +2149 -0
  227. data/vendor/assets/javascripts/highstock/es-modules/modules/full-screen.src.js +40 -0
  228. data/vendor/assets/javascripts/highstock/es-modules/modules/funnel.src.js +552 -0
  229. data/vendor/assets/javascripts/highstock/es-modules/modules/histogram.src.js +229 -0
  230. data/vendor/assets/javascripts/highstock/es-modules/modules/item-series.src.js +150 -0
  231. data/vendor/assets/javascripts/highstock/es-modules/modules/keyboard-navigation.src.js +1606 -0
  232. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/QuadTree.js +175 -0
  233. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/layouts.js +506 -0
  234. data/vendor/assets/javascripts/highstock/es-modules/modules/networkgraph/networkgraph.src.js +740 -0
  235. data/vendor/assets/javascripts/highstock/es-modules/modules/no-data-to-display.src.js +260 -0
  236. data/vendor/assets/javascripts/highstock/es-modules/modules/offline-exporting.src.js +710 -0
  237. data/vendor/assets/javascripts/highstock/es-modules/modules/oldie-polyfills.src.js +121 -0
  238. data/vendor/assets/javascripts/highstock/es-modules/modules/oldie.src.js +1556 -0
  239. data/vendor/assets/javascripts/highstock/es-modules/modules/overlapping-datalabels.src.js +250 -0
  240. data/vendor/assets/javascripts/highstock/es-modules/modules/parallel-coordinates.src.js +492 -0
  241. data/vendor/assets/javascripts/highstock/es-modules/modules/pareto.src.js +152 -0
  242. data/vendor/assets/javascripts/highstock/es-modules/modules/pattern-fill.src.js +607 -0
  243. data/vendor/assets/javascripts/highstock/es-modules/modules/price-indicator.src.js +149 -0
  244. data/vendor/assets/javascripts/highstock/es-modules/modules/sankey.src.js +809 -0
  245. data/vendor/assets/javascripts/highstock/es-modules/modules/screen-reader.src.js +954 -0
  246. data/vendor/assets/javascripts/highstock/es-modules/modules/series-label.src.js +1042 -0
  247. data/vendor/assets/javascripts/highstock/es-modules/modules/solid-gauge.src.js +486 -0
  248. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Earcon.js +184 -0
  249. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Instrument.js +582 -0
  250. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/Timeline.js +702 -0
  251. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/chartSonify.js +1026 -0
  252. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/instrumentDefinitions.js +37 -0
  253. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/musicalFrequencies.js +113 -0
  254. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/pointSonify.js +385 -0
  255. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/sonification.js +107 -0
  256. data/vendor/assets/javascripts/highstock/es-modules/modules/sonification/utilities.js +178 -0
  257. data/vendor/assets/javascripts/highstock/es-modules/modules/static-scale.src.js +88 -0
  258. data/vendor/assets/javascripts/highstock/es-modules/modules/stock-tools-bindings.js +1950 -0
  259. data/vendor/assets/javascripts/highstock/es-modules/modules/stock-tools-gui.js +1458 -0
  260. data/vendor/assets/javascripts/highstock/es-modules/modules/streamgraph.src.js +132 -0
  261. data/vendor/assets/javascripts/highstock/es-modules/modules/sunburst.src.js +1041 -0
  262. data/vendor/assets/javascripts/highstock/es-modules/modules/tilemap.src.js +769 -0
  263. data/vendor/assets/javascripts/highstock/es-modules/modules/timeline.src.js +750 -0
  264. data/vendor/assets/javascripts/highstock/es-modules/modules/treemap.src.js +1803 -0
  265. data/vendor/assets/javascripts/highstock/es-modules/modules/variable-pie.src.js +459 -0
  266. data/vendor/assets/javascripts/highstock/es-modules/modules/variwide.src.js +350 -0
  267. data/vendor/assets/javascripts/highstock/es-modules/modules/vector.src.js +354 -0
  268. data/vendor/assets/javascripts/highstock/es-modules/modules/venn.src.js +1192 -0
  269. data/vendor/assets/javascripts/highstock/es-modules/modules/windbarb.src.js +380 -0
  270. data/vendor/assets/javascripts/highstock/es-modules/modules/wordcloud.src.js +1103 -0
  271. data/vendor/assets/javascripts/highstock/es-modules/modules/xrange.src.js +761 -0
  272. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Axis.js +669 -0
  273. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Chart.js +1753 -0
  274. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Column.js +437 -0
  275. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Math.js +206 -0
  276. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Pie.js +207 -0
  277. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/SVGRenderer.js +1002 -0
  278. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Scatter.js +154 -0
  279. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/Series.js +73 -0
  280. data/vendor/assets/javascripts/highstock/es-modules/parts-3d/VMLRenderer.js +62 -0
  281. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/ArrowSymbols.js +198 -0
  282. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/CurrentDateIndicator.js +100 -0
  283. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GanttChart.js +140 -0
  284. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GanttSeries.js +415 -0
  285. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/GridAxis.js +961 -0
  286. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/Pathfinder.js +1298 -0
  287. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/PathfinderAlgorithms.js +816 -0
  288. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/Tree.js +158 -0
  289. data/vendor/assets/javascripts/highstock/es-modules/parts-gantt/TreeGrid.js +1003 -0
  290. data/vendor/assets/javascripts/highstock/es-modules/parts-map/ColorAxis.js +1103 -0
  291. data/vendor/assets/javascripts/highstock/es-modules/parts-map/ColorSeriesMixin.js +138 -0
  292. data/vendor/assets/javascripts/highstock/es-modules/parts-map/GeoJSON.js +435 -0
  293. data/vendor/assets/javascripts/highstock/es-modules/parts-map/HeatmapSeries.js +474 -0
  294. data/vendor/assets/javascripts/highstock/es-modules/parts-map/Map.js +477 -0
  295. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapAxis.js +124 -0
  296. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapBubbleSeries.js +274 -0
  297. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapLineSeries.js +143 -0
  298. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapNavigation.js +357 -0
  299. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapPointSeries.js +187 -0
  300. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapPointer.js +132 -0
  301. data/vendor/assets/javascripts/highstock/es-modules/parts-map/MapSeries.js +1294 -0
  302. data/vendor/assets/javascripts/highstock/es-modules/parts-more/AreaRangeSeries.js +725 -0
  303. data/vendor/assets/javascripts/highstock/es-modules/parts-more/AreaSplineRangeSeries.js +98 -0
  304. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BoxPlotSeries.js +617 -0
  305. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BubbleLegend.js +1167 -0
  306. data/vendor/assets/javascripts/highstock/es-modules/parts-more/BubbleSeries.js +661 -0
  307. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ColumnPyramidSeries.js +288 -0
  308. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ColumnRangeSeries.js +278 -0
  309. data/vendor/assets/javascripts/highstock/es-modules/parts-more/ErrorBarSeries.js +172 -0
  310. data/vendor/assets/javascripts/highstock/es-modules/parts-more/GaugeSeries.js +618 -0
  311. data/vendor/assets/javascripts/highstock/es-modules/parts-more/PackedBubbleSeries.js +567 -0
  312. data/vendor/assets/javascripts/highstock/es-modules/parts-more/Pane.js +399 -0
  313. data/vendor/assets/javascripts/highstock/es-modules/parts-more/Polar.js +634 -0
  314. data/vendor/assets/javascripts/highstock/es-modules/parts-more/PolygonSeries.js +151 -0
  315. data/vendor/assets/javascripts/highstock/es-modules/parts-more/RadialAxis.js +685 -0
  316. data/vendor/assets/javascripts/highstock/es-modules/parts-more/WaterfallSeries.js +765 -0
  317. data/vendor/assets/javascripts/highstock/es-modules/parts.js +684 -0
  318. data/vendor/assets/javascripts/highstock/es-modules/parts/AreaSeries.js +578 -0
  319. data/vendor/assets/javascripts/highstock/es-modules/parts/AreaSplineSeries.js +122 -0
  320. data/vendor/assets/javascripts/highstock/es-modules/parts/Axis.js +6453 -0
  321. data/vendor/assets/javascripts/highstock/es-modules/parts/BarSeries.js +153 -0
  322. data/vendor/assets/javascripts/highstock/es-modules/parts/CandlestickSeries.js +358 -0
  323. data/vendor/assets/javascripts/highstock/es-modules/parts/Chart.js +2307 -0
  324. data/vendor/assets/javascripts/highstock/es-modules/parts/Color.js +301 -0
  325. data/vendor/assets/javascripts/highstock/es-modules/parts/ColumnSeries.js +1125 -0
  326. data/vendor/assets/javascripts/highstock/es-modules/parts/DataGrouping.js +1115 -0
  327. data/vendor/assets/javascripts/highstock/es-modules/parts/DataLabels.js +1431 -0
  328. data/vendor/assets/javascripts/highstock/es-modules/parts/DateTimeAxis.js +134 -0
  329. data/vendor/assets/javascripts/highstock/es-modules/parts/Dynamics.js +1301 -0
  330. data/vendor/assets/javascripts/highstock/es-modules/parts/FlagsSeries.js +739 -0
  331. data/vendor/assets/javascripts/highstock/es-modules/parts/Globals.js +75 -0
  332. data/vendor/assets/javascripts/highstock/es-modules/parts/Html.js +539 -0
  333. data/vendor/assets/javascripts/highstock/es-modules/parts/Interaction.js +1299 -0
  334. data/vendor/assets/javascripts/highstock/es-modules/parts/Legend.js +1411 -0
  335. data/vendor/assets/javascripts/highstock/es-modules/parts/LogarithmicAxis.js +168 -0
  336. data/vendor/assets/javascripts/highstock/es-modules/parts/MSPointer.js +176 -0
  337. data/vendor/assets/javascripts/highstock/es-modules/parts/Navigator.js +2486 -0
  338. data/vendor/assets/javascripts/highstock/es-modules/parts/OHLCSeries.js +412 -0
  339. data/vendor/assets/javascripts/highstock/es-modules/parts/Options.js +3732 -0
  340. data/vendor/assets/javascripts/highstock/es-modules/parts/OrdinalAxis.js +962 -0
  341. data/vendor/assets/javascripts/highstock/es-modules/parts/PieSeries.js +1328 -0
  342. data/vendor/assets/javascripts/highstock/es-modules/parts/PlotBandSeries.experimental.js +74 -0
  343. data/vendor/assets/javascripts/highstock/es-modules/parts/PlotLineOrBand.js +1061 -0
  344. data/vendor/assets/javascripts/highstock/es-modules/parts/Point.js +681 -0
  345. data/vendor/assets/javascripts/highstock/es-modules/parts/Pointer.js +1332 -0
  346. data/vendor/assets/javascripts/highstock/es-modules/parts/RangeSelector.js +2063 -0
  347. data/vendor/assets/javascripts/highstock/es-modules/parts/Responsive.js +295 -0
  348. data/vendor/assets/javascripts/highstock/es-modules/parts/ScatterSeries.js +278 -0
  349. data/vendor/assets/javascripts/highstock/es-modules/parts/ScrollablePlotArea.js +266 -0
  350. data/vendor/assets/javascripts/highstock/es-modules/parts/Scrollbar.js +1134 -0
  351. data/vendor/assets/javascripts/highstock/es-modules/parts/Series.js +5864 -0
  352. data/vendor/assets/javascripts/highstock/es-modules/parts/SplineSeries.js +267 -0
  353. data/vendor/assets/javascripts/highstock/es-modules/parts/Stacking.js +604 -0
  354. data/vendor/assets/javascripts/highstock/es-modules/parts/StockChart.js +951 -0
  355. data/vendor/assets/javascripts/highstock/es-modules/parts/SvgRenderer.js +5109 -0
  356. data/vendor/assets/javascripts/highstock/es-modules/parts/Tick.js +746 -0
  357. data/vendor/assets/javascripts/highstock/es-modules/parts/Time.js +881 -0
  358. data/vendor/assets/javascripts/highstock/es-modules/parts/Tooltip.js +1318 -0
  359. data/vendor/assets/javascripts/highstock/es-modules/parts/TouchPointer.js +404 -0
  360. data/vendor/assets/javascripts/highstock/es-modules/parts/Utilities.js +2751 -0
  361. data/vendor/assets/javascripts/highstock/es-modules/themes/avocado.js +37 -0
  362. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-blue.js +259 -0
  363. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-green.js +261 -0
  364. data/vendor/assets/javascripts/highstock/es-modules/themes/dark-unica.js +220 -0
  365. data/vendor/assets/javascripts/highstock/es-modules/themes/gray.js +267 -0
  366. data/vendor/assets/javascripts/highstock/es-modules/themes/grid-light.js +81 -0
  367. data/vendor/assets/javascripts/highstock/es-modules/themes/grid.js +110 -0
  368. data/vendor/assets/javascripts/highstock/es-modules/themes/sand-signika.js +111 -0
  369. data/vendor/assets/javascripts/highstock/es-modules/themes/skies.js +100 -0
  370. data/vendor/assets/javascripts/highstock/es-modules/themes/sunset.js +36 -0
  371. data/vendor/assets/javascripts/highstock/highcharts-3d.js +85 -0
  372. data/vendor/assets/javascripts/highstock/highcharts-3d.js.map +1 -0
  373. data/vendor/assets/javascripts/highstock/highcharts-more.js +101 -0
  374. data/vendor/assets/javascripts/highstock/highcharts-more.js.map +1 -0
  375. data/vendor/assets/javascripts/highstock/highstock.js +583 -0
  376. data/vendor/assets/javascripts/highstock/highstock.js.map +1 -0
  377. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.js +16 -0
  378. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.js.map +1 -0
  379. data/vendor/assets/javascripts/highstock/indicators/acceleration-bands.src.js +448 -0
  380. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.js +12 -0
  381. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.js.map +1 -0
  382. data/vendor/assets/javascripts/highstock/indicators/accumulation-distribution.src.js +156 -0
  383. data/vendor/assets/javascripts/highstock/indicators/ao.js +13 -0
  384. data/vendor/assets/javascripts/highstock/indicators/ao.js.map +1 -0
  385. data/vendor/assets/javascripts/highstock/indicators/ao.src.js +233 -0
  386. data/vendor/assets/javascripts/highstock/indicators/apo.js +13 -0
  387. data/vendor/assets/javascripts/highstock/indicators/apo.js.map +1 -0
  388. data/vendor/assets/javascripts/highstock/indicators/apo.src.js +223 -0
  389. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.js +15 -0
  390. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.js.map +1 -0
  391. data/vendor/assets/javascripts/highstock/indicators/aroon-oscillator.src.js +426 -0
  392. data/vendor/assets/javascripts/highstock/indicators/aroon.js +16 -0
  393. data/vendor/assets/javascripts/highstock/indicators/aroon.js.map +1 -0
  394. data/vendor/assets/javascripts/highstock/indicators/aroon.src.js +423 -0
  395. data/vendor/assets/javascripts/highstock/indicators/atr.js +12 -0
  396. data/vendor/assets/javascripts/highstock/indicators/atr.js.map +1 -0
  397. data/vendor/assets/javascripts/highstock/indicators/atr.src.js +178 -0
  398. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.js +16 -0
  399. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.js.map +1 -0
  400. data/vendor/assets/javascripts/highstock/indicators/bollinger-bands.src.js +458 -0
  401. data/vendor/assets/javascripts/highstock/indicators/cci.js +12 -0
  402. data/vendor/assets/javascripts/highstock/indicators/cci.js.map +1 -0
  403. data/vendor/assets/javascripts/highstock/indicators/cci.src.js +158 -0
  404. data/vendor/assets/javascripts/highstock/indicators/chaikin.js +15 -0
  405. data/vendor/assets/javascripts/highstock/indicators/chaikin.js.map +1 -0
  406. data/vendor/assets/javascripts/highstock/indicators/chaikin.src.js +370 -0
  407. data/vendor/assets/javascripts/highstock/indicators/cmf.js +12 -0
  408. data/vendor/assets/javascripts/highstock/indicators/cmf.js.map +1 -0
  409. data/vendor/assets/javascripts/highstock/indicators/cmf.src.js +273 -0
  410. data/vendor/assets/javascripts/highstock/indicators/dema.js +13 -0
  411. data/vendor/assets/javascripts/highstock/indicators/dema.js.map +1 -0
  412. data/vendor/assets/javascripts/highstock/indicators/dema.src.js +266 -0
  413. data/vendor/assets/javascripts/highstock/indicators/dpo.js +12 -0
  414. data/vendor/assets/javascripts/highstock/indicators/dpo.js.map +1 -0
  415. data/vendor/assets/javascripts/highstock/indicators/dpo.src.js +166 -0
  416. data/vendor/assets/javascripts/highstock/indicators/ema.js +12 -0
  417. data/vendor/assets/javascripts/highstock/indicators/ema.js.map +1 -0
  418. data/vendor/assets/javascripts/highstock/indicators/ema.src.js +193 -0
  419. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.js +22 -0
  420. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.js.map +1 -0
  421. data/vendor/assets/javascripts/highstock/indicators/ichimoku-kinko-hyo.src.js +877 -0
  422. data/vendor/assets/javascripts/highstock/indicators/indicators-all.js +117 -0
  423. data/vendor/assets/javascripts/highstock/indicators/indicators-all.js.map +1 -0
  424. data/vendor/assets/javascripts/highstock/indicators/indicators-all.src.js +9389 -0
  425. data/vendor/assets/javascripts/highstock/indicators/indicators.js +17 -0
  426. data/vendor/assets/javascripts/highstock/indicators/indicators.js.map +1 -0
  427. data/vendor/assets/javascripts/highstock/indicators/indicators.src.js +500 -0
  428. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.js +16 -0
  429. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.js.map +1 -0
  430. data/vendor/assets/javascripts/highstock/indicators/keltner-channels.src.js +442 -0
  431. data/vendor/assets/javascripts/highstock/indicators/macd.js +18 -0
  432. data/vendor/assets/javascripts/highstock/indicators/macd.js.map +1 -0
  433. data/vendor/assets/javascripts/highstock/indicators/macd.src.js +444 -0
  434. data/vendor/assets/javascripts/highstock/indicators/mfi.js +13 -0
  435. data/vendor/assets/javascripts/highstock/indicators/mfi.js.map +1 -0
  436. data/vendor/assets/javascripts/highstock/indicators/mfi.src.js +225 -0
  437. data/vendor/assets/javascripts/highstock/indicators/momentum.js +12 -0
  438. data/vendor/assets/javascripts/highstock/indicators/momentum.js.map +1 -0
  439. data/vendor/assets/javascripts/highstock/indicators/momentum.src.js +146 -0
  440. data/vendor/assets/javascripts/highstock/indicators/natr.js +12 -0
  441. data/vendor/assets/javascripts/highstock/indicators/natr.js.map +1 -0
  442. data/vendor/assets/javascripts/highstock/indicators/natr.src.js +101 -0
  443. data/vendor/assets/javascripts/highstock/indicators/pivot-points.js +16 -0
  444. data/vendor/assets/javascripts/highstock/indicators/pivot-points.js.map +1 -0
  445. data/vendor/assets/javascripts/highstock/indicators/pivot-points.src.js +387 -0
  446. data/vendor/assets/javascripts/highstock/indicators/ppo.js +13 -0
  447. data/vendor/assets/javascripts/highstock/indicators/ppo.js.map +1 -0
  448. data/vendor/assets/javascripts/highstock/indicators/ppo.src.js +227 -0
  449. data/vendor/assets/javascripts/highstock/indicators/price-channel.js +16 -0
  450. data/vendor/assets/javascripts/highstock/indicators/price-channel.js.map +1 -0
  451. data/vendor/assets/javascripts/highstock/indicators/price-channel.src.js +450 -0
  452. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.js +15 -0
  453. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.js.map +1 -0
  454. data/vendor/assets/javascripts/highstock/indicators/price-envelopes.src.js +278 -0
  455. data/vendor/assets/javascripts/highstock/indicators/psar.js +13 -0
  456. data/vendor/assets/javascripts/highstock/indicators/psar.js.map +1 -0
  457. data/vendor/assets/javascripts/highstock/indicators/psar.src.js +334 -0
  458. data/vendor/assets/javascripts/highstock/indicators/regressions.js +14 -0
  459. data/vendor/assets/javascripts/highstock/indicators/regressions.js.map +1 -0
  460. data/vendor/assets/javascripts/highstock/indicators/regressions.src.js +454 -0
  461. data/vendor/assets/javascripts/highstock/indicators/roc.js +12 -0
  462. data/vendor/assets/javascripts/highstock/indicators/roc.js.map +1 -0
  463. data/vendor/assets/javascripts/highstock/indicators/roc.src.js +176 -0
  464. data/vendor/assets/javascripts/highstock/indicators/rsi.js +12 -0
  465. data/vendor/assets/javascripts/highstock/indicators/rsi.js.map +1 -0
  466. data/vendor/assets/javascripts/highstock/indicators/rsi.src.js +190 -0
  467. data/vendor/assets/javascripts/highstock/indicators/stochastic.js +17 -0
  468. data/vendor/assets/javascripts/highstock/indicators/stochastic.js.map +1 -0
  469. data/vendor/assets/javascripts/highstock/indicators/stochastic.src.js +494 -0
  470. data/vendor/assets/javascripts/highstock/indicators/supertrend.js +17 -0
  471. data/vendor/assets/javascripts/highstock/indicators/supertrend.js.map +1 -0
  472. data/vendor/assets/javascripts/highstock/indicators/supertrend.src.js +571 -0
  473. data/vendor/assets/javascripts/highstock/indicators/tema.js +14 -0
  474. data/vendor/assets/javascripts/highstock/indicators/tema.js.map +1 -0
  475. data/vendor/assets/javascripts/highstock/indicators/tema.src.js +322 -0
  476. data/vendor/assets/javascripts/highstock/indicators/trix.js +12 -0
  477. data/vendor/assets/javascripts/highstock/indicators/trix.js.map +1 -0
  478. data/vendor/assets/javascripts/highstock/indicators/trix.src.js +171 -0
  479. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.js +21 -0
  480. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.js.map +1 -0
  481. data/vendor/assets/javascripts/highstock/indicators/volume-by-price.src.js +698 -0
  482. data/vendor/assets/javascripts/highstock/indicators/vwap.js +12 -0
  483. data/vendor/assets/javascripts/highstock/indicators/vwap.js.map +1 -0
  484. data/vendor/assets/javascripts/highstock/indicators/vwap.src.js +216 -0
  485. data/vendor/assets/javascripts/highstock/indicators/williams-r.js +13 -0
  486. data/vendor/assets/javascripts/highstock/indicators/williams-r.js.map +1 -0
  487. data/vendor/assets/javascripts/highstock/indicators/williams-r.src.js +207 -0
  488. data/vendor/assets/javascripts/highstock/indicators/wma.js +12 -0
  489. data/vendor/assets/javascripts/highstock/indicators/wma.js.map +1 -0
  490. data/vendor/assets/javascripts/highstock/indicators/wma.src.js +173 -0
  491. data/vendor/assets/javascripts/highstock/indicators/zigzag.js +13 -0
  492. data/vendor/assets/javascripts/highstock/indicators/zigzag.js.map +1 -0
  493. data/vendor/assets/javascripts/highstock/indicators/zigzag.src.js +248 -0
  494. data/vendor/assets/javascripts/highstock/lib/canvg.js +130 -0
  495. data/vendor/assets/javascripts/highstock/lib/canvg.src.js +3073 -0
  496. data/vendor/assets/javascripts/highstock/lib/jspdf.js +283 -0
  497. data/vendor/assets/javascripts/highstock/lib/jspdf.src.js +21627 -0
  498. data/vendor/assets/javascripts/highstock/lib/rgbcolor.js +17 -0
  499. data/vendor/assets/javascripts/highstock/lib/rgbcolor.src.js +299 -0
  500. data/vendor/assets/javascripts/highstock/lib/svg2pdf.js +38 -0
  501. data/vendor/assets/javascripts/highstock/lib/svg2pdf.src.js +4390 -0
  502. data/vendor/assets/javascripts/highstock/modules/accessibility.js +73 -0
  503. data/vendor/assets/javascripts/highstock/modules/accessibility.js.map +1 -0
  504. data/vendor/assets/javascripts/highstock/modules/accessibility.src.js +3103 -0
  505. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.js +132 -0
  506. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.js.map +1 -0
  507. data/vendor/assets/javascripts/highstock/modules/annotations-advanced.src.js +8230 -0
  508. data/vendor/assets/javascripts/highstock/modules/annotations.js +94 -0
  509. data/vendor/assets/javascripts/highstock/modules/annotations.js.map +1 -0
  510. data/vendor/assets/javascripts/highstock/modules/annotations.src.js +6001 -0
  511. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.js +11 -0
  512. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.js.map +1 -0
  513. data/vendor/assets/javascripts/highstock/modules/arrow-symbols.src.js +225 -0
  514. data/vendor/assets/javascripts/highstock/modules/boost-canvas.js +23 -0
  515. data/vendor/assets/javascripts/highstock/modules/boost-canvas.js.map +1 -0
  516. data/vendor/assets/javascripts/highstock/modules/boost-canvas.src.js +756 -0
  517. data/vendor/assets/javascripts/highstock/modules/boost.js +65 -0
  518. data/vendor/assets/javascripts/highstock/modules/boost.js.map +1 -0
  519. data/vendor/assets/javascripts/highstock/modules/boost.src.js +3752 -0
  520. data/vendor/assets/javascripts/highstock/modules/bullet.js +14 -0
  521. data/vendor/assets/javascripts/highstock/modules/bullet.js.map +1 -0
  522. data/vendor/assets/javascripts/highstock/modules/bullet.src.js +388 -0
  523. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.js +11 -0
  524. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.js.map +1 -0
  525. data/vendor/assets/javascripts/highstock/modules/current-date-indicator.src.js +127 -0
  526. data/vendor/assets/javascripts/highstock/modules/cylinder.js +14 -0
  527. data/vendor/assets/javascripts/highstock/modules/cylinder.js.map +1 -0
  528. data/vendor/assets/javascripts/highstock/modules/cylinder.src.js +413 -0
  529. data/vendor/assets/javascripts/highstock/modules/data.js +37 -0
  530. data/vendor/assets/javascripts/highstock/modules/data.js.map +1 -0
  531. data/vendor/assets/javascripts/highstock/modules/data.src.js +2565 -0
  532. data/vendor/assets/javascripts/highstock/modules/datagrouping.js +25 -0
  533. data/vendor/assets/javascripts/highstock/modules/datagrouping.js.map +1 -0
  534. data/vendor/assets/javascripts/highstock/modules/datagrouping.src.js +1140 -0
  535. data/vendor/assets/javascripts/highstock/modules/debugger.js +28 -0
  536. data/vendor/assets/javascripts/highstock/modules/debugger.js.map +1 -0
  537. data/vendor/assets/javascripts/highstock/modules/debugger.src.js +267 -0
  538. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.js +15 -0
  539. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.js.map +1 -0
  540. data/vendor/assets/javascripts/highstock/modules/dependency-wheel.src.js +301 -0
  541. data/vendor/assets/javascripts/highstock/modules/drag-panes.js +18 -0
  542. data/vendor/assets/javascripts/highstock/modules/drag-panes.js.map +1 -0
  543. data/vendor/assets/javascripts/highstock/modules/drag-panes.src.js +649 -0
  544. data/vendor/assets/javascripts/highstock/modules/draggable-points.js +40 -0
  545. data/vendor/assets/javascripts/highstock/modules/draggable-points.js.map +1 -0
  546. data/vendor/assets/javascripts/highstock/modules/draggable-points.src.js +2650 -0
  547. data/vendor/assets/javascripts/highstock/modules/drilldown.js +29 -0
  548. data/vendor/assets/javascripts/highstock/modules/drilldown.js.map +1 -0
  549. data/vendor/assets/javascripts/highstock/modules/drilldown.src.js +1321 -0
  550. data/vendor/assets/javascripts/highstock/modules/export-data.js +27 -0
  551. data/vendor/assets/javascripts/highstock/modules/export-data.js.map +1 -0
  552. data/vendor/assets/javascripts/highstock/modules/export-data.src.js +1234 -0
  553. data/vendor/assets/javascripts/highstock/modules/exporting.js +35 -0
  554. data/vendor/assets/javascripts/highstock/modules/exporting.js.map +1 -0
  555. data/vendor/assets/javascripts/highstock/modules/exporting.src.js +2233 -0
  556. data/vendor/assets/javascripts/highstock/modules/full-screen.js +11 -0
  557. data/vendor/assets/javascripts/highstock/modules/full-screen.js.map +1 -0
  558. data/vendor/assets/javascripts/highstock/modules/full-screen.src.js +68 -0
  559. data/vendor/assets/javascripts/highstock/modules/funnel.js +14 -0
  560. data/vendor/assets/javascripts/highstock/modules/funnel.js.map +1 -0
  561. data/vendor/assets/javascripts/highstock/modules/funnel.src.js +576 -0
  562. data/vendor/assets/javascripts/highstock/modules/grid-axis.js +23 -0
  563. data/vendor/assets/javascripts/highstock/modules/grid-axis.js.map +1 -0
  564. data/vendor/assets/javascripts/highstock/modules/grid-axis.src.js +988 -0
  565. data/vendor/assets/javascripts/highstock/modules/heatmap.js +28 -0
  566. data/vendor/assets/javascripts/highstock/modules/heatmap.js.map +1 -0
  567. data/vendor/assets/javascripts/highstock/modules/heatmap.src.js +1731 -0
  568. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.js +16 -0
  569. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.js.map +1 -0
  570. data/vendor/assets/javascripts/highstock/modules/histogram-bellcurve.src.js +570 -0
  571. data/vendor/assets/javascripts/highstock/modules/item-series.js +13 -0
  572. data/vendor/assets/javascripts/highstock/modules/item-series.js.map +1 -0
  573. data/vendor/assets/javascripts/highstock/modules/item-series.src.js +176 -0
  574. data/vendor/assets/javascripts/highstock/modules/networkgraph.js +31 -0
  575. data/vendor/assets/javascripts/highstock/modules/networkgraph.js.map +1 -0
  576. data/vendor/assets/javascripts/highstock/modules/networkgraph.src.js +1348 -0
  577. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.js +13 -0
  578. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.js.map +1 -0
  579. data/vendor/assets/javascripts/highstock/modules/no-data-to-display.src.js +285 -0
  580. data/vendor/assets/javascripts/highstock/modules/offline-exporting.js +22 -0
  581. data/vendor/assets/javascripts/highstock/modules/offline-exporting.js.map +1 -0
  582. data/vendor/assets/javascripts/highstock/modules/offline-exporting.src.js +838 -0
  583. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.js +13 -0
  584. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.js.map +1 -0
  585. data/vendor/assets/javascripts/highstock/modules/oldie-polyfills.src.js +150 -0
  586. data/vendor/assets/javascripts/highstock/modules/oldie.js +35 -0
  587. data/vendor/assets/javascripts/highstock/modules/oldie.js.map +1 -0
  588. data/vendor/assets/javascripts/highstock/modules/oldie.src.js +1582 -0
  589. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.js +9 -0
  590. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.js.map +1 -0
  591. data/vendor/assets/javascripts/highstock/modules/overlapping-datalabels.src.js +22 -0
  592. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.js +18 -0
  593. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.js.map +1 -0
  594. data/vendor/assets/javascripts/highstock/modules/parallel-coordinates.src.js +517 -0
  595. data/vendor/assets/javascripts/highstock/modules/pareto.js +14 -0
  596. data/vendor/assets/javascripts/highstock/modules/pareto.js.map +1 -0
  597. data/vendor/assets/javascripts/highstock/modules/pareto.src.js +327 -0
  598. data/vendor/assets/javascripts/highstock/modules/pathfinder.js +34 -0
  599. data/vendor/assets/javascripts/highstock/modules/pathfinder.js.map +1 -0
  600. data/vendor/assets/javascripts/highstock/modules/pathfinder.src.js +2336 -0
  601. data/vendor/assets/javascripts/highstock/modules/pattern-fill.js +21 -0
  602. data/vendor/assets/javascripts/highstock/modules/pattern-fill.js.map +1 -0
  603. data/vendor/assets/javascripts/highstock/modules/pattern-fill.src.js +634 -0
  604. data/vendor/assets/javascripts/highstock/modules/price-indicator.js +13 -0
  605. data/vendor/assets/javascripts/highstock/modules/price-indicator.js.map +1 -0
  606. data/vendor/assets/javascripts/highstock/modules/price-indicator.src.js +176 -0
  607. data/vendor/assets/javascripts/highstock/modules/sankey.js +22 -0
  608. data/vendor/assets/javascripts/highstock/modules/sankey.js.map +1 -0
  609. data/vendor/assets/javascripts/highstock/modules/sankey.src.js +911 -0
  610. data/vendor/assets/javascripts/highstock/modules/series-label.js +23 -0
  611. data/vendor/assets/javascripts/highstock/modules/series-label.js.map +1 -0
  612. data/vendor/assets/javascripts/highstock/modules/series-label.src.js +1065 -0
  613. data/vendor/assets/javascripts/highstock/modules/solid-gauge.js +15 -0
  614. data/vendor/assets/javascripts/highstock/modules/solid-gauge.js.map +1 -0
  615. data/vendor/assets/javascripts/highstock/modules/solid-gauge.src.js +510 -0
  616. data/vendor/assets/javascripts/highstock/modules/sonification.js +53 -0
  617. data/vendor/assets/javascripts/highstock/modules/sonification.js.map +1 -0
  618. data/vendor/assets/javascripts/highstock/modules/sonification.src.js +3341 -0
  619. data/vendor/assets/javascripts/highstock/modules/static-scale.js +12 -0
  620. data/vendor/assets/javascripts/highstock/modules/static-scale.js.map +1 -0
  621. data/vendor/assets/javascripts/highstock/modules/static-scale.src.js +114 -0
  622. data/vendor/assets/javascripts/highstock/modules/stock-tools.js +65 -0
  623. data/vendor/assets/javascripts/highstock/modules/stock-tools.js.map +1 -0
  624. data/vendor/assets/javascripts/highstock/modules/stock-tools.src.js +3437 -0
  625. data/vendor/assets/javascripts/highstock/modules/stock.js +151 -0
  626. data/vendor/assets/javascripts/highstock/modules/stock.js.map +1 -0
  627. data/vendor/assets/javascripts/highstock/modules/stock.src.js +10907 -0
  628. data/vendor/assets/javascripts/highstock/modules/streamgraph.js +10 -0
  629. data/vendor/assets/javascripts/highstock/modules/streamgraph.js.map +1 -0
  630. data/vendor/assets/javascripts/highstock/modules/streamgraph.src.js +158 -0
  631. data/vendor/assets/javascripts/highstock/modules/sunburst.js +52 -0
  632. data/vendor/assets/javascripts/highstock/modules/sunburst.js.map +1 -0
  633. data/vendor/assets/javascripts/highstock/modules/sunburst.src.js +3174 -0
  634. data/vendor/assets/javascripts/highstock/modules/tilemap.js +26 -0
  635. data/vendor/assets/javascripts/highstock/modules/tilemap.js.map +1 -0
  636. data/vendor/assets/javascripts/highstock/modules/tilemap.src.js +1402 -0
  637. data/vendor/assets/javascripts/highstock/modules/timeline.js +23 -0
  638. data/vendor/assets/javascripts/highstock/modules/timeline.js.map +1 -0
  639. data/vendor/assets/javascripts/highstock/modules/timeline.src.js +778 -0
  640. data/vendor/assets/javascripts/highstock/modules/treegrid.js +50 -0
  641. data/vendor/assets/javascripts/highstock/modules/treegrid.js.map +1 -0
  642. data/vendor/assets/javascripts/highstock/modules/treegrid.src.js +2917 -0
  643. data/vendor/assets/javascripts/highstock/modules/treemap.js +39 -0
  644. data/vendor/assets/javascripts/highstock/modules/treemap.js.map +1 -0
  645. data/vendor/assets/javascripts/highstock/modules/treemap.src.js +2083 -0
  646. data/vendor/assets/javascripts/highstock/modules/variable-pie.js +16 -0
  647. data/vendor/assets/javascripts/highstock/modules/variable-pie.js.map +1 -0
  648. data/vendor/assets/javascripts/highstock/modules/variable-pie.src.js +485 -0
  649. data/vendor/assets/javascripts/highstock/modules/variwide.js +15 -0
  650. data/vendor/assets/javascripts/highstock/modules/variwide.js.map +1 -0
  651. data/vendor/assets/javascripts/highstock/modules/variwide.src.js +376 -0
  652. data/vendor/assets/javascripts/highstock/modules/vector.js +13 -0
  653. data/vendor/assets/javascripts/highstock/modules/vector.js.map +1 -0
  654. data/vendor/assets/javascripts/highstock/modules/vector.src.js +381 -0
  655. data/vendor/assets/javascripts/highstock/modules/venn.js +30 -0
  656. data/vendor/assets/javascripts/highstock/modules/venn.js.map +1 -0
  657. data/vendor/assets/javascripts/highstock/modules/venn.src.js +1624 -0
  658. data/vendor/assets/javascripts/highstock/modules/windbarb.js +17 -0
  659. data/vendor/assets/javascripts/highstock/modules/windbarb.js.map +1 -0
  660. data/vendor/assets/javascripts/highstock/modules/windbarb.src.js +574 -0
  661. data/vendor/assets/javascripts/highstock/modules/wordcloud.js +25 -0
  662. data/vendor/assets/javascripts/highstock/modules/wordcloud.js.map +1 -0
  663. data/vendor/assets/javascripts/highstock/modules/wordcloud.src.js +1475 -0
  664. data/vendor/assets/javascripts/highstock/modules/xrange.js +20 -0
  665. data/vendor/assets/javascripts/highstock/modules/xrange.js.map +1 -0
  666. data/vendor/assets/javascripts/highstock/modules/xrange.src.js +788 -0
  667. data/vendor/assets/javascripts/highstock/themes/avocado.js +9 -0
  668. data/vendor/assets/javascripts/highstock/themes/avocado.js.map +1 -0
  669. data/vendor/assets/javascripts/highstock/themes/avocado.src.js +63 -0
  670. data/vendor/assets/javascripts/highstock/themes/dark-blue.js +15 -0
  671. data/vendor/assets/javascripts/highstock/themes/dark-blue.js.map +1 -0
  672. data/vendor/assets/javascripts/highstock/themes/dark-blue.src.js +285 -0
  673. data/vendor/assets/javascripts/highstock/themes/dark-green.js +15 -0
  674. data/vendor/assets/javascripts/highstock/themes/dark-green.js.map +1 -0
  675. data/vendor/assets/javascripts/highstock/themes/dark-green.src.js +287 -0
  676. data/vendor/assets/javascripts/highstock/themes/dark-unica.js +14 -0
  677. data/vendor/assets/javascripts/highstock/themes/dark-unica.js.map +1 -0
  678. data/vendor/assets/javascripts/highstock/themes/dark-unica.src.js +246 -0
  679. data/vendor/assets/javascripts/highstock/themes/gray.js +15 -0
  680. data/vendor/assets/javascripts/highstock/themes/gray.js.map +1 -0
  681. data/vendor/assets/javascripts/highstock/themes/gray.src.js +293 -0
  682. data/vendor/assets/javascripts/highstock/themes/grid-light.js +11 -0
  683. data/vendor/assets/javascripts/highstock/themes/grid-light.js.map +1 -0
  684. data/vendor/assets/javascripts/highstock/themes/grid-light.src.js +107 -0
  685. data/vendor/assets/javascripts/highstock/themes/grid.js +11 -0
  686. data/vendor/assets/javascripts/highstock/themes/grid.js.map +1 -0
  687. data/vendor/assets/javascripts/highstock/themes/grid.src.js +136 -0
  688. data/vendor/assets/javascripts/highstock/themes/sand-signika.js +11 -0
  689. data/vendor/assets/javascripts/highstock/themes/sand-signika.js.map +1 -0
  690. data/vendor/assets/javascripts/highstock/themes/sand-signika.src.js +137 -0
  691. data/vendor/assets/javascripts/highstock/themes/skies.js +11 -0
  692. data/vendor/assets/javascripts/highstock/themes/skies.js.map +1 -0
  693. data/vendor/assets/javascripts/highstock/themes/skies.src.js +126 -0
  694. data/vendor/assets/javascripts/highstock/themes/sunset.js +9 -0
  695. data/vendor/assets/javascripts/highstock/themes/sunset.js.map +1 -0
  696. data/vendor/assets/javascripts/highstock/themes/sunset.src.js +62 -0
  697. metadata +781 -0
@@ -0,0 +1,412 @@
1
+ /* *
2
+ * (c) 2010-2019 Torstein Honsi
3
+ *
4
+ * License: www.highcharts.com/license
5
+ */
6
+
7
+ 'use strict';
8
+
9
+ import H from './Globals.js';
10
+ import './Utilities.js';
11
+ import './Point.js';
12
+
13
+ var Point = H.Point,
14
+ seriesType = H.seriesType,
15
+ seriesTypes = H.seriesTypes;
16
+
17
+ /**
18
+ * The ohlc series type.
19
+ *
20
+ * @private
21
+ * @class
22
+ * @name Highcharts.seriesTypes.ohlc
23
+ *
24
+ * @augments Highcharts.Series
25
+ */
26
+ seriesType(
27
+ 'ohlc',
28
+ 'column'
29
+
30
+ /**
31
+ * An OHLC chart is a style of financial chart used to describe price
32
+ * movements over time. It displays open, high, low and close values per
33
+ * data point.
34
+ *
35
+ * @sample stock/demo/ohlc/
36
+ * OHLC chart
37
+ *
38
+ * @extends plotOptions.column
39
+ * @excluding borderColor, borderRadius, borderWidth, crisp, stacking,
40
+ * stack
41
+ * @product highstock
42
+ * @optionparent plotOptions.ohlc
43
+ */
44
+ , {
45
+
46
+ /**
47
+ * The approximate pixel width of each group. If for example a series
48
+ * with 30 points is displayed over a 600 pixel wide plot area, no
49
+ * grouping is performed. If however the series contains so many points
50
+ * that the spacing is less than the groupPixelWidth, Highcharts will
51
+ * try to group it into appropriate groups so that each is more or less
52
+ * two pixels wide. Defaults to `5`.
53
+ *
54
+ * @type {number}
55
+ * @default 5
56
+ * @product highstock
57
+ * @apioption plotOptions.ohlc.dataGrouping.groupPixelWidth
58
+ */
59
+
60
+ /**
61
+ * The pixel width of the line/border. Defaults to `1`.
62
+ *
63
+ * @sample {highstock} stock/plotoptions/ohlc-linewidth/
64
+ * A greater line width
65
+ *
66
+ * @type {number}
67
+ * @default 1
68
+ * @product highstock
69
+ */
70
+ lineWidth: 1,
71
+
72
+ tooltip: {
73
+ pointFormat: '<span style="color:{point.color}">\u25CF</span> ' +
74
+ '<b> {series.name}</b><br/>' +
75
+ 'Open: {point.open}<br/>' +
76
+ 'High: {point.high}<br/>' +
77
+ 'Low: {point.low}<br/>' +
78
+ 'Close: {point.close}<br/>'
79
+ },
80
+
81
+ threshold: null,
82
+
83
+ states: {
84
+
85
+ /**
86
+ * @extends plotOptions.column.states.hover
87
+ * @product highstock
88
+ */
89
+ hover: {
90
+
91
+ /**
92
+ * The pixel width of the line representing the OHLC point.
93
+ *
94
+ * @type {number}
95
+ * @default 3
96
+ * @product highstock
97
+ */
98
+ lineWidth: 3
99
+ }
100
+ },
101
+
102
+ /**
103
+ * Determines which one of `open`, `high`, `low`, `close` values should
104
+ * be represented as `point.y`, which is later used to set dataLabel
105
+ * position and [compare](#plotOptions.series.compare).
106
+ *
107
+ * @sample {highstock} stock/plotoptions/ohlc-pointvalkey/
108
+ * Possible values
109
+ *
110
+ * @type {string}
111
+ * @default close
112
+ * @validvalue ["open", "high", "low", "close"]
113
+ * @product highstock
114
+ * @apioption plotOptions.ohlc.pointValKey
115
+ */
116
+
117
+ /**
118
+ * Line color for up points.
119
+ *
120
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
121
+ * @product highstock
122
+ * @apioption plotOptions.ohlc.upColor
123
+ */
124
+
125
+ stickyTracking: true
126
+
127
+ }, /** @lends Highcharts.seriesTypes.ohlc */ {
128
+ directTouch: false,
129
+ pointArrayMap: ['open', 'high', 'low', 'close'],
130
+ toYData: function (point) {
131
+ // return a plain array for speedy calculation
132
+ return [point.open, point.high, point.low, point.close];
133
+ },
134
+ pointValKey: 'close',
135
+
136
+ pointAttrToOptions: {
137
+ 'stroke': 'color',
138
+ 'stroke-width': 'lineWidth'
139
+ },
140
+
141
+ /**
142
+ * @private
143
+ * @function Highcarts.seriesTypes.ohlc#init
144
+ */
145
+ init: function () {
146
+ seriesTypes.column.prototype.init.apply(this, arguments);
147
+
148
+ this.options.stacking = false; // #8817
149
+ },
150
+
151
+ /**
152
+ * Postprocess mapping between options and SVG attributes
153
+ *
154
+ * @private
155
+ * @function Highcharts.seriesTypes.ohlc#pointAttribs
156
+ *
157
+ * @param {Highcharts.Point} point
158
+ *
159
+ * @param {string} state
160
+ *
161
+ * @return {Highcharts.Dictionary<*>}
162
+ */
163
+ pointAttribs: function (point, state) {
164
+ var attribs = seriesTypes.column.prototype.pointAttribs.call(
165
+ this,
166
+ point,
167
+ state
168
+ ),
169
+ options = this.options;
170
+
171
+ delete attribs.fill;
172
+
173
+ if (
174
+ !point.options.color &&
175
+ options.upColor &&
176
+ point.open < point.close
177
+ ) {
178
+ attribs.stroke = options.upColor;
179
+ }
180
+
181
+ return attribs;
182
+ },
183
+
184
+ /**
185
+ * Translate data points from raw values x and y to plotX and plotY
186
+ *
187
+ * @private
188
+ * @function Highcharts.seriesTypes.ohlc#translate
189
+ */
190
+ translate: function () {
191
+ var series = this,
192
+ yAxis = series.yAxis,
193
+ hasModifyValue = !!series.modifyValue,
194
+ translated = [
195
+ 'plotOpen',
196
+ 'plotHigh',
197
+ 'plotLow',
198
+ 'plotClose',
199
+ 'yBottom'
200
+ ]; // translate OHLC for
201
+
202
+ seriesTypes.column.prototype.translate.apply(series);
203
+
204
+ // Do the translation
205
+ series.points.forEach(function (point) {
206
+ [point.open, point.high, point.low, point.close, point.low]
207
+ .forEach(
208
+ function (value, i) {
209
+ if (value !== null) {
210
+ if (hasModifyValue) {
211
+ value = series.modifyValue(value);
212
+ }
213
+ point[translated[i]] =
214
+ yAxis.toPixels(value, true);
215
+ }
216
+ }
217
+ );
218
+
219
+ // Align the tooltip to the high value to avoid covering the
220
+ // point
221
+ point.tooltipPos[1] =
222
+ point.plotHigh + yAxis.pos - series.chart.plotTop;
223
+ });
224
+ },
225
+
226
+ /**
227
+ * Draw the data points
228
+ *
229
+ * @private
230
+ * @function Highcharts.seriesTypes.ohlc#drawPoints
231
+ */
232
+ drawPoints: function () {
233
+ var series = this,
234
+ points = series.points,
235
+ chart = series.chart;
236
+
237
+
238
+ points.forEach(function (point) {
239
+ var plotOpen,
240
+ plotClose,
241
+ crispCorr,
242
+ halfWidth,
243
+ path,
244
+ graphic = point.graphic,
245
+ crispX,
246
+ isNew = !graphic;
247
+
248
+ if (point.plotY !== undefined) {
249
+
250
+ // Create and/or update the graphic
251
+ if (!graphic) {
252
+ point.graphic = graphic = chart.renderer.path()
253
+ .add(series.group);
254
+ }
255
+
256
+ if (!chart.styledMode) {
257
+ graphic.attr(
258
+ series.pointAttribs(
259
+ point, point.selected && 'select'
260
+ )
261
+ ); // #3897
262
+ }
263
+
264
+ // crisp vector coordinates
265
+ crispCorr = (graphic.strokeWidth() % 2) / 2;
266
+ crispX = Math.round(point.plotX) - crispCorr; // #2596
267
+ halfWidth = Math.round(point.shapeArgs.width / 2);
268
+
269
+ // the vertical stem
270
+ path = [
271
+ 'M',
272
+ crispX, Math.round(point.yBottom),
273
+ 'L',
274
+ crispX, Math.round(point.plotHigh)
275
+ ];
276
+
277
+ // open
278
+ if (point.open !== null) {
279
+ plotOpen = Math.round(point.plotOpen) + crispCorr;
280
+ path.push(
281
+ 'M',
282
+ crispX,
283
+ plotOpen,
284
+ 'L',
285
+ crispX - halfWidth,
286
+ plotOpen
287
+ );
288
+ }
289
+
290
+ // close
291
+ if (point.close !== null) {
292
+ plotClose = Math.round(point.plotClose) + crispCorr;
293
+ path.push(
294
+ 'M',
295
+ crispX,
296
+ plotClose,
297
+ 'L',
298
+ crispX + halfWidth,
299
+ plotClose
300
+ );
301
+ }
302
+
303
+ graphic[isNew ? 'attr' : 'animate']({ d: path })
304
+ .addClass(point.getClassName(), true);
305
+
306
+ }
307
+
308
+
309
+ });
310
+
311
+ },
312
+
313
+ animate: null // Disable animation
314
+
315
+ },
316
+ /** @lends Highcharts.seriesTypes.ohlc.prototype.pointClass.prototype */
317
+ {
318
+
319
+ /**
320
+ * Extend the parent method by adding up or down to the class name.
321
+ *
322
+ * @private
323
+ * @function Highcharts.seriesTypes.ohlc#getClassName
324
+ */
325
+ getClassName: function () {
326
+ return Point.prototype.getClassName.call(this) +
327
+ (
328
+ this.open < this.close ?
329
+ ' highcharts-point-up' :
330
+ ' highcharts-point-down'
331
+ );
332
+ }
333
+
334
+ }
335
+ );
336
+
337
+ /**
338
+ * A `ohlc` series. If the [type](#series.ohlc.type) option is not
339
+ * specified, it is inherited from [chart.type](#chart.type).
340
+ *
341
+ * @extends series,plotOptions.ohlc
342
+ * @excluding dataParser, dataURL
343
+ * @product highstock
344
+ * @apioption series.ohlc
345
+ */
346
+
347
+ /**
348
+ * An array of data points for the series. For the `ohlc` series type,
349
+ * points can be given in the following ways:
350
+ *
351
+ * 1. An array of arrays with 5 or 4 values. In this case, the values correspond
352
+ * to `x,open,high,low,close`. If the first value is a string, it is applied
353
+ * as the name of the point, and the `x` value is inferred. The `x` value can
354
+ * also be omitted, in which case the inner arrays should be of length 4\.
355
+ * Then the `x` value is automatically calculated, either starting at 0 and
356
+ * incremented by 1, or from `pointStart` and `pointInterval` given in the
357
+ * series options.
358
+ * ```js
359
+ * data: [
360
+ * [0, 6, 5, 6, 7],
361
+ * [1, 9, 4, 8, 2],
362
+ * [2, 6, 3, 4, 10]
363
+ * ]
364
+ * ```
365
+ *
366
+ * 2. An array of objects with named values. The following snippet shows only a
367
+ * few settings, see the complete options set below. If the total number of
368
+ * data points exceeds the series'
369
+ * [turboThreshold](#series.ohlc.turboThreshold), this option is not
370
+ * available.
371
+ * ```js
372
+ * data: [{
373
+ * x: 1,
374
+ * open: 3,
375
+ * high: 4,
376
+ * low: 5,
377
+ * close: 2,
378
+ * name: "Point2",
379
+ * color: "#00FF00"
380
+ * }, {
381
+ * x: 1,
382
+ * open: 4,
383
+ * high: 3,
384
+ * low: 6,
385
+ * close: 7,
386
+ * name: "Point1",
387
+ * color: "#FF00FF"
388
+ * }]
389
+ * ```
390
+ *
391
+ * @type {Array<Array<(number|string),number,number,number>|Array<(number|string),number,number,number,number>|*>}
392
+ * @extends series.arearange.data
393
+ * @excluding y, marker
394
+ * @product highstock
395
+ * @apioption series.ohlc.data
396
+ */
397
+
398
+ /**
399
+ * The closing value of each data point.
400
+ *
401
+ * @type {number}
402
+ * @product highstock
403
+ * @apioption series.ohlc.data.close
404
+ */
405
+
406
+ /**
407
+ * The opening value of each data point.
408
+ *
409
+ * @type {number}
410
+ * @product highstock
411
+ * @apioption series.ohlc.data.open
412
+ */
@@ -0,0 +1,3732 @@
1
+ /**
2
+ * (c) 2010-2019 Torstein Honsi
3
+ *
4
+ * License: www.highcharts.com/license
5
+ */
6
+
7
+ /**
8
+ * Gets fired when a series is added to the chart after load time, using the
9
+ * `addSeries` method. Returning `false` prevents the series from being added.
10
+ *
11
+ * @callback Highcharts.ChartAddSeriesCallbackFunction
12
+ *
13
+ * @param {Highcharts.Chart} this
14
+ * The chart on which the event occured.
15
+ *
16
+ * @param {Highcharts.ChartAddSeriesEventObject} event
17
+ * The event that occured.
18
+ */
19
+
20
+ /**
21
+ * Conaints common event information. Through the `options` property you can
22
+ * access the series options that were passed to the `addSeries` method.
23
+ *
24
+ * @interface Highcharts.ChartAddSeriesEventObject
25
+ *//**
26
+ * The series options that were passed to the `addSeries` method.
27
+ * @name Highcharts.ChartAddSeriesEventObject#options
28
+ * @type {Highcharts.SeriesOptionsType}
29
+ *//**
30
+ * Prevents the default behaviour of the event.
31
+ * @name Highcharts.ChartAddSeriesEventObject#preventDefault
32
+ * @type {Function}
33
+ *//**
34
+ * The event target.
35
+ * @name Highcharts.ChartAddSeriesEventObject#target
36
+ * @type {Highcharts.Chart}
37
+ *//**
38
+ * The event type.
39
+ * @name Highcharts.ChartAddSeriesEventObject#type
40
+ * @type {"drilldown"}
41
+ */
42
+
43
+ /**
44
+ * Gets fired when clicking on the plot background.
45
+ *
46
+ * @callback Highcharts.ChartClickCallbackFunction
47
+ *
48
+ * @param {Highcharts.Chart} this
49
+ * The chart on which the event occured.
50
+ *
51
+ * @param {Highcharts.PointerEventObject} event
52
+ * The event that occured.
53
+ */
54
+
55
+ /**
56
+ * Contains an axes of the clicked spot.
57
+ *
58
+ * @interface Highcharts.ChartClickEventAxisObject
59
+ *//**
60
+ * Axis at the clicked spot.
61
+ * @name Highcharts.ChartClickEventAxisObject#axis
62
+ * @type {Highcharts.Axis}
63
+ *//**
64
+ * Axis value at the clicked spot.
65
+ * @name Highcharts.ChartClickEventAxisObject#value
66
+ * @type {number}
67
+ */
68
+
69
+ /**
70
+ * Contains information about the clicked spot on the chart. Remember the unit
71
+ * of a datetime axis is milliseconds since 1970-01-01 00:00:00.
72
+ *
73
+ * @interface Highcharts.ChartClickEventObject
74
+ * @extends Highcharts.PointerEventObject
75
+ *//**
76
+ * Information about the x-axis on the clicked spot.
77
+ * @name Highcharts.ChartClickEventObject#xAxis
78
+ * @type {Array<Highcharts.ChartClickEventAxisObject>}
79
+ *//**
80
+ * Information about the y-axis on the clicked spot.
81
+ * @name Highcharts.ChartClickEventObject#yAxis
82
+ * @type {Array<Highcharts.ChartClickEventAxisObject>}
83
+ *//**
84
+ * Information about the z-axis on the clicked spot.
85
+ * @name Highcharts.ChartClickEventObject#zAxis
86
+ * @type {Array<Highcharts.ChartClickEventAxisObject>|undefined}
87
+ */
88
+
89
+ /**
90
+ * Gets fired when the chart is finished loading.
91
+ *
92
+ * @callback Highcharts.ChartLoadCallbackFunction
93
+ *
94
+ * @param {Highcharts.Chart} this
95
+ * The chart on which the event occured.
96
+ *
97
+ * @param {global.Event} event
98
+ * The event that occured.
99
+ */
100
+
101
+ /**
102
+ * Fires when the chart is redrawn, either after a call to `chart.redraw()` or
103
+ * after an axis, series or point is modified with the `redraw` option set to
104
+ * `true`.
105
+ *
106
+ * @callback Highcharts.ChartRedrawCallbackFunction
107
+ *
108
+ * @param {Highcharts.Chart} this
109
+ * The chart on which the event occured.
110
+ *
111
+ * @param {global.Event} event
112
+ * The event that occured.
113
+ */
114
+
115
+ /**
116
+ * Gets fired after initial load of the chart (directly after the `load` event),
117
+ * and after each redraw (directly after the `redraw` event).
118
+ *
119
+ * @callback Highcharts.ChartRenderCallbackFunction
120
+ *
121
+ * @param {Highcharts.Chart} this
122
+ * The chart on which the event occured.
123
+ *
124
+ * @param {global.Event} event
125
+ * The event that occured.
126
+ */
127
+
128
+ /**
129
+ * Gets fired when an area of the chart has been selected. The default action
130
+ * for the selection event is to zoom the chart to the selected area. It can be
131
+ * prevented by calling `event.preventDefault()` or return false.
132
+ *
133
+ * @callback Highcharts.ChartSelectionCallbackFunction
134
+ *
135
+ * @param {Highcharts.Chart} this
136
+ * The chart on which the event occured.
137
+ *
138
+ * @param {global.ChartSelectionContextObject} event
139
+ * Event informations
140
+ *
141
+ * @return {boolean|undefined}
142
+ * Return false to prevent the default action, usually zoom.
143
+ */
144
+
145
+ /**
146
+ * The primary axes are `xAxis[0]` and `yAxis[0]`. Remember the unit of a
147
+ * datetime axis is milliseconds since 1970-01-01 00:00:00.
148
+ *
149
+ * @interface Highcharts.ChartSelectionContextObject
150
+ * @extends global.Event
151
+ *//**
152
+ * Arrays containing the axes of each dimension and each axis' min and max
153
+ * values.
154
+ * @name Highcharts.ChartSelectionContextObject#xAxis
155
+ * @type {Array<Highcharts.ChartSelectionAxisContextObject>}
156
+ *//**
157
+ * Arrays containing the axes of each dimension and each axis' min and max
158
+ * values.
159
+ * @name Highcharts.ChartSelectionContextObject#yAxis
160
+ * @type {Array<Highcharts.ChartSelectionAxisContextObject>}
161
+ */
162
+
163
+ /**
164
+ * Axis context of the selection.
165
+ *
166
+ * @interface Highcharts.ChartSelectionAxisContextObject
167
+ *//**
168
+ * The selected Axis.
169
+ * @name Highcharts.ChartSelectionAxisContextObject#axis
170
+ * @type {Highcharts.Axis}
171
+ *//**
172
+ * The maximum axis value, either automatic or set manually.
173
+ * @name Highcharts.ChartSelectionAxisContextObject#max
174
+ * @type {number}
175
+ *//**
176
+ * The minimum axis value, either automatic or set manually.
177
+ * @name Highcharts.ChartSelectionAxisContextObject#min
178
+ * @type {number}
179
+ */
180
+
181
+ /**
182
+ * @interface Highcharts.TooltipFormatterContextObject
183
+ *//**
184
+ * @name Highcharts.TooltipFormatterContextObject#color
185
+ * @type {Highcharts.ColorString}
186
+ *//**
187
+ * @name Highcharts.TooltipFormatterContextObject#colorIndex
188
+ * @type {number|undefined}
189
+ *//**
190
+ * @name Highcharts.TooltipFormatterContextObject#key
191
+ * @type {number}
192
+ *//**
193
+ * @name Highcharts.TooltipFormatterContextObject#percentage
194
+ * @type {number|undefined}
195
+ *//**
196
+ * @name Highcharts.TooltipFormatterContextObject#point
197
+ * @type {Highcharts.Point}
198
+ *//**
199
+ * @name Highcharts.TooltipFormatterContextObject#series
200
+ * @type {Highcharts.Series}
201
+ *//**
202
+ * @name Highcharts.TooltipFormatterContextObject#total
203
+ * @type {number|undefined}
204
+ *//**
205
+ * @name Highcharts.TooltipFormatterContextObject#x
206
+ * @type {number}
207
+ *//**
208
+ * @name Highcharts.TooltipFormatterContextObject#y
209
+ * @type {number}
210
+ */
211
+
212
+ 'use strict';
213
+
214
+ import H from './Globals.js';
215
+ import './Color.js';
216
+ import './Utilities.js';
217
+ import './Time.js';
218
+
219
+ var color = H.color,
220
+ isTouchDevice = H.isTouchDevice,
221
+ merge = H.merge,
222
+ svg = H.svg;
223
+
224
+ /* ****************************************************************************
225
+ * Handle the options *
226
+ *****************************************************************************/
227
+ /**
228
+ * Global default settings.
229
+ *
230
+ * @name Highcharts.defaultOptions
231
+ * @type {Highcharts.Options}
232
+ *//**
233
+ * @optionparent
234
+ */
235
+ H.defaultOptions = {
236
+
237
+ /**
238
+ * An array containing the default colors for the chart's series. When
239
+ * all colors are used, new colors are pulled from the start again.
240
+ *
241
+ * Default colors can also be set on a series or series.type basis,
242
+ * see [column.colors](#plotOptions.column.colors),
243
+ * [pie.colors](#plotOptions.pie.colors).
244
+ *
245
+ * In styled mode, the colors option doesn't exist. Instead, colors
246
+ * are defined in CSS and applied either through series or point class
247
+ * names, or through the [chart.colorCount](#chart.colorCount) option.
248
+ *
249
+ *
250
+ * ### Legacy
251
+ *
252
+ * In Highcharts 3.x, the default colors were:
253
+ *
254
+ * <pre>colors: ['#2f7ed8', '#0d233a', '#8bbc21', '#910000', '#1aadce',
255
+ * '#492970', '#f28f43', '#77a1e5', '#c42525', '#a6c96a']</pre>
256
+ *
257
+ * In Highcharts 2.x, the default colors were:
258
+ *
259
+ * <pre>colors: ['#4572A7', '#AA4643', '#89A54E', '#80699B', '#3D96AE',
260
+ * '#DB843D', '#92A8CD', '#A47D7C', '#B5CA92']</pre>
261
+ *
262
+ * @sample {highcharts} highcharts/chart/colors/
263
+ * Assign a global color theme
264
+ *
265
+ * @type {Array<Highcharts.ColorString>}
266
+ * @default ["#7cb5ec", "#434348", "#90ed7d", "#f7a35c", "#8085e9",
267
+ * "#f15c80", "#e4d354", "#2b908f", "#f45b5b", "#91e8e1"]
268
+ */
269
+ colors: '#7cb5ec #434348 #90ed7d #f7a35c #8085e9 #f15c80 #e4d354 #2b908f #f45b5b #91e8e1'.split(' '),
270
+
271
+
272
+ /**
273
+ * Styled mode only. Configuration object for adding SVG definitions for
274
+ * reusable elements. See [gradients, shadows and
275
+ * patterns](https://www.highcharts.com/docs/chart-design-and-style/gradients-shadows-and-patterns)
276
+ * for more information and code examples.
277
+ *
278
+ * @type {*}
279
+ * @since 5.0.0
280
+ * @apioption defs
281
+ */
282
+
283
+ /**
284
+ * @ignore-option
285
+ */
286
+ symbols: ['circle', 'diamond', 'square', 'triangle', 'triangle-down'],
287
+
288
+ /**
289
+ * The language object is global and it can't be set on each chart
290
+ * initialization. Instead, use `Highcharts.setOptions` to set it before any
291
+ * chart is initialized.
292
+ *
293
+ * <pre>Highcharts.setOptions({
294
+ * lang: {
295
+ * months: [
296
+ * 'Janvier', 'Février', 'Mars', 'Avril',
297
+ * 'Mai', 'Juin', 'Juillet', 'Août',
298
+ * 'Septembre', 'Octobre', 'Novembre', 'Décembre'
299
+ * ],
300
+ * weekdays: [
301
+ * 'Dimanche', 'Lundi', 'Mardi', 'Mercredi',
302
+ * 'Jeudi', 'Vendredi', 'Samedi'
303
+ * ]
304
+ * }
305
+ * });</pre>
306
+ */
307
+ lang: {
308
+
309
+ /**
310
+ * The loading text that appears when the chart is set into the loading
311
+ * state following a call to `chart.showLoading`.
312
+ */
313
+ loading: 'Loading...',
314
+
315
+ /**
316
+ * An array containing the months names. Corresponds to the `%B` format
317
+ * in `Highcharts.dateFormat()`.
318
+ *
319
+ * @type {Array<string>}
320
+ * @default ["January", "February", "March", "April", "May", "June",
321
+ * "July", "August", "September", "October", "November",
322
+ * "December"]
323
+ */
324
+ months: [
325
+ 'January', 'February', 'March', 'April', 'May', 'June', 'July',
326
+ 'August', 'September', 'October', 'November', 'December'
327
+ ],
328
+
329
+ /**
330
+ * An array containing the months names in abbreviated form. Corresponds
331
+ * to the `%b` format in `Highcharts.dateFormat()`.
332
+ *
333
+ * @type {Array<string>}
334
+ * @default ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
335
+ * "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
336
+ */
337
+ shortMonths: [
338
+ 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul',
339
+ 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'
340
+ ],
341
+
342
+ /**
343
+ * An array containing the weekday names.
344
+ *
345
+ * @type {Array<string>}
346
+ * @default ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
347
+ * "Friday", "Saturday"]
348
+ */
349
+ weekdays: [
350
+ 'Sunday', 'Monday', 'Tuesday', 'Wednesday',
351
+ 'Thursday', 'Friday', 'Saturday'
352
+ ],
353
+
354
+ /**
355
+ * Short week days, starting Sunday. If not specified, Highcharts uses
356
+ * the first three letters of the `lang.weekdays` option.
357
+ *
358
+ * @sample highcharts/lang/shortweekdays/
359
+ * Finnish two-letter abbreviations
360
+ *
361
+ * @type {Array<string>}
362
+ * @since 4.2.4
363
+ * @apioption lang.shortWeekdays
364
+ */
365
+
366
+ /**
367
+ * What to show in a date field for invalid dates. Defaults to an empty
368
+ * string.
369
+ *
370
+ * @type {string}
371
+ * @since 4.1.8
372
+ * @product highcharts highstock
373
+ * @apioption lang.invalidDate
374
+ */
375
+
376
+ /**
377
+ * The title appearing on hovering the zoom in button. The text itself
378
+ * defaults to "+" and can be changed in the button options.
379
+ *
380
+ * @type {string}
381
+ * @default Zoom in
382
+ * @product highmaps
383
+ * @apioption lang.zoomIn
384
+ */
385
+
386
+ /**
387
+ * The title appearing on hovering the zoom out button. The text itself
388
+ * defaults to "-" and can be changed in the button options.
389
+ *
390
+ * @type {string}
391
+ * @default Zoom out
392
+ * @product highmaps
393
+ * @apioption lang.zoomOut
394
+ */
395
+
396
+ /**
397
+ * The default decimal point used in the `Highcharts.numberFormat`
398
+ * method unless otherwise specified in the function arguments.
399
+ *
400
+ * @since 1.2.2
401
+ */
402
+ decimalPoint: '.',
403
+
404
+ /**
405
+ * [Metric prefixes](http://en.wikipedia.org/wiki/Metric_prefix) used
406
+ * to shorten high numbers in axis labels. Replacing any of the
407
+ * positions with `null` causes the full number to be written. Setting
408
+ * `numericSymbols` to `null` disables shortening altogether.
409
+ *
410
+ * @sample {highcharts} highcharts/lang/numericsymbols/
411
+ * Replacing the symbols with text
412
+ * @sample {highstock} highcharts/lang/numericsymbols/
413
+ * Replacing the symbols with text
414
+ *
415
+ * @type {Array<string>}
416
+ * @default ["k", "M", "G", "T", "P", "E"]
417
+ * @since 2.3.0
418
+ */
419
+ numericSymbols: ['k', 'M', 'G', 'T', 'P', 'E'],
420
+
421
+ /**
422
+ * The magnitude of [numericSymbols](#lang.numericSymbol) replacements.
423
+ * Use 10000 for Japanese, Korean and various Chinese locales, which
424
+ * use symbols for 10^4, 10^8 and 10^12.
425
+ *
426
+ * @sample highcharts/lang/numericsymbolmagnitude/
427
+ * 10000 magnitude for Japanese
428
+ *
429
+ * @type {number}
430
+ * @default 1000
431
+ * @since 5.0.3
432
+ * @apioption lang.numericSymbolMagnitude
433
+ */
434
+
435
+ /**
436
+ * The text for the label appearing when a chart is zoomed.
437
+ *
438
+ * @since 1.2.4
439
+ */
440
+ resetZoom: 'Reset zoom',
441
+
442
+ /**
443
+ * The tooltip title for the label appearing when a chart is zoomed.
444
+ *
445
+ * @since 1.2.4
446
+ */
447
+ resetZoomTitle: 'Reset zoom level 1:1',
448
+
449
+ /**
450
+ * The default thousands separator used in the `Highcharts.numberFormat`
451
+ * method unless otherwise specified in the function arguments. Defaults
452
+ * to a single space character, which is recommended in
453
+ * [ISO 31-0](https://en.wikipedia.org/wiki/ISO_31-0#Numbers) and works
454
+ * across Anglo-American and continental European languages.
455
+ *
456
+ * @default \u0020
457
+ * @since 1.2.2
458
+ */
459
+ thousandsSep: ' '
460
+ },
461
+
462
+ /**
463
+ * Global options that don't apply to each chart. These options, like
464
+ * the `lang` options, must be set using the `Highcharts.setOptions`
465
+ * method.
466
+ *
467
+ * <pre>Highcharts.setOptions({
468
+ * global: {
469
+ * useUTC: false
470
+ * }
471
+ * });</pre>
472
+ *
473
+ */
474
+
475
+ /**
476
+ * _Canvg rendering for Android 2.x is removed as of Highcharts 5.0\.
477
+ * Use the [libURL](#exporting.libURL) option to configure exporting._
478
+ *
479
+ * The URL to the additional file to lazy load for Android 2.x devices.
480
+ * These devices don't support SVG, so we download a helper file that
481
+ * contains [canvg](http://code.google.com/p/canvg/), its dependency
482
+ * rbcolor, and our own CanVG Renderer class. To avoid hotlinking to
483
+ * our site, you can install canvas-tools.js on your own server and
484
+ * change this option accordingly.
485
+ *
486
+ * @deprecated
487
+ *
488
+ * @type {string}
489
+ * @default http://code.highcharts.com/{version}/modules/canvas-tools.js
490
+ * @product highcharts highmaps
491
+ * @apioption global.canvasToolsURL
492
+ */
493
+
494
+ /**
495
+ * This option is deprecated since v6.0.5. Instead, use
496
+ * [time.useUTC](#time.useUTC) that supports individual time settings
497
+ * per chart.
498
+ *
499
+ * @deprecated
500
+ *
501
+ * @type {boolean}
502
+ * @apioption global.useUTC
503
+ */
504
+
505
+ /**
506
+ * This option is deprecated since v6.0.5. Instead, use
507
+ * [time.Date](#time.Date) that supports individual time settings
508
+ * per chart.
509
+ *
510
+ * @deprecated
511
+ *
512
+ * @type {Function}
513
+ * @product highcharts highstock
514
+ * @apioption global.Date
515
+ */
516
+
517
+ /**
518
+ * This option is deprecated since v6.0.5. Instead, use
519
+ * [time.getTimezoneOffset](#time.getTimezoneOffset) that supports
520
+ * individual time settings per chart.
521
+ *
522
+ * @deprecated
523
+ *
524
+ * @type {Function}
525
+ * @product highcharts highstock
526
+ * @apioption global.getTimezoneOffset
527
+ */
528
+
529
+ /**
530
+ * This option is deprecated since v6.0.5. Instead, use
531
+ * [time.timezone](#time.timezone) that supports individual time
532
+ * settings per chart.
533
+ *
534
+ * @deprecated
535
+ *
536
+ * @type {string}
537
+ * @product highcharts highstock
538
+ * @apioption global.timezone
539
+ */
540
+
541
+ /**
542
+ * This option is deprecated since v6.0.5. Instead, use
543
+ * [time.timezoneOffset](#time.timezoneOffset) that supports individual
544
+ * time settings per chart.
545
+ *
546
+ * @deprecated
547
+ *
548
+ * @type {number}
549
+ * @product highcharts highstock
550
+ * @apioption global.timezoneOffset
551
+ */
552
+
553
+ global: {},
554
+
555
+ time: H.Time.prototype.defaultOptions,
556
+
557
+ /**
558
+ * General options for the chart.
559
+ */
560
+ chart: {
561
+
562
+ /**
563
+ * Default `mapData` for all series. If set to a string, it functions
564
+ * as an index into the `Highcharts.maps` array. Otherwise it is
565
+ * interpreted s map data.
566
+ *
567
+ * @see [mapData](#series.map.mapData)
568
+ *
569
+ * @type {string|Array<*>}
570
+ * @since 5.0.0
571
+ * @product highmaps
572
+ * @apioption chart.map
573
+ */
574
+
575
+ /**
576
+ * Set lat/lon transformation definitions for the chart. If not defined,
577
+ * these are extracted from the map data.
578
+ *
579
+ * @type {*}
580
+ * @since 5.0.0
581
+ * @product highmaps
582
+ * @apioption chart.mapTransforms
583
+ */
584
+
585
+ /**
586
+ * When using multiple axis, the ticks of two or more opposite axes
587
+ * will automatically be aligned by adding ticks to the axis or axes
588
+ * with the least ticks, as if `tickAmount` were specified.
589
+ *
590
+ * This can be prevented by setting `alignTicks` to false. If the grid
591
+ * lines look messy, it's a good idea to hide them for the secondary
592
+ * axis by setting `gridLineWidth` to 0.
593
+ *
594
+ * If `startOnTick` or `endOnTick` in an Axis options are set to false,
595
+ * then the `alignTicks ` will be disabled for the Axis.
596
+ *
597
+ * Disabled for logarithmic axes.
598
+ *
599
+ * @sample {highcharts} highcharts/chart/alignticks-true/
600
+ * True by default
601
+ * @sample {highcharts} highcharts/chart/alignticks-false/
602
+ * False
603
+ * @sample {highstock} stock/chart/alignticks-true/
604
+ * True by default
605
+ * @sample {highstock} stock/chart/alignticks-false/
606
+ * False
607
+ *
608
+ * @type {boolean}
609
+ * @default true
610
+ * @product highcharts highstock gantt
611
+ * @apioption chart.alignTicks
612
+ */
613
+
614
+ /**
615
+ * Set the overall animation for all chart updating. Animation can be
616
+ * disabled throughout the chart by setting it to false here. It can
617
+ * be overridden for each individual API method as a function parameter.
618
+ * The only animation not affected by this option is the initial series
619
+ * animation, see [plotOptions.series.animation](
620
+ * #plotOptions.series.animation).
621
+ *
622
+ * The animation can either be set as a boolean or a configuration
623
+ * object. If `true`, it will use the 'swing' jQuery easing and a
624
+ * duration of 500 ms. If used as a configuration object, the following
625
+ * properties are supported:
626
+ *
627
+ * <dl>
628
+ *
629
+ * <dt>duration</dt>
630
+ *
631
+ * <dd>The duration of the animation in milliseconds.</dd>
632
+ *
633
+ * <dt>easing</dt>
634
+ *
635
+ * <dd>A string reference to an easing function set on the `Math`
636
+ * object. See [the easing
637
+ * demo](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/plotoptions/series-animation-easing/).
638
+ * </dd>
639
+ *
640
+ * </dl>
641
+ *
642
+ * @sample {highcharts} highcharts/chart/animation-none/
643
+ * Updating with no animation
644
+ * @sample {highcharts} highcharts/chart/animation-duration/
645
+ * With a longer duration
646
+ * @sample {highcharts} highcharts/chart/animation-easing/
647
+ * With a jQuery UI easing
648
+ * @sample {highmaps} maps/chart/animation-none/
649
+ * Updating with no animation
650
+ * @sample {highmaps} maps/chart/animation-duration/
651
+ * With a longer duration
652
+ *
653
+ * @type {boolean|Highcharts.AnimationOptionsObject}
654
+ * @default true
655
+ * @apioption chart.animation
656
+ */
657
+
658
+ /**
659
+ * A CSS class name to apply to the charts container `div`, allowing
660
+ * unique CSS styling for each chart.
661
+ *
662
+ * @type {string}
663
+ * @apioption chart.className
664
+ */
665
+
666
+ /**
667
+ * Event listeners for the chart.
668
+ *
669
+ * @apioption chart.events
670
+ */
671
+
672
+ /**
673
+ * Fires when a series is added to the chart after load time, using the
674
+ * `addSeries` method. One parameter, `event`, is passed to the
675
+ * function, containing common event information. Through
676
+ * `event.options` you can access the series options that were passed to
677
+ * the `addSeries` method. Returning false prevents the series from
678
+ * being added.
679
+ *
680
+ * @sample {highcharts} highcharts/chart/events-addseries/
681
+ * Alert on add series
682
+ * @sample {highstock} stock/chart/events-addseries/
683
+ * Alert on add series
684
+ *
685
+ * @type {Highcharts.ChartAddSeriesCallbackFunction}
686
+ * @since 1.2.0
687
+ * @context Highcharts.Chart
688
+ * @apioption chart.events.addSeries
689
+ */
690
+
691
+ /**
692
+ * Fires when clicking on the plot background. One parameter, `event`,
693
+ * is passed to the function, containing common event information.
694
+ *
695
+ * Information on the clicked spot can be found through `event.xAxis`
696
+ * and `event.yAxis`, which are arrays containing the axes of each
697
+ * dimension and each axis' value at the clicked spot. The primary axes
698
+ * are `event.xAxis[0]` and `event.yAxis[0]`. Remember the unit of a
699
+ * datetime axis is milliseconds since 1970-01-01 00:00:00.
700
+ *
701
+ * <pre>click: function(e) {
702
+ * console.log(
703
+ * Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', e.xAxis[0].value),
704
+ * e.yAxis[0].value
705
+ * )
706
+ * }</pre>
707
+ *
708
+ * @sample {highcharts} highcharts/chart/events-click/
709
+ * Alert coordinates on click
710
+ * @sample {highcharts} highcharts/chart/events-container/
711
+ * Alternatively, attach event to container
712
+ * @sample {highstock} stock/chart/events-click/
713
+ * Alert coordinates on click
714
+ * @sample {highstock} highcharts/chart/events-container/
715
+ * Alternatively, attach event to container
716
+ * @sample {highmaps} maps/chart/events-click/
717
+ * Record coordinates on click
718
+ * @sample {highmaps} highcharts/chart/events-container/
719
+ * Alternatively, attach event to container
720
+ *
721
+ * @type {Highcharts.ChartClickCallbackFunction}
722
+ * @since 1.2.0
723
+ * @context Highcharts.Chart
724
+ * @apioption chart.events.click
725
+ */
726
+
727
+
728
+ /**
729
+ * Fires when the chart is finished loading. Since v4.2.2, it also waits
730
+ * for images to be loaded, for example from point markers. One
731
+ * parameter, `event`, is passed to the function, containing common
732
+ * event information.
733
+ *
734
+ * There is also a second parameter to the chart constructor where a
735
+ * callback function can be passed to be executed on chart.load.
736
+ *
737
+ * @sample {highcharts} highcharts/chart/events-load/
738
+ * Alert on chart load
739
+ * @sample {highstock} stock/chart/events-load/
740
+ * Alert on chart load
741
+ * @sample {highmaps} maps/chart/events-load/
742
+ * Add series on chart load
743
+ *
744
+ * @type {Highcharts.ChartLoadCallbackFunction}
745
+ * @context Highcharts.Chart
746
+ * @apioption chart.events.load
747
+ */
748
+
749
+ /**
750
+ * Fires when the chart is redrawn, either after a call to
751
+ * `chart.redraw()` or after an axis, series or point is modified with
752
+ * the `redraw` option set to `true`. One parameter, `event`, is passed
753
+ * to the function, containing common event information.
754
+ *
755
+ * @sample {highcharts} highcharts/chart/events-redraw/
756
+ * Alert on chart redraw
757
+ * @sample {highstock} stock/chart/events-redraw/
758
+ * Alert on chart redraw when adding a series or moving the
759
+ * zoomed range
760
+ * @sample {highmaps} maps/chart/events-redraw/
761
+ * Set subtitle on chart redraw
762
+ *
763
+ * @type {Highcharts.ChartRedrawCallbackFunction}
764
+ * @since 1.2.0
765
+ * @context Highcharts.Chart
766
+ * @apioption chart.events.redraw
767
+ */
768
+
769
+ /**
770
+ * Fires after initial load of the chart (directly after the `load`
771
+ * event), and after each redraw (directly after the `redraw` event).
772
+ *
773
+ * @type {Highcharts.ChartRenderCallbackFunction}
774
+ * @since 5.0.7
775
+ * @context Highcharts.Chart
776
+ * @apioption chart.events.render
777
+ */
778
+
779
+ /**
780
+ * Fires when an area of the chart has been selected. Selection is
781
+ * enabled by setting the chart's zoomType. One parameter, `event`, is
782
+ * passed to the function, containing common event information. The
783
+ * default action for the selection event is to zoom the chart to the
784
+ * selected area. It can be prevented by calling
785
+ * `event.preventDefault()` or return false.
786
+ *
787
+ * Information on the selected area can be found through `event.xAxis`
788
+ * and `event.yAxis`, which are arrays containing the axes of each
789
+ * dimension and each axis' min and max values. The primary axes are
790
+ * `event.xAxis[0]` and `event.yAxis[0]`. Remember the unit of a
791
+ * datetime axis is milliseconds since 1970-01-01 00:00:00.
792
+ *
793
+ * <pre>selection: function(event) {
794
+ * // log the min and max of the primary, datetime x-axis
795
+ * console.log(
796
+ * Highcharts.dateFormat(
797
+ * '%Y-%m-%d %H:%M:%S',
798
+ * event.xAxis[0].min
799
+ * ),
800
+ * Highcharts.dateFormat(
801
+ * '%Y-%m-%d %H:%M:%S',
802
+ * event.xAxis[0].max
803
+ * )
804
+ * );
805
+ * // log the min and max of the y axis
806
+ * console.log(event.yAxis[0].min, event.yAxis[0].max);
807
+ * }</pre>
808
+ *
809
+ * @sample {highcharts} highcharts/chart/events-selection/
810
+ * Report on selection and reset
811
+ * @sample {highcharts} highcharts/chart/events-selection-points/
812
+ * Select a range of points through a drag selection
813
+ * @sample {highstock} stock/chart/events-selection/
814
+ * Report on selection and reset
815
+ * @sample {highstock} highcharts/chart/events-selection-points/
816
+ * Select a range of points through a drag selection
817
+ * (Highcharts)
818
+ *
819
+ * @type {Highcharts.ChartSelectionCallbackFunction}
820
+ * @apioption chart.events.selection
821
+ */
822
+
823
+ /**
824
+ * The margin between the outer edge of the chart and the plot area.
825
+ * The numbers in the array designate top, right, bottom and left
826
+ * respectively. Use the options `marginTop`, `marginRight`,
827
+ * `marginBottom` and `marginLeft` for shorthand setting of one option.
828
+ *
829
+ * By default there is no margin. The actual space is dynamically
830
+ * calculated from the offset of axis labels, axis title, title,
831
+ * subtitle and legend in addition to the `spacingTop`, `spacingRight`,
832
+ * `spacingBottom` and `spacingLeft` options.
833
+ *
834
+ * @sample {highcharts} highcharts/chart/margins-zero/
835
+ * Zero margins
836
+ * @sample {highstock} stock/chart/margin-zero/
837
+ * Zero margins
838
+ *
839
+ * @type {number|Array<number>}
840
+ * @apioption chart.margin
841
+ */
842
+
843
+ /**
844
+ * The margin between the bottom outer edge of the chart and the plot
845
+ * area. Use this to set a fixed pixel value for the margin as opposed
846
+ * to the default dynamic margin. See also `spacingBottom`.
847
+ *
848
+ * @sample {highcharts} highcharts/chart/marginbottom/
849
+ * 100px bottom margin
850
+ * @sample {highstock} stock/chart/marginbottom/
851
+ * 100px bottom margin
852
+ * @sample {highmaps} maps/chart/margin/
853
+ * 100px margins
854
+ *
855
+ * @type {number}
856
+ * @since 2.0
857
+ * @apioption chart.marginBottom
858
+ */
859
+
860
+ /**
861
+ * The margin between the left outer edge of the chart and the plot
862
+ * area. Use this to set a fixed pixel value for the margin as opposed
863
+ * to the default dynamic margin. See also `spacingLeft`.
864
+ *
865
+ * @sample {highcharts} highcharts/chart/marginleft/
866
+ * 150px left margin
867
+ * @sample {highstock} stock/chart/marginleft/
868
+ * 150px left margin
869
+ * @sample {highmaps} maps/chart/margin/
870
+ * 100px margins
871
+ *
872
+ * @type {number}
873
+ * @since 2.0
874
+ * @apioption chart.marginLeft
875
+ */
876
+
877
+ /**
878
+ * The margin between the right outer edge of the chart and the plot
879
+ * area. Use this to set a fixed pixel value for the margin as opposed
880
+ * to the default dynamic margin. See also `spacingRight`.
881
+ *
882
+ * @sample {highcharts} highcharts/chart/marginright/
883
+ * 100px right margin
884
+ * @sample {highstock} stock/chart/marginright/
885
+ * 100px right margin
886
+ * @sample {highmaps} maps/chart/margin/
887
+ * 100px margins
888
+ *
889
+ * @type {number}
890
+ * @since 2.0
891
+ * @apioption chart.marginRight
892
+ */
893
+
894
+ /**
895
+ * The margin between the top outer edge of the chart and the plot area.
896
+ * Use this to set a fixed pixel value for the margin as opposed to
897
+ * the default dynamic margin. See also `spacingTop`.
898
+ *
899
+ * @sample {highcharts} highcharts/chart/margintop/ 100px top margin
900
+ * @sample {highstock} stock/chart/margintop/
901
+ * 100px top margin
902
+ * @sample {highmaps} maps/chart/margin/
903
+ * 100px margins
904
+ *
905
+ * @type {number}
906
+ * @since 2.0
907
+ * @apioption chart.marginTop
908
+ */
909
+
910
+ /**
911
+ * Allows setting a key to switch between zooming and panning. Can be
912
+ * one of `alt`, `ctrl`, `meta` (the command key on Mac and Windows
913
+ * key on Windows) or `shift`. The keys are mapped directly to the key
914
+ * properties of the click event argument (`event.altKey`,
915
+ * `event.ctrlKey`, `event.metaKey` and `event.shiftKey`).
916
+ *
917
+ * @type {string}
918
+ * @since 4.0.3
919
+ * @product highcharts gantt
920
+ * @validvalue ["alt", "ctrl", "meta", "shift"]
921
+ * @apioption chart.panKey
922
+ */
923
+
924
+ /**
925
+ * Allow panning in a chart. Best used with [panKey](#chart.panKey)
926
+ * to combine zooming and panning.
927
+ *
928
+ * On touch devices, when the [tooltip.followTouchMove](
929
+ * #tooltip.followTouchMove) option is `true` (default), panning
930
+ * requires two fingers. To allow panning with one finger, set
931
+ * `followTouchMove` to `false`.
932
+ *
933
+ * @sample {highcharts} highcharts/chart/pankey/ Zooming and panning
934
+ *
935
+ * @type {boolean}
936
+ * @default {highcharts} false
937
+ * @default {highstock} true
938
+ * @since 4.0.3
939
+ * @product highcharts highstock gantt
940
+ * @apioption chart.panning
941
+ */
942
+
943
+
944
+ /**
945
+ * Equivalent to [zoomType](#chart.zoomType), but for multitouch
946
+ * gestures only. By default, the `pinchType` is the same as the
947
+ * `zoomType` setting. However, pinching can be enabled separately in
948
+ * some cases, for example in stock charts where a mouse drag pans the
949
+ * chart, while pinching is enabled. When [tooltip.followTouchMove](
950
+ * #tooltip.followTouchMove) is true, pinchType only applies to
951
+ * two-finger touches.
952
+ *
953
+ * @type {string}
954
+ * @default {highcharts} undefined
955
+ * @default {highstock} x
956
+ * @since 3.0
957
+ * @product highcharts highstock gantt
958
+ * @validvalue ["x", "y", "xy"]
959
+ * @apioption chart.pinchType
960
+ */
961
+
962
+
963
+ /**
964
+ * Whether to apply styled mode. When in styled mode, no presentational
965
+ * attributes or CSS are applied to the chart SVG. Instead, CSS rules
966
+ * are required to style the chart. The default style sheet is
967
+ * available from `https://code.highcharts.com/css/highcharts.css`.
968
+ *
969
+ * @type {boolean}
970
+ * @default false
971
+ * @since 7.0
972
+ * @apioption chart.styledMode
973
+ */
974
+ styledMode: false,
975
+
976
+ /**
977
+ * The corner radius of the outer chart border.
978
+ *
979
+ * @sample {highcharts} highcharts/chart/borderradius/
980
+ * 20px radius
981
+ * @sample {highstock} stock/chart/border/
982
+ * 10px radius
983
+ * @sample {highmaps} maps/chart/border/
984
+ * Border options
985
+ *
986
+ */
987
+ borderRadius: 0,
988
+
989
+ /**
990
+ * In styled mode, this sets how many colors the class names
991
+ * should rotate between. With ten colors, series (or points) are
992
+ * given class names like `highcharts-color-0`, `highcharts-color-0`
993
+ * [...] `highcharts-color-9`. The equivalent in non-styled mode
994
+ * is to set colors using the [colors](#colors) setting.
995
+ *
996
+ * @since 5.0.0
997
+ */
998
+ colorCount: 10,
999
+
1000
+ /**
1001
+ * Alias of `type`.
1002
+ *
1003
+ * @sample {highcharts} highcharts/chart/defaultseriestype/
1004
+ * Bar
1005
+ *
1006
+ * @deprecated
1007
+ *
1008
+ * @product highcharts
1009
+ */
1010
+ defaultSeriesType: 'line',
1011
+
1012
+ /**
1013
+ * If true, the axes will scale to the remaining visible series once
1014
+ * one series is hidden. If false, hiding and showing a series will
1015
+ * not affect the axes or the other series. For stacks, once one series
1016
+ * within the stack is hidden, the rest of the stack will close in
1017
+ * around it even if the axis is not affected.
1018
+ *
1019
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-true/
1020
+ * True by default
1021
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-false/
1022
+ * False
1023
+ * @sample {highcharts} highcharts/chart/ignorehiddenseries-true-stacked/
1024
+ * True with stack
1025
+ * @sample {highstock} stock/chart/ignorehiddenseries-true/
1026
+ * True by default
1027
+ * @sample {highstock} stock/chart/ignorehiddenseries-false/
1028
+ * False
1029
+ *
1030
+ * @since 1.2.0
1031
+ * @product highcharts highstock gantt
1032
+ */
1033
+ ignoreHiddenSeries: true,
1034
+
1035
+
1036
+ /**
1037
+ * Whether to invert the axes so that the x axis is vertical and y axis
1038
+ * is horizontal. When `true`, the x axis is [reversed](#xAxis.reversed)
1039
+ * by default.
1040
+ *
1041
+ * @productdesc {highcharts}
1042
+ * If a bar series is present in the chart, it will be inverted
1043
+ * automatically. Inverting the chart doesn't have an effect if there
1044
+ * are no cartesian series in the chart, or if the chart is
1045
+ * [polar](#chart.polar).
1046
+ *
1047
+ * @sample {highcharts} highcharts/chart/inverted/
1048
+ * Inverted line
1049
+ * @sample {highstock} stock/navigator/inverted/
1050
+ * Inverted stock chart
1051
+ *
1052
+ * @type {boolean}
1053
+ * @default false
1054
+ * @product highcharts highstock gantt
1055
+ * @apioption chart.inverted
1056
+ */
1057
+
1058
+ /**
1059
+ * The distance between the outer edge of the chart and the content,
1060
+ * like title or legend, or axis title and labels if present. The
1061
+ * numbers in the array designate top, right, bottom and left
1062
+ * respectively. Use the options spacingTop, spacingRight, spacingBottom
1063
+ * and spacingLeft options for shorthand setting of one option.
1064
+ *
1065
+ * @type {Array<number>}
1066
+ * @see [chart.margin](#chart.margin)
1067
+ * @default [10, 10, 15, 10]
1068
+ * @since 3.0.6
1069
+ */
1070
+ spacing: [10, 10, 15, 10],
1071
+
1072
+ /**
1073
+ * The button that appears after a selection zoom, allowing the user
1074
+ * to reset zoom.
1075
+ */
1076
+ resetZoomButton: {
1077
+
1078
+ /**
1079
+ * What frame the button should be placed related to. Can be either
1080
+ * `plot` or `chart`
1081
+ *
1082
+ * @sample {highcharts} highcharts/chart/resetzoombutton-relativeto/
1083
+ * Relative to the chart
1084
+ * @sample {highstock} highcharts/chart/resetzoombutton-relativeto/
1085
+ * Relative to the chart
1086
+ *
1087
+ * @type {string}
1088
+ * @default plot
1089
+ * @since 2.2
1090
+ * @validvalue ["plot", "chart"]
1091
+ * @apioption chart.resetZoomButton.relativeTo
1092
+ */
1093
+
1094
+ /**
1095
+ * A collection of attributes for the button. The object takes SVG
1096
+ * attributes like `fill`, `stroke`, `stroke-width` or `r`, the
1097
+ * border radius. The theme also supports `style`, a collection of
1098
+ * CSS properties for the text. Equivalent attributes for the hover
1099
+ * state are given in `theme.states.hover`.
1100
+ *
1101
+ * @sample {highcharts} highcharts/chart/resetzoombutton-theme/
1102
+ * Theming the button
1103
+ * @sample {highstock} highcharts/chart/resetzoombutton-theme/
1104
+ * Theming the button
1105
+ *
1106
+ * @type {Highcharts.SVGAttributes}
1107
+ * @since 2.2
1108
+ */
1109
+ theme: {
1110
+
1111
+ /**
1112
+ * The Z index for the reset zoom button. The default value
1113
+ * places it below the tooltip that has Z index 7.
1114
+ */
1115
+ zIndex: 6
1116
+ },
1117
+
1118
+ /**
1119
+ * The position of the button.
1120
+ *
1121
+ * @sample {highcharts} highcharts/chart/resetzoombutton-position/
1122
+ * Above the plot area
1123
+ * @sample {highstock} highcharts/chart/resetzoombutton-position/
1124
+ * Above the plot area
1125
+ * @sample {highmaps} highcharts/chart/resetzoombutton-position/
1126
+ * Above the plot area
1127
+ *
1128
+ * @type {Highcharts.AlignObject}
1129
+ * @since 2.2
1130
+ */
1131
+ position: {
1132
+
1133
+ /**
1134
+ * The horizontal alignment of the button.
1135
+ */
1136
+ align: 'right',
1137
+
1138
+ /**
1139
+ * The horizontal offset of the button.
1140
+ */
1141
+ x: -10,
1142
+
1143
+ /**
1144
+ * The vertical alignment of the button.
1145
+ *
1146
+ * @type {Highcharts.VerticalAlignType}
1147
+ * @default top
1148
+ * @apioption chart.resetZoomButton.position.verticalAlign
1149
+ */
1150
+
1151
+ /**
1152
+ * The vertical offset of the button.
1153
+ */
1154
+ y: 10
1155
+ }
1156
+ },
1157
+
1158
+ /**
1159
+ * The pixel width of the plot area border.
1160
+ *
1161
+ * @sample {highcharts} highcharts/chart/plotborderwidth/
1162
+ * 1px border
1163
+ * @sample {highstock} stock/chart/plotborder/
1164
+ * 2px border
1165
+ * @sample {highmaps} maps/chart/plotborder/
1166
+ * Plot border options
1167
+ *
1168
+ * @type {number}
1169
+ * @default 0
1170
+ * @apioption chart.plotBorderWidth
1171
+ */
1172
+
1173
+ /**
1174
+ * Whether to apply a drop shadow to the plot area. Requires that
1175
+ * plotBackgroundColor be set. The shadow can be an object configuration
1176
+ * containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
1177
+ *
1178
+ * @sample {highcharts} highcharts/chart/plotshadow/
1179
+ * Plot shadow
1180
+ * @sample {highstock} stock/chart/plotshadow/
1181
+ * Plot shadow
1182
+ * @sample {highmaps} maps/chart/plotborder/
1183
+ * Plot border options
1184
+ *
1185
+ * @type {boolean|Highcharts.CSSObject}
1186
+ * @default false
1187
+ * @apioption chart.plotShadow
1188
+ */
1189
+
1190
+ /**
1191
+ * When true, cartesian charts like line, spline, area and column are
1192
+ * transformed into the polar coordinate system. This produces _polar
1193
+ * charts_, also known as _radar charts_. Requires
1194
+ * `highcharts-more.js`.
1195
+ *
1196
+ * @sample {highcharts} highcharts/demo/polar/
1197
+ * Polar chart
1198
+ * @sample {highcharts} highcharts/demo/polar-wind-rose/
1199
+ * Wind rose, stacked polar column chart
1200
+ * @sample {highcharts} highcharts/demo/polar-spider/
1201
+ * Spider web chart
1202
+ * @sample {highcharts} highcharts/parallel-coordinates/polar/
1203
+ * Star plot, multivariate data in a polar chart
1204
+ *
1205
+ * @type {boolean}
1206
+ * @default false
1207
+ * @since 2.3.0
1208
+ * @product highcharts
1209
+ * @apioption chart.polar
1210
+ */
1211
+
1212
+ /**
1213
+ * Whether to reflow the chart to fit the width of the container div
1214
+ * on resizing the window.
1215
+ *
1216
+ * @sample {highcharts} highcharts/chart/reflow-true/
1217
+ * True by default
1218
+ * @sample {highcharts} highcharts/chart/reflow-false/
1219
+ * False
1220
+ * @sample {highstock} stock/chart/reflow-true/
1221
+ * True by default
1222
+ * @sample {highstock} stock/chart/reflow-false/
1223
+ * False
1224
+ * @sample {highmaps} maps/chart/reflow-true/
1225
+ * True by default
1226
+ * @sample {highmaps} maps/chart/reflow-false/
1227
+ * False
1228
+ *
1229
+ * @type {boolean}
1230
+ * @default true
1231
+ * @since 2.1
1232
+ * @apioption chart.reflow
1233
+ */
1234
+
1235
+ /**
1236
+ * The HTML element where the chart will be rendered. If it is a string,
1237
+ * the element by that id is used. The HTML element can also be passed
1238
+ * by direct reference, or as the first argument of the chart
1239
+ * constructor, in which case the option is not needed.
1240
+ *
1241
+ * @sample {highcharts} highcharts/chart/reflow-true/
1242
+ * String
1243
+ * @sample {highcharts} highcharts/chart/renderto-object/
1244
+ * Object reference
1245
+ * @sample {highcharts} highcharts/chart/renderto-jquery/
1246
+ * Object reference through jQuery
1247
+ * @sample {highstock} stock/chart/renderto-string/
1248
+ * String
1249
+ * @sample {highstock} stock/chart/renderto-object/
1250
+ * Object reference
1251
+ * @sample {highstock} stock/chart/renderto-jquery/
1252
+ * Object reference through jQuery
1253
+ *
1254
+ * @type {string|Highcharts.HTMLDOMElement}
1255
+ * @apioption chart.renderTo
1256
+ */
1257
+
1258
+ /**
1259
+ * The background color of the marker square when selecting (zooming
1260
+ * in on) an area of the chart.
1261
+ *
1262
+ * @see In styled mode, the selection marker fill is set with the
1263
+ * `.highcharts-selection-marker` class.
1264
+ *
1265
+ * @type {Highcharts.ColorString}
1266
+ * @default rgba(51,92,173,0.25)
1267
+ * @since 2.1.7
1268
+ * @apioption chart.selectionMarkerFill
1269
+ */
1270
+
1271
+ /**
1272
+ * Whether to apply a drop shadow to the outer chart area. Requires
1273
+ * that backgroundColor be set. The shadow can be an object
1274
+ * configuration containing `color`, `offsetX`, `offsetY`, `opacity` and
1275
+ * `width`.
1276
+ *
1277
+ * @sample {highcharts} highcharts/chart/shadow/
1278
+ * Shadow
1279
+ * @sample {highstock} stock/chart/shadow/
1280
+ * Shadow
1281
+ * @sample {highmaps} maps/chart/border/
1282
+ * Chart border and shadow
1283
+ *
1284
+ * @type {boolean|Highcharts.CSSObject}
1285
+ * @default false
1286
+ * @apioption chart.shadow
1287
+ */
1288
+
1289
+ /**
1290
+ * Whether to show the axes initially. This only applies to empty charts
1291
+ * where series are added dynamically, as axes are automatically added
1292
+ * to cartesian series.
1293
+ *
1294
+ * @sample {highcharts} highcharts/chart/showaxes-false/
1295
+ * False by default
1296
+ * @sample {highcharts} highcharts/chart/showaxes-true/
1297
+ * True
1298
+ *
1299
+ * @type {boolean}
1300
+ * @since 1.2.5
1301
+ * @product highcharts gantt
1302
+ * @apioption chart.showAxes
1303
+ */
1304
+
1305
+ /**
1306
+ * The space between the bottom edge of the chart and the content (plot
1307
+ * area, axis title and labels, title, subtitle or legend in top
1308
+ * position).
1309
+ *
1310
+ * @sample {highcharts} highcharts/chart/spacingbottom/
1311
+ * Spacing bottom set to 100
1312
+ * @sample {highstock} stock/chart/spacingbottom/
1313
+ * Spacing bottom set to 100
1314
+ * @sample {highmaps} maps/chart/spacing/
1315
+ * Spacing 100 all around
1316
+ *
1317
+ * @type {number}
1318
+ * @default 15
1319
+ * @since 2.1
1320
+ * @apioption chart.spacingBottom
1321
+ */
1322
+
1323
+ /**
1324
+ * The space between the left edge of the chart and the content (plot
1325
+ * area, axis title and labels, title, subtitle or legend in top
1326
+ * position).
1327
+ *
1328
+ * @sample {highcharts} highcharts/chart/spacingleft/
1329
+ * Spacing left set to 100
1330
+ * @sample {highstock} stock/chart/spacingleft/
1331
+ * Spacing left set to 100
1332
+ * @sample {highmaps} maps/chart/spacing/
1333
+ * Spacing 100 all around
1334
+ *
1335
+ * @type {number}
1336
+ * @default 10
1337
+ * @since 2.1
1338
+ * @apioption chart.spacingLeft
1339
+ */
1340
+
1341
+ /**
1342
+ * The space between the right edge of the chart and the content (plot
1343
+ * area, axis title and labels, title, subtitle or legend in top
1344
+ * position).
1345
+ *
1346
+ * @sample {highcharts} highcharts/chart/spacingright-100/
1347
+ * Spacing set to 100
1348
+ * @sample {highcharts} highcharts/chart/spacingright-legend/
1349
+ * Legend in right position with default spacing
1350
+ * @sample {highstock} stock/chart/spacingright/
1351
+ * Spacing set to 100
1352
+ * @sample {highmaps} maps/chart/spacing/
1353
+ * Spacing 100 all around
1354
+ *
1355
+ * @type {number}
1356
+ * @default 10
1357
+ * @since 2.1
1358
+ * @apioption chart.spacingRight
1359
+ */
1360
+
1361
+ /**
1362
+ * The space between the top edge of the chart and the content (plot
1363
+ * area, axis title and labels, title, subtitle or legend in top
1364
+ * position).
1365
+ *
1366
+ * @sample {highcharts} highcharts/chart/spacingtop-100/
1367
+ * A top spacing of 100
1368
+ * @sample {highcharts} highcharts/chart/spacingtop-10/
1369
+ * Floating chart title makes the plot area align to the default
1370
+ * spacingTop of 10.
1371
+ * @sample {highstock} stock/chart/spacingtop/
1372
+ * A top spacing of 100
1373
+ * @sample {highmaps} maps/chart/spacing/
1374
+ * Spacing 100 all around
1375
+ *
1376
+ * @type {number}
1377
+ * @default 10
1378
+ * @since 2.1
1379
+ * @apioption chart.spacingTop
1380
+ */
1381
+
1382
+ /**
1383
+ * Additional CSS styles to apply inline to the container `div`. Note
1384
+ * that since the default font styles are applied in the renderer, it
1385
+ * is ignorant of the individual chart options and must be set globally.
1386
+ *
1387
+ * @see In styled mode, general chart styles can be set with the
1388
+ * `.highcharts-root` class.
1389
+ * @sample {highcharts} highcharts/chart/style-serif-font/
1390
+ * Using a serif type font
1391
+ * @sample {highcharts} highcharts/css/em/
1392
+ * Styled mode with relative font sizes
1393
+ * @sample {highstock} stock/chart/style/
1394
+ * Using a serif type font
1395
+ * @sample {highmaps} maps/chart/style-serif-font/
1396
+ * Using a serif type font
1397
+ *
1398
+ * @type {Highcharts.CSSObject}
1399
+ * @default {"fontFamily": "\"Lucida Grande\", \"Lucida Sans Unicode\", Verdana, Arial, Helvetica, sans-serif","fontSize":"12px"}
1400
+ * @apioption chart.style
1401
+ */
1402
+
1403
+ /**
1404
+ * The default series type for the chart. Can be any of the chart types
1405
+ * listed under [plotOptions](#plotOptions) and [series](#series) or can
1406
+ * be a series provided by an additional module.
1407
+ *
1408
+ * In TypeScript this option has no effect in sense of typing and
1409
+ * instead the `type` option must always be set in the series.
1410
+ *
1411
+ * @sample {highcharts} highcharts/chart/type-bar/
1412
+ * Bar
1413
+ * @sample {highstock} stock/chart/type/
1414
+ * Areaspline
1415
+ * @sample {highmaps} maps/chart/type-mapline/
1416
+ * Mapline
1417
+ *
1418
+ * @type {string}
1419
+ * @default {highcharts} line
1420
+ * @default {highstock} line
1421
+ * @default {highmaps} map
1422
+ * @since 2.1.0
1423
+ * @apioption chart.type
1424
+ */
1425
+
1426
+ /**
1427
+ * Decides in what dimensions the user can zoom by dragging the mouse.
1428
+ * Can be one of `x`, `y` or `xy`.
1429
+ *
1430
+ * @see [panKey](#chart.panKey)
1431
+ *
1432
+ * @sample {highcharts} highcharts/chart/zoomtype-none/
1433
+ * None by default
1434
+ * @sample {highcharts} highcharts/chart/zoomtype-x/
1435
+ * X
1436
+ * @sample {highcharts} highcharts/chart/zoomtype-y/
1437
+ * Y
1438
+ * @sample {highcharts} highcharts/chart/zoomtype-xy/
1439
+ * Xy
1440
+ * @sample {highstock} stock/demo/basic-line/
1441
+ * None by default
1442
+ * @sample {highstock} stock/chart/zoomtype-x/
1443
+ * X
1444
+ * @sample {highstock} stock/chart/zoomtype-y/
1445
+ * Y
1446
+ * @sample {highstock} stock/chart/zoomtype-xy/
1447
+ * Xy
1448
+ *
1449
+ * @type {string}
1450
+ * @product highcharts highstock gantt
1451
+ * @validvalue ["x", "y", "xy"]
1452
+ * @apioption chart.zoomType
1453
+ */
1454
+
1455
+ /**
1456
+ * An explicit width for the chart. By default (when `null`) the width
1457
+ * is calculated from the offset width of the containing element.
1458
+ *
1459
+ * @sample {highcharts} highcharts/chart/width/
1460
+ * 800px wide
1461
+ * @sample {highstock} stock/chart/width/
1462
+ * 800px wide
1463
+ * @sample {highmaps} maps/chart/size/
1464
+ * Chart with explicit size
1465
+ *
1466
+ * @type {number|null}
1467
+ */
1468
+ width: null,
1469
+
1470
+ /**
1471
+ * An explicit height for the chart. If a _number_, the height is
1472
+ * given in pixels. If given a _percentage string_ (for example
1473
+ * `'56%'`), the height is given as the percentage of the actual chart
1474
+ * width. This allows for preserving the aspect ratio across responsive
1475
+ * sizes.
1476
+ *
1477
+ * By default (when `null`) the height is calculated from the offset
1478
+ * height of the containing element, or 400 pixels if the containing
1479
+ * element's height is 0.
1480
+ *
1481
+ * @sample {highcharts} highcharts/chart/height/
1482
+ * 500px height
1483
+ * @sample {highstock} stock/chart/height/
1484
+ * 300px height
1485
+ * @sample {highmaps} maps/chart/size/
1486
+ * Chart with explicit size
1487
+ * @sample highcharts/chart/height-percent/
1488
+ * Highcharts with percentage height
1489
+ *
1490
+ * @type {number|string|null}
1491
+ */
1492
+ height: null,
1493
+
1494
+ /**
1495
+ * The color of the outer chart border.
1496
+ *
1497
+ * @see In styled mode, the stroke is set with the
1498
+ * `.highcharts-background` class.
1499
+ *
1500
+ * @sample {highcharts} highcharts/chart/bordercolor/
1501
+ * Brown border
1502
+ * @sample {highstock} stock/chart/border/
1503
+ * Brown border
1504
+ * @sample {highmaps} maps/chart/border/
1505
+ * Border options
1506
+ *
1507
+ * @type {Highcharts.ColorString}
1508
+ */
1509
+ borderColor: '#335cad',
1510
+
1511
+ /**
1512
+ * The pixel width of the outer chart border.
1513
+ *
1514
+ * @see In styled mode, the stroke is set with the
1515
+ * `.highcharts-background` class.
1516
+ *
1517
+ * @sample {highcharts} highcharts/chart/borderwidth/
1518
+ * 5px border
1519
+ * @sample {highstock} stock/chart/border/
1520
+ * 2px border
1521
+ * @sample {highmaps} maps/chart/border/
1522
+ * Border options
1523
+ *
1524
+ * @type {number}
1525
+ * @default 0
1526
+ * @apioption chart.borderWidth
1527
+ */
1528
+
1529
+ /**
1530
+ * The background color or gradient for the outer chart area.
1531
+ *
1532
+ * @see In styled mode, the background is set with the
1533
+ * `.highcharts-background` class.
1534
+ *
1535
+ * @sample {highcharts} highcharts/chart/backgroundcolor-color/
1536
+ * Color
1537
+ * @sample {highcharts} highcharts/chart/backgroundcolor-gradient/
1538
+ * Gradient
1539
+ * @sample {highstock} stock/chart/backgroundcolor-color/
1540
+ * Color
1541
+ * @sample {highstock} stock/chart/backgroundcolor-gradient/
1542
+ * Gradient
1543
+ * @sample {highmaps} maps/chart/backgroundcolor-color/
1544
+ * Color
1545
+ * @sample {highmaps} maps/chart/backgroundcolor-gradient/
1546
+ * Gradient
1547
+ *
1548
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1549
+ */
1550
+ backgroundColor: '#ffffff',
1551
+
1552
+ /**
1553
+ * The background color or gradient for the plot area.
1554
+ *
1555
+ * @see In styled mode, the plot background is set with the
1556
+ * `.highcharts-plot-background` class.
1557
+ *
1558
+ * @sample {highcharts} highcharts/chart/plotbackgroundcolor-color/
1559
+ * Color
1560
+ * @sample {highcharts} highcharts/chart/plotbackgroundcolor-gradient/
1561
+ * Gradient
1562
+ * @sample {highstock} stock/chart/plotbackgroundcolor-color/
1563
+ * Color
1564
+ * @sample {highstock} stock/chart/plotbackgroundcolor-gradient/
1565
+ * Gradient
1566
+ * @sample {highmaps} maps/chart/plotbackgroundcolor-color/
1567
+ * Color
1568
+ * @sample {highmaps} maps/chart/plotbackgroundcolor-gradient/
1569
+ * Gradient
1570
+ *
1571
+ * @type {Highcharts.ColorString}
1572
+ * @apioption chart.plotBackgroundColor
1573
+ */
1574
+
1575
+ /**
1576
+ * The URL for an image to use as the plot background. To set an image
1577
+ * as the background for the entire chart, set a CSS background image
1578
+ * to the container element. Note that for the image to be applied to
1579
+ * exported charts, its URL needs to be accessible by the export server.
1580
+ *
1581
+ * @see In styled mode, a plot background image can be set with the
1582
+ * `.highcharts-plot-background` class and a [custom pattern](
1583
+ * https://www.highcharts.com/docs/chart-design-and-style/
1584
+ * gradients-shadows-and-patterns).
1585
+ *
1586
+ * @sample {highcharts} highcharts/chart/plotbackgroundimage/
1587
+ * Skies
1588
+ * @sample {highstock} stock/chart/plotbackgroundimage/
1589
+ * Skies
1590
+ *
1591
+ * @type {string}
1592
+ * @apioption chart.plotBackgroundImage
1593
+ */
1594
+
1595
+ /**
1596
+ * The color of the inner chart or plot area border.
1597
+ *
1598
+ * @see In styled mode, a plot border stroke can be set with the
1599
+ * `.highcharts-plot-border` class.
1600
+ *
1601
+ * @sample {highcharts} highcharts/chart/plotbordercolor/
1602
+ * Blue border
1603
+ * @sample {highstock} stock/chart/plotborder/
1604
+ * Blue border
1605
+ * @sample {highmaps} maps/chart/plotborder/
1606
+ * Plot border options
1607
+ *
1608
+ * @type {Highcharts.ColorString}
1609
+ */
1610
+ plotBorderColor: '#cccccc'
1611
+
1612
+ },
1613
+
1614
+ /**
1615
+ * The chart's main title.
1616
+ *
1617
+ * @sample {highmaps} maps/title/title/
1618
+ * Title options demonstrated
1619
+ */
1620
+ title: {
1621
+
1622
+ /**
1623
+ * When the title is floating, the plot area will not move to make space
1624
+ * for it.
1625
+ *
1626
+ * @sample {highcharts} highcharts/chart/zoomtype-none/
1627
+ * False by default
1628
+ * @sample {highcharts} highcharts/title/floating/
1629
+ * True - title on top of the plot area
1630
+ * @sample {highstock} stock/chart/title-floating/
1631
+ * True - title on top of the plot area
1632
+ *
1633
+ * @type {boolean}
1634
+ * @default false
1635
+ * @since 2.1
1636
+ * @apioption title.floating
1637
+ */
1638
+
1639
+ /**
1640
+ * CSS styles for the title. Use this for font styling, but use `align`,
1641
+ * `x` and `y` for text alignment.
1642
+ *
1643
+ * In styled mode, the title style is given in the `.highcharts-title`
1644
+ * class.
1645
+ *
1646
+ * @sample {highcharts} highcharts/title/style/
1647
+ * Custom color and weight
1648
+ * @sample {highstock} stock/chart/title-style/
1649
+ * Custom color and weight
1650
+ * @sample highcharts/css/titles/
1651
+ * Styled mode
1652
+ *
1653
+ * @type {Highcharts.CSSObject}
1654
+ * @default {highcharts|highmaps} { "color": "#333333", "fontSize": "18px" }
1655
+ * @default {highstock} { "color": "#333333", "fontSize": "16px" }
1656
+ * @apioption title.style
1657
+ */
1658
+
1659
+ /**
1660
+ * Whether to
1661
+ * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
1662
+ * to render the text.
1663
+ *
1664
+ * @type {boolean}
1665
+ * @default false
1666
+ * @apioption title.useHTML
1667
+ */
1668
+
1669
+ /**
1670
+ * The vertical alignment of the title. Can be one of `"top"`,
1671
+ * `"middle"` and `"bottom"`. When a value is given, the title behaves
1672
+ * as if [floating](#title.floating) were `true`.
1673
+ *
1674
+ * @sample {highcharts} highcharts/title/verticalalign/
1675
+ * Chart title in bottom right corner
1676
+ * @sample {highstock} stock/chart/title-verticalalign/
1677
+ * Chart title in bottom right corner
1678
+ *
1679
+ * @type {Highcharts.VerticalAlignType}
1680
+ * @since 2.1
1681
+ * @apioption title.verticalAlign
1682
+ */
1683
+
1684
+ /**
1685
+ * The x position of the title relative to the alignment within
1686
+ * `chart.spacingLeft` and `chart.spacingRight`.
1687
+ *
1688
+ * @sample {highcharts} highcharts/title/align/
1689
+ * Aligned to the plot area (x = 70px = margin left - spacing
1690
+ * left)
1691
+ * @sample {highstock} stock/chart/title-align/
1692
+ * Aligned to the plot area (x = 50px = margin left - spacing
1693
+ * left)
1694
+ *
1695
+ * @type {number}
1696
+ * @default 0
1697
+ * @since 2.0
1698
+ * @apioption title.x
1699
+ */
1700
+
1701
+ /**
1702
+ * The y position of the title relative to the alignment within
1703
+ * [chart.spacingTop](#chart.spacingTop) and [chart.spacingBottom](
1704
+ * #chart.spacingBottom). By default it depends on the font size.
1705
+ *
1706
+ * @sample {highcharts} highcharts/title/y/
1707
+ * Title inside the plot area
1708
+ * @sample {highstock} stock/chart/title-verticalalign/
1709
+ * Chart title in bottom right corner
1710
+ *
1711
+ * @type {number}
1712
+ * @since 2.0
1713
+ * @apioption title.y
1714
+ */
1715
+
1716
+ /**
1717
+ * The title of the chart. To disable the title, set the `text` to
1718
+ * `undefined`.
1719
+ *
1720
+ * @sample {highcharts} highcharts/title/text/
1721
+ * Custom title
1722
+ * @sample {highstock} stock/chart/title-text/
1723
+ * Custom title
1724
+ *
1725
+ * @default {highcharts|highmaps} Chart title
1726
+ * @default {highstock} undefined
1727
+ */
1728
+ text: 'Chart title',
1729
+
1730
+ /**
1731
+ * The horizontal alignment of the title. Can be one of "left", "center"
1732
+ * and "right".
1733
+ *
1734
+ * @sample {highcharts} highcharts/title/align/
1735
+ * Aligned to the plot area (x = 70px = margin left - spacing
1736
+ * left)
1737
+ * @sample {highstock} stock/chart/title-align/
1738
+ * Aligned to the plot area (x = 50px = margin left - spacing
1739
+ * left)
1740
+ *
1741
+ * @type {Highcharts.AlignType}
1742
+ * @since 2.0
1743
+ */
1744
+ align: 'center',
1745
+
1746
+ /**
1747
+ * The margin between the title and the plot area, or if a subtitle
1748
+ * is present, the margin between the subtitle and the plot area.
1749
+ *
1750
+ * @sample {highcharts} highcharts/title/margin-50/
1751
+ * A chart title margin of 50
1752
+ * @sample {highcharts} highcharts/title/margin-subtitle/
1753
+ * The same margin applied with a subtitle
1754
+ * @sample {highstock} stock/chart/title-margin/
1755
+ * A chart title margin of 50
1756
+ *
1757
+ * @since 2.1
1758
+ */
1759
+ margin: 15,
1760
+
1761
+ /**
1762
+ * Adjustment made to the title width, normally to reserve space for
1763
+ * the exporting burger menu.
1764
+ *
1765
+ * @sample highcharts/title/widthadjust/
1766
+ * Wider menu, greater padding
1767
+ *
1768
+ * @since 4.2.5
1769
+ */
1770
+ widthAdjust: -44
1771
+
1772
+ },
1773
+
1774
+ /**
1775
+ * The chart's subtitle. This can be used both to display a subtitle below
1776
+ * the main title, and to display random text anywhere in the chart. The
1777
+ * subtitle can be updated after chart initialization through the
1778
+ * `Chart.setTitle` method.
1779
+ *
1780
+ * @sample {highmaps} maps/title/subtitle/
1781
+ * Subtitle options demonstrated
1782
+ */
1783
+ subtitle: {
1784
+
1785
+ /**
1786
+ * When the subtitle is floating, the plot area will not move to make
1787
+ * space for it.
1788
+ *
1789
+ * @sample {highcharts} highcharts/subtitle/floating/
1790
+ * Floating title and subtitle
1791
+ * @sample {highstock} stock/chart/subtitle-footnote
1792
+ * Footnote floating at bottom right of plot area
1793
+ *
1794
+ * @type {boolean}
1795
+ * @default false
1796
+ * @since 2.1
1797
+ * @apioption subtitle.floating
1798
+ */
1799
+
1800
+ /**
1801
+ * CSS styles for the title.
1802
+ *
1803
+ * In styled mode, the subtitle style is given in the
1804
+ * `.highcharts-subtitle` class.
1805
+ *
1806
+ * @sample {highcharts} highcharts/subtitle/style/
1807
+ * Custom color and weight
1808
+ * @sample {highcharts} highcharts/css/titles/
1809
+ * Styled mode
1810
+ * @sample {highstock} stock/chart/subtitle-style
1811
+ * Custom color and weight
1812
+ * @sample {highstock} highcharts/css/titles/
1813
+ * Styled mode
1814
+ * @sample {highmaps} highcharts/css/titles/
1815
+ * Styled mode
1816
+ *
1817
+ * @type {Highcharts.CSSObject}
1818
+ * @default {"color": "#666666"}
1819
+ * @apioption subtitle.style
1820
+ */
1821
+
1822
+ /**
1823
+ * Whether to
1824
+ * [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
1825
+ * to render the text.
1826
+ *
1827
+ * @type {boolean}
1828
+ * @default false
1829
+ * @apioption subtitle.useHTML
1830
+ */
1831
+
1832
+ /**
1833
+ * The vertical alignment of the title. Can be one of "top", "middle"
1834
+ * and "bottom". When a value is given, the title behaves as floating.
1835
+ *
1836
+ * @sample {highcharts} highcharts/subtitle/verticalalign/
1837
+ * Footnote at the bottom right of plot area
1838
+ * @sample {highstock} stock/chart/subtitle-footnote
1839
+ * Footnote at the bottom right of plot area
1840
+ *
1841
+ * @type {Highcharts.VerticalAlignType}
1842
+ * @since 2.1
1843
+ * @apioption subtitle.verticalAlign
1844
+ */
1845
+
1846
+ /**
1847
+ * The x position of the subtitle relative to the alignment within
1848
+ * `chart.spacingLeft` and `chart.spacingRight`.
1849
+ *
1850
+ * @sample {highcharts} highcharts/subtitle/align/
1851
+ * Footnote at right of plot area
1852
+ * @sample {highstock} stock/chart/subtitle-footnote
1853
+ * Footnote at the bottom right of plot area
1854
+ *
1855
+ * @type {number}
1856
+ * @default 0
1857
+ * @since 2.0
1858
+ * @apioption subtitle.x
1859
+ */
1860
+
1861
+ /**
1862
+ * The y position of the subtitle relative to the alignment within
1863
+ * `chart.spacingTop` and `chart.spacingBottom`. By default the subtitle
1864
+ * is laid out below the title unless the title is floating.
1865
+ *
1866
+ * @sample {highcharts} highcharts/subtitle/verticalalign/
1867
+ * Footnote at the bottom right of plot area
1868
+ * @sample {highstock} stock/chart/subtitle-footnote
1869
+ * Footnote at the bottom right of plot area
1870
+ *
1871
+ * @type {number}
1872
+ * @since 2.0
1873
+ * @apioption subtitle.y
1874
+ */
1875
+
1876
+ /**
1877
+ * The subtitle of the chart.
1878
+ *
1879
+ * @sample {highcharts|highstock} highcharts/subtitle/text/
1880
+ * Custom subtitle
1881
+ * @sample {highcharts|highstock} highcharts/subtitle/text-formatted/
1882
+ * Formatted and linked text.
1883
+ */
1884
+ text: '',
1885
+
1886
+ /**
1887
+ * The horizontal alignment of the subtitle. Can be one of "left",
1888
+ * "center" and "right".
1889
+ *
1890
+ * @sample {highcharts} highcharts/subtitle/align/
1891
+ * Footnote at right of plot area
1892
+ * @sample {highstock} stock/chart/subtitle-footnote
1893
+ * Footnote at bottom right of plot area
1894
+ *
1895
+ * @type {Highcharts.AlignType}
1896
+ * @since 2.0
1897
+ */
1898
+ align: 'center',
1899
+
1900
+ /**
1901
+ * Adjustment made to the subtitle width, normally to reserve space
1902
+ * for the exporting burger menu.
1903
+ *
1904
+ * @see [title.widthAdjust](#title.widthAdjust)
1905
+ *
1906
+ * @sample highcharts/title/widthadjust/
1907
+ * Wider menu, greater padding
1908
+ *
1909
+ * @since 4.2.5
1910
+ */
1911
+ widthAdjust: -44
1912
+ },
1913
+
1914
+ /**
1915
+ * The plotOptions is a wrapper object for config objects for each series
1916
+ * type. The config objects for each series can also be overridden for
1917
+ * each series item as given in the series array.
1918
+ *
1919
+ * Configuration options for the series are given in three levels. Options
1920
+ * for all series in a chart are given in the [plotOptions.series](
1921
+ * #plotOptions.series) object. Then options for all series of a specific
1922
+ * type are given in the plotOptions of that type, for example
1923
+ * `plotOptions.line`. Next, options for one single series are given in
1924
+ * [the series array](#series).
1925
+ */
1926
+ plotOptions: {},
1927
+
1928
+ /**
1929
+ * HTML labels that can be positioned anywhere in the chart area.
1930
+ */
1931
+ labels: {
1932
+
1933
+ /**
1934
+ * An HTML label that can be positioned anywhere in the chart area.
1935
+ *
1936
+ * @type {Array<*>}
1937
+ * @apioption labels.items
1938
+ */
1939
+
1940
+ /**
1941
+ * Inner HTML or text for the label.
1942
+ *
1943
+ * @type {string}
1944
+ * @apioption labels.items.html
1945
+ */
1946
+
1947
+ /**
1948
+ * CSS styles for each label. To position the label, use left and top
1949
+ * like this:
1950
+ *
1951
+ * <pre>style: {
1952
+ * left: '100px',
1953
+ * top: '100px'
1954
+ * }</pre>
1955
+ *
1956
+ * @type {Highcharts.CSSObject}
1957
+ * @apioption labels.items.style
1958
+ */
1959
+
1960
+ /**
1961
+ * Shared CSS styles for all labels.
1962
+ *
1963
+ * @type {Highcharts.CSSObject}
1964
+ * @default {"color": "#333333", "position": "absolute"}
1965
+ */
1966
+ style: {
1967
+ /**
1968
+ * @ignore
1969
+ */
1970
+ position: 'absolute',
1971
+ /**
1972
+ * @ignore
1973
+ */
1974
+ color: '#333333'
1975
+ }
1976
+ },
1977
+
1978
+ /**
1979
+ * The legend is a box containing a symbol and name for each series
1980
+ * item or point item in the chart. Each series (or points in case
1981
+ * of pie charts) is represented by a symbol and its name in the legend.
1982
+ *
1983
+ * It is possible to override the symbol creator function and create
1984
+ * [custom legend symbols](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/studies/legend-custom-symbol/).
1985
+ *
1986
+ * @productdesc {highmaps}
1987
+ * A Highmaps legend by default contains one legend item per series, but if
1988
+ * a `colorAxis` is defined, the axis will be displayed in the legend.
1989
+ * Either as a gradient, or as multiple legend items for `dataClasses`.
1990
+ */
1991
+ legend: {
1992
+
1993
+ /**
1994
+ * The background color of the legend.
1995
+ *
1996
+ * @see In styled mode, the legend background fill can be applied with
1997
+ * the `.highcharts-legend-box` class.
1998
+ *
1999
+ * @sample {highcharts} highcharts/legend/backgroundcolor/
2000
+ * Yellowish background
2001
+ * @sample {highstock} stock/legend/align/
2002
+ * Various legend options
2003
+ * @sample {highmaps} maps/legend/border-background/
2004
+ * Border and background options
2005
+ *
2006
+ * @type {Highcharts.ColorString}
2007
+ * @apioption legend.backgroundColor
2008
+ */
2009
+
2010
+ /**
2011
+ * The width of the drawn border around the legend.
2012
+ *
2013
+ * @see In styled mode, the legend border stroke width can be applied
2014
+ * with the `.highcharts-legend-box` class.
2015
+ *
2016
+ * @sample {highcharts} highcharts/legend/borderwidth/
2017
+ * 2px border width
2018
+ * @sample {highstock} stock/legend/align/
2019
+ * Various legend options
2020
+ * @sample {highmaps} maps/legend/border-background/
2021
+ * Border and background options
2022
+ *
2023
+ * @type {number}
2024
+ * @default 0
2025
+ * @apioption legend.borderWidth
2026
+ */
2027
+
2028
+ /**
2029
+ * Enable or disable the legend. There is also a series-specific option,
2030
+ * [showInLegend](#plotOptions.series.showInLegend), that can hide the
2031
+ * series from the legend. In some series types this is `false` by
2032
+ * default, so it must set to `true` in order to show the legend for the
2033
+ * series.
2034
+ *
2035
+ * @sample {highcharts} highcharts/legend/enabled-false/ Legend disabled
2036
+ * @sample {highstock} stock/legend/align/ Various legend options
2037
+ * @sample {highmaps} maps/legend/enabled-false/ Legend disabled
2038
+ *
2039
+ * @default {highstock} false
2040
+ * @default {highmaps} true
2041
+ * @default {gantt} false
2042
+ */
2043
+ enabled: true,
2044
+
2045
+ /**
2046
+ * The horizontal alignment of the legend box within the chart area.
2047
+ * Valid values are `left`, `center` and `right`.
2048
+ *
2049
+ * In the case that the legend is aligned in a corner position, the
2050
+ * `layout` option will determine whether to place it above/below
2051
+ * or on the side of the plot area.
2052
+ *
2053
+ * @sample {highcharts} highcharts/legend/align/
2054
+ * Legend at the right of the chart
2055
+ * @sample {highstock} stock/legend/align/
2056
+ * Various legend options
2057
+ * @sample {highmaps} maps/legend/alignment/
2058
+ * Legend alignment
2059
+ *
2060
+ * @type {Highcharts.AlignType}
2061
+ * @since 2.0
2062
+ */
2063
+ align: 'center',
2064
+
2065
+ /**
2066
+ * If the [layout](legend.layout) is `horizontal` and the legend items
2067
+ * span over two lines or more, whether to align the items into vertical
2068
+ * columns. Setting this to `false` makes room for more items, but will
2069
+ * look more messy.
2070
+ *
2071
+ * @since 6.1.0
2072
+ */
2073
+ alignColumns: true,
2074
+
2075
+ /**
2076
+ * When the legend is floating, the plot area ignores it and is allowed
2077
+ * to be placed below it.
2078
+ *
2079
+ * @sample {highcharts} highcharts/legend/floating-false/
2080
+ * False by default
2081
+ * @sample {highcharts} highcharts/legend/floating-true/
2082
+ * True
2083
+ * @sample {highmaps} maps/legend/alignment/
2084
+ * Floating legend
2085
+ *
2086
+ * @type {boolean}
2087
+ * @default false
2088
+ * @since 2.1
2089
+ * @apioption legend.floating
2090
+ */
2091
+
2092
+ /**
2093
+ * The layout of the legend items. Can be one of `horizontal` or
2094
+ * `vertical` or `proximate`. When `proximate`, the legend items will be
2095
+ * placed as close as possible to the graphs they're representing,
2096
+ * except in inverted charts or when the legend position doesn't allow
2097
+ * it.
2098
+ *
2099
+ * @sample {highcharts} highcharts/legend/layout-horizontal/
2100
+ * Horizontal by default
2101
+ * @sample {highcharts} highcharts/legend/layout-vertical/
2102
+ * Vertical
2103
+ * @sample highcharts/legend/layout-proximate
2104
+ * Labels proximate to the data
2105
+ * @sample {highstock} stock/legend/layout-horizontal/
2106
+ * Horizontal by default
2107
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2108
+ * Vertical with data classes
2109
+ * @sample {highmaps} maps/legend/layout-vertical/
2110
+ * Vertical with color axis gradient
2111
+ *
2112
+ * @validvalue ["horizontal", "vertical", "proximate"]
2113
+ */
2114
+ layout: 'horizontal',
2115
+
2116
+ /**
2117
+ * In a legend with horizontal layout, the itemDistance defines the
2118
+ * pixel distance between each item.
2119
+ *
2120
+ * @sample {highcharts} highcharts/legend/layout-horizontal/
2121
+ * 50px item distance
2122
+ * @sample {highstock} highcharts/legend/layout-horizontal/
2123
+ * 50px item distance
2124
+ *
2125
+ * @type {number}
2126
+ * @default {highcharts} 20
2127
+ * @default {highstock} 20
2128
+ * @default {highmaps} 8
2129
+ * @since 3.0.3
2130
+ * @apioption legend.itemDistance
2131
+ */
2132
+
2133
+ /**
2134
+ * The pixel bottom margin for each legend item.
2135
+ *
2136
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
2137
+ * Padding and item margins demonstrated
2138
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2139
+ * Padding and item margins demonstrated
2140
+ *
2141
+ * @type {number}
2142
+ * @default 0
2143
+ * @since 2.2.0
2144
+ * @apioption legend.itemMarginBottom
2145
+ */
2146
+
2147
+ /**
2148
+ * The pixel top margin for each legend item.
2149
+ *
2150
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
2151
+ * Padding and item margins demonstrated
2152
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2153
+ * Padding and item margins demonstrated
2154
+ *
2155
+ * @type {number}
2156
+ * @default 0
2157
+ * @since 2.2.0
2158
+ * @apioption legend.itemMarginTop
2159
+ */
2160
+
2161
+ /**
2162
+ * The width for each legend item. By default the items are laid out
2163
+ * successively. In a [horizontal layout](legend.layout), if the items
2164
+ * are laid out across two rows or more, they will be vertically aligned
2165
+ * depending on the [legend.alignColumns](legend.alignColumns) option.
2166
+ *
2167
+ * @sample {highcharts} highcharts/legend/itemwidth-default/
2168
+ * Undefined by default
2169
+ * @sample {highcharts} highcharts/legend/itemwidth-80/
2170
+ * 80 for aligned legend items
2171
+ *
2172
+ * @type {number}
2173
+ * @since 2.0
2174
+ * @apioption legend.itemWidth
2175
+ */
2176
+
2177
+ /**
2178
+ * A [format string](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting)
2179
+ * for each legend label. Available variables relates to properties on
2180
+ * the series, or the point in case of pies.
2181
+ *
2182
+ * @type {string}
2183
+ * @default {name}
2184
+ * @since 1.3
2185
+ * @apioption legend.labelFormat
2186
+ */
2187
+
2188
+ /**
2189
+ * Callback function to format each of the series' labels. The `this`
2190
+ * keyword refers to the series object, or the point object in case
2191
+ * of pie charts. By default the series or point name is printed.
2192
+ *
2193
+ * @productdesc {highmaps}
2194
+ * In Highmaps the context can also be a data class in case of a
2195
+ * `colorAxis`.
2196
+ *
2197
+ * @sample {highcharts} highcharts/legend/labelformatter/
2198
+ * Add text
2199
+ * @sample {highmaps} maps/legend/labelformatter/
2200
+ * Data classes with label formatter
2201
+ *
2202
+ * @context {Highcharts.Series|Highcharts.Point}
2203
+ */
2204
+ labelFormatter: function () {
2205
+ return this.name;
2206
+ },
2207
+
2208
+ /**
2209
+ * Line height for the legend items. Deprecated as of 2.1\. Instead,
2210
+ * the line height for each item can be set using itemStyle.lineHeight,
2211
+ * and the padding between items using `itemMarginTop` and
2212
+ * `itemMarginBottom`.
2213
+ *
2214
+ * @sample {highcharts} highcharts/legend/lineheight/
2215
+ * Setting padding
2216
+ *
2217
+ * @deprecated
2218
+ *
2219
+ * @type {number}
2220
+ * @default 16
2221
+ * @since 2.0
2222
+ * @product highcharts gantt
2223
+ * @apioption legend.lineHeight
2224
+ */
2225
+
2226
+ /**
2227
+ * If the plot area sized is calculated automatically and the legend
2228
+ * is not floating, the legend margin is the space between the legend
2229
+ * and the axis labels or plot area.
2230
+ *
2231
+ * @sample {highcharts} highcharts/legend/margin-default/
2232
+ * 12 pixels by default
2233
+ * @sample {highcharts} highcharts/legend/margin-30/
2234
+ * 30 pixels
2235
+ *
2236
+ * @type {number}
2237
+ * @default 12
2238
+ * @since 2.1
2239
+ * @apioption legend.margin
2240
+ */
2241
+
2242
+ /**
2243
+ * Maximum pixel height for the legend. When the maximum height is
2244
+ * extended, navigation will show.
2245
+ *
2246
+ * @type {number}
2247
+ * @since 2.3.0
2248
+ * @apioption legend.maxHeight
2249
+ */
2250
+
2251
+ /**
2252
+ * The color of the drawn border around the legend.
2253
+ *
2254
+ * @see In styled mode, the legend border stroke can be applied with the
2255
+ * `.highcharts-legend-box` class.
2256
+ *
2257
+ * @sample {highcharts} highcharts/legend/bordercolor/
2258
+ * Brown border
2259
+ * @sample {highstock} stock/legend/align/
2260
+ * Various legend options
2261
+ * @sample {highmaps} maps/legend/border-background/
2262
+ * Border and background options
2263
+ *
2264
+ * @type {Highcharts.ColorString}
2265
+ */
2266
+ borderColor: '#999999',
2267
+
2268
+ /**
2269
+ * The border corner radius of the legend.
2270
+ *
2271
+ * @sample {highcharts} highcharts/legend/borderradius-default/
2272
+ * Square by default
2273
+ * @sample {highcharts} highcharts/legend/borderradius-round/
2274
+ * 5px rounded
2275
+ * @sample {highmaps} maps/legend/border-background/
2276
+ * Border and background options
2277
+ */
2278
+ borderRadius: 0,
2279
+
2280
+ /**
2281
+ * Options for the paging or navigation appearing when the legend
2282
+ * is overflown. Navigation works well on screen, but not in static
2283
+ * exported images. One way of working around that is to
2284
+ * [increase the chart height in
2285
+ * export](https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/legend/navigation-enabled-false/).
2286
+ */
2287
+ navigation: {
2288
+
2289
+ /**
2290
+ * How to animate the pages when navigating up or down. A value of
2291
+ * `true` applies the default navigation given in the
2292
+ * `chart.animation` option. Additional options can be given as an
2293
+ * object containing values for easing and duration.
2294
+ *
2295
+ * @sample {highcharts} highcharts/legend/navigation/
2296
+ * Legend page navigation demonstrated
2297
+ * @sample {highstock} highcharts/legend/navigation/
2298
+ * Legend page navigation demonstrated
2299
+ *
2300
+ * @type {boolean|Highcharts.AnimationOptionsObject}
2301
+ * @default true
2302
+ * @since 2.2.4
2303
+ * @apioption legend.navigation.animation
2304
+ */
2305
+
2306
+ /**
2307
+ * The pixel size of the up and down arrows in the legend paging
2308
+ * navigation.
2309
+ *
2310
+ * @sample {highcharts} highcharts/legend/navigation/
2311
+ * Legend page navigation demonstrated
2312
+ * @sample {highstock} highcharts/legend/navigation/
2313
+ * Legend page navigation demonstrated
2314
+ *
2315
+ * @type {number}
2316
+ * @default 12
2317
+ * @since 2.2.4
2318
+ * @apioption legend.navigation.arrowSize
2319
+ */
2320
+
2321
+ /**
2322
+ * Whether to enable the legend navigation. In most cases, disabling
2323
+ * the navigation results in an unwanted overflow.
2324
+ *
2325
+ * See also the [adapt chart to legend](
2326
+ * https://www.highcharts.com/products/plugin-registry/single/8/Adapt-Chart-To-Legend)
2327
+ * plugin for a solution to extend the chart height to make room for
2328
+ * the legend, optionally in exported charts only.
2329
+ *
2330
+ * @type {boolean}
2331
+ * @default true
2332
+ * @since 4.2.4
2333
+ * @apioption legend.navigation.enabled
2334
+ */
2335
+
2336
+ /**
2337
+ * Text styles for the legend page navigation.
2338
+ *
2339
+ * @see In styled mode, the navigation items are styled with the
2340
+ * `.highcharts-legend-navigation` class.
2341
+ *
2342
+ * @sample {highcharts} highcharts/legend/navigation/
2343
+ * Legend page navigation demonstrated
2344
+ * @sample {highstock} highcharts/legend/navigation/
2345
+ * Legend page navigation demonstrated
2346
+ *
2347
+ * @type {Highcharts.CSSObject}
2348
+ * @since 2.2.4
2349
+ * @apioption legend.navigation.style
2350
+ */
2351
+
2352
+ /**
2353
+ * The color for the active up or down arrow in the legend page
2354
+ * navigation.
2355
+ *
2356
+ * @see In styled mode, the active arrow be styled with the
2357
+ * `.highcharts-legend-nav-active` class.
2358
+ *
2359
+ * @sample {highcharts} highcharts/legend/navigation/
2360
+ * Legend page navigation demonstrated
2361
+ * @sample {highstock} highcharts/legend/navigation/
2362
+ * Legend page navigation demonstrated
2363
+ *
2364
+ * @type {Highcharts.ColorString}
2365
+ * @since 2.2.4
2366
+ */
2367
+ activeColor: '#003399',
2368
+
2369
+ /**
2370
+ * The color of the inactive up or down arrow in the legend page
2371
+ * navigation. .
2372
+ *
2373
+ * @see In styled mode, the inactive arrow be styled with the
2374
+ * `.highcharts-legend-nav-inactive` class.
2375
+ *
2376
+ * @sample {highcharts} highcharts/legend/navigation/
2377
+ * Legend page navigation demonstrated
2378
+ * @sample {highstock} highcharts/legend/navigation/
2379
+ * Legend page navigation demonstrated
2380
+ *
2381
+ * @type {Highcharts.ColorString}
2382
+ * @since 2.2.4
2383
+ */
2384
+ inactiveColor: '#cccccc'
2385
+ },
2386
+
2387
+ /**
2388
+ * The inner padding of the legend box.
2389
+ *
2390
+ * @sample {highcharts|highstock} highcharts/legend/padding-itemmargin/
2391
+ * Padding and item margins demonstrated
2392
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2393
+ * Padding and item margins demonstrated
2394
+ *
2395
+ * @type {number}
2396
+ * @default 8
2397
+ * @since 2.2.0
2398
+ * @apioption legend.padding
2399
+ */
2400
+
2401
+ /**
2402
+ * Whether to reverse the order of the legend items compared to the
2403
+ * order of the series or points as defined in the configuration object.
2404
+ *
2405
+ * @see [yAxis.reversedStacks](#yAxis.reversedStacks),
2406
+ * [series.legendIndex](#series.legendIndex)
2407
+ *
2408
+ * @sample {highcharts} highcharts/legend/reversed/
2409
+ * Stacked bar with reversed legend
2410
+ *
2411
+ * @type {boolean}
2412
+ * @default false
2413
+ * @since 1.2.5
2414
+ * @apioption legend.reversed
2415
+ */
2416
+
2417
+ /**
2418
+ * Whether to show the symbol on the right side of the text rather than
2419
+ * the left side. This is common in Arabic and Hebraic.
2420
+ *
2421
+ * @sample {highcharts} highcharts/legend/rtl/
2422
+ * Symbol to the right
2423
+ *
2424
+ * @type {boolean}
2425
+ * @default false
2426
+ * @since 2.2
2427
+ * @apioption legend.rtl
2428
+ */
2429
+
2430
+ /**
2431
+ * CSS styles for the legend area. In the 1.x versions the position
2432
+ * of the legend area was determined by CSS. In 2.x, the position is
2433
+ * determined by properties like `align`, `verticalAlign`, `x` and `y`,
2434
+ * but the styles are still parsed for backwards compatibility.
2435
+ *
2436
+ * @deprecated
2437
+ *
2438
+ * @type {Highcharts.CSSObject}
2439
+ * @product highcharts highstock
2440
+ * @apioption legend.style
2441
+ */
2442
+
2443
+ /**
2444
+ * CSS styles for each legend item. Only a subset of CSS is supported,
2445
+ * notably those options related to text. The default `textOverflow`
2446
+ * property makes long texts truncate. Set it to `undefined` to wrap
2447
+ * text instead. A `width` property can be added to control the text
2448
+ * width.
2449
+ *
2450
+ * @see In styled mode, the legend items can be styled with the
2451
+ * `.highcharts-legend-item` class.
2452
+ *
2453
+ * @sample {highcharts} highcharts/legend/itemstyle/
2454
+ * Bold black text
2455
+ * @sample {highmaps} maps/legend/itemstyle/
2456
+ * Item text styles
2457
+ *
2458
+ * @type {Highcharts.CSSObject}
2459
+ * @default {"color": "#333333", "cursor": "pointer", "fontSize": "12px", "fontWeight": "bold", "textOverflow": "ellipsis"}
2460
+ */
2461
+ itemStyle: {
2462
+ /**
2463
+ * @ignore
2464
+ */
2465
+ color: '#333333',
2466
+ /**
2467
+ * @ignore
2468
+ */
2469
+ cursor: 'pointer',
2470
+ /**
2471
+ * @ignore
2472
+ */
2473
+ fontSize: '12px',
2474
+ /**
2475
+ * @ignore
2476
+ */
2477
+ fontWeight: 'bold',
2478
+ /**
2479
+ * @ignore
2480
+ */
2481
+ textOverflow: 'ellipsis'
2482
+ },
2483
+
2484
+ /**
2485
+ * CSS styles for each legend item in hover mode. Only a subset of
2486
+ * CSS is supported, notably those options related to text. Properties
2487
+ * are inherited from `style` unless overridden here.
2488
+ *
2489
+ * @see In styled mode, the hovered legend items can be styled with
2490
+ * the `.highcharts-legend-item:hover` pesudo-class.
2491
+ *
2492
+ * @sample {highcharts} highcharts/legend/itemhoverstyle/
2493
+ * Red on hover
2494
+ * @sample {highmaps} maps/legend/itemstyle/
2495
+ * Item text styles
2496
+ *
2497
+ * @type {Highcharts.CSSObject}
2498
+ * @default {"color": "#000000"}
2499
+ */
2500
+ itemHoverStyle: {
2501
+ /**
2502
+ * @ignore
2503
+ */
2504
+ color: '#000000'
2505
+ },
2506
+
2507
+ /**
2508
+ * CSS styles for each legend item when the corresponding series or
2509
+ * point is hidden. Only a subset of CSS is supported, notably those
2510
+ * options related to text. Properties are inherited from `style`
2511
+ * unless overridden here.
2512
+ *
2513
+ * @see In styled mode, the hidden legend items can be styled with
2514
+ * the `.highcharts-legend-item-hidden` class.
2515
+ *
2516
+ * @sample {highcharts} highcharts/legend/itemhiddenstyle/
2517
+ * Darker gray color
2518
+ *
2519
+ * @type {Highcharts.CSSObject}
2520
+ * @default {"color": "#cccccc"}
2521
+ */
2522
+ itemHiddenStyle: {
2523
+ /**
2524
+ * @ignore
2525
+ */
2526
+ color: '#cccccc'
2527
+ },
2528
+
2529
+ /**
2530
+ * Whether to apply a drop shadow to the legend. A `backgroundColor`
2531
+ * also needs to be applied for this to take effect. The shadow can be
2532
+ * an object configuration containing `color`, `offsetX`, `offsetY`,
2533
+ * `opacity` and `width`.
2534
+ *
2535
+ * @sample {highcharts} highcharts/legend/shadow/
2536
+ * White background and drop shadow
2537
+ * @sample {highstock} stock/legend/align/
2538
+ * Various legend options
2539
+ * @sample {highmaps} maps/legend/border-background/
2540
+ * Border and background options
2541
+ *
2542
+ * @type {boolean|Highcharts.CSSObject}
2543
+ */
2544
+ shadow: false,
2545
+
2546
+ /**
2547
+ * Default styling for the checkbox next to a legend item when
2548
+ * `showCheckbox` is true.
2549
+ *
2550
+ * @type {Highcharts.CSSObject}
2551
+ * @default {"width": "13px", "height": "13px", "position":"absolute"}
2552
+ */
2553
+ itemCheckboxStyle: {
2554
+ /**
2555
+ * @ignore
2556
+ */
2557
+ position: 'absolute',
2558
+ /**
2559
+ * @ignore
2560
+ */
2561
+ width: '13px', // for IE precision
2562
+ /**
2563
+ * @ignore
2564
+ */
2565
+ height: '13px'
2566
+ },
2567
+ // itemWidth: undefined,
2568
+
2569
+ /**
2570
+ * When this is true, the legend symbol width will be the same as
2571
+ * the symbol height, which in turn defaults to the font size of the
2572
+ * legend items.
2573
+ *
2574
+ * @since 5.0.0
2575
+ */
2576
+ squareSymbol: true,
2577
+
2578
+ /**
2579
+ * The pixel height of the symbol for series types that use a rectangle
2580
+ * in the legend. Defaults to the font size of legend items.
2581
+ *
2582
+ * @productdesc {highmaps}
2583
+ * In Highmaps, when the symbol is the gradient of a vertical color
2584
+ * axis, the height defaults to 200.
2585
+ *
2586
+ * @sample {highmaps} maps/legend/layout-vertical-sized/
2587
+ * Sized vertical gradient
2588
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2589
+ * No distance between data classes
2590
+ *
2591
+ * @type {number}
2592
+ * @since 3.0.8
2593
+ * @apioption legend.symbolHeight
2594
+ */
2595
+
2596
+ /**
2597
+ * The border radius of the symbol for series types that use a rectangle
2598
+ * in the legend. Defaults to half the `symbolHeight`.
2599
+ *
2600
+ * @sample {highcharts} highcharts/legend/symbolradius/
2601
+ * Round symbols
2602
+ * @sample {highstock} highcharts/legend/symbolradius/
2603
+ * Round symbols
2604
+ * @sample {highmaps} highcharts/legend/symbolradius/
2605
+ * Round symbols
2606
+ *
2607
+ * @type {number}
2608
+ * @since 3.0.8
2609
+ * @apioption legend.symbolRadius
2610
+ */
2611
+
2612
+ /**
2613
+ * The pixel width of the legend item symbol. When the `squareSymbol`
2614
+ * option is set, this defaults to the `symbolHeight`, otherwise 16.
2615
+ *
2616
+ * @productdesc {highmaps}
2617
+ * In Highmaps, when the symbol is the gradient of a horizontal color
2618
+ * axis, the width defaults to 200.
2619
+ *
2620
+ * @sample {highcharts} highcharts/legend/symbolwidth/
2621
+ * Greater symbol width and padding
2622
+ * @sample {highmaps} maps/legend/padding-itemmargin/
2623
+ * Padding and item margins demonstrated
2624
+ * @sample {highmaps} maps/legend/layout-vertical-sized/
2625
+ * Sized vertical gradient
2626
+ *
2627
+ * @type {number}
2628
+ * @apioption legend.symbolWidth
2629
+ */
2630
+
2631
+ /**
2632
+ * Whether to [use HTML](https://www.highcharts.com/docs/chart-concepts/labels-and-string-formatting#html)
2633
+ * to render the legend item texts.
2634
+ *
2635
+ * Prior to 4.1.7, when using HTML, [legend.navigation](
2636
+ * #legend.navigation) was disabled.
2637
+ *
2638
+ * @type {boolean}
2639
+ * @default false
2640
+ * @apioption legend.useHTML
2641
+ */
2642
+
2643
+ /**
2644
+ * The width of the legend box. If a number is set, it translates to
2645
+ * pixels. Since v7.0.2 it allows setting a percent string of the full
2646
+ * chart width, for example `40%`.
2647
+ *
2648
+ * Defaults to the full chart width from legends below or above the
2649
+ * chart, half the chart width for legends to the left and right.
2650
+ *
2651
+ * @sample {highcharts} highcharts/legend/width/
2652
+ * Aligned to the plot area
2653
+ * @sample {highcharts} highcharts/legend/width-percent/
2654
+ * A percent of the chart width
2655
+ *
2656
+ * @type {number|string}
2657
+ * @since 2.0
2658
+ * @apioption legend.width
2659
+ */
2660
+
2661
+ /**
2662
+ * The pixel padding between the legend item symbol and the legend
2663
+ * item text.
2664
+ *
2665
+ * @sample {highcharts} highcharts/legend/symbolpadding/
2666
+ * Greater symbol width and padding
2667
+ */
2668
+ symbolPadding: 5,
2669
+
2670
+ /**
2671
+ * The vertical alignment of the legend box. Can be one of `top`,
2672
+ * `middle` or `bottom`. Vertical position can be further determined
2673
+ * by the `y` option.
2674
+ *
2675
+ * In the case that the legend is aligned in a corner position, the
2676
+ * `layout` option will determine whether to place it above/below
2677
+ * or on the side of the plot area.
2678
+ *
2679
+ * When the [layout](#legend.layout) option is `proximate`, the
2680
+ * `verticalAlign` option doesn't apply.
2681
+ *
2682
+ * @sample {highcharts} highcharts/legend/verticalalign/
2683
+ * Legend 100px from the top of the chart
2684
+ * @sample {highstock} stock/legend/align/
2685
+ * Various legend options
2686
+ * @sample {highmaps} maps/legend/alignment/
2687
+ * Legend alignment
2688
+ *
2689
+ * @type {Highcharts.VerticalAlignType}
2690
+ * @since 2.0
2691
+ */
2692
+ verticalAlign: 'bottom',
2693
+
2694
+ // width: undefined,
2695
+
2696
+ /**
2697
+ * The x offset of the legend relative to its horizontal alignment
2698
+ * `align` within chart.spacingLeft and chart.spacingRight. Negative
2699
+ * x moves it to the left, positive x moves it to the right.
2700
+ *
2701
+ * @sample {highcharts} highcharts/legend/width/
2702
+ * Aligned to the plot area
2703
+ *
2704
+ * @since 2.0
2705
+ */
2706
+ x: 0,
2707
+
2708
+ /**
2709
+ * The vertical offset of the legend relative to it's vertical alignment
2710
+ * `verticalAlign` within chart.spacingTop and chart.spacingBottom.
2711
+ * Negative y moves it up, positive y moves it down.
2712
+ *
2713
+ * @sample {highcharts} highcharts/legend/verticalalign/
2714
+ * Legend 100px from the top of the chart
2715
+ * @sample {highstock} stock/legend/align/
2716
+ * Various legend options
2717
+ * @sample {highmaps} maps/legend/alignment/
2718
+ * Legend alignment
2719
+ *
2720
+ * @since 2.0
2721
+ */
2722
+ y: 0,
2723
+
2724
+ /**
2725
+ * A title to be added on top of the legend.
2726
+ *
2727
+ * @sample {highcharts} highcharts/legend/title/
2728
+ * Legend title
2729
+ * @sample {highmaps} maps/legend/alignment/
2730
+ * Legend with title
2731
+ *
2732
+ * @since 3.0
2733
+ */
2734
+ title: {
2735
+ /**
2736
+ * A text or HTML string for the title.
2737
+ *
2738
+ * @type {string}
2739
+ * @since 3.0
2740
+ * @apioption legend.title.text
2741
+ */
2742
+
2743
+ /**
2744
+ * Generic CSS styles for the legend title.
2745
+ *
2746
+ * @see In styled mode, the legend title is styled with the
2747
+ * `.highcharts-legend-title` class.
2748
+ *
2749
+ * @type {Highcharts.CSSObject}
2750
+ * @default {"fontWeight": "bold"}
2751
+ * @since 3.0
2752
+ */
2753
+ style: {
2754
+ /**
2755
+ * @ignore
2756
+ */
2757
+ fontWeight: 'bold'
2758
+ }
2759
+ }
2760
+ },
2761
+
2762
+
2763
+ /**
2764
+ * The loading options control the appearance of the loading screen
2765
+ * that covers the plot area on chart operations. This screen only
2766
+ * appears after an explicit call to `chart.showLoading()`. It is a
2767
+ * utility for developers to communicate to the end user that something
2768
+ * is going on, for example while retrieving new data via an XHR connection.
2769
+ * The "Loading..." text itself is not part of this configuration
2770
+ * object, but part of the `lang` object.
2771
+ */
2772
+ loading: {
2773
+
2774
+ /**
2775
+ * The duration in milliseconds of the fade out effect.
2776
+ *
2777
+ * @sample highcharts/loading/hideduration/
2778
+ * Fade in and out over a second
2779
+ *
2780
+ * @type {number}
2781
+ * @default 100
2782
+ * @since 1.2.0
2783
+ * @apioption loading.hideDuration
2784
+ */
2785
+
2786
+ /**
2787
+ * The duration in milliseconds of the fade in effect.
2788
+ *
2789
+ * @sample highcharts/loading/hideduration/
2790
+ * Fade in and out over a second
2791
+ *
2792
+ * @type {number}
2793
+ * @default 100
2794
+ * @since 1.2.0
2795
+ * @apioption loading.showDuration
2796
+ */
2797
+
2798
+ /**
2799
+ * CSS styles for the loading label `span`.
2800
+ *
2801
+ * @see In styled mode, the loading label is styled with the
2802
+ * `.highcharts-loading-inner` class.
2803
+ *
2804
+ * @sample {highcharts|highmaps} highcharts/loading/labelstyle/
2805
+ * Vertically centered
2806
+ * @sample {highstock} stock/loading/general/
2807
+ * Label styles
2808
+ *
2809
+ * @type {Highcharts.CSSObject}
2810
+ * @default {"fontWeight": "bold", "position": "relative", "top": "45%"}
2811
+ * @since 1.2.0
2812
+ */
2813
+ labelStyle: {
2814
+ /**
2815
+ * @ignore
2816
+ */
2817
+ fontWeight: 'bold',
2818
+ /**
2819
+ * @ignore
2820
+ */
2821
+ position: 'relative',
2822
+ /**
2823
+ * @ignore
2824
+ */
2825
+ top: '45%'
2826
+ },
2827
+
2828
+ /**
2829
+ * CSS styles for the loading screen that covers the plot area.
2830
+ *
2831
+ * In styled mode, the loading label is styled with the
2832
+ * `.highcharts-loading` class.
2833
+ *
2834
+ * @sample {highcharts|highmaps} highcharts/loading/style/
2835
+ * Gray plot area, white text
2836
+ * @sample {highstock} stock/loading/general/
2837
+ * Gray plot area, white text
2838
+ *
2839
+ * @type {Highcharts.CSSObject}
2840
+ * @default {"position": "absolute", "backgroundColor": "#ffffff", "opacity": 0.5, "textAlign": "center"}
2841
+ * @since 1.2.0
2842
+ */
2843
+ style: {
2844
+ /**
2845
+ * @ignore
2846
+ */
2847
+ position: 'absolute',
2848
+ /**
2849
+ * @ignore
2850
+ */
2851
+ backgroundColor: '#ffffff',
2852
+ /**
2853
+ * @ignore
2854
+ */
2855
+ opacity: 0.5,
2856
+ /**
2857
+ * @ignore
2858
+ */
2859
+ textAlign: 'center'
2860
+ }
2861
+ },
2862
+
2863
+
2864
+ /**
2865
+ * Options for the tooltip that appears when the user hovers over a
2866
+ * series or point.
2867
+ */
2868
+ tooltip: {
2869
+
2870
+
2871
+ /**
2872
+ * The color of the tooltip border. When `undefined`, the border takes
2873
+ * the color of the corresponding series or point.
2874
+ *
2875
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
2876
+ * Follow series by default
2877
+ * @sample {highcharts} highcharts/tooltip/bordercolor-black/
2878
+ * Black border
2879
+ * @sample {highstock} stock/tooltip/general/
2880
+ * Styled tooltip
2881
+ * @sample {highmaps} maps/tooltip/background-border/
2882
+ * Background and border demo
2883
+ *
2884
+ * @type {Highcharts.ColorString}
2885
+ * @apioption tooltip.borderColor
2886
+ */
2887
+
2888
+ /**
2889
+ * Since 4.1, the crosshair definitions are moved to the Axis object
2890
+ * in order for a better separation from the tooltip. See
2891
+ * [xAxis.crosshair](#xAxis.crosshair)<a>.</a>
2892
+ *
2893
+ * @sample {highcharts} highcharts/tooltip/crosshairs-x/
2894
+ * Enable a crosshair for the x value
2895
+ *
2896
+ * @deprecated
2897
+ *
2898
+ * @type {*}
2899
+ * @default true
2900
+ * @apioption tooltip.crosshairs
2901
+ */
2902
+
2903
+ /**
2904
+ * Whether the tooltip should follow the mouse as it moves across
2905
+ * columns, pie slices and other point types with an extent. By default
2906
+ * it behaves this way for scatter, bubble and pie series by override
2907
+ * in the `plotOptions` for those series types.
2908
+ *
2909
+ * For touch moves to behave the same way, [followTouchMove](
2910
+ * #tooltip.followTouchMove) must be `true` also.
2911
+ *
2912
+ * @type {boolean}
2913
+ * @default {highcharts} false
2914
+ * @default {highstock} false
2915
+ * @default {highmaps} true
2916
+ * @since 3.0
2917
+ * @apioption tooltip.followPointer
2918
+ */
2919
+
2920
+ /**
2921
+ * Whether the tooltip should update as the finger moves on a touch
2922
+ * device. If this is `true` and [chart.panning](#chart.panning) is
2923
+ * set,`followTouchMove` will take over one-finger touches, so the user
2924
+ * needs to use two fingers for zooming and panning.
2925
+ *
2926
+ * Note the difference to [followPointer](#tooltip.followPointer) that
2927
+ * only defines the _position_ of the tooltip. If `followPointer` is
2928
+ * false in for example a column series, the tooltip will show above or
2929
+ * below the column, but as `followTouchMove` is true, the tooltip will
2930
+ * jump from column to column as the user swipes across the plot area.
2931
+ *
2932
+ * @type {boolean}
2933
+ * @default {highcharts} true
2934
+ * @default {highstock} true
2935
+ * @default {highmaps} false
2936
+ * @since 3.0.1
2937
+ * @apioption tooltip.followTouchMove
2938
+ */
2939
+
2940
+ /**
2941
+ * Callback function to format the text of the tooltip from scratch. In
2942
+ * case of single or [shared](#tooltip.shared) tooltips, a string should
2943
+ * be returned. In case of [split](#tooltip.split) tooltips, it should
2944
+ * return an array where the first item is the header, and subsequent
2945
+ * items are mapped to the points. Return `false` to disable tooltip for
2946
+ * a specific point on series.
2947
+ *
2948
+ * A subset of HTML is supported. Unless `useHTML` is true, the HTML of
2949
+ * the tooltip is parsed and converted to SVG, therefore this isn't a
2950
+ * complete HTML renderer. The following tags are supported: `<b>`,
2951
+ * `<strong>`, `<i>`, `<em>`, `<br/>`, `<span>`. Spans can be styled
2952
+ * with a `style` attribute, but only text-related CSS that is shared
2953
+ * with SVG is handled.
2954
+ *
2955
+ * The available data in the formatter differ a bit depending on whether
2956
+ * the tooltip is shared or split, or belongs to a single point. In a
2957
+ * shared/split tooltip, all properties except `x`, which is common for
2958
+ * all points, are kept in an array, `this.points`.
2959
+ *
2960
+ * Available data are:
2961
+ *
2962
+ * <dl>
2963
+ *
2964
+ * <dt>this.percentage (not shared) / this.points[i].percentage (shared)
2965
+ * </dt>
2966
+ *
2967
+ * <dd>Stacked series and pies only. The point's percentage of the
2968
+ * total.
2969
+ * </dd>
2970
+ *
2971
+ * <dt>this.point (not shared) / this.points[i].point (shared)</dt>
2972
+ *
2973
+ * <dd>The point object. The point name, if defined, is available
2974
+ * through `this.point.name`.</dd>
2975
+ *
2976
+ * <dt>this.points</dt>
2977
+ *
2978
+ * <dd>In a shared tooltip, this is an array containing all other
2979
+ * properties for each point.</dd>
2980
+ *
2981
+ * <dt>this.series (not shared) / this.points[i].series (shared)</dt>
2982
+ *
2983
+ * <dd>The series object. The series name is available through
2984
+ * `this.series.name`.</dd>
2985
+ *
2986
+ * <dt>this.total (not shared) / this.points[i].total (shared)</dt>
2987
+ *
2988
+ * <dd>Stacked series only. The total value at this point's x value.
2989
+ * </dd>
2990
+ *
2991
+ * <dt>this.x</dt>
2992
+ *
2993
+ * <dd>The x value. This property is the same regardless of the tooltip
2994
+ * being shared or not.</dd>
2995
+ *
2996
+ * <dt>this.y (not shared) / this.points[i].y (shared)</dt>
2997
+ *
2998
+ * <dd>The y value.</dd>
2999
+ *
3000
+ * </dl>
3001
+ *
3002
+ * @sample {highcharts} highcharts/tooltip/formatter-simple/
3003
+ * Simple string formatting
3004
+ * @sample {highcharts} highcharts/tooltip/formatter-shared/
3005
+ * Formatting with shared tooltip
3006
+ * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
3007
+ * Formatting with split tooltip
3008
+ * @sample highcharts/tooltip/formatter-conditional-default/
3009
+ * Extending default formatter
3010
+ * @sample {highstock} stock/tooltip/formatter/
3011
+ * Formatting with shared tooltip
3012
+ * @sample {highmaps} maps/tooltip/formatter/
3013
+ * String formatting
3014
+ *
3015
+ * @type {Highcharts.FormatterCallbackFunction<Highcharts.TooltipFormatterContextObject>}
3016
+ * @apioption tooltip.formatter
3017
+ */
3018
+
3019
+ /**
3020
+ * The number of milliseconds to wait until the tooltip is hidden when
3021
+ * mouse out from a point or chart.
3022
+ *
3023
+ * @type {number}
3024
+ * @default 500
3025
+ * @since 3.0
3026
+ * @apioption tooltip.hideDelay
3027
+ */
3028
+
3029
+ /**
3030
+ * Whether to allow the tooltip to render outside the chart's SVG
3031
+ * element box. By default (`false`), the tooltip is rendered within the
3032
+ * chart's SVG element, which results in the tooltip being aligned
3033
+ * inside the chart area. For small charts, this may result in clipping
3034
+ * or overlapping. When `true`, a separate SVG element is created and
3035
+ * overlaid on the page, allowing the tooltip to be aligned inside the
3036
+ * page itself.
3037
+ *
3038
+ * @sample highcharts/tooltip/outside
3039
+ * Small charts with tooltips outside
3040
+ *
3041
+ * @type {boolean}
3042
+ * @default false
3043
+ * @since 6.1.1
3044
+ * @apioption tooltip.outside
3045
+ */
3046
+
3047
+ /**
3048
+ * A callback function for formatting the HTML output for a single point
3049
+ * in the tooltip. Like the `pointFormat` string, but with more
3050
+ * flexibility.
3051
+ *
3052
+ * @type {Function}
3053
+ * @since 4.1.0
3054
+ * @context Highcharts.Point
3055
+ * @apioption tooltip.pointFormatter
3056
+ */
3057
+
3058
+ /**
3059
+ * A callback function to place the tooltip in a default position. The
3060
+ * callback receives three parameters: `labelWidth`, `labelHeight` and
3061
+ * `point`, where point contains values for `plotX` and `plotY` telling
3062
+ * where the reference point is in the plot area. Add `chart.plotLeft`
3063
+ * and `chart.plotTop` to get the full coordinates.
3064
+ *
3065
+ * Since v7, when [tooltip.split](#tooltip.split) option is enabled,
3066
+ * positioner is called for each of the boxes separately, including
3067
+ * xAxis header. xAxis header is not a point, instead `point` argument
3068
+ * contains info:
3069
+ * `{ plotX: Number, plotY: Number, isHeader: Boolean }`
3070
+ *
3071
+ *
3072
+ * The return should be an object containing x and y values, for example
3073
+ * `{ x: 100, y: 100 }`.
3074
+ *
3075
+ * @sample {highcharts} highcharts/tooltip/positioner/
3076
+ * A fixed tooltip position
3077
+ * @sample {highstock} stock/tooltip/positioner/
3078
+ * A fixed tooltip position on top of the chart
3079
+ * @sample {highmaps} maps/tooltip/positioner/
3080
+ * A fixed tooltip position
3081
+ * @sample {highstock} stock/tooltip/split-positioner/
3082
+ * Split tooltip with fixed positions
3083
+ *
3084
+ * @type {Highcharts.TooltipPositionerCallbackFunction}
3085
+ * @since 2.2.4
3086
+ * @apioption tooltip.positioner
3087
+ */
3088
+
3089
+ /**
3090
+ * The name of a symbol to use for the border around the tooltip. Can
3091
+ * be one of: `"callout"`, `"circle"` or `"square"`. When
3092
+ * [tooltip.split](#tooltip.split) option is enabled, shape is applied
3093
+ * to all boxes except header, which is controlled by
3094
+ * [tooltip.headerShape](#tooltip.headerShape).
3095
+ *
3096
+ * Custom callbacks for symbol path generation can also be added to
3097
+ * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
3098
+ * [series.marker.symbol](plotOptions.line.marker.symbol).
3099
+ *
3100
+ * @type {string}
3101
+ * @default callout
3102
+ * @since 4.0
3103
+ * @validvalue ["callout", "square"]
3104
+ * @apioption tooltip.shape
3105
+ */
3106
+
3107
+ /**
3108
+ * The name of a symbol to use for the border around the tooltip
3109
+ * header. Applies only when [tooltip.split](#tooltip.split) is
3110
+ * enabled.
3111
+ *
3112
+ * Custom callbacks for symbol path generation can also be added to
3113
+ * `Highcharts.SVGRenderer.prototype.symbols` the same way as for
3114
+ * [series.marker.symbol](plotOptions.line.marker.symbol).
3115
+ *
3116
+ * @see [tooltip.shape](#tooltip.shape)
3117
+ * @type {String}
3118
+ * @default callout
3119
+ * @sample {highstock} stock/tooltip/split-positioner/
3120
+ * Different shapes for header and split boxes
3121
+ * @validvalue ["callout", "square"]
3122
+ * @since 7.0
3123
+ * @apioption tooltip.headerShape
3124
+ */
3125
+
3126
+ /**
3127
+ * When the tooltip is shared, the entire plot area will capture mouse
3128
+ * movement or touch events. Tooltip texts for series types with ordered
3129
+ * data (not pie, scatter, flags etc) will be shown in a single bubble.
3130
+ * This is recommended for single series charts and for tablet/mobile
3131
+ * optimized charts.
3132
+ *
3133
+ * See also [tooltip.split](#tooltip.split), that is better suited for
3134
+ * charts with many series, especially line-type series. The
3135
+ * `tooltip.split` option takes precedence over `tooltip.shared`.
3136
+ *
3137
+ * @sample {highcharts} highcharts/tooltip/shared-false/
3138
+ * False by default
3139
+ * @sample {highcharts} highcharts/tooltip/shared-true/
3140
+ * True
3141
+ * @sample {highcharts} highcharts/tooltip/shared-x-crosshair/
3142
+ * True with x axis crosshair
3143
+ * @sample {highcharts} highcharts/tooltip/shared-true-mixed-types/
3144
+ * True with mixed series types
3145
+ *
3146
+ * @type {boolean}
3147
+ * @default false
3148
+ * @since 2.1
3149
+ * @product highcharts highstock
3150
+ * @apioption tooltip.shared
3151
+ */
3152
+
3153
+ /**
3154
+ * Split the tooltip into one label per series, with the header close
3155
+ * to the axis. This is recommended over [shared](#tooltip.shared)
3156
+ * tooltips for charts with multiple line series, generally making them
3157
+ * easier to read. This option takes precedence over `tooltip.shared`.
3158
+ *
3159
+ * @productdesc {highstock} In Highstock, tooltips are split by default
3160
+ * since v6.0.0. Stock charts typically contain multi-dimension points
3161
+ * and multiple panes, making split tooltips the preferred layout over
3162
+ * the previous `shared` tooltip.
3163
+ *
3164
+ * @sample highcharts/tooltip/split/
3165
+ * Split tooltip
3166
+ * @sample {highcharts|highstock} highcharts/tooltip/formatter-split/
3167
+ * Split tooltip and custom formatter callback
3168
+ *
3169
+ * @type {boolean}
3170
+ * @default {highcharts} false
3171
+ * @default {highstock} true
3172
+ * @since 5.0.0
3173
+ * @product highcharts highstock
3174
+ * @apioption tooltip.split
3175
+ */
3176
+
3177
+ /**
3178
+ * Use HTML to render the contents of the tooltip instead of SVG. Using
3179
+ * HTML allows advanced formatting like tables and images in the
3180
+ * tooltip. It is also recommended for rtl languages as it works around
3181
+ * rtl bugs in early Firefox.
3182
+ *
3183
+ * @sample {highcharts|highstock} highcharts/tooltip/footerformat/
3184
+ * A table for value alignment
3185
+ * @sample {highcharts|highstock} highcharts/tooltip/fullhtml/
3186
+ * Full HTML tooltip
3187
+ * @sample {highmaps} maps/tooltip/usehtml/
3188
+ * Pure HTML tooltip
3189
+ *
3190
+ * @type {boolean}
3191
+ * @default false
3192
+ * @since 2.2
3193
+ * @apioption tooltip.useHTML
3194
+ */
3195
+
3196
+ /**
3197
+ * How many decimals to show in each series' y value. This is
3198
+ * overridable in each series' tooltip options object. The default is to
3199
+ * preserve all decimals.
3200
+ *
3201
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
3202
+ * Set decimals, prefix and suffix for the value
3203
+ * @sample {highmaps} maps/tooltip/valuedecimals/
3204
+ * Set decimals, prefix and suffix for the value
3205
+ *
3206
+ * @type {number}
3207
+ * @since 2.2
3208
+ * @apioption tooltip.valueDecimals
3209
+ */
3210
+
3211
+ /**
3212
+ * A string to prepend to each series' y value. Overridable in each
3213
+ * series' tooltip options object.
3214
+ *
3215
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
3216
+ * Set decimals, prefix and suffix for the value
3217
+ * @sample {highmaps} maps/tooltip/valuedecimals/
3218
+ * Set decimals, prefix and suffix for the value
3219
+ *
3220
+ * @type {string}
3221
+ * @since 2.2
3222
+ * @apioption tooltip.valuePrefix
3223
+ */
3224
+
3225
+ /**
3226
+ * A string to append to each series' y value. Overridable in each
3227
+ * series' tooltip options object.
3228
+ *
3229
+ * @sample {highcharts|highstock} highcharts/tooltip/valuedecimals/
3230
+ * Set decimals, prefix and suffix for the value
3231
+ * @sample {highmaps} maps/tooltip/valuedecimals/
3232
+ * Set decimals, prefix and suffix for the value
3233
+ *
3234
+ * @type {string}
3235
+ * @since 2.2
3236
+ * @apioption tooltip.valueSuffix
3237
+ */
3238
+
3239
+ /**
3240
+ * The format for the date in the tooltip header if the X axis is a
3241
+ * datetime axis. The default is a best guess based on the smallest
3242
+ * distance between points in the chart.
3243
+ *
3244
+ * @sample {highcharts} highcharts/tooltip/xdateformat/
3245
+ * A different format
3246
+ *
3247
+ * @type {string}
3248
+ * @product highcharts highstock gantt
3249
+ * @apioption tooltip.xDateFormat
3250
+ */
3251
+
3252
+ /**
3253
+ * How many decimals to show for the `point.change` value when the
3254
+ * `series.compare` option is set. This is overridable in each series'
3255
+ * tooltip options object. The default is to preserve all decimals.
3256
+ *
3257
+ * @type {number}
3258
+ * @since 1.0.1
3259
+ * @product highstock
3260
+ * @apioption tooltip.changeDecimals
3261
+ */
3262
+
3263
+ /**
3264
+ * Enable or disable the tooltip.
3265
+ *
3266
+ * @sample {highcharts} highcharts/tooltip/enabled/
3267
+ * Disabled
3268
+ * @sample {highcharts} highcharts/plotoptions/series-point-events-mouseover/
3269
+ * Disable tooltip and show values on chart instead
3270
+ */
3271
+ enabled: true,
3272
+
3273
+ /**
3274
+ * Enable or disable animation of the tooltip.
3275
+ *
3276
+ * @type {boolean}
3277
+ * @default true
3278
+ * @since 2.3.0
3279
+ */
3280
+ animation: svg,
3281
+
3282
+ /**
3283
+ * The radius of the rounded border corners.
3284
+ *
3285
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
3286
+ * 5px by default
3287
+ * @sample {highcharts} highcharts/tooltip/borderradius-0/
3288
+ * Square borders
3289
+ * @sample {highmaps} maps/tooltip/background-border/
3290
+ * Background and border demo
3291
+ */
3292
+ borderRadius: 3,
3293
+
3294
+ /**
3295
+ * For series on a datetime axes, the date format in the tooltip's
3296
+ * header will by default be guessed based on the closest data points.
3297
+ * This member gives the default string representations used for
3298
+ * each unit. For an overview of the replacement codes, see
3299
+ * [dateFormat](/class-reference/Highcharts#dateFormat).
3300
+ *
3301
+ * @see [xAxis.dateTimeLabelFormats](#xAxis.dateTimeLabelFormats)
3302
+ *
3303
+ * @type {Highcharts.Dictionary<string>}
3304
+ * @product highcharts highstock gantt
3305
+ */
3306
+ dateTimeLabelFormats: {
3307
+ millisecond: '%A, %b %e, %H:%M:%S.%L',
3308
+ second: '%A, %b %e, %H:%M:%S',
3309
+ minute: '%A, %b %e, %H:%M',
3310
+ hour: '%A, %b %e, %H:%M',
3311
+ day: '%A, %b %e, %Y',
3312
+ week: 'Week from %A, %b %e, %Y',
3313
+ month: '%B %Y',
3314
+ year: '%Y'
3315
+ },
3316
+
3317
+ /**
3318
+ * A string to append to the tooltip format.
3319
+ *
3320
+ * @sample {highcharts} highcharts/tooltip/footerformat/
3321
+ * A table for value alignment
3322
+ * @sample {highmaps} maps/tooltip/format/
3323
+ * Format demo
3324
+ *
3325
+ * @since 2.2
3326
+ */
3327
+ footerFormat: '',
3328
+
3329
+ /**
3330
+ * Padding inside the tooltip, in pixels.
3331
+ *
3332
+ * @since 5.0.0
3333
+ */
3334
+ padding: 8,
3335
+
3336
+ /**
3337
+ * Proximity snap for graphs or single points. It defaults to 10 for
3338
+ * mouse-powered devices and 25 for touch devices.
3339
+ *
3340
+ * Note that in most cases the whole plot area captures the mouse
3341
+ * movement, and in these cases `tooltip.snap` doesn't make sense. This
3342
+ * applies when [stickyTracking](#plotOptions.series.stickyTracking)
3343
+ * is `true` (default) and when the tooltip is [shared](#tooltip.shared)
3344
+ * or [split](#tooltip.split).
3345
+ *
3346
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
3347
+ * 10 px by default
3348
+ * @sample {highcharts} highcharts/tooltip/snap-50/
3349
+ * 50 px on graph
3350
+ *
3351
+ * @type {number}
3352
+ * @default 10/25
3353
+ * @since 1.2.0
3354
+ * @product highcharts highstock
3355
+ */
3356
+ snap: isTouchDevice ? 25 : 10,
3357
+ /**
3358
+ * The HTML of the tooltip header line. Variables are enclosed by
3359
+ * curly brackets. Available variables are `point.key`, `series.name`,
3360
+ * `series.color` and other members from the `point` and `series`
3361
+ * objects. The `point.key` variable contains the category name, x
3362
+ * value or datetime string depending on the type of axis. For datetime
3363
+ * axes, the `point.key` date format can be set using
3364
+ * `tooltip.xDateFormat`.
3365
+ *
3366
+ * @sample {highcharts} highcharts/tooltip/footerformat/
3367
+ * An HTML table in the tooltip
3368
+ * @sample {highstock} highcharts/tooltip/footerformat/
3369
+ * An HTML table in the tooltip
3370
+ * @sample {highmaps} maps/tooltip/format/
3371
+ * Format demo
3372
+ *
3373
+ * @type {string}
3374
+ * @apioption tooltip.headerFormat
3375
+ */
3376
+ headerFormat: '<span style="font-size: 10px">{point.key}</span><br/>',
3377
+
3378
+ /**
3379
+ * The HTML of the point's line in the tooltip. Variables are enclosed
3380
+ * by curly brackets. Available variables are point.x, point.y, series.
3381
+ * name and series.color and other properties on the same form.
3382
+ * Furthermore, `point.y` can be extended by the `tooltip.valuePrefix`
3383
+ * and `tooltip.valueSuffix` variables. This can also be overridden for
3384
+ * each series, which makes it a good hook for displaying units.
3385
+ *
3386
+ * In styled mode, the dot is colored by a class name rather
3387
+ * than the point color.
3388
+ *
3389
+ * @sample {highcharts} highcharts/tooltip/pointformat/
3390
+ * A different point format with value suffix
3391
+ * @sample {highmaps} maps/tooltip/format/
3392
+ * Format demo
3393
+ *
3394
+ * @type {string}
3395
+ * @default <span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>
3396
+ * @since 2.2
3397
+ * @apioption tooltip.pointFormat
3398
+ */
3399
+ pointFormat: '<span style="color:{point.color}">\u25CF</span> {series.name}: <b>{point.y}</b><br/>',
3400
+
3401
+ /**
3402
+ * The background color or gradient for the tooltip.
3403
+ *
3404
+ * In styled mode, the stroke width is set in the
3405
+ * `.highcharts-tooltip-box` class.
3406
+ *
3407
+ * @sample {highcharts} highcharts/tooltip/backgroundcolor-solid/
3408
+ * Yellowish background
3409
+ * @sample {highcharts} highcharts/tooltip/backgroundcolor-gradient/
3410
+ * Gradient
3411
+ * @sample {highcharts} highcharts/css/tooltip-border-background/
3412
+ * Tooltip in styled mode
3413
+ * @sample {highstock} stock/tooltip/general/
3414
+ * Custom tooltip
3415
+ * @sample {highstock} highcharts/css/tooltip-border-background/
3416
+ * Tooltip in styled mode
3417
+ * @sample {highmaps} maps/tooltip/background-border/
3418
+ * Background and border demo
3419
+ * @sample {highmaps} highcharts/css/tooltip-border-background/
3420
+ * Tooltip in styled mode
3421
+ *
3422
+ * @type {Highcharts.ColorString}
3423
+ */
3424
+ backgroundColor: color('#f7f7f7')
3425
+ .setOpacity(0.85).get(),
3426
+
3427
+ /**
3428
+ * The pixel width of the tooltip border.
3429
+ *
3430
+ * In styled mode, the stroke width is set in the
3431
+ * `.highcharts-tooltip-box` class.
3432
+ *
3433
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
3434
+ * 2px by default
3435
+ * @sample {highcharts} highcharts/tooltip/borderwidth/
3436
+ * No border (shadow only)
3437
+ * @sample {highcharts} highcharts/css/tooltip-border-background/
3438
+ * Tooltip in styled mode
3439
+ * @sample {highstock} stock/tooltip/general/
3440
+ * Custom tooltip
3441
+ * @sample {highstock} highcharts/css/tooltip-border-background/
3442
+ * Tooltip in styled mode
3443
+ * @sample {highmaps} maps/tooltip/background-border/
3444
+ * Background and border demo
3445
+ * @sample {highmaps} highcharts/css/tooltip-border-background/
3446
+ * Tooltip in styled mode
3447
+ */
3448
+ borderWidth: 1,
3449
+
3450
+ /**
3451
+ * Whether to apply a drop shadow to the tooltip.
3452
+ *
3453
+ * @sample {highcharts} highcharts/tooltip/bordercolor-default/
3454
+ * True by default
3455
+ * @sample {highcharts} highcharts/tooltip/shadow/
3456
+ * False
3457
+ * @sample {highmaps} maps/tooltip/positioner/
3458
+ * Fixed tooltip position, border and shadow disabled
3459
+ */
3460
+ shadow: true,
3461
+
3462
+ /**
3463
+ * CSS styles for the tooltip. The tooltip can also be styled through
3464
+ * the CSS class `.highcharts-tooltip`.
3465
+ *
3466
+ * Note that the default `pointerEvents` style makes the tooltip ignore
3467
+ * mouse events, so in order to use clickable tooltips, this value must
3468
+ * be set to `auto`.
3469
+ *
3470
+ * @sample {highcharts} highcharts/tooltip/style/
3471
+ * Greater padding, bold text
3472
+ *
3473
+ * @type {Highcharts.CSSObject}
3474
+ * @default {"color": "#333333", "cursor": "default", "fontSize": "12px", "pointerEvents": "none", "whiteSpace": "nowrap"}
3475
+ */
3476
+ style: {
3477
+ /**
3478
+ * @ignore
3479
+ */
3480
+ color: '#333333',
3481
+ /**
3482
+ * @ignore
3483
+ */
3484
+ cursor: 'default',
3485
+ /**
3486
+ * @ignore
3487
+ */
3488
+ fontSize: '12px',
3489
+ /**
3490
+ * @ignore
3491
+ */
3492
+ pointerEvents: 'none',
3493
+ /**
3494
+ * @ignore
3495
+ */
3496
+ whiteSpace: 'nowrap'
3497
+ }
3498
+ },
3499
+
3500
+
3501
+ /**
3502
+ * Highchart by default puts a credits label in the lower right corner
3503
+ * of the chart. This can be changed using these options.
3504
+ */
3505
+ credits: {
3506
+
3507
+ /**
3508
+ * Credits for map source to be concatenated with conventional credit
3509
+ * text. By default this is a format string that collects copyright
3510
+ * information from the map if available.
3511
+ *
3512
+ * @see [mapTextFull](#credits.mapTextFull)
3513
+ * @see [text](#credits.text)
3514
+ *
3515
+ * @type {string}
3516
+ * @default \u00a9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>
3517
+ * @since 4.2.2
3518
+ * @product highmaps
3519
+ * @apioption credits.mapText
3520
+ */
3521
+
3522
+ /**
3523
+ * Detailed credits for map source to be displayed on hover of credits
3524
+ * text. By default this is a format string that collects copyright
3525
+ * information from the map if available.
3526
+ *
3527
+ * @see [mapText](#credits.mapText)
3528
+ * @see [text](#credits.text)
3529
+ *
3530
+ * @type {string}
3531
+ * @default {geojson.copyright}
3532
+ * @since 4.2.2
3533
+ * @product highmaps
3534
+ * @apioption credits.mapTextFull
3535
+ */
3536
+
3537
+ /**
3538
+ * Whether to show the credits text.
3539
+ *
3540
+ * @sample {highcharts} highcharts/credits/enabled-false/
3541
+ * Credits disabled
3542
+ * @sample {highstock} stock/credits/enabled/
3543
+ * Credits disabled
3544
+ * @sample {highmaps} maps/credits/enabled-false/
3545
+ * Credits disabled
3546
+ */
3547
+ enabled: true,
3548
+
3549
+ /**
3550
+ * The URL for the credits label.
3551
+ *
3552
+ * @sample {highcharts} highcharts/credits/href/
3553
+ * Custom URL and text
3554
+ * @sample {highmaps} maps/credits/customized/
3555
+ * Custom URL and text
3556
+ */
3557
+ href: 'https://www.highcharts.com?credits',
3558
+
3559
+ /**
3560
+ * Position configuration for the credits label.
3561
+ *
3562
+ * @sample {highcharts} highcharts/credits/position-left/
3563
+ * Left aligned
3564
+ * @sample {highcharts} highcharts/credits/position-left/
3565
+ * Left aligned
3566
+ * @sample {highmaps} maps/credits/customized/
3567
+ * Left aligned
3568
+ * @sample {highmaps} maps/credits/customized/
3569
+ * Left aligned
3570
+ *
3571
+ * @type {Highcharts.AlignObject}
3572
+ * @since 2.1
3573
+ */
3574
+ position: {
3575
+
3576
+ /**
3577
+ * Horizontal alignment of the credits.
3578
+ *
3579
+ * @type {Highcharts.AlignType}
3580
+ */
3581
+ align: 'right',
3582
+
3583
+ /**
3584
+ * Horizontal pixel offset of the credits.
3585
+ */
3586
+ x: -10,
3587
+
3588
+ /**
3589
+ * Vertical alignment of the credits.
3590
+ *
3591
+ * @type {Highcharts.VerticalAlignType}
3592
+ */
3593
+ verticalAlign: 'bottom',
3594
+
3595
+ /**
3596
+ * Vertical pixel offset of the credits.
3597
+ */
3598
+ y: -5
3599
+
3600
+ },
3601
+
3602
+ /**
3603
+ * CSS styles for the credits label.
3604
+ *
3605
+ * @see In styled mode, credits styles can be set with the
3606
+ * `.highcharts-credits` class.
3607
+ *
3608
+ * @type {Highcharts.CSSObject}
3609
+ * @default {"cursor": "pointer", "color": "#999999", "fontSize": "10px"}
3610
+ */
3611
+ style: {
3612
+ /**
3613
+ * @ignore
3614
+ */
3615
+ cursor: 'pointer',
3616
+ /**
3617
+ * @ignore
3618
+ */
3619
+ color: '#999999',
3620
+ /**
3621
+ * @ignore
3622
+ */
3623
+ fontSize: '9px'
3624
+ },
3625
+
3626
+ /**
3627
+ * The text for the credits label.
3628
+ *
3629
+ * @productdesc {highmaps}
3630
+ * If a map is loaded as GeoJSON, the text defaults to
3631
+ * `Highcharts @ {map-credits}`. Otherwise, it defaults to
3632
+ * `Highcharts.com`.
3633
+ *
3634
+ * @sample {highcharts} highcharts/credits/href/
3635
+ * Custom URL and text
3636
+ * @sample {highmaps} maps/credits/customized/
3637
+ * Custom URL and text
3638
+ */
3639
+ text: 'Highcharts.com'
3640
+
3641
+ }
3642
+ };
3643
+
3644
+ /**
3645
+ * Merge the default options with custom options and return the new options
3646
+ * structure. Commonly used for defining reusable templates.
3647
+ *
3648
+ * @sample highcharts/global/useutc-false Setting a global option
3649
+ * @sample highcharts/members/setoptions Applying a global theme
3650
+ *
3651
+ * @function Highcharts.setOptions
3652
+ *
3653
+ * @param {Highcharts.Options} options
3654
+ * The new custom chart options.
3655
+ *
3656
+ * @return {Highcharts.Options}
3657
+ * Updated options.
3658
+ */
3659
+ H.setOptions = function (options) {
3660
+
3661
+ // Copy in the default options
3662
+ H.defaultOptions = merge(true, H.defaultOptions, options);
3663
+
3664
+ // Update the time object
3665
+ H.time.update(
3666
+ merge(H.defaultOptions.global, H.defaultOptions.time),
3667
+ false
3668
+ );
3669
+
3670
+ return H.defaultOptions;
3671
+ };
3672
+
3673
+ /**
3674
+ * Get the updated default options. Until 3.0.7, merely exposing defaultOptions
3675
+ * for outside modules wasn't enough because the setOptions method created a new
3676
+ * object.
3677
+ *
3678
+ * @function Highcharts.getOptions
3679
+ *
3680
+ * @return {Highcharts.Options}
3681
+ */
3682
+ H.getOptions = function () {
3683
+ return H.defaultOptions;
3684
+ };
3685
+
3686
+
3687
+ // Series defaults
3688
+ H.defaultPlotOptions = H.defaultOptions.plotOptions;
3689
+
3690
+
3691
+ /**
3692
+ * Global `Time` object with default options. Since v6.0.5, time settings can be
3693
+ * applied individually for each chart. If no individual settings apply, this
3694
+ * `Time` object is shared by all instances.
3695
+ *
3696
+ * @name Highcharts.time
3697
+ * @type {Highcharts.Time}
3698
+ */
3699
+ H.time = new H.Time(merge(H.defaultOptions.global, H.defaultOptions.time));
3700
+
3701
+ /**
3702
+ * Formats a JavaScript date timestamp (milliseconds since Jan 1st 1970) into a
3703
+ * human readable date string. The format is a subset of the formats for PHP's
3704
+ * [strftime](http://www.php.net/manual/en/function.strftime.php) function.
3705
+ * Additional formats can be given in the {@link Highcharts.dateFormats} hook.
3706
+ *
3707
+ * Since v6.0.5, all internal dates are formatted through the
3708
+ * {@link Highcharts.Chart#time} instance to respect chart-level time settings.
3709
+ * The `Highcharts.dateFormat` function only reflects global time settings set
3710
+ * with `setOptions`.
3711
+ *
3712
+ * @function Highcharts.dateFormat
3713
+ *
3714
+ * @param {string} format
3715
+ * The desired format where various time representations are prefixed
3716
+ * with `%`.
3717
+ *
3718
+ * @param {number} timestamp
3719
+ * The JavaScript timestamp.
3720
+ *
3721
+ * @param {boolean} [capitalize=false]
3722
+ * Upper case first letter in the return.
3723
+ *
3724
+ * @return {string}
3725
+ * The formatted date.
3726
+ */
3727
+ H.dateFormat = function (format, timestamp, capitalize) {
3728
+ return H.time.dateFormat(format, timestamp, capitalize);
3729
+ };
3730
+
3731
+
3732
+