@progress/kendo-charts 2.7.2-dev.202502101310 → 2.7.2-develop.1

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 (363) hide show
  1. package/dist/cdn/js/kendo-charts.js +1 -1
  2. package/dist/cdn/main.js +1 -1
  3. package/dist/es/barcode/barcode-validator.js +10 -12
  4. package/dist/es/barcode/barcode.js +84 -96
  5. package/dist/es/barcode/encodings/code11.js +41 -57
  6. package/dist/es/barcode/encodings/code128.js +222 -354
  7. package/dist/es/barcode/encodings/code39-extended.js +20 -34
  8. package/dist/es/barcode/encodings/code39.js +49 -75
  9. package/dist/es/barcode/encodings/code93-extended.js +12 -24
  10. package/dist/es/barcode/encodings/code93.js +52 -70
  11. package/dist/es/barcode/encodings/ean13.js +28 -42
  12. package/dist/es/barcode/encodings/ean8.js +8 -18
  13. package/dist/es/barcode/encodings/encoding.js +18 -24
  14. package/dist/es/barcode/encodings/main.js +13 -10
  15. package/dist/es/barcode/encodings/msi.js +56 -112
  16. package/dist/es/barcode/encodings/postnet.js +31 -45
  17. package/dist/es/barcode/surface-size.js +2 -2
  18. package/dist/es/chart/aggregates/aggregates.js +23 -23
  19. package/dist/es/chart/aggregates/default-aggregates.js +10 -18
  20. package/dist/es/chart/aggregates/series-aggregator.js +42 -54
  21. package/dist/es/chart/animations/bar-chart-animation.js +15 -26
  22. package/dist/es/chart/animations/bubble-animation.js +7 -17
  23. package/dist/es/chart/animations/clip-animation.js +13 -23
  24. package/dist/es/chart/animations/fade-in-animation.js +6 -16
  25. package/dist/es/chart/animations/pie-animation.js +6 -16
  26. package/dist/es/chart/api-elements/chart-axis.js +14 -22
  27. package/dist/es/chart/api-elements/chart-pane.js +10 -8
  28. package/dist/es/chart/api-elements/chart-plotarea.js +4 -10
  29. package/dist/es/chart/api-elements/find-axis-by-name.js +1 -1
  30. package/dist/es/chart/area-chart/area-chart.js +46 -60
  31. package/dist/es/chart/area-chart/area-segment.js +46 -52
  32. package/dist/es/chart/area-chart/spline-area-segment.js +12 -21
  33. package/dist/es/chart/area-chart/step-area-segment.js +6 -15
  34. package/dist/es/chart/axis-group-range-tracker.js +14 -20
  35. package/dist/es/chart/bar-chart/bar-chart.js +65 -80
  36. package/dist/es/chart/bar-chart/bar-label.js +25 -32
  37. package/dist/es/chart/bar-chart/bar.js +76 -91
  38. package/dist/es/chart/box-plot-chart/box-plot-chart.js +33 -48
  39. package/dist/es/chart/box-plot-chart/box-plot.js +55 -68
  40. package/dist/es/chart/box-plot-chart/vertical-box-plot.js +13 -23
  41. package/dist/es/chart/bubble-chart/bubble-chart.js +51 -64
  42. package/dist/es/chart/bubble-chart/bubble.js +21 -27
  43. package/dist/es/chart/bullet-chart/bullet-chart.js +45 -57
  44. package/dist/es/chart/bullet-chart/bullet.js +48 -57
  45. package/dist/es/chart/bullet-chart/target.js +1 -11
  46. package/dist/es/chart/candlestick-chart/candlestick-chart.js +41 -55
  47. package/dist/es/chart/candlestick-chart/candlestick.js +60 -69
  48. package/dist/es/chart/categorical-chart.js +178 -206
  49. package/dist/es/chart/chart-container.js +30 -39
  50. package/dist/es/chart/chart.js +641 -701
  51. package/dist/es/chart/constants.js +103 -103
  52. package/dist/es/chart/crosshair/crosshair-tooltip.js +22 -34
  53. package/dist/es/chart/crosshair/crosshair.js +39 -47
  54. package/dist/es/chart/donut-chart/donut-chart.js +36 -48
  55. package/dist/es/chart/donut-chart/donut-segment.js +12 -24
  56. package/dist/es/chart/error-bars/categorical-error-bar.js +5 -15
  57. package/dist/es/chart/error-bars/error-bar-base.js +37 -49
  58. package/dist/es/chart/error-bars/error-range-calculator.js +46 -56
  59. package/dist/es/chart/error-bars/scatter-error-bar.js +6 -16
  60. package/dist/es/chart/funnel-chart/funnel-chart.js +86 -103
  61. package/dist/es/chart/funnel-chart/funnel-segment.js +46 -54
  62. package/dist/es/chart/funnel-chart/pyramid-chart.js +5 -11
  63. package/dist/es/chart/heatmap-chart/color-scale.js +7 -9
  64. package/dist/es/chart/heatmap-chart/heatmap-chart.js +87 -110
  65. package/dist/es/chart/heatmap-chart/heatmap-point.js +72 -78
  66. package/dist/es/chart/highlight.js +26 -36
  67. package/dist/es/chart/layout/cluster-layout.js +16 -25
  68. package/dist/es/chart/layout/radar-cluster-layout.js +15 -24
  69. package/dist/es/chart/layout/radar-stack-layout.js +10 -22
  70. package/dist/es/chart/layout/stack-wrap.js +12 -24
  71. package/dist/es/chart/layout/utils.js +2 -2
  72. package/dist/es/chart/legend/legend-item-line-area.js +8 -19
  73. package/dist/es/chart/legend/legend-item-line.js +21 -31
  74. package/dist/es/chart/legend/legend-item-marker.js +18 -28
  75. package/dist/es/chart/legend/legend-item-square.js +8 -18
  76. package/dist/es/chart/legend/legend-item.js +91 -105
  77. package/dist/es/chart/legend/legend-layout.js +18 -25
  78. package/dist/es/chart/legend/legend.js +68 -92
  79. package/dist/es/chart/line-chart/line-chart.js +35 -48
  80. package/dist/es/chart/line-chart/line-point.js +90 -103
  81. package/dist/es/chart/line-chart/line-segment.js +23 -34
  82. package/dist/es/chart/line-chart/spline-segment.js +10 -20
  83. package/dist/es/chart/line-chart/step-line-mixin.js +14 -17
  84. package/dist/es/chart/line-chart/step-line-segment.js +4 -14
  85. package/dist/es/chart/mixins/accessibility-attributes-mixin.js +7 -7
  86. package/dist/es/chart/mixins/clip-animation-mixin.js +7 -7
  87. package/dist/es/chart/mixins/line-chart-mixin.js +27 -31
  88. package/dist/es/chart/mixins/note-mixin.js +3 -3
  89. package/dist/es/chart/mixins/pie-chart-mixin.js +9 -9
  90. package/dist/es/chart/mixins/plotarea-events-mixin.js +1 -1
  91. package/dist/es/chart/mixins/point-events-mixin.js +1 -1
  92. package/dist/es/chart/ohlc-chart/ohlc-chart.js +4 -14
  93. package/dist/es/chart/ohlc-chart/ohlc-point.js +15 -28
  94. package/dist/es/chart/pan-and-zoom/accept-key.js +3 -3
  95. package/dist/es/chart/pan-and-zoom/mousewheel-zoom.js +25 -33
  96. package/dist/es/chart/pan-and-zoom/pannable.js +29 -37
  97. package/dist/es/chart/pan-and-zoom/to-chart-axis-ranges.js +3 -3
  98. package/dist/es/chart/pan-and-zoom/zoom-selection.js +61 -70
  99. package/dist/es/chart/pane.js +71 -79
  100. package/dist/es/chart/pie-chart/pie-chart.js +153 -183
  101. package/dist/es/chart/pie-chart/pie-segment.js +82 -98
  102. package/dist/es/chart/plotarea/categorical-plotarea.js +285 -318
  103. package/dist/es/chart/plotarea/donut-plotarea.js +12 -22
  104. package/dist/es/chart/plotarea/funnel-plotarea.js +17 -27
  105. package/dist/es/chart/plotarea/heatmap-plotarea.js +139 -167
  106. package/dist/es/chart/plotarea/pie-plotarea.js +15 -25
  107. package/dist/es/chart/plotarea/plotarea-base.js +423 -462
  108. package/dist/es/chart/plotarea/plotarea-factory.js +15 -20
  109. package/dist/es/chart/plotarea/polar-plotarea-base.js +37 -51
  110. package/dist/es/chart/plotarea/polar-plotarea.js +39 -49
  111. package/dist/es/chart/plotarea/radar-plotarea.js +55 -65
  112. package/dist/es/chart/plotarea/xy-plotarea.js +111 -128
  113. package/dist/es/chart/polar-area-chart/polar-area-chart.js +22 -36
  114. package/dist/es/chart/polar-area-chart/polar-area-segment.js +7 -17
  115. package/dist/es/chart/polar-area-chart/spline-polar-area-segment.js +15 -25
  116. package/dist/es/chart/polar-line-chart/polar-line-chart.js +2 -11
  117. package/dist/es/chart/polar-scatter-chart/polar-scatter-chart.js +6 -16
  118. package/dist/es/chart/radar-area-chart/radar-area-chart.js +11 -21
  119. package/dist/es/chart/radar-area-chart/radar-area-segment.js +3 -13
  120. package/dist/es/chart/radar-area-chart/spline-radar-area-segment.js +3 -13
  121. package/dist/es/chart/radar-bar-chart/radar-bar-chart.js +19 -29
  122. package/dist/es/chart/radar-bar-chart/radar-segment.js +6 -12
  123. package/dist/es/chart/radar-line-chart/radar-line-chart.js +26 -35
  124. package/dist/es/chart/range-area-chart/range-area-chart.js +46 -58
  125. package/dist/es/chart/range-area-chart/range-area-point.js +55 -66
  126. package/dist/es/chart/range-area-chart/range-area-segment.js +19 -28
  127. package/dist/es/chart/range-area-chart/range-line-point.js +4 -14
  128. package/dist/es/chart/range-area-chart/spline-range-area-segment.js +11 -18
  129. package/dist/es/chart/range-area-chart/step-range-area-segment.js +7 -16
  130. package/dist/es/chart/range-bar-chart/range-bar-chart.js +18 -29
  131. package/dist/es/chart/range-bar-chart/range-bar.js +10 -23
  132. package/dist/es/chart/register-charts.js +20 -16
  133. package/dist/es/chart/scatter-charts/scatter-chart.js +100 -122
  134. package/dist/es/chart/scatter-charts/scatter-line-chart.js +15 -25
  135. package/dist/es/chart/selection.js +176 -201
  136. package/dist/es/chart/series-binder.js +55 -66
  137. package/dist/es/chart/theme/base-theme.js +75 -79
  138. package/dist/es/chart/theme/load-theme.js +52 -52
  139. package/dist/es/chart/tooltip/base-tooltip.js +17 -24
  140. package/dist/es/chart/tooltip/shared-tooltip.js +25 -31
  141. package/dist/es/chart/tooltip/tooltip.js +10 -20
  142. package/dist/es/chart/trendlines/calculate-moving-average.js +11 -13
  143. package/dist/es/chart/trendlines/calculate-polynomial.js +24 -26
  144. package/dist/es/chart/trendlines/calculate-slope.js +12 -14
  145. package/dist/es/chart/trendlines/check-all-positive.js +2 -5
  146. package/dist/es/chart/trendlines/exponential-trendline.js +15 -24
  147. package/dist/es/chart/trendlines/get-scatter-trendline-data.js +6 -7
  148. package/dist/es/chart/trendlines/get-trendline-data.js +6 -6
  149. package/dist/es/chart/trendlines/linear-trendline.js +12 -21
  150. package/dist/es/chart/trendlines/logarithmic-trendline.js +14 -23
  151. package/dist/es/chart/trendlines/moving-average.js +15 -26
  152. package/dist/es/chart/trendlines/polynomial-trendline.js +13 -21
  153. package/dist/es/chart/trendlines/power-trendline.js +15 -24
  154. package/dist/es/chart/trendlines/scatter-exponential-trendline.js +15 -24
  155. package/dist/es/chart/trendlines/scatter-linear-trendline.js +10 -16
  156. package/dist/es/chart/trendlines/scatter-logarithmic-trendline.js +17 -27
  157. package/dist/es/chart/trendlines/scatter-moving-average.js +7 -10
  158. package/dist/es/chart/trendlines/scatter-polynomial-trendline.js +11 -16
  159. package/dist/es/chart/trendlines/scatter-power-trendline.js +15 -22
  160. package/dist/es/chart/trendlines/scatter-trendline-registry.js +1 -1
  161. package/dist/es/chart/trendlines/scatter-value-getter.js +2 -5
  162. package/dist/es/chart/trendlines/trendline-factory.js +1 -1
  163. package/dist/es/chart/trendlines/trendline-registry.js +1 -1
  164. package/dist/es/chart/trendlines/x-value-limits.js +6 -8
  165. package/dist/es/chart/utils/any-has-z-index.js +1 -1
  166. package/dist/es/chart/utils/bind-segments.js +8 -8
  167. package/dist/es/chart/utils/categories-count.js +3 -3
  168. package/dist/es/chart/utils/count-numbers.js +4 -4
  169. package/dist/es/chart/utils/create-out-of-range-points.js +13 -22
  170. package/dist/es/chart/utils/eval-options.js +7 -10
  171. package/dist/es/chart/utils/filter-series-by-type.js +4 -4
  172. package/dist/es/chart/utils/get-field.js +1 -1
  173. package/dist/es/chart/utils/has-gradient-overlay.js +1 -1
  174. package/dist/es/chart/utils/is-date-axis.js +2 -2
  175. package/dist/es/chart/utils/parse-date-category.js +2 -2
  176. package/dist/es/chart/utils/segment-visible.js +2 -2
  177. package/dist/es/chart/waterfall-chart/waterfall-chart.js +41 -55
  178. package/dist/es/chart/waterfall-chart/waterfall-segment.js +16 -24
  179. package/dist/es/chart-wizard/get-wizard-data-from-data-rows.js +5 -6
  180. package/dist/es/chart-wizard/messages.js +1 -1
  181. package/dist/es/chart-wizard/state.js +145 -137
  182. package/dist/es/chart-wizard.js +12 -12
  183. package/dist/es/common/add-class.js +3 -3
  184. package/dist/es/common/align-path-to-pixel.js +2 -2
  185. package/dist/es/common/auto-text-color.js +1 -1
  186. package/dist/es/common/constants.js +53 -53
  187. package/dist/es/common/create-hash-set.js +59 -65
  188. package/dist/es/common/cycleDown.js +1 -1
  189. package/dist/es/common/deep-extend.js +10 -12
  190. package/dist/es/common/element-scale.js +9 -9
  191. package/dist/es/common/element-styles.js +8 -8
  192. package/dist/es/common/event-map.js +4 -4
  193. package/dist/es/common/event-utils.js +13 -13
  194. package/dist/es/common/find.js +2 -2
  195. package/dist/es/common/font-loader.js +42 -44
  196. package/dist/es/common/get-aria-template.js +2 -4
  197. package/dist/es/common/get-spacing.js +2 -4
  198. package/dist/es/common/get-supported-features.js +7 -7
  199. package/dist/es/common/get-template.js +2 -4
  200. package/dist/es/common/getter.js +5 -5
  201. package/dist/es/common/grep.js +3 -3
  202. package/dist/es/common/has-classes.js +2 -2
  203. package/dist/es/common/hash-map.js +11 -11
  204. package/dist/es/common/instance-observer.js +28 -33
  205. package/dist/es/common/keys.js +1 -1
  206. package/dist/es/common/map.js +4 -4
  207. package/dist/es/common/matrix.js +142 -150
  208. package/dist/es/common/mousewheel-delta.js +2 -2
  209. package/dist/es/common/observable.js +40 -52
  210. package/dist/es/common/remove-class.js +1 -1
  211. package/dist/es/common/render-icon.js +50 -60
  212. package/dist/es/common/set-default-options.js +1 -1
  213. package/dist/es/common/sparse-array-limits.js +4 -4
  214. package/dist/es/common/user-events.js +124 -150
  215. package/dist/es/core/axis-label.js +38 -43
  216. package/dist/es/core/axis.js +293 -345
  217. package/dist/es/core/box-element.js +36 -46
  218. package/dist/es/core/box.js +75 -83
  219. package/dist/es/core/category-axis.js +265 -314
  220. package/dist/es/core/chart-element.js +98 -109
  221. package/dist/es/core/constants.js +3 -3
  222. package/dist/es/core/curve-processor.js +86 -93
  223. package/dist/es/core/date-category-axis.js +381 -413
  224. package/dist/es/core/date-value-axis.js +108 -118
  225. package/dist/es/core/float-element.js +54 -78
  226. package/dist/es/core/gradients.js +3 -3
  227. package/dist/es/core/logarithmic-axis.js +134 -186
  228. package/dist/es/core/mixins/grid-lines-mixin.js +18 -20
  229. package/dist/es/core/mixins/radar-numeric-axis-mixin.js +46 -51
  230. package/dist/es/core/note.js +58 -73
  231. package/dist/es/core/numeric-axis.js +111 -133
  232. package/dist/es/core/pattern.js +4 -8
  233. package/dist/es/core/point.js +25 -34
  234. package/dist/es/core/polar-axis.js +73 -91
  235. package/dist/es/core/radar-category-axis.js +90 -114
  236. package/dist/es/core/radar-logarithmic-axis.js +10 -20
  237. package/dist/es/core/radar-numeric-axis.js +10 -20
  238. package/dist/es/core/ring.js +61 -68
  239. package/dist/es/core/root-element.js +40 -48
  240. package/dist/es/core/sector.js +11 -17
  241. package/dist/es/core/shape-builder.js +13 -23
  242. package/dist/es/core/shape-element.js +27 -37
  243. package/dist/es/core/text-box.js +50 -59
  244. package/dist/es/core/text.js +13 -24
  245. package/dist/es/core/title.js +19 -25
  246. package/dist/es/core/utils/auto-axis-max.js +3 -3
  247. package/dist/es/core/utils/auto-axis-min.js +3 -3
  248. package/dist/es/core/utils/auto-major-unit.js +4 -4
  249. package/dist/es/core/utils/box-diff.js +9 -9
  250. package/dist/es/core/utils/create-axis-grid-line.js +2 -4
  251. package/dist/es/core/utils/create-axis-tick.js +2 -4
  252. package/dist/es/core/utils/guid.js +3 -3
  253. package/dist/es/core/utils/rect-to-box.js +2 -2
  254. package/dist/es/date-utils/absolute-date-diff.js +2 -2
  255. package/dist/es/date-utils/add-duration.js +5 -5
  256. package/dist/es/date-utils/ceil-date.js +1 -1
  257. package/dist/es/date-utils/constants.js +17 -17
  258. package/dist/es/date-utils/date-index.js +3 -3
  259. package/dist/es/date-utils/duration.js +1 -1
  260. package/dist/es/date-utils/lte-date-index.js +4 -4
  261. package/dist/es/date-utils/parse-date.js +1 -1
  262. package/dist/es/date-utils/parse-dates.js +2 -2
  263. package/dist/es/date-utils/start-of-week.js +3 -5
  264. package/dist/es/date-utils/to-date.js +1 -1
  265. package/dist/es/date-utils/to-time.js +2 -2
  266. package/dist/es/drawing-utils.js +18 -17
  267. package/dist/es/gauges/arc/arc-gauge.js +29 -38
  268. package/dist/es/gauges/arc/arc-scale.js +16 -29
  269. package/dist/es/gauges/arc/range-pointer-animation.js +16 -25
  270. package/dist/es/gauges/arc/range-pointer.js +25 -46
  271. package/dist/es/gauges/circular/circular-gauge.js +7 -17
  272. package/dist/es/gauges/constants.js +14 -14
  273. package/dist/es/gauges/gauge.js +84 -96
  274. package/dist/es/gauges/linear/arrow-linear-pointer-animation.js +13 -25
  275. package/dist/es/gauges/linear/arrow-linear-pointer.js +23 -35
  276. package/dist/es/gauges/linear/bar-linear-pointer-animation.js +15 -24
  277. package/dist/es/gauges/linear/bar-linear-pointer.js +38 -51
  278. package/dist/es/gauges/linear/linear-gauge.js +61 -83
  279. package/dist/es/gauges/linear/linear-pointer.js +25 -39
  280. package/dist/es/gauges/linear/linear-scale.js +57 -74
  281. package/dist/es/gauges/pointer.js +11 -21
  282. package/dist/es/gauges/radial/radial-gauge.js +58 -81
  283. package/dist/es/gauges/radial/radial-pointer-animation.js +9 -15
  284. package/dist/es/gauges/radial/radial-pointer.js +33 -48
  285. package/dist/es/gauges/radial/radial-scale.js +154 -186
  286. package/dist/es/gauges/utils/build-label-element.js +10 -12
  287. package/dist/es/gauges/utils/get-range.js +2 -2
  288. package/dist/es/gauges/utils/pad.js +3 -3
  289. package/dist/es/gauges/utils/unpad.js +1 -1
  290. package/dist/es/map/attribution.js +42 -52
  291. package/dist/es/map/constants.js +5 -5
  292. package/dist/es/map/crs.js +68 -112
  293. package/dist/es/map/datums.js +3 -3
  294. package/dist/es/map/extent.js +40 -54
  295. package/dist/es/map/layers/bubble.js +52 -70
  296. package/dist/es/map/layers/layer.js +50 -56
  297. package/dist/es/map/layers/marker.js +109 -129
  298. package/dist/es/map/layers/shape.js +111 -133
  299. package/dist/es/map/layers/tile.js +144 -170
  300. package/dist/es/map/location.js +70 -78
  301. package/dist/es/map/map.js +261 -291
  302. package/dist/es/map/navigator.js +33 -39
  303. package/dist/es/map/scroller/draggable.js +98 -134
  304. package/dist/es/map/scroller/fx.js +39 -46
  305. package/dist/es/map/scroller/scroller.js +144 -174
  306. package/dist/es/map/tooltip/tooltip.js +15 -25
  307. package/dist/es/map/utils.js +25 -26
  308. package/dist/es/map/zoom.js +30 -36
  309. package/dist/es/qrcode/encodings/data-modes/alpha-numeric-data-mode.js +14 -26
  310. package/dist/es/qrcode/encodings/data-modes/byte-data-mode.js +15 -25
  311. package/dist/es/qrcode/encodings/data-modes/data-mode-instances.js +8 -7
  312. package/dist/es/qrcode/encodings/data-modes/numeric-data-mode.js +14 -24
  313. package/dist/es/qrcode/encodings/data-modes/qr-data-mode.js +15 -21
  314. package/dist/es/qrcode/encodings/encoders/iso-encoder.js +6 -16
  315. package/dist/es/qrcode/encodings/encoders/utf8-encoder.js +28 -36
  316. package/dist/es/qrcode/encodings/encoding-result.js +4 -10
  317. package/dist/es/qrcode/encodings/encoding.js +68 -192
  318. package/dist/es/qrcode/encodings/free-cell-visitor.js +16 -24
  319. package/dist/es/qrcode/encodings/utils/choose-mode.js +44 -0
  320. package/dist/es/qrcode/encodings/utils/get-data-codewords-count.js +13 -0
  321. package/dist/es/qrcode/encodings/utils/get-data-string.js +13 -0
  322. package/dist/es/qrcode/encodings/utils/get-modes.js +35 -0
  323. package/dist/es/qrcode/encodings/utils/get-version.js +23 -0
  324. package/dist/es/qrcode/encodings/utils/index.js +5 -0
  325. package/dist/es/qrcode/encodings/version-codewords.js +1 -1
  326. package/dist/es/qrcode/qrcode-validator.js +3 -5
  327. package/dist/es/qrcode/qrcode.js +104 -114
  328. package/dist/es/qrcode/utils.js +4 -4
  329. package/dist/es/sankey/calculation.js +286 -307
  330. package/dist/es/sankey/element.js +15 -23
  331. package/dist/es/sankey/label.js +29 -44
  332. package/dist/es/sankey/legend.js +15 -29
  333. package/dist/es/sankey/link.js +80 -98
  334. package/dist/es/sankey/node.js +26 -37
  335. package/dist/es/sankey/sankey.js +318 -385
  336. package/dist/es/sankey/title.js +9 -20
  337. package/dist/es/sankey/utils.js +18 -23
  338. package/dist/es/services/chart-service.js +24 -28
  339. package/dist/es/services/dom-events-builder.js +15 -15
  340. package/dist/es/services/format-service.js +30 -35
  341. package/dist/es/services/intl-service.js +14 -18
  342. package/dist/es/services/map-service.js +11 -11
  343. package/dist/es/services/template-service.js +9 -9
  344. package/dist/es/sparkline/shared-tooltip.js +11 -21
  345. package/dist/es/sparkline/sparkline.js +50 -60
  346. package/dist/es/stock/constants.js +3 -3
  347. package/dist/es/stock/fade-out-animation.js +12 -21
  348. package/dist/es/stock/navigator-hint.js +37 -49
  349. package/dist/es/stock/navigator.js +130 -161
  350. package/dist/es/stock/stock-chart.js +58 -67
  351. package/dist/es2015/chart/legend/legend-item.js +1 -1
  352. package/dist/es2015/qrcode/encodings/encoders/iso-encoder.js +1 -1
  353. package/dist/es2015/qrcode/encodings/encoders/utf8-encoder.js +1 -1
  354. package/dist/es2015/qrcode/encodings/encoding.js +3 -127
  355. package/dist/es2015/qrcode/encodings/utils/choose-mode.js +44 -0
  356. package/dist/es2015/qrcode/encodings/utils/get-data-codewords-count.js +13 -0
  357. package/dist/es2015/qrcode/encodings/utils/get-data-string.js +13 -0
  358. package/dist/es2015/qrcode/encodings/utils/get-modes.js +35 -0
  359. package/dist/es2015/qrcode/encodings/utils/get-version.js +23 -0
  360. package/dist/es2015/qrcode/encodings/utils/index.js +5 -0
  361. package/dist/npm/main.js +3222 -3589
  362. package/dist/systemjs/kendo-charts.js +1 -1
  363. package/package.json +19 -57
@@ -10,34 +10,33 @@ import { Box, rectToBox } from '../core';
10
10
  import { Legend } from './legend';
11
11
  import { defined } from '../drawing-utils';
12
12
 
13
- var LINK = 'link';
14
- var NODE = 'node';
15
-
16
- var toRtl = function (sankey) {
17
- var nodes = sankey.nodes;
18
- var links = sankey.links;
19
- var startX = Math.min.apply(Math, nodes.map(function (node) { return node.x0; }));
20
- var endX = Math.max.apply(Math, nodes.map(function (node) { return node.x1; }));
21
- var width = endX - startX;
22
-
23
- nodes.forEach(function (node) {
24
- var x0 = width - (node.x1 - 2 * startX);
25
- var x1 = width - (node.x0 - 2 * startX);
13
+ const LINK = 'link';
14
+ const NODE = 'node';
15
+
16
+ const toRtl = sankey => {
17
+ const { nodes, links } = sankey;
18
+ const startX = Math.min(...nodes.map(node => node.x0));
19
+ const endX = Math.max(...nodes.map(node => node.x1));
20
+ const width = endX - startX;
21
+
22
+ nodes.forEach(node => {
23
+ const x0 = width - (node.x1 - 2 * startX);
24
+ const x1 = width - (node.x0 - 2 * startX);
26
25
  node.x0 = x0;
27
26
  node.x1 = x1;
28
27
  });
29
28
 
30
- links.forEach(function (link) {
31
- var x0 = width - (link.x1 - 2 * startX);
32
- var x1 = width - (link.x0 - 2 * startX);
29
+ links.forEach(link => {
30
+ const x0 = width - (link.x1 - 2 * startX);
31
+ const x1 = width - (link.x0 - 2 * startX);
33
32
  link.x1 = x0;
34
33
  link.x0 = x1;
35
34
  });
36
35
  };
37
36
 
38
- export var Sankey = (function (Observable) {
39
- function Sankey(element, options, theme) {
40
- Observable.call(this);
37
+ export class Sankey extends Observable {
38
+ constructor(element, options, theme) {
39
+ super();
41
40
 
42
41
  this._initTheme(theme);
43
42
  this._setOptions(options);
@@ -51,11 +50,7 @@ export var Sankey = (function (Observable) {
51
50
  }
52
51
  }
53
52
 
54
- if ( Observable ) Sankey.__proto__ = Observable;
55
- Sankey.prototype = Object.create( Observable && Observable.prototype );
56
- Sankey.prototype.constructor = Sankey;
57
-
58
- Sankey.prototype.destroy = function destroy () {
53
+ destroy() {
59
54
  this.unbind();
60
55
  this._destroySurface();
61
56
  this._destroyResizeObserver();
@@ -71,15 +66,14 @@ export var Sankey = (function (Observable) {
71
66
  this._focusState = null;
72
67
 
73
68
  this.element = null;
74
- };
69
+ }
75
70
 
76
- Sankey.prototype._initElement = function _initElement (element) {
71
+ _initElement(element) {
77
72
  this.element = element;
78
73
  addClass(element, [ "k-chart", "k-sankey" ]);
79
74
  element.setAttribute('role', 'graphics-document');
80
75
 
81
- var ref = this.options;
82
- var title = ref.title;
76
+ const { title } = this.options;
83
77
 
84
78
  if (title.text) {
85
79
  element.setAttribute('aria-label', title.text);
@@ -88,17 +82,17 @@ export var Sankey = (function (Observable) {
88
82
  if (title.description) {
89
83
  element.setAttribute("aria-roledescription", title.description);
90
84
  }
91
- };
85
+ }
92
86
 
93
- Sankey.prototype._initSurface = function _initSurface () {
87
+ _initSurface() {
94
88
  if (!this.surface) {
95
89
  this._destroySurface();
96
90
  this._initSurfaceElement();
97
91
  this.surface = this._createSurface();
98
92
  }
99
- };
93
+ }
100
94
 
101
- Sankey.prototype._initNavigation = function _initNavigation (element) {
95
+ _initNavigation(element) {
102
96
  element.tabIndex = element.getAttribute("tabindex") || 0;
103
97
 
104
98
  if (this.options.disableKeyboardNavigation) {
@@ -121,114 +115,103 @@ export var Sankey = (function (Observable) {
121
115
  node: this.firstFocusableNode(),
122
116
  link: null
123
117
  };
124
- };
118
+ }
125
119
 
126
- Sankey.prototype.firstFocusableNode = function firstFocusableNode () {
120
+ firstFocusableNode() {
127
121
  return this.columns[0][0];
128
- };
129
-
130
- Sankey.prototype._initResizeObserver = function _initResizeObserver () {
131
- var this$1 = this;
132
-
133
- var observer = new ResizeObserver(function (entries) {
134
- entries.forEach(function (entry) {
135
- var ref = entry.contentRect;
136
- var width = ref.width;
137
- var height = ref.height;
138
- if (entry.target !== this$1.element ||
139
- (this$1.size && this$1.size.width === width && this$1.size.height === height)) {
122
+ }
123
+
124
+ _initResizeObserver() {
125
+ const observer = new ResizeObserver((entries) => {
126
+ entries.forEach(entry => {
127
+ const { width, height } = entry.contentRect;
128
+ if (entry.target !== this.element ||
129
+ (this.size && this.size.width === width && this.size.height === height)) {
140
130
  return;
141
131
  }
142
- this$1.size = { width: width, height: height };
143
- this$1.surface.setSize(this$1.size);
144
- this$1.resize = true;
145
- this$1._redraw();
132
+ this.size = { width, height };
133
+ this.surface.setSize(this.size);
134
+ this.resize = true;
135
+ this._redraw();
146
136
  });
147
137
  });
148
138
  this._resizeObserver = observer;
149
139
  observer.observe(this.element);
150
- };
140
+ }
151
141
 
152
- Sankey.prototype._createSurface = function _createSurface () {
142
+ _createSurface() {
153
143
  return drawing.Surface.create(this.surfaceElement, {
154
144
  mouseenter: this._mouseenter.bind(this),
155
145
  mouseleave: this._mouseleave.bind(this),
156
146
  mousemove: this._mousemove.bind(this),
157
147
  click: this._click.bind(this)
158
148
  });
159
- };
149
+ }
160
150
 
161
- Sankey.prototype._initTheme = function _initTheme (theme) {
162
- var currentTheme = theme || this.theme || {};
151
+ _initTheme(theme) {
152
+ let currentTheme = theme || this.theme || {};
163
153
  this.theme = currentTheme;
164
154
  this.options = deepExtend({}, currentTheme, this.options);
165
- };
166
-
167
- Sankey.prototype.setLinksOpacity = function setLinksOpacity (opacity) {
168
- var this$1 = this;
155
+ }
169
156
 
170
- this.linksVisuals.forEach(function (link) {
171
- this$1.setOpacity(link, opacity, link.linkOptions.opacity);
157
+ setLinksOpacity(opacity) {
158
+ this.linksVisuals.forEach(link => {
159
+ this.setOpacity(link, opacity, link.linkOptions.opacity);
172
160
  });
173
- };
174
-
175
- Sankey.prototype.setLinksInactivityOpacity = function setLinksInactivityOpacity (inactiveOpacity) {
176
- var this$1 = this;
161
+ }
177
162
 
178
- this.linksVisuals.forEach(function (link) {
179
- this$1.setOpacity(link, inactiveOpacity, link.linkOptions.highlight.inactiveOpacity);
163
+ setLinksInactivityOpacity(inactiveOpacity) {
164
+ this.linksVisuals.forEach(link => {
165
+ this.setOpacity(link, inactiveOpacity, link.linkOptions.highlight.inactiveOpacity);
180
166
  });
181
- };
167
+ }
182
168
 
183
- Sankey.prototype.setOpacity = function setOpacity (link, opacity, linkValue) {
169
+ setOpacity(link, opacity, linkValue) {
184
170
  link.options.set('stroke', Object.assign({}, link.options.stroke,
185
171
  {opacity: defined(linkValue) ? linkValue : opacity}));
186
- };
172
+ }
187
173
 
188
- Sankey.prototype.trigger = function trigger (name, ev) {
189
- var dataItem = ev.element.dataItem;
190
- var targetType = ev.element.type;
174
+ trigger(name, ev) {
175
+ let dataItem = ev.element.dataItem;
176
+ const targetType = ev.element.type;
191
177
 
192
- var event = Object.assign({}, ev,
178
+ const event = Object.assign({}, ev,
193
179
  {type: name,
194
- targetType: targetType,
180
+ targetType,
195
181
  dataItem: dataItem});
196
182
 
197
- return Observable.prototype.trigger.call(this, name, event);
198
- };
183
+ return super.trigger(name, event);
184
+ }
199
185
 
200
- Sankey.prototype._mouseenter = function _mouseenter (ev) {
201
- var element = ev.element;
202
- var isLink = element.type === LINK;
203
- var isNode = element.type === NODE;
204
- var isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);
186
+ _mouseenter(ev) {
187
+ const element = ev.element;
188
+ const isLink = element.type === LINK;
189
+ const isNode = element.type === NODE;
190
+ const isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);
205
191
 
206
192
  if ((isLink && this.trigger('linkEnter', ev)) ||
207
193
  (isNode && this.trigger('nodeEnter', ev))) {
208
194
  return;
209
195
  }
210
196
 
211
- var ref = this.options.links;
212
- var highlight = ref.highlight;
197
+ const { highlight } = this.options.links;
213
198
  if (isLink) {
214
199
  this.setLinksInactivityOpacity(highlight.inactiveOpacity);
215
200
  this.setOpacity(element, highlight.opacity, element.linkOptions.highlight.opacity);
216
201
  } else if (isNode) {
217
202
  this.highlightLinks(element, highlight);
218
203
  } else if (isLegendItem) {
219
- var nodeVisual = this.nodesVisuals.get(element.chartElement.options.node.id);
204
+ const nodeVisual = this.nodesVisuals.get(element.chartElement.options.node.id);
220
205
  this.highlightLinks(nodeVisual, highlight);
221
206
  }
222
- };
223
-
224
- Sankey.prototype._mouseleave = function _mouseleave (ev) {
225
- var this$1 = this;
207
+ }
226
208
 
227
- var element = ev.element;
228
- var isLink = element.type === LINK;
229
- var isNode = element.type === NODE;
230
- var isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);
231
- var target = ev.originalEvent.relatedTarget;
209
+ _mouseleave(ev) {
210
+ const element = ev.element;
211
+ const isLink = element.type === LINK;
212
+ const isNode = element.type === NODE;
213
+ const isLegendItem = Boolean(element.chartElement && element.chartElement.options.node);
214
+ const target = ev.originalEvent.relatedTarget;
232
215
 
233
216
  if (isLink && target && target.nodeName === 'text') {
234
217
  return;
@@ -249,29 +232,25 @@ export var Sankey = (function (Observable) {
249
232
  }
250
233
 
251
234
  if (isLink || isNode || isLegendItem) {
252
- this.linksVisuals.forEach(function (link) {
253
- this$1.setOpacity(link, this$1.options.links.opacity, link.linkOptions.opacity);
235
+ this.linksVisuals.forEach(link => {
236
+ this.setOpacity(link, this.options.links.opacity, link.linkOptions.opacity);
254
237
  });
255
238
  }
256
- };
257
-
258
- Sankey.prototype._mousemove = function _mousemove (ev) {
259
- var this$1 = this;
239
+ }
260
240
 
261
- var ref = this.options.tooltip;
262
- var followPointer = ref.followPointer;
263
- var delay = ref.delay;
264
- var element = ev.element;
265
- var tooltipElType = element.type;
241
+ _mousemove(ev) {
242
+ const { followPointer, delay } = this.options.tooltip;
243
+ const element = ev.element;
244
+ const tooltipElType = element.type;
266
245
 
267
246
  if ((tooltipElType !== LINK && tooltipElType !== NODE) || (this.tooltipShown && !followPointer)) {
268
247
  return;
269
248
  }
270
249
 
271
- var mouseEvent = ev.originalEvent;
272
- var rect = this.element.getBoundingClientRect();
273
- var isLeft = mouseEvent.clientX - rect.left < rect.width / 2;
274
- var isTop = mouseEvent.clientY - rect.top < rect.height / 2;
250
+ const mouseEvent = ev.originalEvent;
251
+ const rect = this.element.getBoundingClientRect();
252
+ const isLeft = mouseEvent.clientX - rect.left < rect.width / 2;
253
+ const isTop = mouseEvent.clientY - rect.top < rect.height / 2;
275
254
 
276
255
  ev.tooltipData = {
277
256
  popupOffset: {
@@ -285,11 +264,9 @@ export var Sankey = (function (Observable) {
285
264
  };
286
265
 
287
266
  if (tooltipElType === NODE) {
288
- var ref$1 = element.dataItem;
289
- var sourceLinks = ref$1.sourceLinks;
290
- var targetLinks = ref$1.targetLinks;
291
- var links = targetLinks.length ? targetLinks : sourceLinks;
292
- ev.nodeValue = links.reduce(function (acc, link) { return acc + link.value; }, 0);
267
+ const { sourceLinks, targetLinks } = element.dataItem;
268
+ const links = targetLinks.length ? targetLinks : sourceLinks;
269
+ ev.nodeValue = links.reduce((acc, link) => acc + link.value, 0);
293
270
  }
294
271
 
295
272
  if (this.tooltipTimeOut) {
@@ -297,24 +274,24 @@ export var Sankey = (function (Observable) {
297
274
  this.tooltipTimeOut = null;
298
275
  }
299
276
 
300
- var nextDelay = followPointer && this.tooltipShown ? 0 : delay;
277
+ const nextDelay = followPointer && this.tooltipShown ? 0 : delay;
301
278
 
302
- this.tooltipTimeOut = setTimeout(function () {
303
- this$1.trigger('tooltipShow', ev);
304
- this$1.tooltipShown = true;
305
- this$1.tooltipTimeOut = null;
279
+ this.tooltipTimeOut = setTimeout(() => {
280
+ this.trigger('tooltipShow', ev);
281
+ this.tooltipShown = true;
282
+ this.tooltipTimeOut = null;
306
283
  }, nextDelay);
307
- };
284
+ }
308
285
 
309
- Sankey.prototype._click = function _click (ev) {
310
- var element = ev.element;
311
- var dataItem = element.dataItem;
312
- var isLink = element.type === LINK;
313
- var isNode = element.type === NODE;
314
- var focusState = this._focusState || {};
286
+ _click(ev) {
287
+ const element = ev.element;
288
+ const dataItem = element.dataItem;
289
+ const isLink = element.type === LINK;
290
+ const isNode = element.type === NODE;
291
+ const focusState = this._focusState || {};
315
292
 
316
293
  if (isNode) {
317
- var focusedNodeClicked = !focusState.link && this.sameNode(focusState.node, dataItem);
294
+ const focusedNodeClicked = !focusState.link && this.sameNode(focusState.node, dataItem);
318
295
 
319
296
  if (!focusedNodeClicked) {
320
297
  this._focusState = { node: dataItem, link: null };
@@ -323,12 +300,12 @@ export var Sankey = (function (Observable) {
323
300
 
324
301
  this.trigger('nodeClick', ev);
325
302
  } else if (isLink) {
326
- var link = {
303
+ const link = {
327
304
  sourceId: dataItem.source.id,
328
305
  targetId: dataItem.target.id,
329
306
  value: dataItem.value
330
307
  };
331
- var focusedLinkClicked = this.sameLink(focusState.link, link);
308
+ const focusedLinkClicked = this.sameLink(focusState.link, link);
332
309
 
333
310
  if (!focusedLinkClicked) {
334
311
  this._focusState = { node: dataItem.source, link: link };
@@ -337,109 +314,105 @@ export var Sankey = (function (Observable) {
337
314
 
338
315
  this.trigger('linkClick', ev);
339
316
  }
340
- };
317
+ }
341
318
 
342
- Sankey.prototype.sameNode = function sameNode (node1, node2) {
319
+ sameNode(node1, node2) {
343
320
  return node1 && node2 && node1.id === node2.id;
344
- };
321
+ }
345
322
 
346
- Sankey.prototype.sameLink = function sameLink (link1, link2) {
323
+ sameLink(link1, link2) {
347
324
  return link1 && link2 && link1.sourceId === link2.sourceId && link1.targetId === link2.targetId;
348
- };
325
+ }
349
326
 
350
- Sankey.prototype._focusNode = function _focusNode (options) {
327
+ _focusNode(options) {
351
328
  this._cleanFocusHighlight();
352
329
 
353
- var nodeData = this._focusState.node;
354
- var node = this.models.map.get(nodeData.id);
330
+ const nodeData = this._focusState.node;
331
+ const node = this.models.map.get(nodeData.id);
355
332
  node.focus(options);
356
- };
333
+ }
357
334
 
358
- Sankey.prototype._focusLink = function _focusLink (options) {
335
+ _focusLink(options) {
359
336
  this._cleanFocusHighlight();
360
337
 
361
- var linkData = this._focusState.link;
362
- var link = this.models.map.get(((linkData.sourceId) + "-" + (linkData.targetId)));
338
+ const linkData = this._focusState.link;
339
+ const link = this.models.map.get(`${linkData.sourceId}-${linkData.targetId}`);
363
340
  link.focus(options);
364
- };
365
-
366
- Sankey.prototype._focusNextNode = function _focusNextNode (direction) {
367
- if ( direction === void 0 ) direction = 1;
341
+ }
368
342
 
369
- var current = this._focusState.node;
343
+ _focusNextNode(direction = 1) {
344
+ const current = this._focusState.node;
370
345
 
371
- var columnIndex = this.columns.findIndex(function (column) { return column.find(function (n) { return n.id === current.id; }); });
372
- var columnNodes = this.columns[columnIndex];
373
- var nodeIndex = columnNodes.findIndex(function (n) { return n.id === current.id; });
346
+ const columnIndex = this.columns.findIndex(column => column.find(n => n.id === current.id));
347
+ const columnNodes = this.columns[columnIndex];
348
+ const nodeIndex = columnNodes.findIndex(n => n.id === current.id);
374
349
 
375
- var nextNode = columnNodes[nodeIndex + direction];
350
+ const nextNode = columnNodes[nodeIndex + direction];
376
351
  if (nextNode) {
377
352
  this._focusState.node = nextNode;
378
353
  this._focusNode();
379
354
  }
380
- };
381
-
382
- Sankey.prototype._focusNextLink = function _focusNextLink (direction) {
383
- if ( direction === void 0 ) direction = 1;
355
+ }
384
356
 
385
- var node = this._focusState.node;
386
- var link = this._focusState.link;
357
+ _focusNextLink(direction = 1) {
358
+ const node = this._focusState.node;
359
+ const link = this._focusState.link;
387
360
 
388
- var sourceLinkIndex = node.sourceLinks.findIndex(function (l) { return l.sourceId === link.sourceId && l.targetId === link.targetId; });
389
- var targetLinkIndex = node.targetLinks.findIndex(function (l) { return l.sourceId === link.sourceId && l.targetId === link.targetId; });
361
+ const sourceLinkIndex = node.sourceLinks.findIndex(l => l.sourceId === link.sourceId && l.targetId === link.targetId);
362
+ const targetLinkIndex = node.targetLinks.findIndex(l => l.sourceId === link.sourceId && l.targetId === link.targetId);
390
363
 
391
364
  if (sourceLinkIndex !== -1) {
392
- var nextLink = node.sourceLinks[sourceLinkIndex + direction];
365
+ const nextLink = node.sourceLinks[sourceLinkIndex + direction];
393
366
 
394
367
  if (nextLink) {
395
368
  this._focusState.link = nextLink;
396
369
  this._focusLink();
397
370
  }
398
371
  } else if (targetLinkIndex !== -1) {
399
- var nextLink$1 = node.targetLinks[targetLinkIndex + direction];
372
+ const nextLink = node.targetLinks[targetLinkIndex + direction];
400
373
 
401
- if (nextLink$1) {
402
- this._focusState.link = nextLink$1;
374
+ if (nextLink) {
375
+ this._focusState.link = nextLink;
403
376
  this._focusLink();
404
377
  }
405
378
  }
406
- };
379
+ }
407
380
 
408
- Sankey.prototype._focusSourceNode = function _focusSourceNode () {
409
- var linkData = this._focusState.link;
410
- var sourceNode = this.models.map.get(linkData.sourceId);
381
+ _focusSourceNode() {
382
+ const linkData = this._focusState.link;
383
+ const sourceNode = this.models.map.get(linkData.sourceId);
411
384
  this._focusState = { node: sourceNode.options.node, link: null };
412
385
  this._focusNode();
413
- };
386
+ }
414
387
 
415
- Sankey.prototype._focusTargetNode = function _focusTargetNode () {
416
- var linkData = this._focusState.link;
417
- var targetNode = this.models.map.get(linkData.targetId);
388
+ _focusTargetNode() {
389
+ const linkData = this._focusState.link;
390
+ const targetNode = this.models.map.get(linkData.targetId);
418
391
  this._focusState = { node: targetNode.options.node, link: null };
419
392
  this._focusNode();
420
- };
393
+ }
421
394
 
422
- Sankey.prototype._focusSourceLink = function _focusSourceLink () {
423
- var nodeData = this._focusState.node;
424
- var sourceLinks = nodeData.sourceLinks;
425
- var linkData = sourceLinks[0];
395
+ _focusSourceLink() {
396
+ const nodeData = this._focusState.node;
397
+ const sourceLinks = nodeData.sourceLinks;
398
+ const linkData = sourceLinks[0];
426
399
  if (linkData) {
427
400
  this._focusState.link = linkData;
428
401
  this._focusLink();
429
402
  }
430
- };
403
+ }
431
404
 
432
- Sankey.prototype._focusTargetLink = function _focusTargetLink () {
433
- var nodeData = this._focusState.node;
434
- var targetLinks = nodeData.targetLinks;
435
- var linkData = targetLinks[0];
405
+ _focusTargetLink() {
406
+ const nodeData = this._focusState.node;
407
+ const targetLinks = nodeData.targetLinks;
408
+ const linkData = targetLinks[0];
436
409
  if (linkData) {
437
410
  this._focusState.link = linkData;
438
411
  this._focusLink();
439
412
  }
440
- };
413
+ }
441
414
 
442
- Sankey.prototype._focus = function _focus () {
415
+ _focus() {
443
416
  if (!this._skipFocusHighlight) {
444
417
  if (this._focusState.link) {
445
418
  this._focusLink();
@@ -449,30 +422,30 @@ export var Sankey = (function (Observable) {
449
422
  }
450
423
 
451
424
  this._skipFocusHighlight = false;
452
- };
425
+ }
453
426
 
454
- Sankey.prototype._blur = function _blur () {
427
+ _blur() {
455
428
  this._cleanFocusHighlight();
456
- };
429
+ }
457
430
 
458
- Sankey.prototype._onDown = function _onDown () {
431
+ _onDown() {
459
432
  if (!this._hasFocus()) {
460
433
  this._skipFocusHighlight = true;
461
434
  }
462
- };
435
+ }
463
436
 
464
- Sankey.prototype._hasFocus = function _hasFocus () {
437
+ _hasFocus() {
465
438
  return this.element.ownerDocument.activeElement === this.element;
466
- };
439
+ }
467
440
 
468
- Sankey.prototype._cleanFocusHighlight = function _cleanFocusHighlight () {
469
- this.models.nodes.forEach(function (node) { return node.blur(); });
470
- this.models.links.forEach(function (link) { return link.blur(); });
471
- };
441
+ _cleanFocusHighlight() {
442
+ this.models.nodes.forEach(node => node.blur());
443
+ this.models.links.forEach(link => link.blur());
444
+ }
472
445
 
473
- Sankey.prototype._keydown = function _keydown (ev) {
474
- var handler = this['on' + ev.key];
475
- var rtl = this.options.rtl;
446
+ _keydown(ev) {
447
+ let handler = this['on' + ev.key];
448
+ const rtl = this.options.rtl;
476
449
 
477
450
  if (rtl && ev.key === 'ArrowLeft') {
478
451
  handler = this.onArrowRight;
@@ -483,16 +456,16 @@ export var Sankey = (function (Observable) {
483
456
  if (handler) {
484
457
  handler.call(this, ev);
485
458
  }
486
- };
459
+ }
487
460
 
488
- Sankey.prototype.onEscape = function onEscape (ev) {
461
+ onEscape(ev) {
489
462
  ev.preventDefault();
490
463
 
491
464
  this._focusState = { node: this.firstFocusableNode(), link: null };
492
465
  this._focusNode();
493
- };
466
+ }
494
467
 
495
- Sankey.prototype.onArrowDown = function onArrowDown (ev) {
468
+ onArrowDown(ev) {
496
469
  ev.preventDefault();
497
470
 
498
471
  if (this._focusState.link) {
@@ -500,9 +473,9 @@ export var Sankey = (function (Observable) {
500
473
  } else {
501
474
  this._focusNextNode(1);
502
475
  }
503
- };
476
+ }
504
477
 
505
- Sankey.prototype.onArrowUp = function onArrowUp (ev) {
478
+ onArrowUp(ev) {
506
479
  ev.preventDefault();
507
480
 
508
481
  if (this._focusState.link) {
@@ -510,9 +483,9 @@ export var Sankey = (function (Observable) {
510
483
  } else {
511
484
  this._focusNextNode(-1);
512
485
  }
513
- };
486
+ }
514
487
 
515
- Sankey.prototype.onArrowLeft = function onArrowLeft (ev) {
488
+ onArrowLeft(ev) {
516
489
  ev.preventDefault();
517
490
 
518
491
  if (this._focusState.link) {
@@ -520,9 +493,9 @@ export var Sankey = (function (Observable) {
520
493
  } else {
521
494
  this._focusTargetLink();
522
495
  }
523
- };
496
+ }
524
497
 
525
- Sankey.prototype.onArrowRight = function onArrowRight (ev) {
498
+ onArrowRight(ev) {
526
499
  ev.preventDefault();
527
500
 
528
501
  if (this._focusState.link) {
@@ -530,121 +503,109 @@ export var Sankey = (function (Observable) {
530
503
  } else {
531
504
  this._focusSourceLink();
532
505
  }
533
- };
534
-
535
- Sankey.prototype.highlightLinks = function highlightLinks (node, highlight) {
536
- var this$1 = this;
506
+ }
537
507
 
508
+ highlightLinks(node, highlight) {
538
509
  if (node) {
539
510
  this.setLinksInactivityOpacity(highlight.inactiveOpacity);
540
- node.links.forEach(function (link) {
541
- this$1.setOpacity(link, highlight.opacity, link.linkOptions.highlight.opacity);
511
+ node.links.forEach(link => {
512
+ this.setOpacity(link, highlight.opacity, link.linkOptions.highlight.opacity);
542
513
  });
543
514
  }
544
- };
515
+ }
545
516
 
546
- Sankey.prototype._destroySurface = function _destroySurface () {
517
+ _destroySurface() {
547
518
  if (this.surface) {
548
519
  this.surface.destroy();
549
520
  this.surface = null;
550
521
  this._destroySurfaceElement();
551
522
  }
552
- };
523
+ }
553
524
 
554
- Sankey.prototype._destroyResizeObserver = function _destroyResizeObserver () {
525
+ _destroyResizeObserver() {
555
526
  if (this._resizeObserver) {
556
527
  this._resizeObserver.disconnect();
557
528
  this._resizeObserver = null;
558
529
  }
559
- };
530
+ }
560
531
 
561
- Sankey.prototype._initSurfaceElement = function _initSurfaceElement () {
532
+ _initSurfaceElement() {
562
533
  if (!this.surfaceElement) {
563
534
  this.surfaceElement = document.createElement('div');
564
535
  this.element.appendChild(this.surfaceElement);
565
536
  }
566
- };
537
+ }
567
538
 
568
- Sankey.prototype._destroySurfaceElement = function _destroySurfaceElement () {
539
+ _destroySurfaceElement() {
569
540
  if (this.surfaceElement && this.surfaceElement.parentNode) {
570
541
  this.surfaceElement.parentNode.removeChild(this.surfaceElement);
571
542
  this.surfaceElement = null;
572
543
  }
573
- };
544
+ }
574
545
 
575
- Sankey.prototype.setOptions = function setOptions (options, theme) {
546
+ setOptions(options, theme) {
576
547
  this._setOptions(options);
577
548
  this._initTheme(theme);
578
549
  this._initSurface();
579
550
  this._redraw();
580
- };
551
+ }
581
552
 
582
- Sankey.prototype._redraw = function _redraw () {
553
+ _redraw() {
583
554
  this.surface.clear();
584
555
 
585
- var ref = this._getSize();
586
- var width = ref.width;
587
- var height = ref.height;
588
- this.size = { width: width, height: height };
556
+ const { width, height } = this._getSize();
557
+ this.size = { width, height };
589
558
  this.surface.setSize(this.size);
590
559
 
591
560
  this.createVisual();
592
561
 
593
562
  this.surface.draw(this.visual);
594
- };
563
+ }
595
564
 
596
- Sankey.prototype._getSize = function _getSize () {
565
+ _getSize() {
597
566
  return this.element.getBoundingClientRect();
598
- };
567
+ }
599
568
 
600
- Sankey.prototype.createVisual = function createVisual () {
569
+ createVisual() {
601
570
  this.visual = this._render();
602
- };
571
+ }
603
572
 
604
- Sankey.prototype.titleBox = function titleBox (title, drawingRect) {
573
+ titleBox(title, drawingRect) {
605
574
  if (!title || title.visible === false || !title.text) {
606
575
  return null;
607
576
  }
608
577
 
609
- var titleElement = new Title(Object.assign({}, {drawingRect: drawingRect}, title));
610
- var titleVisual = titleElement.exportVisual();
578
+ const titleElement = new Title(Object.assign({}, {drawingRect}, title));
579
+ const titleVisual = titleElement.exportVisual();
611
580
  return titleVisual.chartElement.box;
612
- };
581
+ }
613
582
 
614
- Sankey.prototype.legendBox = function legendBox (options, nodes, drawingRect) {
583
+ legendBox(options, nodes, drawingRect) {
615
584
  if (!options || options.visible === false) {
616
585
  return null;
617
586
  }
618
587
 
619
- var legend = new Legend(Object.assign({}, {nodes: nodes}, options, {drawingRect: drawingRect}));
620
- var legendVisual = legend.exportVisual();
588
+ const legend = new Legend(Object.assign({}, {nodes}, options, {drawingRect}));
589
+ const legendVisual = legend.exportVisual();
621
590
 
622
591
  return legendVisual.chartElement.box;
623
- };
624
-
625
- Sankey.prototype.calculateSankey = function calculateSankey$1 (calcOptions, sankeyOptions) {
626
- var title = sankeyOptions.title;
627
- var legend = sankeyOptions.legend;
628
- var data = sankeyOptions.data;
629
- var nodes = sankeyOptions.nodes;
630
- var labels = sankeyOptions.labels;
631
- var nodeColors = sankeyOptions.nodeColors;
632
- var disableAutoLayout = sankeyOptions.disableAutoLayout;
633
- var disableKeyboardNavigation = sankeyOptions.disableKeyboardNavigation;
634
- var rtl = sankeyOptions.rtl;
635
- var autoLayout = !disableAutoLayout;
636
- var focusHighlightWidth = ((nodes.focusHighlight || {}).border || {}).width || 0;
637
- var padding = disableKeyboardNavigation ? 0 : focusHighlightWidth / 2;
638
-
639
- var sankeyBox = new Box(0, 0, calcOptions.width, calcOptions.height);
592
+ }
593
+
594
+ calculateSankey(calcOptions, sankeyOptions) {
595
+ const { title, legend, data, nodes, labels, nodeColors, disableAutoLayout, disableKeyboardNavigation, rtl } = sankeyOptions;
596
+ const autoLayout = !disableAutoLayout;
597
+ const focusHighlightWidth = ((nodes.focusHighlight || {}).border || {}).width || 0;
598
+ const padding = disableKeyboardNavigation ? 0 : focusHighlightWidth / 2;
599
+
600
+ const sankeyBox = new Box(0, 0, calcOptions.width, calcOptions.height);
640
601
  sankeyBox.unpad(padding);
641
602
 
642
- var titleBox = this.titleBox(title, sankeyBox);
603
+ const titleBox = this.titleBox(title, sankeyBox);
643
604
 
644
- var legendArea = sankeyBox.clone();
605
+ let legendArea = sankeyBox.clone();
645
606
 
646
607
  if (titleBox) {
647
- var titleHeight = titleBox.height();
608
+ const titleHeight = titleBox.height();
648
609
  if (title.position === TOP) {
649
610
  sankeyBox.unpad({ top: titleHeight });
650
611
  legendArea = new Box(0, titleHeight, calcOptions.width, calcOptions.height);
@@ -654,8 +615,8 @@ export var Sankey = (function (Observable) {
654
615
  }
655
616
  }
656
617
 
657
- var legendBox = this.legendBox(legend, data.nodes, legendArea);
658
- var legendPosition = (legend && legend.position) || Legend.prototype.options.position;
618
+ const legendBox = this.legendBox(legend, data.nodes, legendArea);
619
+ const legendPosition = (legend && legend.position) || Legend.prototype.options.position;
659
620
 
660
621
  if (legendBox) {
661
622
  if (legendPosition === LEFT) {
@@ -675,42 +636,39 @@ export var Sankey = (function (Observable) {
675
636
  }
676
637
  }
677
638
 
678
- var ref = calculateSankey(Object.assign({}, calcOptions, {offsetX: 0, offsetY: 0, width: sankeyBox.width(), height: sankeyBox.height()}));
679
- var calculatedNodes = ref.nodes;
680
- var circularLinks = ref.circularLinks;
639
+ const { nodes: calculatedNodes, circularLinks } = calculateSankey(Object.assign({}, calcOptions, {offsetX: 0, offsetY: 0, width: sankeyBox.width(), height: sankeyBox.height()}));
681
640
  if (circularLinks) {
682
641
  console.warn('Circular links detected. Kendo Sankey diagram does not support circular links.');
683
- return { sankey: { nodes: [], links: [], columns: [[]], circularLinks: circularLinks }, legendBox: legendBox, titleBox: titleBox };
642
+ return { sankey: { nodes: [], links: [], columns: [[]], circularLinks }, legendBox, titleBox };
684
643
  }
685
644
 
686
- var box = new Box();
645
+ const box = new Box();
687
646
 
688
- var diagramMinX = calculatedNodes.reduce(function (acc, node) { return Math.min(acc, node.x0); }, Infinity);
689
- var diagramMaxX = calculatedNodes.reduce(function (acc, node) { return Math.max(acc, node.x1); }, 0);
647
+ const diagramMinX = calculatedNodes.reduce((acc, node) => Math.min(acc, node.x0), Infinity);
648
+ const diagramMaxX = calculatedNodes.reduce((acc, node) => Math.max(acc, node.x1), 0);
690
649
 
691
- calculatedNodes.forEach(function (nodeEl, i) {
650
+ calculatedNodes.forEach((nodeEl, i) => {
692
651
  if (rtl) {
693
- var x0 = nodeEl.x0;
694
- var x1 = nodeEl.x1;
652
+ const { x0, x1 } = nodeEl;
695
653
  nodeEl.x0 = diagramMaxX - x1;
696
654
  nodeEl.x1 = diagramMaxX - x0;
697
655
  }
698
- var nodeOps = resolveNodeOptions(nodeEl, nodes, nodeColors, i);
699
- var nodeInstance = new Node(nodeOps);
656
+ const nodeOps = resolveNodeOptions(nodeEl, nodes, nodeColors, i);
657
+ const nodeInstance = new Node(nodeOps);
700
658
  box.wrap(rectToBox(nodeInstance.exportVisual().rawBBox()));
701
659
 
702
- var labelInstance = new Label(resolveLabelOptions(nodeEl, labels, rtl, diagramMinX, diagramMaxX));
703
- var labelVisual = labelInstance.exportVisual();
660
+ const labelInstance = new Label(resolveLabelOptions(nodeEl, labels, rtl, diagramMinX, diagramMaxX));
661
+ const labelVisual = labelInstance.exportVisual();
704
662
  if (labelVisual) {
705
663
  box.wrap(rectToBox(labelVisual.rawBBox()));
706
664
  }
707
665
  });
708
666
 
709
- var offsetX = sankeyBox.x1;
710
- var offsetY = sankeyBox.y1;
667
+ let offsetX = sankeyBox.x1;
668
+ let offsetY = sankeyBox.y1;
711
669
 
712
- var width = sankeyBox.width() + offsetX;
713
- var height = sankeyBox.height() + offsetY;
670
+ let width = sankeyBox.width() + offsetX;
671
+ let height = sankeyBox.height() + offsetY;
714
672
 
715
673
  width -= box.x2 > sankeyBox.width() ? box.x2 - sankeyBox.width() : 0;
716
674
  height -= box.y2 > sankeyBox.height() ? box.y2 - sankeyBox.height() : 0;
@@ -720,29 +678,29 @@ export var Sankey = (function (Observable) {
720
678
 
721
679
  if (autoLayout === false) {
722
680
  return {
723
- sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, autoLayout: false})),
724
- legendBox: legendBox,
725
- titleBox: titleBox
681
+ sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX, offsetY, width, height, autoLayout: false})),
682
+ legendBox,
683
+ titleBox
726
684
  };
727
685
  }
728
686
 
729
687
  if (this.resize && autoLayout && this.permutation) {
730
688
  this.resize = false;
731
689
  return {
732
- sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height}, this.permutation)),
733
- legendBox: legendBox,
734
- titleBox: titleBox
690
+ sankey: calculateSankey(Object.assign({}, calcOptions, {offsetX, offsetY, width, height}, this.permutation)),
691
+ legendBox,
692
+ titleBox
735
693
  };
736
694
  }
737
695
 
738
- var startColumn = 1;
739
- var loops = 2;
740
- var columnsLength = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, autoLayout: false})).columns.length;
741
- var results = [];
696
+ const startColumn = 1;
697
+ const loops = 2;
698
+ const columnsLength = calculateSankey(Object.assign({}, calcOptions, {offsetX, offsetY, width, height, autoLayout: false})).columns.length;
699
+ const results = [];
742
700
 
743
- var permutation = function (targetColumnIndex, reverse) {
744
- var currPerm = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height, loops: loops, targetColumnIndex: targetColumnIndex, reverse: reverse}));
745
- var crosses = crossesValue(currPerm.links);
701
+ const permutation = (targetColumnIndex, reverse) => {
702
+ let currPerm = calculateSankey(Object.assign({}, calcOptions, {offsetX, offsetY, width, height, loops: loops, targetColumnIndex, reverse}));
703
+ let crosses = crossesValue(currPerm.links);
746
704
  results.push({
747
705
  crosses: crosses,
748
706
  reverse: reverse,
@@ -751,66 +709,52 @@ export var Sankey = (function (Observable) {
751
709
  return crosses === 0;
752
710
  };
753
711
 
754
- for (var index = startColumn; index <= columnsLength - 1; index++) {
712
+ for (let index = startColumn; index <= columnsLength - 1; index++) {
755
713
  if (permutation(index, false) || permutation(index, true)) {
756
714
  break;
757
715
  }
758
716
  }
759
717
 
760
- var minCrosses = Math.min.apply(null, results.map(function (r) { return r.crosses; }));
761
- var bestResult = results.find(function (r) { return r.crosses === minCrosses; });
718
+ const minCrosses = Math.min.apply(null, results.map(r => r.crosses));
719
+ const bestResult = results.find(r => r.crosses === minCrosses);
762
720
  this.permutation = { targetColumnIndex: bestResult.targetColumnIndex, reverse: bestResult.reverse };
763
- var result = calculateSankey(Object.assign({}, calcOptions, {offsetX: offsetX, offsetY: offsetY, width: width, height: height}, this.permutation));
721
+ const result = calculateSankey(Object.assign({}, calcOptions, {offsetX, offsetY, width, height}, this.permutation));
764
722
 
765
723
  return {
766
724
  sankey: result,
767
- legendBox: legendBox,
768
- titleBox: titleBox
725
+ legendBox,
726
+ titleBox
769
727
  };
770
- };
771
-
772
- Sankey.prototype._render = function _render (options, context) {
773
- var sankeyOptions = options || this.options;
774
- var sankeyContext = context || this;
775
-
776
- var labelOptions = sankeyOptions.labels;
777
- var nodesOptions = sankeyOptions.nodes;
778
- var linkOptions = sankeyOptions.links;
779
- var nodeColors = sankeyOptions.nodeColors;
780
- var title = sankeyOptions.title;
781
- var legend = sankeyOptions.legend;
782
- var rtl = sankeyOptions.rtl;
783
- var disableKeyboardNavigation = sankeyOptions.disableKeyboardNavigation;
784
- var data = sankeyOptions.data;
785
- var ref = sankeyContext.size;
786
- var width = ref.width;
787
- var height = ref.height;
788
-
789
- var calcOptions = Object.assign({}, data, {width: width, height: height, nodesOptions: nodesOptions, title: title, legend: legend});
790
- var ref$1 = this.calculateSankey(calcOptions, sankeyOptions);
791
- var sankey = ref$1.sankey;
792
- var titleBox = ref$1.titleBox;
793
- var legendBox = ref$1.legendBox;
728
+ }
729
+
730
+ _render(options, context) {
731
+ const sankeyOptions = options || this.options;
732
+ const sankeyContext = context || this;
733
+
734
+ const { labels: labelOptions, nodes: nodesOptions, links: linkOptions, nodeColors, title, legend, rtl, disableKeyboardNavigation } = sankeyOptions;
735
+ let data = sankeyOptions.data;
736
+ const { width, height } = sankeyContext.size;
737
+
738
+ const calcOptions = Object.assign({}, data, {width, height, nodesOptions, title, legend});
739
+ const { sankey, titleBox, legendBox } = this.calculateSankey(calcOptions, sankeyOptions);
794
740
  if (rtl) {
795
741
  toRtl(sankey);
796
742
  }
797
- var nodes = sankey.nodes;
798
- var links = sankey.links;
799
- var columns = sankey.columns;
743
+ const { nodes, links, columns } = sankey;
800
744
 
801
- sankeyContext.columns = columns.map(function (column) {
802
- var newColumn = column.slice();
803
- newColumn.sort(function (a, b) { return a.y0 - b.y0; });
745
+ sankeyContext.columns = columns.map(column => {
746
+ const newColumn = column.slice();
747
+ newColumn.sort((a, b) => a.y0 - b.y0);
804
748
  return newColumn;
805
749
  });
806
750
 
807
- var visual = new drawing.Group({
751
+ const visual = new drawing.Group({
808
752
  clip: drawing.Path.fromRect(new geometry.Rect([0, 0], [width, height]))
809
753
  });
810
754
 
811
755
  if (titleBox) {
812
- var titleElement = new Title(Object.assign({}, title, {drawingRect: titleBox}));
813
- var titleVisual = titleElement.exportVisual();
756
+ const titleElement = new Title(Object.assign({}, title, {drawingRect: titleBox}));
757
+ const titleVisual = titleElement.exportVisual();
814
758
  visual.append(titleVisual);
815
759
  }
816
760
 
@@ -818,25 +762,25 @@ export var Sankey = (function (Observable) {
818
762
  return visual;
819
763
  }
820
764
 
821
- var visualNodes = new Map();
765
+ const visualNodes = new Map();
822
766
  sankeyContext.nodesVisuals = visualNodes;
823
767
 
824
- var models = {
768
+ const models = {
825
769
  nodes: [],
826
770
  links: [],
827
771
  map: new Map()
828
772
  };
829
773
  sankeyContext.models = models;
830
774
 
831
- var focusHighlights = [];
775
+ const focusHighlights = [];
832
776
 
833
- nodes.forEach(function (node, i) {
834
- var nodeOps = resolveNodeOptions(node, nodesOptions, nodeColors, i);
835
- nodeOps.root = function () { return sankeyContext.element; };
777
+ nodes.forEach((node, i) => {
778
+ const nodeOps = resolveNodeOptions(node, nodesOptions, nodeColors, i);
779
+ nodeOps.root = () => sankeyContext.element;
836
780
  nodeOps.navigatable = disableKeyboardNavigation !== true;
837
781
 
838
- var nodeInstance = new Node(nodeOps);
839
- var nodeVisual = nodeInstance.exportVisual();
782
+ const nodeInstance = new Node(nodeOps);
783
+ const nodeVisual = nodeInstance.exportVisual();
840
784
  nodeVisual.links = [];
841
785
  nodeVisual.type = NODE;
842
786
 
@@ -846,8 +790,8 @@ export var Sankey = (function (Observable) {
846
790
  nodeVisual.dataItem = Object.assign({}, data.nodes[i],
847
791
  {color: nodeOps.color,
848
792
  opacity: nodeOps.opacity,
849
- sourceLinks: node.sourceLinks.map(function (link) { return ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value }); }),
850
- targetLinks: node.targetLinks.map(function (link) { return ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value }); })});
793
+ sourceLinks: node.sourceLinks.map(link => ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value })),
794
+ targetLinks: node.targetLinks.map(link => ({ sourceId: link.sourceId, targetId: link.targetId, value: link.value }))});
851
795
  visualNodes.set(node.id, nodeVisual);
852
796
 
853
797
  models.nodes.push(nodeInstance);
@@ -862,22 +806,21 @@ export var Sankey = (function (Observable) {
862
806
  }
863
807
  });
864
808
 
865
- var sortedLinks = links.slice().sort(function (a, b) { return b.value - a.value; });
809
+ const sortedLinks = links.slice().sort((a, b) => b.value - a.value);
866
810
 
867
- var linksVisuals = [];
811
+ const linksVisuals = [];
868
812
  sankeyContext.linksVisuals = linksVisuals;
869
813
 
870
- sortedLinks.forEach(function (link) {
871
- var source = link.source;
872
- var target = link.target;
873
- var sourceNode = visualNodes.get(source.id);
874
- var targetNode = visualNodes.get(target.id);
875
- var resolvedOptions = resolveLinkOptions(link, linkOptions, sourceNode, targetNode);
876
- resolvedOptions.root = function () { return sankeyContext.element; };
814
+ sortedLinks.forEach(link => {
815
+ const { source, target } = link;
816
+ const sourceNode = visualNodes.get(source.id);
817
+ const targetNode = visualNodes.get(target.id);
818
+ const resolvedOptions = resolveLinkOptions(link, linkOptions, sourceNode, targetNode);
819
+ resolvedOptions.root = () => sankeyContext.element;
877
820
  resolvedOptions.navigatable = disableKeyboardNavigation !== true;
878
821
  resolvedOptions.rtl = rtl;
879
- var linkInstance = new Link(resolvedOptions);
880
- var linkVisual = linkInstance.exportVisual();
822
+ const linkInstance = new Link(resolvedOptions);
823
+ const linkVisual = linkInstance.exportVisual();
881
824
 
882
825
  linkVisual.type = LINK;
883
826
  linkVisual.dataItem = {
@@ -892,7 +835,7 @@ export var Sankey = (function (Observable) {
892
835
  targetNode.links.push(linkVisual);
893
836
 
894
837
  models.links.push(linkInstance);
895
- models.map.set(((source.id) + "-" + (target.id)), linkInstance);
838
+ models.map.set(`${source.id}-${target.id}`, linkInstance);
896
839
 
897
840
  linkInstance.createFocusHighlight();
898
841
 
@@ -903,13 +846,13 @@ export var Sankey = (function (Observable) {
903
846
  visual.append(linkVisual);
904
847
  });
905
848
 
906
- var diagramMinX = nodes.reduce(function (acc, node) { return Math.min(acc, node.x0); }, Infinity);
907
- var diagramMaxX = nodes.reduce(function (acc, node) { return Math.max(acc, node.x1); }, 0);
849
+ const diagramMinX = nodes.reduce((acc, node) => Math.min(acc, node.x0), Infinity);
850
+ const diagramMaxX = nodes.reduce((acc, node) => Math.max(acc, node.x1), 0);
908
851
 
909
- nodes.forEach(function (node) {
910
- var textOps = resolveLabelOptions(node, labelOptions, rtl, diagramMinX, diagramMaxX);
911
- var labelInstance = new Label(textOps);
912
- var labelVisual = labelInstance.exportVisual();
852
+ nodes.forEach((node) => {
853
+ const textOps = resolveLabelOptions(node, labelOptions, rtl, diagramMinX, diagramMaxX);
854
+ const labelInstance = new Label(textOps);
855
+ const labelVisual = labelInstance.exportVisual();
913
856
 
914
857
  if (labelVisual) {
915
858
  visual.append(labelVisual);
@@ -917,25 +860,25 @@ export var Sankey = (function (Observable) {
917
860
  });
918
861
 
919
862
  if (legendBox) {
920
- var legendElement = new Legend(Object.assign({}, legend, {rtl: rtl, drawingRect: legendBox, nodes: nodes}));
921
- var legendVisual = legendElement.exportVisual();
863
+ const legendElement = new Legend(Object.assign({}, legend, {rtl, drawingRect: legendBox, nodes}));
864
+ const legendVisual = legendElement.exportVisual();
922
865
  visual.append(legendVisual);
923
866
  }
924
867
 
925
868
  if (focusHighlights.length !== 0) {
926
- var focusHighlight = new drawing.Group();
927
- focusHighlight.append.apply(focusHighlight, focusHighlights);
869
+ const focusHighlight = new drawing.Group();
870
+ focusHighlight.append(...focusHighlights);
928
871
  visual.append(focusHighlight);
929
872
  }
930
873
 
931
874
  return visual;
932
- };
875
+ }
933
876
 
934
- Sankey.prototype.exportVisual = function exportVisual (exportOptions) {
935
- var options = (exportOptions && exportOptions.options) ?
877
+ exportVisual(exportOptions) {
878
+ const options = (exportOptions && exportOptions.options) ?
936
879
  deepExtend({}, this.options, exportOptions.options) : this.options;
937
880
 
938
- var context = {
881
+ const context = {
939
882
  size: {
940
883
  width: defined(exportOptions && exportOptions.width) ? exportOptions.width : this.size.width,
941
884
  height: defined(exportOptions && exportOptions.height) ? exportOptions.height : this.size.height
@@ -943,16 +886,14 @@ export var Sankey = (function (Observable) {
943
886
  };
944
887
 
945
888
  return this._render(options, context);
946
- };
889
+ }
947
890
 
948
- Sankey.prototype._setOptions = function _setOptions (options) {
891
+ _setOptions(options) {
949
892
  this.options = deepExtend({}, this.options, options);
950
- };
951
-
952
- return Sankey;
953
- }(Observable));
893
+ }
894
+ }
954
895
 
955
- var highlightOptions = {
896
+ const highlightOptions = {
956
897
  opacity: 1,
957
898
  width: 2,
958
899
  color: BLACK
@@ -989,11 +930,7 @@ setDefaultOptions(Sankey, {
989
930
  border: Object.assign({}, highlightOptions)
990
931
  },
991
932
  labels: {
992
- ariaTemplate: function (ref) {
993
- var node = ref.node;
994
-
995
- return node.label.text;
996
- }
933
+ ariaTemplate: ({ node }) => node.label.text
997
934
  }
998
935
  },
999
936
  links: {
@@ -1007,11 +944,7 @@ setDefaultOptions(Sankey, {
1007
944
  border: Object.assign({}, highlightOptions)
1008
945
  },
1009
946
  labels: {
1010
- ariaTemplate: function (ref) {
1011
- var link = ref.link;
1012
-
1013
- return ((link.source.label.text) + " to " + (link.target.label.text));
1014
- }
947
+ ariaTemplate: ({ link }) => `${link.source.label.text} to ${link.target.label.text}`
1015
948
  }
1016
949
  },
1017
950
  tooltip: {