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,28 @@
1
+ /*
2
+ Highcharts JS v7.0.3 (2019-02-06)
3
+
4
+ (c) 2009-2019 Torstein Honsi
5
+
6
+ License: www.highcharts.com/license
7
+ */
8
+ (function(h){"object"===typeof module&&module.exports?(h["default"]=h,module.exports=h):"function"===typeof define&&define.amd?define(function(){return h}):h("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(h){(function(b){var h=b.addEvent,k=b.Axis,q=b.Chart,l=b.color,n,r=b.extend,p=b.isNumber,e=b.Legend,c=b.LegendSymbolMixin,v=b.noop,u=b.merge,t=b.pick;b.ColorAxis||(n=b.ColorAxis=function(){this.init.apply(this,arguments)},r(n.prototype,k.prototype),r(n.prototype,{defaultColorAxisOptions:{lineWidth:0,
9
+ minPadding:0,maxPadding:0,gridLineWidth:1,tickPixelInterval:72,startOnTick:!0,endOnTick:!0,offset:0,marker:{animation:{duration:50},width:.01,color:"#999999"},labels:{overflow:"justify",rotation:0},minColor:"#e6ebf5",maxColor:"#003399",tickLength:5,showInLegend:!0},keepProps:["legendGroup","legendItemHeight","legendItemWidth","legendItem","legendSymbol"].concat(k.prototype.keepProps),init:function(a,d){var f="vertical"!==a.options.legend.layout,g;this.coll="colorAxis";g=u(this.defaultColorAxisOptions,
10
+ {side:f?2:1,reversed:!f},d,{opposite:!f,showEmpty:!1,title:null,visible:a.options.legend.enabled});k.prototype.init.call(this,a,g);d.dataClasses&&this.initDataClasses(d);this.initStops();this.horiz=f;this.zoomEnabled=!1;this.defaultLegendLength=200},initDataClasses:function(a){var d=this.chart,f,g=0,m=d.options.chart.colorCount,b=this.options,e=a.dataClasses.length;this.dataClasses=f=[];this.legendItems=[];a.dataClasses.forEach(function(a,c){a=u(a);f.push(a);if(d.styledMode||!a.color)"category"===
11
+ b.dataClassColor?(d.styledMode||(c=d.options.colors,m=c.length,a.color=c[g]),a.colorIndex=g,g++,g===m&&(g=0)):a.color=l(b.minColor).tweenTo(l(b.maxColor),2>e?.5:c/(e-1))})},setTickPositions:function(){if(!this.dataClasses)return k.prototype.setTickPositions.call(this)},initStops:function(){this.stops=this.options.stops||[[0,this.options.minColor],[1,this.options.maxColor]];this.stops.forEach(function(a){a.color=l(a[1])})},setOptions:function(a){k.prototype.setOptions.call(this,a);this.options.crosshair=
12
+ this.options.marker},setAxisSize:function(){var a=this.legendSymbol,d=this.chart,f=d.options.legend||{},g,m;a?(this.left=f=a.attr("x"),this.top=g=a.attr("y"),this.width=m=a.attr("width"),this.height=a=a.attr("height"),this.right=d.chartWidth-f-m,this.bottom=d.chartHeight-g-a,this.len=this.horiz?m:a,this.pos=this.horiz?f:g):this.len=(this.horiz?f.symbolWidth:f.symbolHeight)||this.defaultLegendLength},normalizedValue:function(a){this.isLog&&(a=this.val2lin(a));return 1-(this.max-a)/(this.max-this.min||
13
+ 1)},toColor:function(a,d){var f=this.stops,g,m,b=this.dataClasses,c,e;if(b)for(e=b.length;e--;){if(c=b[e],g=c.from,f=c.to,(void 0===g||a>=g)&&(void 0===f||a<=f)){m=c.color;d&&(d.dataClass=e,d.colorIndex=c.colorIndex);break}}else{a=this.normalizedValue(a);for(e=f.length;e--&&!(a>f[e][0]););g=f[e]||f[e+1];f=f[e+1]||g;a=1-(f[0]-a)/(f[0]-g[0]||1);m=g.color.tweenTo(f.color,a)}return m},getOffset:function(){var a=this.legendGroup,d=this.chart.axisOffset[this.side];a&&(this.axisParent=a,k.prototype.getOffset.call(this),
14
+ this.added||(this.added=!0,this.labelLeft=0,this.labelRight=this.width),this.chart.axisOffset[this.side]=d)},setLegendColor:function(){var a,d=this.reversed;a=d?1:0;d=d?0:1;a=this.horiz?[a,0,d,0]:[0,d,0,a];this.legendColor={linearGradient:{x1:a[0],y1:a[1],x2:a[2],y2:a[3]},stops:this.stops}},drawLegendSymbol:function(a,d){var f=a.padding,g=a.options,e=this.horiz,c=t(g.symbolWidth,e?this.defaultLegendLength:12),b=t(g.symbolHeight,e?12:this.defaultLegendLength),l=t(g.labelPadding,e?16:30),g=t(g.itemDistance,
15
+ 10);this.setLegendColor();d.legendSymbol=this.chart.renderer.rect(0,a.baseline-11,c,b).attr({zIndex:1}).add(d.legendGroup);this.legendItemWidth=c+f+(e?g:l);this.legendItemHeight=b+f+(e?l:0)},setState:function(a){this.series.forEach(function(d){d.setState(a)})},visible:!0,setVisible:v,getSeriesExtremes:function(){var a=this.series,d=a.length;this.dataMin=Infinity;for(this.dataMax=-Infinity;d--;)a[d].getExtremes(),void 0!==a[d].valueMin&&(this.dataMin=Math.min(this.dataMin,a[d].valueMin),this.dataMax=
16
+ Math.max(this.dataMax,a[d].valueMax))},drawCrosshair:function(a,d){var f=d&&d.plotX,e=d&&d.plotY,c,b=this.pos,l=this.len;d&&(c=this.toPixels(d[d.series.colorKey]),c<b?c=b-2:c>b+l&&(c=b+l+2),d.plotX=c,d.plotY=this.len-c,k.prototype.drawCrosshair.call(this,a,d),d.plotX=f,d.plotY=e,this.cross&&!this.cross.addedToColorAxis&&this.legendGroup&&(this.cross.addClass("highcharts-coloraxis-marker").add(this.legendGroup),this.cross.addedToColorAxis=!0,this.chart.styledMode||this.cross.attr({fill:this.crosshair.color})))},
17
+ getPlotLinePath:function(a,d,f,e,c){return p(c)?this.horiz?["M",c-4,this.top-6,"L",c+4,this.top-6,c,this.top,"Z"]:["M",this.left,c,"L",this.left-6,c+6,this.left-6,c-6,"Z"]:k.prototype.getPlotLinePath.call(this,a,d,f,e)},update:function(a,d){var c=this.chart,e=c.legend;this.series.forEach(function(a){a.isDirtyData=!0});a.dataClasses&&e.allItems&&(e.allItems.forEach(function(a){a.isDataClass&&a.legendGroup&&a.legendGroup.destroy()}),c.isDirtyLegend=!0);c.options[this.coll]=u(this.userOptions,a);k.prototype.update.call(this,
18
+ a,d);this.legendItem&&(this.setLegendColor(),e.colorizeItem(this,!0))},remove:function(){this.legendItem&&this.chart.legend.destroyItem(this);k.prototype.remove.call(this)},getDataClassLegendSymbols:function(){var a=this,d=this.chart,e=this.legendItems,g=d.options.legend,l=g.valueDecimals,n=g.valueSuffix||"",h;e.length||this.dataClasses.forEach(function(f,g){var k=!0,m=f.from,p=f.to;h="";void 0===m?h="\x3c ":void 0===p&&(h="\x3e ");void 0!==m&&(h+=b.numberFormat(m,l)+n);void 0!==m&&void 0!==p&&(h+=
19
+ " - ");void 0!==p&&(h+=b.numberFormat(p,l)+n);e.push(r({chart:d,name:h,options:{},drawLegendSymbol:c.drawRectangle,visible:!0,setState:v,isDataClass:!0,setVisible:function(){k=this.visible=!k;a.series.forEach(function(a){a.points.forEach(function(a){a.dataClass===g&&a.setVisible(k)})});d.legend.colorizeItem(this,k)}},f))});return e},name:""}),["fill","stroke"].forEach(function(a){b.Fx.prototype[a+"Setter"]=function(){this.elem.attr(a,l(this.start).tweenTo(l(this.end),this.pos),null,!0)}}),h(q,"afterGetAxes",
20
+ function(){var a=this.options.colorAxis;this.colorAxis=[];a&&new n(this,a)}),h(e,"afterGetAllItems",function(a){var d=[],c=this.chart.colorAxis[0];c&&c.options&&c.options.showInLegend&&(c.options.dataClasses?d=c.getDataClassLegendSymbols():d.push(c),c.series.forEach(function(c){b.erase(a.allItems,c)}));for(c=d.length;c--;)a.allItems.unshift(d[c])}),h(e,"afterColorizeItem",function(a){a.visible&&a.item.legendColor&&a.item.legendSymbol.attr({fill:a.item.legendColor})}),h(e,"afterUpdate",function(a,
21
+ c,e){this.chart.colorAxis[0]&&this.chart.colorAxis[0].update({},e)}))})(h);(function(b){var h=b.defined,k=b.noop,q=b.seriesTypes;b.colorPointMixin={isValid:function(){return null!==this.value&&Infinity!==this.value&&-Infinity!==this.value},setVisible:function(b){var l=this,h=b?"show":"hide";l.visible=!!b;["graphic","dataLabel"].forEach(function(b){if(l[b])l[b][h]()})},setState:function(l){b.Point.prototype.setState.call(this,l);this.graphic&&this.graphic.attr({zIndex:"hover"===l?1:0})}};b.colorSeriesMixin=
22
+ {pointArrayMap:["value"],axisTypes:["xAxis","yAxis","colorAxis"],optionalAxis:"colorAxis",trackerGroups:["group","markerGroup","dataLabelsGroup"],getSymbol:k,parallelArrays:["x","y","value"],colorKey:"value",pointAttribs:q.column.prototype.pointAttribs,translateColors:function(){var b=this,h=this.options.nullColor,k=this.colorAxis,p=this.colorKey;this.data.forEach(function(e){var c=e[p];if(c=e.options.color||(e.isNull?h:k&&void 0!==c?k.toColor(c,e):e.color||b.color))e.color=c})},colorAttribs:function(b){var l=
23
+ {};h(b.color)&&(l[this.colorProp||"fill"]=b.color);return l}}})(h);(function(b){var h=b.colorPointMixin,k=b.merge,q=b.noop,l=b.pick,n=b.Series,r=b.seriesType,p=b.seriesTypes;r("heatmap","scatter",{animation:!1,borderWidth:0,nullColor:"#f7f7f7",dataLabels:{formatter:function(){return this.point.value},inside:!0,verticalAlign:"middle",crop:!1,overflow:!1,padding:0},marker:null,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}\x3cbr/\x3e"},states:{hover:{halo:!1,brightness:.2}}},
24
+ k(b.colorSeriesMixin,{pointArrayMap:["y","value"],hasPointSpecificOptions:!0,getExtremesFromAll:!0,directTouch:!0,init:function(){var e;p.scatter.prototype.init.apply(this,arguments);e=this.options;e.pointRange=l(e.pointRange,e.colsize||1);this.yAxis.axisPointRange=e.rowsize||1},translate:function(){var e=this.options,c=this.xAxis,b=this.yAxis,h=e.pointPadding||0,k=function(a,c,b){return Math.min(Math.max(c,a),b)},a=this.pointPlacementToXValue();this.generatePoints();this.points.forEach(function(d){var f=
25
+ (e.colsize||1)/2,g=(e.rowsize||1)/2,m=k(Math.round(c.len-c.translate(d.x-f,0,1,0,1,-a)),-c.len,2*c.len),f=k(Math.round(c.len-c.translate(d.x+f,0,1,0,1,-a)),-c.len,2*c.len),p=k(Math.round(b.translate(d.y-g,0,1,0,1)),-b.len,2*b.len),g=k(Math.round(b.translate(d.y+g,0,1,0,1)),-b.len,2*b.len),n=l(d.pointPadding,h);d.plotX=d.clientX=(m+f)/2;d.plotY=(p+g)/2;d.shapeType="rect";d.shapeArgs={x:Math.min(m,f)+n,y:Math.min(p,g)+n,width:Math.abs(f-m)-2*n,height:Math.abs(g-p)-2*n}});this.translateColors()},drawPoints:function(){var b=
26
+ this.chart.styledMode?"css":"attr";p.column.prototype.drawPoints.call(this);this.points.forEach(function(c){c.graphic[b](this.colorAttribs(c))},this)},getValidPoints:function(b,c){return n.prototype.getValidPoints.call(this,b,c,!0)},animate:q,getBox:q,drawLegendSymbol:b.LegendSymbolMixin.drawRectangle,alignDataLabel:p.column.prototype.alignDataLabel,getExtremes:function(){n.prototype.getExtremes.call(this,this.valueData);this.valueMin=this.dataMin;this.valueMax=this.dataMax;n.prototype.getExtremes.call(this)}}),
27
+ b.extend({haloPath:function(b){if(!b)return[];var c=this.shapeArgs;return["M",c.x-b,c.y-b,"L",c.x-b,c.y+c.height+b,c.x+c.width+b,c.y+c.height+b,c.x+c.width+b,c.y-b,"Z"]}},h))})(h)});
28
+ //# sourceMappingURL=heatmap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heatmap.js.map","lineCount":27,"mappings":"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","sources":["heatmap.src.js"],"names":["factory","module","exports","define","amd","Highcharts","undefined","H","addEvent","Axis","Chart","color","ColorAxis","extend","isNumber","Legend","LegendSymbolMixin","noop","merge","pick","H.ColorAxis","init","apply","arguments","prototype","defaultColorAxisOptions","lineWidth","minPadding","maxPadding","gridLineWidth","tickPixelInterval","startOnTick","endOnTick","offset","marker","animation","duration","width","labels","overflow","rotation","minColor","maxColor","tickLength","showInLegend","keepProps","concat","chart","userOptions","horiz","options","legend","layout","coll","side","reversed","opposite","showEmpty","title","visible","enabled","call","dataClasses","initDataClasses","initStops","zoomEnabled","defaultLegendLength","colorCounter","colorCount","len","length","legendItems","forEach","dataClass","i","push","styledMode","dataClassColor","colors","colorIndex","tweenTo","setTickPositions","stops","stop","setOptions","crosshair","setAxisSize","symbol","legendSymbol","legendOptions","y","left","x","attr","top","height","right","chartWidth","bottom","chartHeight","pos","symbolWidth","symbolHeight","normalizedValue","value","isLog","val2lin","max","min","toColor","point","from","to","getOffset","group","legendGroup","sideOffset","axisOffset","axisParent","added","labelLeft","labelRight","setLegendColor","grad","one","zero","legendColor","linearGradient","x1","y1","x2","y2","drawLegendSymbol","item","padding","labelPadding","itemDistance","renderer","rect","baseline","zIndex","add","legendItemWidth","legendItemHeight","setState","state","series","setVisible","getSeriesExtremes","dataMin","Infinity","dataMax","getExtremes","valueMin","Math","valueMax","drawCrosshair","e","plotX","plotY","crossPos","axisPos","axisLen","toPixels","colorKey","cross","addedToColorAxis","addClass","fill","getPlotLinePath","a","b","c","d","update","newOptions","redraw","isDirtyData","allItems","isDataClass","destroy","isDirtyLegend","legendItem","colorizeItem","remove","destroyItem","getDataClassLegendSymbols","axis","valueDecimals","valueSuffix","name","vis","numberFormat","drawRectangle","points","prop","Fx","elem","start","end","colorAxisOptions","colorAxis","colorAxisItems","erase","unshift","defined","seriesTypes","colorPointMixin","isValid","method","key","Point","graphic","colorSeriesMixin","pointArrayMap","axisTypes","optionalAxis","trackerGroups","getSymbol","parallelArrays","pointAttribs","column","translateColors","nullColor","data","isNull","colorAttribs","ret","colorProp","Series","seriesType","borderWidth","dataLabels","formatter","inside","verticalAlign","crop","pointRange","tooltip","pointFormat","states","hover","halo","brightness","hasPointSpecificOptions","getExtremesFromAll","directTouch","scatter","colsize","yAxis","axisPointRange","rowsize","translate","xAxis","seriesPointPadding","pointPadding","between","pointPlacement","pointPlacementToXValue","generatePoints","xPad","yPad","round","clientX","shapeType","shapeArgs","abs","drawPoints","func","getValidPoints","insideOnly","animate","getBox","alignDataLabel","valueData","haloPath","size"]}
@@ -0,0 +1,1731 @@
1
+ /**
2
+ * @license Highcharts JS v7.0.3 (2019-02-06)
3
+ *
4
+ * (c) 2009-2019 Torstein Honsi
5
+ *
6
+ * License: www.highcharts.com/license
7
+ */
8
+ 'use strict';
9
+ (function (factory) {
10
+ if (typeof module === 'object' && module.exports) {
11
+ factory['default'] = factory;
12
+ module.exports = factory;
13
+ } else if (typeof define === 'function' && define.amd) {
14
+ define(function () {
15
+ return factory;
16
+ });
17
+ } else {
18
+ factory(typeof Highcharts !== 'undefined' ? Highcharts : undefined);
19
+ }
20
+ }(function (Highcharts) {
21
+ (function (H) {
22
+ /* *
23
+ *
24
+ * (c) 2010-2019 Torstein Honsi
25
+ *
26
+ * License: www.highcharts.com/license
27
+ *
28
+ * */
29
+
30
+
31
+
32
+ var addEvent = H.addEvent,
33
+ Axis = H.Axis,
34
+ Chart = H.Chart,
35
+ color = H.color,
36
+ ColorAxis,
37
+ extend = H.extend,
38
+ isNumber = H.isNumber,
39
+ Legend = H.Legend,
40
+ LegendSymbolMixin = H.LegendSymbolMixin,
41
+ noop = H.noop,
42
+ merge = H.merge,
43
+ pick = H.pick;
44
+
45
+ // If ColorAxis already exists, we may be loading the heatmap module on top of
46
+ // Highmaps.
47
+ if (!H.ColorAxis) {
48
+
49
+ /**
50
+ * The ColorAxis object for inclusion in gradient legends.
51
+ *
52
+ * @private
53
+ * @class
54
+ * @name Highcharts.ColorAxis
55
+ *
56
+ * @augments Highcharts.Axis
57
+ */
58
+ ColorAxis = H.ColorAxis = function () {
59
+ this.init.apply(this, arguments);
60
+ };
61
+
62
+ extend(ColorAxis.prototype, Axis.prototype);
63
+
64
+ extend(ColorAxis.prototype, {
65
+
66
+ /**
67
+ * A color axis for choropleth maps and heat maps. Visually, the color
68
+ * axis will appear as a gradient or as separate items inside the
69
+ * legend, depending on whether the axis is scalar or based on data
70
+ * classes.
71
+ *
72
+ * For supported color formats, see the
73
+ * [docs article about colors](https://www.highcharts.com/docs/chart-design-and-style/colors).
74
+ *
75
+ * A scalar color axis is represented by a gradient. The colors either
76
+ * range between the [minColor](#colorAxis.minColor) and the
77
+ * [maxColor](#colorAxis.maxColor), or for more fine grained control the
78
+ * colors can be defined in [stops](#colorAxis.stops). Often times, the
79
+ * color axis needs to be adjusted to get the right color spread for the
80
+ * data. In addition to stops, consider using a logarithmic
81
+ * [axis type](#colorAxis.type), or setting [min](#colorAxis.min) and
82
+ * [max](#colorAxis.max) to avoid the colors being determined by
83
+ * outliers.
84
+ *
85
+ * When [dataClasses](#colorAxis.dataClasses) are used, the ranges are
86
+ * subdivided into separate classes like categories based on their
87
+ * values. This can be used for ranges between two values, but also for
88
+ * a true category. However, when your data is categorized, it may be as
89
+ * convenient to add each category to a separate series.
90
+ *
91
+ * See [the Axis object](/class-reference/Highcharts.Axis) for
92
+ * programmatic access to the axis.
93
+ *
94
+ * @extends xAxis
95
+ * @excluding allowDecimals, alternateGridColor, breaks, categories,
96
+ * crosshair, dateTimeLabelFormats, lineWidth, linkedTo,
97
+ * maxZoom, minRange, minTickInterval, offset, opposite,
98
+ * plotBands, plotLines, showEmpty, title
99
+ * @product highcharts highmaps
100
+ * @optionparent colorAxis
101
+ */
102
+ defaultColorAxisOptions: {
103
+
104
+ /**
105
+ * Whether to allow decimals on the color axis.
106
+ * @type {boolean}
107
+ * @default true
108
+ * @product highcharts highmaps
109
+ * @apioption colorAxis.allowDecimals
110
+ */
111
+
112
+ /**
113
+ * Determines how to set each data class' color if no individual
114
+ * color is set. The default value, `tween`, computes intermediate
115
+ * colors between `minColor` and `maxColor`. The other possible
116
+ * value, `category`, pulls colors from the global or chart specific
117
+ * [colors](#colors) array.
118
+ *
119
+ * @sample {highmaps} maps/coloraxis/dataclasscolor/
120
+ * Category colors
121
+ *
122
+ * @type {string}
123
+ * @default tween
124
+ * @product highcharts highmaps
125
+ * @validvalue ["tween", "category"]
126
+ * @apioption colorAxis.dataClassColor
127
+ */
128
+
129
+ /**
130
+ * An array of data classes or ranges for the choropleth map. If
131
+ * none given, the color axis is scalar and values are distributed
132
+ * as a gradient between the minimum and maximum colors.
133
+ *
134
+ * @sample {highmaps} maps/demo/data-class-ranges/
135
+ * Multiple ranges
136
+ *
137
+ * @sample {highmaps} maps/demo/data-class-two-ranges/
138
+ * Two ranges
139
+ *
140
+ * @type {Array<*>}
141
+ * @product highcharts highmaps
142
+ * @apioption colorAxis.dataClasses
143
+ */
144
+
145
+ /**
146
+ * The color of each data class. If not set, the color is pulled
147
+ * from the global or chart-specific [colors](#colors) array. In
148
+ * styled mode, this option is ignored. Instead, use colors defined
149
+ * in CSS.
150
+ *
151
+ * @sample {highmaps} maps/demo/data-class-two-ranges/
152
+ * Explicit colors
153
+ *
154
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
155
+ * @product highcharts highmaps
156
+ * @apioption colorAxis.dataClasses.color
157
+ */
158
+
159
+ /**
160
+ * The start of the value range that the data class represents,
161
+ * relating to the point value.
162
+ *
163
+ * The range of each `dataClass` is closed in both ends, but can be
164
+ * overridden by the next `dataClass`.
165
+ *
166
+ * @type {number}
167
+ * @product highcharts highmaps
168
+ * @apioption colorAxis.dataClasses.from
169
+ */
170
+
171
+ /**
172
+ * The name of the data class as it appears in the legend.
173
+ * If no name is given, it is automatically created based on the
174
+ * `from` and `to` values. For full programmatic control,
175
+ * [legend.labelFormatter](#legend.labelFormatter) can be used.
176
+ * In the formatter, `this.from` and `this.to` can be accessed.
177
+ *
178
+ * @sample {highmaps} maps/coloraxis/dataclasses-name/
179
+ * Named data classes
180
+ *
181
+ * @sample {highmaps} maps/coloraxis/dataclasses-labelformatter/
182
+ * Formatted data classes
183
+ *
184
+ * @type {string}
185
+ * @product highcharts highmaps
186
+ * @apioption colorAxis.dataClasses.name
187
+ */
188
+
189
+ /**
190
+ * The end of the value range that the data class represents,
191
+ * relating to the point value.
192
+ *
193
+ * The range of each `dataClass` is closed in both ends, but can be
194
+ * overridden by the next `dataClass`.
195
+ *
196
+ * @type {number}
197
+ * @product highcharts highmaps
198
+ * @apioption colorAxis.dataClasses.to
199
+ */
200
+
201
+ /** @ignore-option */
202
+ lineWidth: 0,
203
+
204
+ /**
205
+ * Padding of the min value relative to the length of the axis. A
206
+ * padding of 0.05 will make a 100px axis 5px longer.
207
+ *
208
+ * @product highcharts highmaps
209
+ */
210
+ minPadding: 0,
211
+
212
+ /**
213
+ * The maximum value of the axis in terms of map point values. If
214
+ * `null`, the max value is automatically calculated. If the
215
+ * `endOnTick` option is true, the max value might be rounded up.
216
+ *
217
+ * @sample {highmaps} maps/coloraxis/gridlines/
218
+ * Explicit min and max to reduce the effect of outliers
219
+ *
220
+ * @type {number}
221
+ * @product highcharts highmaps
222
+ * @apioption colorAxis.max
223
+ */
224
+
225
+ /**
226
+ * The minimum value of the axis in terms of map point values. If
227
+ * `null`, the min value is automatically calculated. If the
228
+ * `startOnTick` option is true, the min value might be rounded
229
+ * down.
230
+ *
231
+ * @sample {highmaps} maps/coloraxis/gridlines/
232
+ * Explicit min and max to reduce the effect of outliers
233
+ *
234
+ * @type {number}
235
+ * @product highcharts highmaps
236
+ * @apioption colorAxis.min
237
+ */
238
+
239
+ /**
240
+ * Padding of the max value relative to the length of the axis. A
241
+ * padding of 0.05 will make a 100px axis 5px longer.
242
+ *
243
+ * @product highcharts highmaps
244
+ */
245
+ maxPadding: 0,
246
+
247
+ /**
248
+ * Color of the grid lines extending from the axis across the
249
+ * gradient.
250
+ *
251
+ * @sample {highmaps} maps/coloraxis/gridlines/
252
+ * Grid lines demonstrated
253
+ *
254
+ * @type {Highcharts.ColorString}
255
+ * @default #e6e6e6
256
+ * @product highcharts highmaps
257
+ * @apioption colorAxis.gridLineColor
258
+ */
259
+
260
+ /**
261
+ * The width of the grid lines extending from the axis across the
262
+ * gradient of a scalar color axis.
263
+ *
264
+ * @sample {highmaps} maps/coloraxis/gridlines/
265
+ * Grid lines demonstrated
266
+ *
267
+ * @product highcharts highmaps
268
+ */
269
+ gridLineWidth: 1,
270
+
271
+ /**
272
+ * The interval of the tick marks in axis units. When `null`, the
273
+ * tick interval is computed to approximately follow the
274
+ * `tickPixelInterval`.
275
+ *
276
+ * @type {number}
277
+ * @product highcharts highmaps
278
+ * @apioption colorAxis.tickInterval
279
+ */
280
+
281
+ /**
282
+ * If [tickInterval](#colorAxis.tickInterval) is `null` this option
283
+ * sets the approximate pixel interval of the tick marks.
284
+ *
285
+ * @product highcharts highmaps
286
+ */
287
+ tickPixelInterval: 72,
288
+
289
+ /**
290
+ * Whether to force the axis to start on a tick. Use this option
291
+ * with the `maxPadding` option to control the axis start.
292
+ *
293
+ * @product highcharts highmaps
294
+ */
295
+ startOnTick: true,
296
+
297
+ /**
298
+ * Whether to force the axis to end on a tick. Use this option with
299
+ * the [maxPadding](#colorAxis.maxPadding) option to control the
300
+ * axis end.
301
+ *
302
+ * @product highcharts highmaps
303
+ */
304
+ endOnTick: true,
305
+
306
+ /** @ignore */
307
+ offset: 0,
308
+
309
+ /**
310
+ * The triangular marker on a scalar color axis that points to the
311
+ * value of the hovered area. To disable the marker, set
312
+ * `marker: null`.
313
+ *
314
+ * @sample {highmaps} maps/coloraxis/marker/
315
+ * Black marker
316
+ *
317
+ * @product highcharts highmaps
318
+ */
319
+ marker: {
320
+
321
+ /**
322
+ * Animation for the marker as it moves between values. Set to
323
+ * `false` to disable animation. Defaults to `{ duration: 50 }`.
324
+ *
325
+ * @type {boolean|Highcharts.AnimationOptionsObject}
326
+ * @default {"duration": 50}
327
+ * @product highcharts highmaps
328
+ */
329
+ animation: {
330
+ /** @ignore */
331
+ duration: 50
332
+ },
333
+
334
+ /** @ignore */
335
+ width: 0.01,
336
+
337
+ /**
338
+ * The color of the marker.
339
+ *
340
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
341
+ * @product highcharts highmaps
342
+ */
343
+ color: '#999999'
344
+ },
345
+
346
+ /**
347
+ * The axis labels show the number for each tick.
348
+ *
349
+ * For more live examples on label options, see [xAxis.labels in the
350
+ * Highcharts API.](/highcharts#xAxis.labels)
351
+ *
352
+ * @extends xAxis.labels
353
+ * @product highcharts highmaps
354
+ */
355
+ labels: {
356
+
357
+ /**
358
+ * How to handle overflowing labels on horizontal color axis.
359
+ * Can be undefined or "justify". If "justify", labels will not
360
+ * render outside the legend area. If there is room to move it,
361
+ * it will be aligned to the edge, else it will be removed.
362
+ *
363
+ * @validvalue ["allow", "justify"]
364
+ * @product highcharts highmaps
365
+ */
366
+ overflow: 'justify',
367
+
368
+ rotation: 0
369
+
370
+ },
371
+
372
+ /**
373
+ * The color to represent the minimum of the color axis. Unless
374
+ * [dataClasses](#colorAxis.dataClasses) or
375
+ * [stops](#colorAxis.stops) are set, the gradient starts at this
376
+ * value.
377
+ *
378
+ * If dataClasses are set, the color is based on minColor and
379
+ * maxColor unless a color is set for each data class, or the
380
+ * [dataClassColor](#colorAxis.dataClassColor) is set.
381
+ *
382
+ * @sample {highmaps} maps/coloraxis/mincolor-maxcolor/
383
+ * Min and max colors on scalar (gradient) axis
384
+ * @sample {highmaps} maps/coloraxis/mincolor-maxcolor-dataclasses/
385
+ * On data classes
386
+ *
387
+ * @type {Highcharts.ColorString}
388
+ * @product highcharts highmaps
389
+ */
390
+ minColor: '#e6ebf5',
391
+
392
+ /**
393
+ * The color to represent the maximum of the color axis. Unless
394
+ * [dataClasses](#colorAxis.dataClasses) or
395
+ * [stops](#colorAxis.stops) are set, the gradient ends at this
396
+ * value.
397
+ *
398
+ * If dataClasses are set, the color is based on minColor and
399
+ * maxColor unless a color is set for each data class, or the
400
+ * [dataClassColor](#colorAxis.dataClassColor) is set.
401
+ *
402
+ * @sample {highmaps} maps/coloraxis/mincolor-maxcolor/
403
+ * Min and max colors on scalar (gradient) axis
404
+ * @sample {highmaps} maps/coloraxis/mincolor-maxcolor-dataclasses/
405
+ * On data classes
406
+ *
407
+ * @type {Highcharts.ColorString}
408
+ * @product highcharts highmaps
409
+ */
410
+ maxColor: '#003399',
411
+
412
+ /**
413
+ * Color stops for the gradient of a scalar color axis. Use this in
414
+ * cases where a linear gradient between a `minColor` and `maxColor`
415
+ * is not sufficient. The stops is an array of tuples, where the
416
+ * first item is a float between 0 and 1 assigning the relative
417
+ * position in the gradient, and the second item is the color.
418
+ *
419
+ * @sample {highmaps} maps/demo/heatmap/
420
+ * Heatmap with three color stops
421
+ *
422
+ * @type {Array<Array<number,Highcharts.ColorString>>}
423
+ * @product highcharts highmaps
424
+ * @apioption colorAxis.stops
425
+ */
426
+
427
+ /**
428
+ * The pixel length of the main tick marks on the color axis.
429
+ */
430
+ tickLength: 5,
431
+
432
+ /**
433
+ * The type of interpolation to use for the color axis. Can be
434
+ * `linear` or `logarithmic`.
435
+ *
436
+ * @type {string}
437
+ * @default linear
438
+ * @product highcharts highmaps
439
+ * @validvalue ["linear", "logarithmic"]
440
+ * @apioption colorAxis.type
441
+ */
442
+
443
+ /**
444
+ * Whether to reverse the axis so that the highest number is closest
445
+ * to the origin. Defaults to `false` in a horizontal legend and
446
+ * `true` in a vertical legend, where the smallest value starts on
447
+ * top.
448
+ *
449
+ * @type {boolean}
450
+ * @product highcharts highmaps
451
+ * @apioption colorAxis.reversed
452
+ */
453
+
454
+ /**
455
+ * @product highcharts highmaps
456
+ * @excluding afterBreaks, pointBreak, pointInBreak
457
+ * @apioption colorAxis.events
458
+ */
459
+
460
+ /**
461
+ * Fires when the legend item belonging to the colorAxis is clicked.
462
+ * One parameter, `event`, is passed to the function.
463
+ *
464
+ * @type {Function}
465
+ * @product highcharts highmaps
466
+ * @apioption colorAxis.events.legendItemClick
467
+ */
468
+
469
+ /**
470
+ * Whether to display the colorAxis in the legend.
471
+ *
472
+ * @see [heatmap.showInLegend](#series.heatmap.showInLegend)
473
+ *
474
+ * @since 4.2.7
475
+ * @product highcharts highmaps
476
+ */
477
+ showInLegend: true
478
+ },
479
+
480
+ // Properties to preserve after destroy, for Axis.update (#5881, #6025)
481
+ keepProps: [
482
+ 'legendGroup',
483
+ 'legendItemHeight',
484
+ 'legendItemWidth',
485
+ 'legendItem',
486
+ 'legendSymbol'
487
+ ].concat(Axis.prototype.keepProps),
488
+
489
+ /**
490
+ * Initialize the color axis
491
+ *
492
+ * @private
493
+ * @function Highcharts.ColorAxis#init
494
+ *
495
+ * @param {Highcharts.Chart} chart
496
+ *
497
+ * @param {Highcharts.ColorAxisOptions} userOptions
498
+ */
499
+ init: function (chart, userOptions) {
500
+ var horiz = chart.options.legend.layout !== 'vertical',
501
+ options;
502
+
503
+ this.coll = 'colorAxis';
504
+
505
+ // Build the options
506
+ options = merge(this.defaultColorAxisOptions, {
507
+ side: horiz ? 2 : 1,
508
+ reversed: !horiz
509
+ }, userOptions, {
510
+ opposite: !horiz,
511
+ showEmpty: false,
512
+ title: null,
513
+ visible: chart.options.legend.enabled
514
+ });
515
+
516
+ Axis.prototype.init.call(this, chart, options);
517
+
518
+ // Base init() pushes it to the xAxis array, now pop it again
519
+ // chart[this.isXAxis ? 'xAxis' : 'yAxis'].pop();
520
+
521
+ // Prepare data classes
522
+ if (userOptions.dataClasses) {
523
+ this.initDataClasses(userOptions);
524
+ }
525
+ this.initStops();
526
+
527
+ // Override original axis properties
528
+ this.horiz = horiz;
529
+ this.zoomEnabled = false;
530
+
531
+ // Add default values
532
+ this.defaultLegendLength = 200;
533
+ },
534
+
535
+ initDataClasses: function (userOptions) {
536
+ var chart = this.chart,
537
+ dataClasses,
538
+ colorCounter = 0,
539
+ colorCount = chart.options.chart.colorCount,
540
+ options = this.options,
541
+ len = userOptions.dataClasses.length;
542
+
543
+ this.dataClasses = dataClasses = [];
544
+ this.legendItems = [];
545
+
546
+ userOptions.dataClasses.forEach(function (dataClass, i) {
547
+ var colors;
548
+
549
+ dataClass = merge(dataClass);
550
+ dataClasses.push(dataClass);
551
+
552
+ if (!chart.styledMode && dataClass.color) {
553
+ return;
554
+ }
555
+
556
+ if (options.dataClassColor === 'category') {
557
+ if (!chart.styledMode) {
558
+ colors = chart.options.colors;
559
+ colorCount = colors.length;
560
+ dataClass.color = colors[colorCounter];
561
+ }
562
+
563
+ dataClass.colorIndex = colorCounter;
564
+
565
+ // increase and loop back to zero
566
+ colorCounter++;
567
+ if (colorCounter === colorCount) {
568
+ colorCounter = 0;
569
+ }
570
+ } else {
571
+ dataClass.color = color(options.minColor).tweenTo(
572
+ color(options.maxColor),
573
+ len < 2 ? 0.5 : i / (len - 1) // #3219
574
+ );
575
+ }
576
+ });
577
+ },
578
+
579
+ /**
580
+ * Override so that ticks are not added in data class axes (#6914)
581
+ *
582
+ * @private
583
+ * @function Highcharts.ColorAxis#setTickPositions
584
+ */
585
+ setTickPositions: function () {
586
+ if (!this.dataClasses) {
587
+ return Axis.prototype.setTickPositions.call(this);
588
+ }
589
+ },
590
+
591
+ initStops: function () {
592
+ this.stops = this.options.stops || [
593
+ [0, this.options.minColor],
594
+ [1, this.options.maxColor]
595
+ ];
596
+ this.stops.forEach(function (stop) {
597
+ stop.color = color(stop[1]);
598
+ });
599
+ },
600
+
601
+ /**
602
+ * Extend the setOptions method to process extreme colors and color
603
+ * stops.
604
+ *
605
+ * @private
606
+ * @function Highcharts.ColorAxis#setOptions
607
+ *
608
+ * @param {Highcharts.ColorAxisOptions} userOptions
609
+ */
610
+ setOptions: function (userOptions) {
611
+ Axis.prototype.setOptions.call(this, userOptions);
612
+
613
+ this.options.crosshair = this.options.marker;
614
+ },
615
+
616
+ setAxisSize: function () {
617
+ var symbol = this.legendSymbol,
618
+ chart = this.chart,
619
+ legendOptions = chart.options.legend || {},
620
+ x,
621
+ y,
622
+ width,
623
+ height;
624
+
625
+ if (symbol) {
626
+ this.left = x = symbol.attr('x');
627
+ this.top = y = symbol.attr('y');
628
+ this.width = width = symbol.attr('width');
629
+ this.height = height = symbol.attr('height');
630
+ this.right = chart.chartWidth - x - width;
631
+ this.bottom = chart.chartHeight - y - height;
632
+
633
+ this.len = this.horiz ? width : height;
634
+ this.pos = this.horiz ? x : y;
635
+ } else {
636
+ // Fake length for disabled legend to avoid tick issues
637
+ // and such (#5205)
638
+ this.len = (
639
+ this.horiz ?
640
+ legendOptions.symbolWidth :
641
+ legendOptions.symbolHeight
642
+ ) || this.defaultLegendLength;
643
+ }
644
+ },
645
+
646
+ normalizedValue: function (value) {
647
+ if (this.isLog) {
648
+ value = this.val2lin(value);
649
+ }
650
+ return 1 - ((this.max - value) / ((this.max - this.min) || 1));
651
+ },
652
+
653
+ /**
654
+ * Translate from a value to a color.
655
+ *
656
+ * @private
657
+ * @function Highcharts.ColorAxis#toColor
658
+ *
659
+ * @param {number} value
660
+ *
661
+ * @param {Highcharts.Point} point
662
+ */
663
+ toColor: function (value, point) {
664
+ var pos,
665
+ stops = this.stops,
666
+ from,
667
+ to,
668
+ color,
669
+ dataClasses = this.dataClasses,
670
+ dataClass,
671
+ i;
672
+
673
+ if (dataClasses) {
674
+ i = dataClasses.length;
675
+ while (i--) {
676
+ dataClass = dataClasses[i];
677
+ from = dataClass.from;
678
+ to = dataClass.to;
679
+ if (
680
+ (from === undefined || value >= from) &&
681
+ (to === undefined || value <= to)
682
+ ) {
683
+
684
+ color = dataClass.color;
685
+
686
+ if (point) {
687
+ point.dataClass = i;
688
+ point.colorIndex = dataClass.colorIndex;
689
+ }
690
+ break;
691
+ }
692
+ }
693
+
694
+ } else {
695
+
696
+ pos = this.normalizedValue(value);
697
+ i = stops.length;
698
+ while (i--) {
699
+ if (pos > stops[i][0]) {
700
+ break;
701
+ }
702
+ }
703
+ from = stops[i] || stops[i + 1];
704
+ to = stops[i + 1] || from;
705
+
706
+ // The position within the gradient
707
+ pos = 1 - (to[0] - pos) / ((to[0] - from[0]) || 1);
708
+
709
+ color = from.color.tweenTo(
710
+ to.color,
711
+ pos
712
+ );
713
+ }
714
+ return color;
715
+ },
716
+
717
+ /**
718
+ * Override the getOffset method to add the whole axis groups inside
719
+ * the legend.
720
+ *
721
+ * @private
722
+ * @function Highcharts.ColorAxis#getOffset
723
+ */
724
+ getOffset: function () {
725
+ var group = this.legendGroup,
726
+ sideOffset = this.chart.axisOffset[this.side];
727
+
728
+ if (group) {
729
+
730
+ // Hook for the getOffset method to add groups to this parent
731
+ // group
732
+ this.axisParent = group;
733
+
734
+ // Call the base
735
+ Axis.prototype.getOffset.call(this);
736
+
737
+ // First time only
738
+ if (!this.added) {
739
+
740
+ this.added = true;
741
+
742
+ this.labelLeft = 0;
743
+ this.labelRight = this.width;
744
+ }
745
+ // Reset it to avoid color axis reserving space
746
+ this.chart.axisOffset[this.side] = sideOffset;
747
+ }
748
+ },
749
+
750
+ /**
751
+ * Create the color gradient.
752
+ *
753
+ * @private
754
+ * @function Highcharts.ColorAxis#setLegendColor
755
+ */
756
+ setLegendColor: function () {
757
+ var grad,
758
+ horiz = this.horiz,
759
+ reversed = this.reversed,
760
+ one = reversed ? 1 : 0,
761
+ zero = reversed ? 0 : 1;
762
+
763
+ grad = horiz ? [one, 0, zero, 0] : [0, zero, 0, one]; // #3190
764
+ this.legendColor = {
765
+ linearGradient: {
766
+ x1: grad[0],
767
+ y1: grad[1],
768
+ x2: grad[2],
769
+ y2: grad[3]
770
+ },
771
+ stops: this.stops
772
+ };
773
+ },
774
+
775
+ /**
776
+ * The color axis appears inside the legend and has its own legend
777
+ * symbol.
778
+ *
779
+ * @private
780
+ * @function Highcharts.ColorAxis#drawLegendSymbol
781
+ *
782
+ * @param {Highcharts.Legend} legend
783
+ *
784
+ * @param {*} item
785
+ */
786
+ drawLegendSymbol: function (legend, item) {
787
+ var padding = legend.padding,
788
+ legendOptions = legend.options,
789
+ horiz = this.horiz,
790
+ width = pick(
791
+ legendOptions.symbolWidth,
792
+ horiz ? this.defaultLegendLength : 12
793
+ ),
794
+ height = pick(
795
+ legendOptions.symbolHeight,
796
+ horiz ? 12 : this.defaultLegendLength
797
+ ),
798
+ labelPadding = pick(
799
+ legendOptions.labelPadding,
800
+ horiz ? 16 : 30
801
+ ),
802
+ itemDistance = pick(legendOptions.itemDistance, 10);
803
+
804
+ this.setLegendColor();
805
+
806
+ // Create the gradient
807
+ item.legendSymbol = this.chart.renderer.rect(
808
+ 0,
809
+ legend.baseline - 11,
810
+ width,
811
+ height
812
+ ).attr({
813
+ zIndex: 1
814
+ }).add(item.legendGroup);
815
+
816
+ // Set how much space this legend item takes up
817
+ this.legendItemWidth = width + padding +
818
+ (horiz ? itemDistance : labelPadding);
819
+ this.legendItemHeight = height + padding +
820
+ (horiz ? labelPadding : 0);
821
+ },
822
+
823
+ /**
824
+ * Fool the legend
825
+ *
826
+ * @private
827
+ * @function Highcharts.ColorAxis#setState
828
+ *
829
+ * @param {*} state
830
+ */
831
+ setState: function (state) {
832
+ this.series.forEach(function (series) {
833
+ series.setState(state);
834
+ });
835
+ },
836
+
837
+ visible: true,
838
+
839
+ setVisible: noop,
840
+
841
+ getSeriesExtremes: function () {
842
+ var series = this.series,
843
+ i = series.length;
844
+
845
+ this.dataMin = Infinity;
846
+ this.dataMax = -Infinity;
847
+ while (i--) {
848
+ series[i].getExtremes();
849
+ if (series[i].valueMin !== undefined) {
850
+ this.dataMin = Math.min(this.dataMin, series[i].valueMin);
851
+ this.dataMax = Math.max(this.dataMax, series[i].valueMax);
852
+ }
853
+ }
854
+ },
855
+
856
+ drawCrosshair: function (e, point) {
857
+ var plotX = point && point.plotX,
858
+ plotY = point && point.plotY,
859
+ crossPos,
860
+ axisPos = this.pos,
861
+ axisLen = this.len;
862
+
863
+ if (point) {
864
+ crossPos = this.toPixels(point[point.series.colorKey]);
865
+ if (crossPos < axisPos) {
866
+ crossPos = axisPos - 2;
867
+ } else if (crossPos > axisPos + axisLen) {
868
+ crossPos = axisPos + axisLen + 2;
869
+ }
870
+
871
+ point.plotX = crossPos;
872
+ point.plotY = this.len - crossPos;
873
+ Axis.prototype.drawCrosshair.call(this, e, point);
874
+ point.plotX = plotX;
875
+ point.plotY = plotY;
876
+
877
+ if (
878
+ this.cross &&
879
+ !this.cross.addedToColorAxis &&
880
+ this.legendGroup
881
+ ) {
882
+ this.cross
883
+ .addClass('highcharts-coloraxis-marker')
884
+ .add(this.legendGroup);
885
+
886
+ this.cross.addedToColorAxis = true;
887
+
888
+ if (!this.chart.styledMode) {
889
+ this.cross.attr({
890
+ fill: this.crosshair.color
891
+ });
892
+ }
893
+
894
+ }
895
+ }
896
+ },
897
+
898
+ getPlotLinePath: function (a, b, c, d, pos) {
899
+ // crosshairs only
900
+ return isNumber(pos) ? // pos can be 0 (#3969)
901
+ (
902
+ this.horiz ? [
903
+ 'M',
904
+ pos - 4, this.top - 6,
905
+ 'L',
906
+ pos + 4, this.top - 6,
907
+ pos, this.top,
908
+ 'Z'
909
+ ] : [
910
+ 'M',
911
+ this.left, pos,
912
+ 'L',
913
+ this.left - 6, pos + 6,
914
+ this.left - 6, pos - 6,
915
+ 'Z'
916
+ ]
917
+ ) :
918
+ Axis.prototype.getPlotLinePath.call(this, a, b, c, d);
919
+ },
920
+
921
+ update: function (newOptions, redraw) {
922
+ var chart = this.chart,
923
+ legend = chart.legend;
924
+
925
+ this.series.forEach(function (series) {
926
+ // Needed for Axis.update when choropleth colors change
927
+ series.isDirtyData = true;
928
+ });
929
+
930
+ // When updating data classes, destroy old items and make sure new
931
+ // ones are created (#3207)
932
+ if (newOptions.dataClasses && legend.allItems) {
933
+ legend.allItems.forEach(function (item) {
934
+ if (item.isDataClass && item.legendGroup) {
935
+ item.legendGroup.destroy();
936
+ }
937
+ });
938
+ chart.isDirtyLegend = true;
939
+ }
940
+
941
+ // Keep the options structure updated for export. Unlike xAxis and
942
+ // yAxis, the colorAxis is not an array. (#3207)
943
+ chart.options[this.coll] = merge(this.userOptions, newOptions);
944
+
945
+ Axis.prototype.update.call(this, newOptions, redraw);
946
+ if (this.legendItem) {
947
+ this.setLegendColor();
948
+ legend.colorizeItem(this, true);
949
+ }
950
+ },
951
+
952
+ /**
953
+ * Extend basic axis remove by also removing the legend item.
954
+ *
955
+ * @private
956
+ * @function Highcharts.ColorAxis#remove
957
+ */
958
+ remove: function () {
959
+ if (this.legendItem) {
960
+ this.chart.legend.destroyItem(this);
961
+ }
962
+ Axis.prototype.remove.call(this);
963
+ },
964
+
965
+ /**
966
+ * Get the legend item symbols for data classes.
967
+ *
968
+ * @private
969
+ * @function Highcharts.ColorAxis#getDataClassLegendSymbols
970
+ *
971
+ * @return {*}
972
+ */
973
+ getDataClassLegendSymbols: function () {
974
+ var axis = this,
975
+ chart = this.chart,
976
+ legendItems = this.legendItems,
977
+ legendOptions = chart.options.legend,
978
+ valueDecimals = legendOptions.valueDecimals,
979
+ valueSuffix = legendOptions.valueSuffix || '',
980
+ name;
981
+
982
+ if (!legendItems.length) {
983
+ this.dataClasses.forEach(function (dataClass, i) {
984
+ var vis = true,
985
+ from = dataClass.from,
986
+ to = dataClass.to;
987
+
988
+ // Assemble the default name. This can be overridden
989
+ // by legend.options.labelFormatter
990
+ name = '';
991
+ if (from === undefined) {
992
+ name = '< ';
993
+ } else if (to === undefined) {
994
+ name = '> ';
995
+ }
996
+ if (from !== undefined) {
997
+ name += H.numberFormat(from, valueDecimals) +
998
+ valueSuffix;
999
+ }
1000
+ if (from !== undefined && to !== undefined) {
1001
+ name += ' - ';
1002
+ }
1003
+ if (to !== undefined) {
1004
+ name += H.numberFormat(to, valueDecimals) + valueSuffix;
1005
+ }
1006
+ // Add a mock object to the legend items
1007
+ legendItems.push(extend({
1008
+ chart: chart,
1009
+ name: name,
1010
+ options: {},
1011
+ drawLegendSymbol: LegendSymbolMixin.drawRectangle,
1012
+ visible: true,
1013
+ setState: noop,
1014
+ isDataClass: true,
1015
+ setVisible: function () {
1016
+ vis = this.visible = !vis;
1017
+ axis.series.forEach(function (series) {
1018
+ series.points.forEach(function (point) {
1019
+ if (point.dataClass === i) {
1020
+ point.setVisible(vis);
1021
+ }
1022
+ });
1023
+ });
1024
+ chart.legend.colorizeItem(this, vis);
1025
+ }
1026
+ }, dataClass));
1027
+ });
1028
+ }
1029
+ return legendItems;
1030
+ },
1031
+ name: '' // Prevents 'undefined' in legend in IE8
1032
+ });
1033
+
1034
+ /**
1035
+ * Handle animation of the color attributes directly
1036
+ *
1037
+ * @private
1038
+ * @function Highcharts.Fx#fillSetter
1039
+ *//**
1040
+ * Handle animation of the color attributes directly
1041
+ *
1042
+ * @private
1043
+ * @function Highcharts.Fx#strokeSetter
1044
+ */
1045
+ ['fill', 'stroke'].forEach(function (prop) {
1046
+ H.Fx.prototype[prop + 'Setter'] = function () {
1047
+ this.elem.attr(
1048
+ prop,
1049
+ color(this.start).tweenTo(
1050
+ color(this.end),
1051
+ this.pos
1052
+ ),
1053
+ null,
1054
+ true
1055
+ );
1056
+ };
1057
+ });
1058
+
1059
+ // Extend the chart getAxes method to also get the color axis
1060
+ addEvent(Chart, 'afterGetAxes', function () {
1061
+
1062
+ var options = this.options,
1063
+ colorAxisOptions = options.colorAxis;
1064
+
1065
+ this.colorAxis = [];
1066
+ if (colorAxisOptions) {
1067
+ new ColorAxis(this, colorAxisOptions); // eslint-disable-line no-new
1068
+ }
1069
+ });
1070
+
1071
+
1072
+ // Add the color axis. This also removes the axis' own series to prevent
1073
+ // them from showing up individually.
1074
+ addEvent(Legend, 'afterGetAllItems', function (e) {
1075
+ var colorAxisItems = [],
1076
+ colorAxis = this.chart.colorAxis[0],
1077
+ i;
1078
+
1079
+ if (colorAxis && colorAxis.options) {
1080
+ if (colorAxis.options.showInLegend) {
1081
+ // Data classes
1082
+ if (colorAxis.options.dataClasses) {
1083
+ colorAxisItems = colorAxis.getDataClassLegendSymbols();
1084
+ // Gradient legend
1085
+ } else {
1086
+ // Add this axis on top
1087
+ colorAxisItems.push(colorAxis);
1088
+ }
1089
+
1090
+ // Don't add the color axis' series
1091
+ colorAxis.series.forEach(function (series) {
1092
+ H.erase(e.allItems, series);
1093
+ });
1094
+ }
1095
+ }
1096
+
1097
+ i = colorAxisItems.length;
1098
+ while (i--) {
1099
+ e.allItems.unshift(colorAxisItems[i]);
1100
+ }
1101
+ });
1102
+
1103
+ addEvent(Legend, 'afterColorizeItem', function (e) {
1104
+ if (e.visible && e.item.legendColor) {
1105
+ e.item.legendSymbol.attr({
1106
+ fill: e.item.legendColor
1107
+ });
1108
+ }
1109
+ });
1110
+
1111
+ // Updates in the legend need to be reflected in the color axis (6888)
1112
+ addEvent(Legend, 'afterUpdate', function () {
1113
+ if (this.chart.colorAxis[0]) {
1114
+ this.chart.colorAxis[0].update({}, arguments[2]);
1115
+ }
1116
+ });
1117
+ }
1118
+
1119
+ }(Highcharts));
1120
+ (function (H) {
1121
+ /**
1122
+ * (c) 2010-2019 Torstein Honsi
1123
+ *
1124
+ * License: www.highcharts.com/license
1125
+ */
1126
+
1127
+
1128
+
1129
+ var defined = H.defined,
1130
+ noop = H.noop,
1131
+ seriesTypes = H.seriesTypes;
1132
+
1133
+ /**
1134
+ * Mixin for maps and heatmaps
1135
+ *
1136
+ * @private
1137
+ * @mixin Highcharts.colorPointMixin
1138
+ */
1139
+ H.colorPointMixin = {
1140
+ /**
1141
+ * Color points have a value option that determines whether or not it is
1142
+ * a null point
1143
+ *
1144
+ * @function Highcharts.colorPointMixin.isValid
1145
+ *
1146
+ * @return {boolean}
1147
+ */
1148
+ isValid: function () {
1149
+ // undefined is allowed
1150
+ return (
1151
+ this.value !== null &&
1152
+ this.value !== Infinity &&
1153
+ this.value !== -Infinity
1154
+ );
1155
+ },
1156
+
1157
+ /**
1158
+ * Set the visibility of a single point
1159
+ *
1160
+ * @function Highcharts.colorPointMixin.setVisible
1161
+ *
1162
+ * @param {boolean} visible
1163
+ */
1164
+ setVisible: function (vis) {
1165
+ var point = this,
1166
+ method = vis ? 'show' : 'hide';
1167
+
1168
+ point.visible = Boolean(vis);
1169
+
1170
+ // Show and hide associated elements
1171
+ ['graphic', 'dataLabel'].forEach(function (key) {
1172
+ if (point[key]) {
1173
+ point[key][method]();
1174
+ }
1175
+ });
1176
+ },
1177
+ /**
1178
+ * @function Highcharts.colorPointMixin.setState
1179
+ *
1180
+ * @param {string} state
1181
+ */
1182
+ setState: function (state) {
1183
+ H.Point.prototype.setState.call(this, state);
1184
+ if (this.graphic) {
1185
+ this.graphic.attr({
1186
+ zIndex: state === 'hover' ? 1 : 0
1187
+ });
1188
+ }
1189
+ }
1190
+ };
1191
+
1192
+ /**
1193
+ * @private
1194
+ * @mixin Highcharts.colorSeriesMixin
1195
+ */
1196
+ H.colorSeriesMixin = {
1197
+ pointArrayMap: ['value'],
1198
+ axisTypes: ['xAxis', 'yAxis', 'colorAxis'],
1199
+ optionalAxis: 'colorAxis',
1200
+ trackerGroups: ['group', 'markerGroup', 'dataLabelsGroup'],
1201
+ getSymbol: noop,
1202
+ parallelArrays: ['x', 'y', 'value'],
1203
+ colorKey: 'value',
1204
+
1205
+ pointAttribs: seriesTypes.column.prototype.pointAttribs,
1206
+
1207
+ /**
1208
+ * In choropleth maps, the color is a result of the value, so this needs
1209
+ * translation too
1210
+ *
1211
+ * @function Highcharts.colorSeriesMixin.translateColors
1212
+ */
1213
+ translateColors: function () {
1214
+ var series = this,
1215
+ nullColor = this.options.nullColor,
1216
+ colorAxis = this.colorAxis,
1217
+ colorKey = this.colorKey;
1218
+
1219
+ this.data.forEach(function (point) {
1220
+ var value = point[colorKey],
1221
+ color;
1222
+
1223
+ color = point.options.color ||
1224
+ (
1225
+ point.isNull ?
1226
+ nullColor :
1227
+ (colorAxis && value !== undefined) ?
1228
+ colorAxis.toColor(value, point) :
1229
+ point.color || series.color
1230
+ );
1231
+
1232
+ if (color) {
1233
+ point.color = color;
1234
+ }
1235
+ });
1236
+ },
1237
+
1238
+ /**
1239
+ * Get the color attibutes to apply on the graphic
1240
+ *
1241
+ * @function Highcharts.colorSeriesMixin.colorAttribs
1242
+ *
1243
+ * @param {Highcharts.Point} point
1244
+ *
1245
+ * @return {Highcharts.Dictionary<Highcharts.ColorString>}
1246
+ */
1247
+ colorAttribs: function (point) {
1248
+ var ret = {};
1249
+
1250
+ if (defined(point.color)) {
1251
+ ret[this.colorProp || 'fill'] = point.color;
1252
+ }
1253
+ return ret;
1254
+ }
1255
+ };
1256
+
1257
+ }(Highcharts));
1258
+ (function (H) {
1259
+ /**
1260
+ * (c) 2010-2019 Torstein Honsi
1261
+ *
1262
+ * License: www.highcharts.com/license
1263
+ */
1264
+
1265
+
1266
+
1267
+ var colorPointMixin = H.colorPointMixin,
1268
+ colorSeriesMixin = H.colorSeriesMixin,
1269
+ LegendSymbolMixin = H.LegendSymbolMixin,
1270
+ merge = H.merge,
1271
+ noop = H.noop,
1272
+ pick = H.pick,
1273
+ Series = H.Series,
1274
+ seriesType = H.seriesType,
1275
+ seriesTypes = H.seriesTypes;
1276
+
1277
+ /**
1278
+ * @private
1279
+ * @class
1280
+ * @name Highcharts.seriesTypes.heatmap
1281
+ *
1282
+ * @augments Highcharts.Series
1283
+ */
1284
+ seriesType(
1285
+ 'heatmap',
1286
+ 'scatter',
1287
+
1288
+ /**
1289
+ * A heatmap is a graphical representation of data where the individual
1290
+ * values contained in a matrix are represented as colors.
1291
+ *
1292
+ * @sample highcharts/demo/heatmap/
1293
+ * Simple heatmap
1294
+ * @sample highcharts/demo/heatmap-canvas/
1295
+ * Heavy heatmap
1296
+ *
1297
+ * @extends plotOptions.scatter
1298
+ * @excluding animationLimit, connectEnds, connectNulls, dashStyle,
1299
+ * findNearestPointBy, getExtremesFromAll, jitter, linecap,
1300
+ * lineWidth, marker, pointInterval, pointIntervalUnit,
1301
+ * pointRange, pointStart, shadow, softThreshold, stacking,
1302
+ * step, threshold
1303
+ * @product highcharts highmaps
1304
+ * @optionparent plotOptions.heatmap
1305
+ */
1306
+ {
1307
+
1308
+ /**
1309
+ * Animation is disabled by default on the heatmap series.
1310
+ */
1311
+ animation: false,
1312
+
1313
+ /**
1314
+ * The border width for each heat map item.
1315
+ */
1316
+ borderWidth: 0,
1317
+
1318
+ /**
1319
+ * Padding between the points in the heatmap.
1320
+ *
1321
+ * @type {number}
1322
+ * @default 0
1323
+ * @since 6.0
1324
+ * @apioption plotOptions.heatmap.pointPadding
1325
+ */
1326
+
1327
+ /**
1328
+ * The main color of the series. In heat maps this color is rarely used,
1329
+ * as we mostly use the color to denote the value of each point. Unless
1330
+ * options are set in the [colorAxis](#colorAxis), the default value
1331
+ * is pulled from the [options.colors](#colors) array.
1332
+ *
1333
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1334
+ * @since 4.0
1335
+ * @product highcharts
1336
+ * @apioption plotOptions.heatmap.color
1337
+ */
1338
+
1339
+ /**
1340
+ * The column size - how many X axis units each column in the heatmap
1341
+ * should span.
1342
+ *
1343
+ * @sample {highcharts} maps/demo/heatmap/
1344
+ * One day
1345
+ * @sample {highmaps} maps/demo/heatmap/
1346
+ * One day
1347
+ *
1348
+ * @type {number}
1349
+ * @default 1
1350
+ * @since 4.0
1351
+ * @product highcharts highmaps
1352
+ * @apioption plotOptions.heatmap.colsize
1353
+ */
1354
+
1355
+ /**
1356
+ * The row size - how many Y axis units each heatmap row should span.
1357
+ *
1358
+ * @sample {highcharts} maps/demo/heatmap/
1359
+ * 1 by default
1360
+ * @sample {highmaps} maps/demo/heatmap/
1361
+ * 1 by default
1362
+ *
1363
+ * @type {number}
1364
+ * @default 1
1365
+ * @since 4.0
1366
+ * @product highcharts highmaps
1367
+ * @apioption plotOptions.heatmap.rowsize
1368
+ */
1369
+
1370
+ /**
1371
+ * The color applied to null points. In styled mode, a general CSS class
1372
+ * is applied instead.
1373
+ *
1374
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1375
+ */
1376
+ nullColor: '#f7f7f7',
1377
+
1378
+ dataLabels: {
1379
+ formatter: function () { // #2945
1380
+ return this.point.value;
1381
+ },
1382
+ inside: true,
1383
+ verticalAlign: 'middle',
1384
+ crop: false,
1385
+ overflow: false,
1386
+ padding: 0 // #3837
1387
+ },
1388
+
1389
+ /** @ignore */
1390
+ marker: null,
1391
+
1392
+ /**
1393
+ * @ignore
1394
+ */
1395
+ pointRange: null, // dynamically set to colsize by default
1396
+
1397
+ tooltip: {
1398
+ pointFormat: '{point.x}, {point.y}: {point.value}<br/>'
1399
+ },
1400
+
1401
+ states: {
1402
+
1403
+ hover: {
1404
+
1405
+ /** @ignore */
1406
+ halo: false, // #3406, halo is disabled on heatmaps by default
1407
+
1408
+ /**
1409
+ * How much to brighten the point on interaction. Requires the main
1410
+ * color to be defined in hex or rgb(a) format.
1411
+ *
1412
+ * In styled mode, the hover brightening is by default replaced with
1413
+ * a fill-opacity set in the `.highcharts-point:hover` rule.
1414
+ */
1415
+ brightness: 0.2
1416
+ }
1417
+
1418
+ }
1419
+
1420
+ }, merge(colorSeriesMixin, {
1421
+
1422
+ pointArrayMap: ['y', 'value'],
1423
+ hasPointSpecificOptions: true,
1424
+ getExtremesFromAll: true,
1425
+ directTouch: true,
1426
+
1427
+ /**
1428
+ * Override the init method to add point ranges on both axes.
1429
+ *
1430
+ * @private
1431
+ * @function Highcharts.seriesTypes.heatmap#init
1432
+ */
1433
+ init: function () {
1434
+ var options;
1435
+
1436
+ seriesTypes.scatter.prototype.init.apply(this, arguments);
1437
+
1438
+ options = this.options;
1439
+ // #3758, prevent resetting in setData
1440
+ options.pointRange = pick(options.pointRange, options.colsize || 1);
1441
+ // general point range
1442
+ this.yAxis.axisPointRange = options.rowsize || 1;
1443
+ },
1444
+
1445
+ /**
1446
+ * @private
1447
+ * @function Highcharts.seriesTypes.heatmap#translate
1448
+ */
1449
+ translate: function () {
1450
+ var series = this,
1451
+ options = series.options,
1452
+ xAxis = series.xAxis,
1453
+ yAxis = series.yAxis,
1454
+ seriesPointPadding = options.pointPadding || 0,
1455
+ between = function (x, a, b) {
1456
+ return Math.min(Math.max(a, x), b);
1457
+ },
1458
+ pointPlacement = series.pointPlacementToXValue(); // #7860
1459
+
1460
+ series.generatePoints();
1461
+
1462
+ series.points.forEach(function (point) {
1463
+ var xPad = (options.colsize || 1) / 2,
1464
+ yPad = (options.rowsize || 1) / 2,
1465
+ x1 = between(
1466
+ Math.round(
1467
+ xAxis.len -
1468
+ xAxis.translate(point.x - xPad,
1469
+ 0,
1470
+ 1,
1471
+ 0,
1472
+ 1,
1473
+ -pointPlacement)
1474
+ ),
1475
+ -xAxis.len, 2 * xAxis.len
1476
+ ),
1477
+ x2 = between(
1478
+ Math.round(
1479
+ xAxis.len -
1480
+ xAxis.translate(point.x + xPad,
1481
+ 0,
1482
+ 1,
1483
+ 0,
1484
+ 1,
1485
+ -pointPlacement)
1486
+ ),
1487
+ -xAxis.len, 2 * xAxis.len
1488
+ ),
1489
+ y1 = between(
1490
+ Math.round(yAxis.translate(point.y - yPad, 0, 1, 0, 1)),
1491
+ -yAxis.len, 2 * yAxis.len
1492
+ ),
1493
+ y2 = between(
1494
+ Math.round(yAxis.translate(point.y + yPad, 0, 1, 0, 1)),
1495
+ -yAxis.len, 2 * yAxis.len
1496
+ ),
1497
+ pointPadding = pick(point.pointPadding, seriesPointPadding);
1498
+
1499
+ // Set plotX and plotY for use in K-D-Tree and more
1500
+ point.plotX = point.clientX = (x1 + x2) / 2;
1501
+ point.plotY = (y1 + y2) / 2;
1502
+
1503
+ point.shapeType = 'rect';
1504
+ point.shapeArgs = {
1505
+ x: Math.min(x1, x2) + pointPadding,
1506
+ y: Math.min(y1, y2) + pointPadding,
1507
+ width: Math.abs(x2 - x1) - pointPadding * 2,
1508
+ height: Math.abs(y2 - y1) - pointPadding * 2
1509
+ };
1510
+ });
1511
+
1512
+ series.translateColors();
1513
+ },
1514
+
1515
+ /**
1516
+ * @private
1517
+ * @function Highcharts.seriesTypes.heatmap#drawPoints
1518
+ */
1519
+ drawPoints: function () {
1520
+
1521
+ // In styled mode, use CSS, otherwise the fill used in the style
1522
+ // sheet will take precedence over the fill attribute.
1523
+ var func = this.chart.styledMode ? 'css' : 'attr';
1524
+
1525
+ seriesTypes.column.prototype.drawPoints.call(this);
1526
+
1527
+ this.points.forEach(function (point) {
1528
+ point.graphic[func](this.colorAttribs(point));
1529
+ }, this);
1530
+ },
1531
+
1532
+ // Override to also allow null points, used when building the k-d-tree
1533
+ // for tooltips in boost mode.
1534
+ getValidPoints: function (points, insideOnly) {
1535
+ return Series.prototype.getValidPoints.call(
1536
+ this,
1537
+ points,
1538
+ insideOnly,
1539
+ true
1540
+ );
1541
+ },
1542
+
1543
+ /**
1544
+ * @ignore
1545
+ * @deprecated
1546
+ * @function Highcharts.seriesTypes.heatmap#animate
1547
+ */
1548
+ animate: noop,
1549
+
1550
+ /**
1551
+ * @ignore
1552
+ * @deprecated
1553
+ * @function Highcharts.seriesTypes.heatmap#getBox
1554
+ */
1555
+ getBox: noop,
1556
+
1557
+ /**
1558
+ * @private
1559
+ * @borrows Highcharts.LegendSymbolMixin.drawRectangle as Highcharts.seriesTypes.heatmap#drawLegendSymbol
1560
+ */
1561
+ drawLegendSymbol: LegendSymbolMixin.drawRectangle,
1562
+
1563
+ /**
1564
+ * @private
1565
+ * @borrows Highcharts.seriesTypes.column#alignDataLabel as Highcharts.seriesTypes.heatmap#alignDataLabel
1566
+ */
1567
+ alignDataLabel: seriesTypes.column.prototype.alignDataLabel,
1568
+
1569
+ /**
1570
+ * @private
1571
+ * @function Highcharts.seriesTypes.heatmap#getExtremes
1572
+ */
1573
+ getExtremes: function () {
1574
+ // Get the extremes from the value data
1575
+ Series.prototype.getExtremes.call(this, this.valueData);
1576
+ this.valueMin = this.dataMin;
1577
+ this.valueMax = this.dataMax;
1578
+
1579
+ // Get the extremes from the y data
1580
+ Series.prototype.getExtremes.call(this);
1581
+ }
1582
+
1583
+ }), H.extend({
1584
+
1585
+ /**
1586
+ * @private
1587
+ * @function Highcharts.Point#haloPath
1588
+ *
1589
+ * @param {number} size
1590
+ *
1591
+ * @return {Highcharts.SVGPathArray}
1592
+ */
1593
+ haloPath: function (size) {
1594
+ if (!size) {
1595
+ return [];
1596
+ }
1597
+ var rect = this.shapeArgs;
1598
+
1599
+ return [
1600
+ 'M', rect.x - size, rect.y - size,
1601
+ 'L', rect.x - size, rect.y + rect.height + size,
1602
+ rect.x + rect.width + size, rect.y + rect.height + size,
1603
+ rect.x + rect.width + size, rect.y - size,
1604
+ 'Z'
1605
+ ];
1606
+ }
1607
+ }, colorPointMixin)
1608
+ );
1609
+
1610
+ /**
1611
+ * A `heatmap` series. If the [type](#series.heatmap.type) option is
1612
+ * not specified, it is inherited from [chart.type](#chart.type).
1613
+ *
1614
+ * @extends series,plotOptions.heatmap
1615
+ * @excluding dataParser, dataURL, marker, pointRange, stack
1616
+ * @product highcharts highmaps
1617
+ * @apioption series.heatmap
1618
+ */
1619
+
1620
+ /**
1621
+ * An array of data points for the series. For the `heatmap` series
1622
+ * type, points can be given in the following ways:
1623
+ *
1624
+ * 1. An array of arrays with 3 or 2 values. In this case, the values
1625
+ * correspond to `x,y,value`. If the first value is a string, it is
1626
+ * applied as the name of the point, and the `x` value is inferred.
1627
+ * The `x` value can also be omitted, in which case the inner arrays
1628
+ * should be of length 2\. Then the `x` value is automatically calculated,
1629
+ * either starting at 0 and incremented by 1, or from `pointStart`
1630
+ * and `pointInterval` given in the series options.
1631
+ *
1632
+ * ```js
1633
+ * data: [
1634
+ * [0, 9, 7],
1635
+ * [1, 10, 4],
1636
+ * [2, 6, 3]
1637
+ * ]
1638
+ * ```
1639
+ *
1640
+ * 2. An array of objects with named values. The following snippet shows only a
1641
+ * few settings, see the complete options set below. If the total number of data
1642
+ * points exceeds the series' [turboThreshold](#series.heatmap.turboThreshold),
1643
+ * this option is not available.
1644
+ *
1645
+ * ```js
1646
+ * data: [{
1647
+ * x: 1,
1648
+ * y: 3,
1649
+ * value: 10,
1650
+ * name: "Point2",
1651
+ * color: "#00FF00"
1652
+ * }, {
1653
+ * x: 1,
1654
+ * y: 7,
1655
+ * value: 10,
1656
+ * name: "Point1",
1657
+ * color: "#FF00FF"
1658
+ * }]
1659
+ * ```
1660
+ *
1661
+ * @sample {highcharts} highcharts/chart/reflow-true/
1662
+ * Numerical values
1663
+ * @sample {highcharts} highcharts/series/data-array-of-arrays/
1664
+ * Arrays of numeric x and y
1665
+ * @sample {highcharts} highcharts/series/data-array-of-arrays-datetime/
1666
+ * Arrays of datetime x and y
1667
+ * @sample {highcharts} highcharts/series/data-array-of-name-value/
1668
+ * Arrays of point.name and y
1669
+ * @sample {highcharts} highcharts/series/data-array-of-objects/
1670
+ * Config objects
1671
+ *
1672
+ * @type {Array<Array<number>|*>}
1673
+ * @extends series.line.data
1674
+ * @excluding marker
1675
+ * @product highcharts highmaps
1676
+ * @apioption series.heatmap.data
1677
+ */
1678
+
1679
+ /**
1680
+ * The color of the point. In heat maps the point color is rarely set
1681
+ * explicitly, as we use the color to denote the `value`. Options for
1682
+ * this are set in the [colorAxis](#colorAxis) configuration.
1683
+ *
1684
+ * @type {Highcharts.ColorString|Highcharts.GradientColorObject|Highcharts.PatternObject}
1685
+ * @product highcharts highmaps
1686
+ * @apioption series.heatmap.data.color
1687
+ */
1688
+
1689
+ /**
1690
+ * The value of the point, resulting in a color controled by options
1691
+ * as set in the [colorAxis](#colorAxis) configuration.
1692
+ *
1693
+ * @type {number}
1694
+ * @product highcharts highmaps
1695
+ * @apioption series.heatmap.data.value
1696
+ */
1697
+
1698
+ /**
1699
+ * The x value of the point. For datetime axes,
1700
+ * the X value is the timestamp in milliseconds since 1970.
1701
+ *
1702
+ * @type {number}
1703
+ * @product highcharts highmaps
1704
+ * @apioption series.heatmap.data.x
1705
+ */
1706
+
1707
+ /**
1708
+ * The y value of the point.
1709
+ *
1710
+ * @type {number}
1711
+ * @product highcharts highmaps
1712
+ * @apioption series.heatmap.data.y
1713
+ */
1714
+
1715
+ /**
1716
+ * Point padding for a single point.
1717
+ *
1718
+ * @sample maps/plotoptions/tilemap-pointpadding
1719
+ * Point padding on tiles
1720
+ *
1721
+ * @type {number}
1722
+ * @product highcharts highmaps
1723
+ * @apioption series.heatmap.data.pointPadding
1724
+ */
1725
+
1726
+ }(Highcharts));
1727
+ return (function () {
1728
+
1729
+
1730
+ }());
1731
+ }));