highcharts 7.1.1 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (415) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +3 -3
  3. package/css/annotations/popup.scss +1 -1
  4. package/css/stocktools/gui.css +5 -5
  5. package/css/stocktools/gui.scss +1 -1
  6. package/es-modules/annotations/ControlPoint.js +1 -1
  7. package/es-modules/annotations/MockPoint.js +45 -12
  8. package/es-modules/annotations/annotations.src.js +203 -166
  9. package/es-modules/annotations/controllable/ControllableCircle.js +2 -10
  10. package/es-modules/annotations/controllable/ControllableImage.js +2 -10
  11. package/es-modules/annotations/controllable/ControllableLabel.js +54 -9
  12. package/es-modules/annotations/controllable/ControllableRect.js +2 -10
  13. package/es-modules/annotations/controllable/controllableMixin.js +32 -4
  14. package/es-modules/annotations/controllable/markerMixin.js +1 -0
  15. package/es-modules/annotations/eventEmitterMixin.js +1 -0
  16. package/es-modules/annotations/navigationBindings.js +15 -11
  17. package/es-modules/annotations/popup.js +59 -81
  18. package/es-modules/annotations/types/CrookedLine.js +19 -7
  19. package/es-modules/annotations/types/ElliottWave.js +7 -6
  20. package/es-modules/annotations/types/Fibonacci.js +14 -14
  21. package/es-modules/annotations/types/InfinityLine.js +4 -4
  22. package/es-modules/annotations/types/Measure.js +41 -41
  23. package/es-modules/annotations/types/Pitchfork.js +5 -4
  24. package/es-modules/annotations/types/VerticalLine.js +6 -5
  25. package/es-modules/error-messages.js +6 -1
  26. package/es-modules/indicators/indicators.src.js +5 -3
  27. package/es-modules/mixins/nodes.js +16 -8
  28. package/es-modules/modules/accessibility/AccessibilityComponent.js +4 -4
  29. package/es-modules/modules/accessibility/KeyboardNavigation.js +17 -4
  30. package/es-modules/modules/accessibility/components/RangeSelectorComponent.js +3 -2
  31. package/es-modules/modules/accessibility/components/SeriesComponent.js +110 -2
  32. package/es-modules/modules/accessibility/components/ZoomComponent.js +1 -1
  33. package/es-modules/modules/accessibility/options.js +2 -1
  34. package/es-modules/modules/bellcurve.src.js +27 -29
  35. package/es-modules/modules/boost/boost-init.js +14 -0
  36. package/es-modules/modules/boost/boost-overrides.js +13 -3
  37. package/es-modules/modules/boost/wgl-renderer.js +30 -15
  38. package/es-modules/modules/boost/wgl-shader.js +33 -16
  39. package/es-modules/modules/boost/wgl-vbuffer.js +8 -4
  40. package/es-modules/modules/broken-axis.src.js +1 -1
  41. package/es-modules/modules/bullet.src.js +68 -68
  42. package/es-modules/modules/cylinder.src.js +3 -1
  43. package/es-modules/modules/data.src.js +9 -5
  44. package/es-modules/modules/draggable-points.src.js +1 -1
  45. package/es-modules/modules/drilldown.src.js +1 -1
  46. package/es-modules/modules/export-data.src.js +7 -8
  47. package/es-modules/modules/exporting.src.js +9 -1
  48. package/es-modules/modules/full-screen.src.js +1 -1
  49. package/es-modules/modules/funnel3d.src.js +10 -3
  50. package/es-modules/modules/histogram.src.js +162 -164
  51. package/es-modules/modules/item-series.src.js +10 -10
  52. package/es-modules/modules/networkgraph/layouts.js +16 -12
  53. package/es-modules/modules/networkgraph/networkgraph.src.js +147 -51
  54. package/es-modules/modules/offline-exporting.src.js +15 -2
  55. package/es-modules/modules/oldie-polyfills.src.js +1 -1
  56. package/es-modules/modules/organization.src.js +65 -20
  57. package/es-modules/modules/pareto.src.js +52 -51
  58. package/es-modules/modules/pattern-fill.src.js +1 -1
  59. package/es-modules/modules/price-indicator.src.js +1 -1
  60. package/es-modules/modules/pyramid3d.src.js +1 -1
  61. package/es-modules/modules/sankey.src.js +22 -10
  62. package/es-modules/modules/series-label.src.js +16 -8
  63. package/es-modules/modules/solid-gauge.src.js +128 -79
  64. package/es-modules/modules/static-scale.src.js +8 -1
  65. package/es-modules/modules/stock-tools-gui.js +1 -1
  66. package/es-modules/modules/streamgraph.src.js +11 -11
  67. package/es-modules/modules/sunburst.src.js +23 -2
  68. package/es-modules/modules/tilemap.src.js +58 -57
  69. package/es-modules/modules/timeline.src.js +17 -12
  70. package/es-modules/modules/treemap.src.js +6 -6
  71. package/es-modules/modules/variwide.src.js +39 -39
  72. package/es-modules/modules/vector.src.js +108 -107
  73. package/es-modules/modules/venn.src.js +4 -2
  74. package/es-modules/modules/windbarb.src.js +43 -43
  75. package/es-modules/modules/wordcloud.src.js +1 -0
  76. package/es-modules/modules/xrange.src.js +112 -104
  77. package/es-modules/parts/AreaSeries.js +4 -1
  78. package/es-modules/parts/Axis.js +809 -1870
  79. package/es-modules/parts/Chart.js +254 -743
  80. package/es-modules/parts/Color.js +160 -113
  81. package/es-modules/parts/ColumnSeries.js +9 -3
  82. package/es-modules/parts/DataLabels.js +31 -2
  83. package/es-modules/parts/Dynamics.js +73 -26
  84. package/es-modules/parts/FlagsSeries.js +6 -4
  85. package/es-modules/parts/Globals.js +20 -36
  86. package/es-modules/parts/Html.js +116 -235
  87. package/es-modules/parts/Interaction.js +17 -7
  88. package/es-modules/parts/Legend.js +277 -632
  89. package/es-modules/parts/MSPointer.js +62 -106
  90. package/es-modules/parts/Options.js +128 -367
  91. package/es-modules/parts/OrdinalAxis.js +12 -0
  92. package/es-modules/parts/PieSeries.js +61 -44
  93. package/es-modules/parts/PlotLineOrBand.js +38 -3
  94. package/es-modules/parts/Point.js +117 -227
  95. package/es-modules/parts/Pointer.js +273 -558
  96. package/es-modules/parts/RangeSelector.js +5 -3
  97. package/es-modules/parts/Responsive.js +8 -4
  98. package/es-modules/parts/ScrollablePlotArea.js +215 -81
  99. package/es-modules/parts/Scrollbar.js +38 -23
  100. package/es-modules/parts/Series.js +151 -47
  101. package/es-modules/parts/Stacking.js +8 -3
  102. package/es-modules/parts/StockChart.js +42 -29
  103. package/es-modules/parts/SvgRenderer.js +1080 -2100
  104. package/es-modules/parts/Tick.js +11 -4
  105. package/es-modules/parts/Time.js +179 -363
  106. package/es-modules/parts/Tooltip.js +23 -12
  107. package/es-modules/parts/TouchPointer.js +69 -187
  108. package/es-modules/parts/Utilities.js +593 -846
  109. package/es-modules/parts-3d/Axis.js +2 -2
  110. package/es-modules/parts-3d/Column.js +18 -8
  111. package/es-modules/parts-gantt/GanttSeries.js +17 -21
  112. package/es-modules/parts-gantt/GridAxis.js +183 -101
  113. package/es-modules/parts-gantt/PathfinderAlgorithms.js +2 -2
  114. package/es-modules/parts-gantt/TreeGrid.js +53 -36
  115. package/es-modules/parts-map/ColorAxis.js +35 -14
  116. package/es-modules/parts-map/MapBubbleSeries.js +2 -1
  117. package/es-modules/parts-map/MapSeries.js +29 -18
  118. package/es-modules/parts-more/AreaRangeSeries.js +13 -12
  119. package/es-modules/parts-more/ColumnRangeSeries.js +8 -2
  120. package/es-modules/parts-more/GaugeSeries.js +9 -9
  121. package/es-modules/parts-more/PackedBubbleSeries.js +152 -115
  122. package/es-modules/parts-more/RadialAxis.js +102 -8
  123. package/es-modules/parts-more/WaterfallSeries.js +148 -35
  124. package/highcharts-3d.js +68 -67
  125. package/highcharts-3d.js.map +1 -1
  126. package/highcharts-3d.src.js +21 -11
  127. package/highcharts-gantt.d.ts +5 -3
  128. package/highcharts-gantt.js +618 -610
  129. package/highcharts-gantt.js.map +1 -1
  130. package/highcharts-gantt.src.d.ts +5 -3
  131. package/highcharts-gantt.src.js +5185 -8892
  132. package/highcharts-more.js +144 -140
  133. package/highcharts-more.js.map +1 -1
  134. package/highcharts-more.src.js +449 -194
  135. package/highcharts.d.ts +3943 -5236
  136. package/highcharts.js +454 -449
  137. package/highcharts.js.map +1 -1
  138. package/highcharts.src.d.ts +3943 -5236
  139. package/highcharts.src.js +4767 -8601
  140. package/highmaps.d.ts +5 -3
  141. package/highmaps.js +498 -494
  142. package/highmaps.js.map +1 -1
  143. package/highmaps.src.d.ts +5 -3
  144. package/highmaps.src.js +4547 -8507
  145. package/highstock.d.ts +5 -3
  146. package/highstock.js +597 -590
  147. package/highstock.js.map +1 -1
  148. package/highstock.src.d.ts +5 -3
  149. package/highstock.src.js +4871 -8661
  150. package/indicators/acceleration-bands.js +1 -1
  151. package/indicators/acceleration-bands.src.js +1 -1
  152. package/indicators/accumulation-distribution.js +1 -1
  153. package/indicators/accumulation-distribution.src.js +1 -1
  154. package/indicators/ao.js +1 -1
  155. package/indicators/ao.src.js +1 -1
  156. package/indicators/apo.js +1 -1
  157. package/indicators/apo.src.js +1 -1
  158. package/indicators/aroon-oscillator.js +1 -1
  159. package/indicators/aroon-oscillator.src.js +1 -1
  160. package/indicators/aroon.js +1 -1
  161. package/indicators/aroon.src.js +1 -1
  162. package/indicators/atr.js +1 -1
  163. package/indicators/atr.src.js +1 -1
  164. package/indicators/bollinger-bands.js +1 -1
  165. package/indicators/bollinger-bands.src.js +1 -1
  166. package/indicators/cci.js +1 -1
  167. package/indicators/cci.src.js +1 -1
  168. package/indicators/chaikin.js +1 -1
  169. package/indicators/chaikin.src.js +1 -1
  170. package/indicators/cmf.js +1 -1
  171. package/indicators/cmf.src.js +1 -1
  172. package/indicators/dema.js +1 -1
  173. package/indicators/dema.src.js +1 -1
  174. package/indicators/dpo.js +1 -1
  175. package/indicators/dpo.src.js +1 -1
  176. package/indicators/ema.js +1 -1
  177. package/indicators/ema.src.js +1 -1
  178. package/indicators/ichimoku-kinko-hyo.js +1 -1
  179. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  180. package/indicators/indicators-all.js +105 -105
  181. package/indicators/indicators-all.js.map +1 -1
  182. package/indicators/indicators-all.src.js +6 -4
  183. package/indicators/indicators.js +9 -9
  184. package/indicators/indicators.js.map +1 -1
  185. package/indicators/indicators.src.js +6 -4
  186. package/indicators/keltner-channels.js +1 -1
  187. package/indicators/keltner-channels.src.js +1 -1
  188. package/indicators/macd.js +1 -1
  189. package/indicators/macd.src.js +1 -1
  190. package/indicators/mfi.js +1 -1
  191. package/indicators/mfi.src.js +1 -1
  192. package/indicators/momentum.js +1 -1
  193. package/indicators/momentum.src.js +1 -1
  194. package/indicators/natr.js +1 -1
  195. package/indicators/natr.src.js +1 -1
  196. package/indicators/pivot-points.js +1 -1
  197. package/indicators/pivot-points.src.js +1 -1
  198. package/indicators/ppo.js +1 -1
  199. package/indicators/ppo.src.js +1 -1
  200. package/indicators/price-channel.js +1 -1
  201. package/indicators/price-channel.src.js +1 -1
  202. package/indicators/price-envelopes.js +1 -1
  203. package/indicators/price-envelopes.src.js +1 -1
  204. package/indicators/psar.js +1 -1
  205. package/indicators/psar.src.js +1 -1
  206. package/indicators/regressions.js +1 -1
  207. package/indicators/regressions.src.js +1 -1
  208. package/indicators/roc.js +1 -1
  209. package/indicators/roc.src.js +1 -1
  210. package/indicators/rsi.js +1 -1
  211. package/indicators/rsi.src.js +1 -1
  212. package/indicators/stochastic.js +1 -1
  213. package/indicators/stochastic.src.js +1 -1
  214. package/indicators/supertrend.js +1 -1
  215. package/indicators/supertrend.src.js +1 -1
  216. package/indicators/tema.js +1 -1
  217. package/indicators/tema.src.js +1 -1
  218. package/indicators/trix.js +1 -1
  219. package/indicators/trix.src.js +1 -1
  220. package/indicators/volume-by-price.js +1 -1
  221. package/indicators/volume-by-price.src.js +1 -1
  222. package/indicators/vwap.js +1 -1
  223. package/indicators/vwap.src.js +1 -1
  224. package/indicators/williams-r.js +1 -1
  225. package/indicators/williams-r.src.js +1 -1
  226. package/indicators/wma.js +1 -1
  227. package/indicators/wma.src.js +1 -1
  228. package/indicators/zigzag.js +1 -1
  229. package/indicators/zigzag.src.js +1 -1
  230. package/modules/accessibility.js +92 -89
  231. package/modules/accessibility.js.map +1 -1
  232. package/modules/accessibility.src.js +138 -15
  233. package/modules/annotations-advanced.js +128 -127
  234. package/modules/annotations-advanced.js.map +1 -1
  235. package/modules/annotations-advanced.src.js +514 -396
  236. package/modules/annotations.d.ts +36 -0
  237. package/modules/annotations.js +81 -81
  238. package/modules/annotations.js.map +1 -1
  239. package/modules/annotations.src.d.ts +36 -0
  240. package/modules/annotations.src.js +418 -315
  241. package/modules/arrow-symbols.js +1 -1
  242. package/modules/arrow-symbols.src.js +1 -1
  243. package/modules/boost-canvas.js +1 -1
  244. package/modules/boost-canvas.src.js +1 -1
  245. package/modules/boost.js +63 -63
  246. package/modules/boost.js.map +1 -1
  247. package/modules/boost.src.js +99 -39
  248. package/modules/broken-axis.js +1 -1
  249. package/modules/broken-axis.src.js +2 -2
  250. package/modules/bullet.js +1 -1
  251. package/modules/bullet.src.js +69 -69
  252. package/modules/current-date-indicator.js +1 -1
  253. package/modules/current-date-indicator.src.js +1 -1
  254. package/modules/cylinder.js +1 -1
  255. package/modules/cylinder.js.map +1 -1
  256. package/modules/cylinder.src.js +4 -2
  257. package/modules/data.js +4 -4
  258. package/modules/data.js.map +1 -1
  259. package/modules/data.src.js +10 -6
  260. package/modules/datagrouping.js +1 -1
  261. package/modules/datagrouping.src.js +1 -1
  262. package/modules/debugger.js +4 -4
  263. package/modules/debugger.js.map +1 -1
  264. package/modules/debugger.src.js +7 -2
  265. package/modules/dependency-wheel.js +1 -1
  266. package/modules/dependency-wheel.src.js +1 -1
  267. package/modules/dotplot.js +1 -1
  268. package/modules/dotplot.src.js +1 -1
  269. package/modules/drag-panes.js +1 -1
  270. package/modules/drag-panes.src.js +1 -1
  271. package/modules/draggable-points.js +1 -1
  272. package/modules/draggable-points.src.js +2 -2
  273. package/modules/drilldown.js +1 -1
  274. package/modules/drilldown.src.js +2 -2
  275. package/modules/export-data.js +2 -2
  276. package/modules/export-data.js.map +1 -1
  277. package/modules/export-data.src.js +8 -9
  278. package/modules/exporting.js +25 -25
  279. package/modules/exporting.js.map +1 -1
  280. package/modules/exporting.src.js +11 -3
  281. package/modules/full-screen.js +1 -1
  282. package/modules/full-screen.src.js +2 -2
  283. package/modules/funnel.js +1 -1
  284. package/modules/funnel.src.js +1 -1
  285. package/modules/funnel3d.js +2 -2
  286. package/modules/funnel3d.js.map +1 -1
  287. package/modules/funnel3d.src.js +11 -4
  288. package/modules/gantt.js +166 -164
  289. package/modules/gantt.js.map +1 -1
  290. package/modules/gantt.src.js +422 -295
  291. package/modules/grid-axis.js +18 -16
  292. package/modules/grid-axis.js.map +1 -1
  293. package/modules/grid-axis.src.js +184 -102
  294. package/modules/heatmap.js +22 -22
  295. package/modules/heatmap.js.map +1 -1
  296. package/modules/heatmap.src.js +36 -15
  297. package/modules/histogram-bellcurve.js +1 -1
  298. package/modules/histogram-bellcurve.js.map +1 -1
  299. package/modules/histogram-bellcurve.src.js +186 -183
  300. package/modules/item-series.js +1 -1
  301. package/modules/item-series.src.js +11 -11
  302. package/modules/map-parser.js +1 -1
  303. package/modules/map-parser.src.js +1 -1
  304. package/modules/map.js +83 -83
  305. package/modules/map.js.map +1 -1
  306. package/modules/map.src.js +67 -34
  307. package/modules/networkgraph.js +10 -9
  308. package/modules/networkgraph.js.map +1 -1
  309. package/modules/networkgraph.src.js +180 -72
  310. package/modules/no-data-to-display.js +1 -1
  311. package/modules/no-data-to-display.src.js +1 -1
  312. package/modules/offline-exporting.js +15 -15
  313. package/modules/offline-exporting.js.map +1 -1
  314. package/modules/offline-exporting.src.js +17 -4
  315. package/modules/oldie-polyfills.js +1 -1
  316. package/modules/oldie-polyfills.src.js +2 -2
  317. package/modules/oldie.js +2 -2
  318. package/modules/oldie.src.js +2 -2
  319. package/modules/organization.js +1 -1
  320. package/modules/organization.js.map +1 -1
  321. package/modules/organization.src.js +66 -21
  322. package/modules/overlapping-datalabels.js +1 -1
  323. package/modules/overlapping-datalabels.src.js +1 -1
  324. package/modules/parallel-coordinates.js +1 -1
  325. package/modules/parallel-coordinates.src.js +1 -1
  326. package/modules/pareto.js +1 -1
  327. package/modules/pareto.js.map +1 -1
  328. package/modules/pareto.src.js +53 -52
  329. package/modules/pathfinder.js +3 -3
  330. package/modules/pathfinder.js.map +1 -1
  331. package/modules/pathfinder.src.js +3 -3
  332. package/modules/pattern-fill.js +1 -1
  333. package/modules/pattern-fill.src.js +2 -2
  334. package/modules/price-indicator.js +1 -1
  335. package/modules/price-indicator.src.js +2 -2
  336. package/modules/pyramid3d.js +1 -1
  337. package/modules/pyramid3d.src.js +2 -2
  338. package/modules/sankey.js +14 -14
  339. package/modules/sankey.js.map +1 -1
  340. package/modules/sankey.src.js +39 -19
  341. package/modules/series-label.js +16 -16
  342. package/modules/series-label.js.map +1 -1
  343. package/modules/series-label.src.js +17 -9
  344. package/modules/solid-gauge.js +5 -5
  345. package/modules/solid-gauge.js.map +1 -1
  346. package/modules/solid-gauge.src.js +129 -80
  347. package/modules/sonification.js +1 -1
  348. package/modules/sonification.src.js +1 -1
  349. package/modules/static-scale.js +4 -4
  350. package/modules/static-scale.js.map +1 -1
  351. package/modules/static-scale.src.js +9 -2
  352. package/modules/stock-tools.js +2 -2
  353. package/modules/stock-tools.src.js +3 -3
  354. package/modules/stock.js +146 -145
  355. package/modules/stock.js.map +1 -1
  356. package/modules/stock.src.js +105 -61
  357. package/modules/streamgraph.js +1 -1
  358. package/modules/streamgraph.src.js +12 -12
  359. package/modules/sunburst.js +40 -40
  360. package/modules/sunburst.js.map +1 -1
  361. package/modules/sunburst.src.js +30 -9
  362. package/modules/tilemap.js +1 -1
  363. package/modules/tilemap.js.map +1 -1
  364. package/modules/tilemap.src.js +59 -58
  365. package/modules/timeline.js +12 -11
  366. package/modules/timeline.js.map +1 -1
  367. package/modules/timeline.src.js +18 -13
  368. package/modules/treegrid.js +45 -43
  369. package/modules/treegrid.js.map +1 -1
  370. package/modules/treegrid.src.js +238 -139
  371. package/modules/treemap.js +1 -1
  372. package/modules/treemap.src.js +7 -7
  373. package/modules/variable-pie.js +1 -1
  374. package/modules/variable-pie.src.js +1 -1
  375. package/modules/variwide.js +1 -1
  376. package/modules/variwide.src.js +40 -40
  377. package/modules/vector.js +1 -1
  378. package/modules/vector.js.map +1 -1
  379. package/modules/vector.src.js +109 -108
  380. package/modules/venn.js +23 -23
  381. package/modules/venn.js.map +1 -1
  382. package/modules/venn.src.js +5 -3
  383. package/modules/windbarb.js +1 -1
  384. package/modules/windbarb.src.js +44 -44
  385. package/modules/wordcloud.js +10 -10
  386. package/modules/wordcloud.js.map +1 -1
  387. package/modules/wordcloud.src.js +2 -1
  388. package/modules/xrange.js +12 -12
  389. package/modules/xrange.js.map +1 -1
  390. package/modules/xrange.src.js +113 -105
  391. package/package.json +1 -1
  392. package/themes/avocado.js +21 -37
  393. package/themes/avocado.src.js +1 -1
  394. package/themes/dark-blue.js +1 -1
  395. package/themes/dark-blue.src.js +1 -1
  396. package/themes/dark-green.js +1 -1
  397. package/themes/dark-green.src.js +1 -1
  398. package/themes/dark-unica.js +1 -1
  399. package/themes/dark-unica.src.js +1 -1
  400. package/themes/gray.js +1 -1
  401. package/themes/gray.src.js +1 -1
  402. package/themes/grid-light.js +1 -1
  403. package/themes/grid-light.src.js +1 -1
  404. package/themes/grid.js +1 -1
  405. package/themes/grid.src.js +1 -1
  406. package/themes/sand-signika.js +1 -1
  407. package/themes/sand-signika.src.js +1 -1
  408. package/themes/skies.js +1 -1
  409. package/themes/skies.src.js +1 -1
  410. package/themes/sunset.js +21 -37
  411. package/themes/sunset.src.js +1 -1
  412. package/.DS_Store +0 -0
  413. package/es-modules/.DS_Store +0 -0
  414. package/es-modules/modules/annotations-legacy.src.js +0 -1977
  415. package/js/.DS_Store +0 -0
@@ -36,6 +36,8 @@ H.merge(
36
36
  */
37
37
  type: 'circle',
38
38
 
39
+ translate: controllableMixin.translateShape,
40
+
39
41
  render: function (parent) {
40
42
  var attrs = this.attrsFromOptions(this.options);
41
43
 
@@ -68,16 +70,6 @@ H.merge(
68
70
  controllableMixin.redraw.call(this, animation);
69
71
  },
70
72
 
71
- translate: function (dx, dy) {
72
- var annotationOptions = this.annotation.userOptions,
73
- shapeOptions = annotationOptions[this.collection][this.index];
74
-
75
- this.translatePoint(dx, dy, 0);
76
-
77
- // Options stored in chart:
78
- shapeOptions.point = this.options.point;
79
- },
80
-
81
73
  /**
82
74
  * Set the radius.
83
75
  *
@@ -47,6 +47,8 @@ H.merge(
47
47
  */
48
48
  type: 'image',
49
49
 
50
+ translate: controllableMixin.translateShape,
51
+
50
52
  render: function (parent) {
51
53
  var attrs = this.attrsFromOptions(this.options),
52
54
  options = this.options;
@@ -84,16 +86,6 @@ H.merge(
84
86
  this.graphic.placed = Boolean(position);
85
87
 
86
88
  controllableMixin.redraw.call(this, animation);
87
- },
88
-
89
- translate: function (dx, dy) {
90
- var annotationOptions = this.annotation.userOptions,
91
- shapeOptions = annotationOptions[this.collection][this.index];
92
-
93
- this.translatePoint(dx, dy, 0);
94
-
95
- // Options stored in chart:
96
- shapeOptions.point = this.options.point;
97
89
  }
98
90
  }
99
91
  );
@@ -5,15 +5,50 @@ import './../../parts/SvgRenderer.js';
5
5
  import controllableMixin from './controllableMixin.js';
6
6
  import MockPoint from './../MockPoint.js';
7
7
 
8
+
9
+ /**
10
+ * @private
11
+ * @interface Highcharts.AnnotationAnchorObject
12
+ *//**
13
+ * Relative to the plot area position
14
+ * @name Highcharts.AnnotationAnchorObject#relativePosition
15
+ * @type {Highcharts.AnnotationAnchorPositionObject}
16
+ *//**
17
+ * Absolute position
18
+ * @name Highcharts.AnnotationAnchorObject#absolutePosition
19
+ * @type {Highcharts.AnnotationAnchorPositionObject}
20
+ */
21
+
22
+ /**
23
+ * An object which denotes an anchor position
24
+ *
25
+ * @private
26
+ * @interface Highcharts.AnnotationAnchorPositionObject
27
+ *//**
28
+ * @name Highcharts.AnnotationAnchorPositionObject#x
29
+ * @property {number}
30
+ *//**
31
+ * @name Highcharts.AnnotationAnchorPositionObject#y
32
+ * @property {number}
33
+ *//**
34
+ * @name Highcharts.AnnotationAnchorPositionObject#height
35
+ * @property {number}
36
+ *//**
37
+ * @name Highcharts.AnnotationAnchorPositionObject#width
38
+ * @property {number}
39
+ */
40
+
8
41
  /**
9
42
  * A controllable label class.
10
43
  *
44
+ * @private
11
45
  * @class
46
+ * @name Annotation.ControllableLabel
47
+ *
12
48
  * @mixes Annotation.controllableMixin
13
- * @memberOf Annotation
14
49
  *
15
50
  * @param {Highcharts.Annotation} annotation an annotation instance
16
- * @param {Object} options a label's options
51
+ * @param {object} options a label's options
17
52
  * @param {number} index of the label
18
53
  **/
19
54
  function ControllableLabel(annotation, options, index) {
@@ -25,7 +60,7 @@ function ControllableLabel(annotation, options, index) {
25
60
  * Shapes which do not have background - the object is used for proper
26
61
  * setting of the contrast color.
27
62
  *
28
- * @type {Array<String>}
63
+ * @type {Array<string>}
29
64
  */
30
65
  ControllableLabel.shapesWithoutBackground = ['connector'];
31
66
 
@@ -195,16 +230,24 @@ H.merge(
195
230
  * @param {number} dy translation for y coordinate
196
231
  **/
197
232
  translate: function (dx, dy) {
198
- var annotationOptions = this.annotation.userOptions,
199
- labelOptions = annotationOptions[this.collection][this.index];
233
+ var chart = this.annotation.chart,
234
+ // Annotation.options
235
+ labelOptions = this.annotation.userOptions,
236
+ // Chart.options.annotations
237
+ annotationIndex = chart.annotations.indexOf(this.annotation),
238
+ chartAnnotations = chart.options.annotations,
239
+ chartOptions = chartAnnotations[annotationIndex];
200
240
 
201
241
  // Local options:
202
242
  this.options.x += dx;
203
243
  this.options.y += dy;
204
244
 
205
245
  // Options stored in chart:
206
- labelOptions.x = this.options.x;
207
- labelOptions.y = this.options.y;
246
+ chartOptions[this.collection][this.index].x = this.options.x;
247
+ chartOptions[this.collection][this.index].y = this.options.y;
248
+
249
+ labelOptions[this.collection][this.index].x = this.options.x;
250
+ labelOptions[this.collection][this.index].y = this.options.y;
208
251
  },
209
252
 
210
253
  render: function (parent) {
@@ -312,8 +355,9 @@ H.merge(
312
355
  /**
313
356
  * Returns the label position relative to its anchor.
314
357
  *
315
- * @param {Annotation.controllableMixin.Anchor} anchor
316
- * @return {Annotation.controllableMixin.Position|null} position
358
+ * @param {Highcharts.AnnotationAnchorObject} anchor
359
+ *
360
+ * @return {Highcharts.AnnotationAnchorPositionObject|null} position
317
361
  */
318
362
  position: function (anchor) {
319
363
  var item = this.graphic,
@@ -407,6 +451,7 @@ H.merge(
407
451
 
408
452
  /**
409
453
  * General symbol definition for labels with connector
454
+ * @private
410
455
  */
411
456
  H.SVGRenderer.prototype.symbols.connector = function (x, y, w, h, options) {
412
457
  var anchorX = options && options.anchorX,
@@ -45,6 +45,8 @@ H.merge(
45
45
  */
46
46
  type: 'rect',
47
47
 
48
+ translate: controllableMixin.translateShape,
49
+
48
50
  render: function (parent) {
49
51
  var attrs = this.attrsFromOptions(this.options);
50
52
 
@@ -76,16 +78,6 @@ H.merge(
76
78
  this.graphic.placed = Boolean(position);
77
79
 
78
80
  controllableMixin.redraw.call(this, animation);
79
- },
80
-
81
- translate: function (dx, dy) {
82
- var annotationOptions = this.annotation.userOptions,
83
- shapeOptions = annotationOptions[this.collection][this.index];
84
-
85
- this.translatePoint(dx, dy, 0);
86
-
87
- // Options stored in chart:
88
- shapeOptions.point = this.options.point;
89
81
  }
90
82
  }
91
83
  );
@@ -9,6 +9,7 @@ import MockPoint from './../MockPoint.js';
9
9
  * It provides methods for handling points, control points
10
10
  * and points transformations.
11
11
  *
12
+ * @private
12
13
  * @mixin
13
14
  * @memberOf Annotation
14
15
  */
@@ -142,10 +143,13 @@ var controllableMixin = {
142
143
  /**
143
144
  * Map point's options to a point-like object.
144
145
  *
145
- * @param {Annotation.MockPoint.Options} pointOptions point's options
146
- * @param {Annotation.PointLike} point a point like instance
147
- * @return {Annotation.PointLike|null} if the point is
148
- * found/set returns this point, otherwise null
146
+ * @param {Highcharts.MockPointOptionsObject} pointOptions
147
+ * point's options
148
+ * @param {Highcharts.PointLike} point
149
+ * a point like instance
150
+ *
151
+ * @return {Highcharts.PointLike|null}
152
+ * if the point is found/set returns this point, otherwise null
149
153
  */
150
154
  point: function (pointOptions, point) {
151
155
  if (pointOptions && pointOptions.series) {
@@ -331,6 +335,30 @@ var controllableMixin = {
331
335
  this.transformPoint('translate', null, null, dx, dy, i);
332
336
  },
333
337
 
338
+ /**
339
+ * Translate shape within controllable item.
340
+ * Replaces `controllable.translate` method.
341
+ *
342
+ * @param {number} dx translation for x coordinate
343
+ * @param {number} dy translation for y coordinate
344
+ */
345
+ translateShape: function (dx, dy) {
346
+ var chart = this.annotation.chart,
347
+ // Annotation.options
348
+ shapeOptions = this.annotation.userOptions,
349
+ // Chart.options.annotations
350
+ annotationIndex = chart.annotations.indexOf(this.annotation),
351
+ chartOptions = chart.options.annotations[annotationIndex];
352
+
353
+ this.translatePoint(dx, dy, 0);
354
+
355
+ // Options stored in:
356
+ // - chart (for exporting)
357
+ // - current config (for redraws)
358
+ chartOptions[this.collection][this.index].point = this.options.point;
359
+ shapeOptions[this.collection][this.index].point = this.options.point;
360
+ },
361
+
334
362
  /**
335
363
  * Rotate a controllable.
336
364
  *
@@ -100,6 +100,7 @@ var createMarkerSetter = function (markerType) {
100
100
  };
101
101
 
102
102
  /**
103
+ * @private
103
104
  * @mixin
104
105
  */
105
106
  var markerMixin = {
@@ -10,6 +10,7 @@ var fireEvent = H.fireEvent;
10
10
  * The units of the distance are specific to a transformation,
11
11
  * e.g. for rotation they are radians, for scaling they are scale factors.
12
12
  *
13
+ * @private
13
14
  * @mixin
14
15
  * @memberOf Annotation
15
16
  */
@@ -1,8 +1,10 @@
1
- /**
2
- * (c) 2009-2017 Highsoft, Black Label
1
+ /* *
3
2
  *
4
- * License: www.highcharts.com/license
5
- */
3
+ * (c) 2009-2017 Highsoft, Black Label
4
+ *
5
+ * License: www.highcharts.com/license
6
+ *
7
+ * */
6
8
  'use strict';
7
9
  import H from '../parts/Globals.js';
8
10
  import chartNavigationMixin from '../mixins/navigation.js';
@@ -218,13 +220,15 @@ extend(H.NavigationBindings.prototype, {
218
220
  });
219
221
 
220
222
  objectEach(options.events || {}, function (callback, eventName) {
221
- navigation.eventsToUnbind.push(
222
- addEvent(
223
- navigation,
224
- eventName,
225
- callback
226
- )
227
- );
223
+ if (H.isFunction(callback)) {
224
+ navigation.eventsToUnbind.push(
225
+ addEvent(
226
+ navigation,
227
+ eventName,
228
+ callback
229
+ )
230
+ );
231
+ }
228
232
  });
229
233
 
230
234
  navigation.eventsToUnbind.push(