@visactor/vchart 2.0.3-alpha.0 → 2.0.3-alpha.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 (268) hide show
  1. package/build/es5/index.js +1 -1
  2. package/build/index.es.js +980 -897
  3. package/build/index.js +981 -896
  4. package/build/index.min.js +2 -2
  5. package/build/tsconfig.tsbuildinfo +1 -1
  6. package/cjs/animation/index.js +2 -1
  7. package/cjs/animation/interface.js +1 -2
  8. package/cjs/animation/utils.js +1 -1
  9. package/cjs/animation/utils.js.map +1 -1
  10. package/cjs/chart/base/base-chart-transformer.js +3 -3
  11. package/cjs/chart/base/base-chart-transformer.js.map +1 -1
  12. package/cjs/chart/base/base-chart.d.ts +1 -0
  13. package/cjs/chart/base/base-chart.js +5 -8
  14. package/cjs/chart/base/base-chart.js.map +1 -1
  15. package/cjs/chart/index.d.ts +2 -2
  16. package/cjs/chart/index.js +7 -2
  17. package/cjs/chart/index.js.map +1 -1
  18. package/cjs/chart/interface/chart.d.ts +1 -0
  19. package/cjs/chart/interface/chart.js.map +1 -1
  20. package/cjs/chart/interface/common.d.ts +1 -1
  21. package/cjs/chart/interface/common.js.map +1 -1
  22. package/cjs/chart/util.js +2 -1
  23. package/cjs/compile/compiler.d.ts +1 -0
  24. package/cjs/compile/compiler.js +13 -5
  25. package/cjs/compile/compiler.js.map +1 -1
  26. package/cjs/compile/interface/compilable-item.d.ts +1 -0
  27. package/cjs/compile/interface/compilable-item.js.map +1 -1
  28. package/cjs/compile/interface/compiler.d.ts +5 -0
  29. package/cjs/compile/interface/compiler.js.map +1 -1
  30. package/cjs/component/axis/base-axis.js +14 -13
  31. package/cjs/component/axis/base-axis.js.map +1 -1
  32. package/cjs/component/axis/cartesian/band-axis.d.ts +8 -0
  33. package/cjs/component/axis/cartesian/band-axis.js +9 -0
  34. package/cjs/component/axis/cartesian/band-axis.js.map +1 -1
  35. package/cjs/component/axis/interface/common.js.map +1 -1
  36. package/cjs/component/axis/mixin/band-axis-mixin.d.ts +2 -0
  37. package/cjs/component/axis/mixin/band-axis-mixin.js +15 -1
  38. package/cjs/component/axis/mixin/band-axis-mixin.js.map +1 -1
  39. package/cjs/component/brush/brush.js +6 -6
  40. package/cjs/component/brush/brush.js.map +1 -1
  41. package/cjs/component/brush/interface.d.ts +1 -0
  42. package/cjs/component/brush/interface.js.map +1 -1
  43. package/cjs/component/crosshair/base.d.ts +1 -1
  44. package/cjs/component/crosshair/base.js +1 -1
  45. package/cjs/component/crosshair/base.js.map +1 -1
  46. package/cjs/component/crosshair/utils/cartesian.js +2 -2
  47. package/cjs/component/crosshair/utils/cartesian.js.map +1 -1
  48. package/cjs/component/custom-mark/custom-mark.js +6 -9
  49. package/cjs/component/custom-mark/custom-mark.js.map +1 -1
  50. package/cjs/component/data-zoom/data-filter-base-component.d.ts +0 -1
  51. package/cjs/component/data-zoom/data-filter-base-component.js +13 -19
  52. package/cjs/component/data-zoom/data-filter-base-component.js.map +1 -1
  53. package/cjs/component/data-zoom/interface.d.ts +0 -3
  54. package/cjs/component/data-zoom/interface.js.map +1 -1
  55. package/cjs/component/data-zoom/util.d.ts +0 -1
  56. package/cjs/component/data-zoom/util.js +3 -4
  57. package/cjs/component/data-zoom/util.js.map +1 -1
  58. package/cjs/component/player/player.js +2 -1
  59. package/cjs/component/player/player.js.map +1 -1
  60. package/cjs/component/tooltip/tooltip.js +8 -3
  61. package/cjs/component/tooltip/tooltip.js.map +1 -1
  62. package/cjs/constant/attribute.js +1 -2
  63. package/cjs/constant/sunburst.js +2 -1
  64. package/cjs/constant/waterfall.js +1 -2
  65. package/cjs/core/index.d.ts +1 -1
  66. package/cjs/core/index.js +1 -1
  67. package/cjs/core/index.js.map +1 -1
  68. package/cjs/core/interface.d.ts +1 -0
  69. package/cjs/core/interface.js.map +1 -1
  70. package/cjs/core/util.js +1 -1
  71. package/cjs/core/vchart.d.ts +2 -0
  72. package/cjs/core/vchart.js +42 -22
  73. package/cjs/core/vchart.js.map +1 -1
  74. package/cjs/data/transforms/obj-flat.js +1 -4
  75. package/cjs/data/transforms/obj-flat.js.map +1 -1
  76. package/cjs/mark/base/base-line.d.ts +1 -1
  77. package/cjs/mark/base/base-line.js.map +1 -1
  78. package/cjs/mark/base/base-mark.d.ts +6 -2
  79. package/cjs/mark/base/base-mark.js +69 -51
  80. package/cjs/mark/base/base-mark.js.map +1 -1
  81. package/cjs/mark/group.d.ts +3 -2
  82. package/cjs/mark/group.js +15 -13
  83. package/cjs/mark/group.js.map +1 -1
  84. package/cjs/mark/interface/common.d.ts +5 -2
  85. package/cjs/mark/interface/common.js.map +1 -1
  86. package/cjs/model/base-model.d.ts +5 -1
  87. package/cjs/model/base-model.js +7 -0
  88. package/cjs/model/base-model.js.map +1 -1
  89. package/cjs/model/interface.d.ts +5 -2
  90. package/cjs/model/interface.js.map +1 -1
  91. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.d.ts +1 -1
  92. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.js +4 -3
  93. package/cjs/plugin/components/tooltip-handler/dom-tooltip-handler.js.map +1 -1
  94. package/cjs/plugin/components/tooltip-handler/utils/style.js +4 -4
  95. package/cjs/plugin/components/tooltip-handler/utils/style.js.map +1 -1
  96. package/cjs/region/region.js.map +1 -1
  97. package/cjs/series/base/base-series-transformer.js +1 -1
  98. package/cjs/series/base/base-series-transformer.js.map +1 -1
  99. package/cjs/series/base/base-series.js +2 -3
  100. package/cjs/series/base/base-series.js.map +1 -1
  101. package/cjs/series/dot/dot.d.ts +0 -1
  102. package/cjs/series/dot/dot.js +6 -29
  103. package/cjs/series/dot/dot.js.map +1 -1
  104. package/cjs/series/dot/interface.d.ts +0 -1
  105. package/cjs/series/dot/interface.js.map +1 -1
  106. package/cjs/series/dot/tooltip-helper.js +2 -3
  107. package/cjs/series/dot/tooltip-helper.js.map +1 -1
  108. package/cjs/series/funnel/funnel.js +0 -2
  109. package/cjs/series/funnel/funnel.js.map +1 -1
  110. package/cjs/series/interface/type.d.ts +0 -3
  111. package/cjs/series/interface/type.js +3 -5
  112. package/cjs/series/interface/type.js.map +1 -1
  113. package/cjs/series/link/constant.js +0 -8
  114. package/cjs/series/link/constant.js.map +1 -1
  115. package/cjs/series/link/interface.d.ts +1 -10
  116. package/cjs/series/link/interface.js +1 -5
  117. package/cjs/series/link/interface.js.map +1 -1
  118. package/cjs/series/link/link.d.ts +1 -3
  119. package/cjs/series/link/link.js +16 -46
  120. package/cjs/series/link/link.js.map +1 -1
  121. package/cjs/series/map/map.js +1 -2
  122. package/cjs/series/map/map.js.map +1 -1
  123. package/cjs/series/pie/pie.js +0 -1
  124. package/cjs/series/pie/pie.js.map +1 -1
  125. package/cjs/series/sankey/sankey.d.ts +10 -10
  126. package/cjs/series/sankey/sankey.js +199 -194
  127. package/cjs/series/sankey/sankey.js.map +1 -1
  128. package/cjs/util/mark.d.ts +1 -0
  129. package/cjs/util/mark.js +10 -1
  130. package/cjs/util/mark.js.map +1 -1
  131. package/cjs/util/object.d.ts +1 -0
  132. package/cjs/util/object.js +13 -2
  133. package/cjs/util/object.js.map +1 -1
  134. package/esm/animation/index.js +2 -1
  135. package/esm/animation/interface.js +1 -2
  136. package/esm/animation/utils.js +1 -1
  137. package/esm/animation/utils.js.map +1 -1
  138. package/esm/chart/base/base-chart-transformer.js +3 -3
  139. package/esm/chart/base/base-chart-transformer.js.map +1 -1
  140. package/esm/chart/base/base-chart.d.ts +1 -0
  141. package/esm/chart/base/base-chart.js +5 -8
  142. package/esm/chart/base/base-chart.js.map +1 -1
  143. package/esm/chart/index.d.ts +2 -2
  144. package/esm/chart/index.js +2 -2
  145. package/esm/chart/index.js.map +1 -1
  146. package/esm/chart/interface/chart.d.ts +1 -0
  147. package/esm/chart/interface/chart.js.map +1 -1
  148. package/esm/chart/interface/common.d.ts +1 -1
  149. package/esm/chart/interface/common.js.map +1 -1
  150. package/esm/chart/util.js +2 -1
  151. package/esm/compile/compiler.d.ts +1 -0
  152. package/esm/compile/compiler.js +13 -6
  153. package/esm/compile/compiler.js.map +1 -1
  154. package/esm/compile/interface/compilable-item.d.ts +1 -0
  155. package/esm/compile/interface/compilable-item.js.map +1 -1
  156. package/esm/compile/interface/compiler.d.ts +5 -0
  157. package/esm/compile/interface/compiler.js.map +1 -1
  158. package/esm/component/axis/base-axis.js +8 -8
  159. package/esm/component/axis/base-axis.js.map +1 -1
  160. package/esm/component/axis/cartesian/band-axis.d.ts +8 -0
  161. package/esm/component/axis/cartesian/band-axis.js +9 -1
  162. package/esm/component/axis/cartesian/band-axis.js.map +1 -1
  163. package/esm/component/axis/interface/common.js.map +1 -1
  164. package/esm/component/axis/mixin/band-axis-mixin.d.ts +2 -0
  165. package/esm/component/axis/mixin/band-axis-mixin.js +15 -1
  166. package/esm/component/axis/mixin/band-axis-mixin.js.map +1 -1
  167. package/esm/component/brush/brush.js +6 -6
  168. package/esm/component/brush/brush.js.map +1 -1
  169. package/esm/component/brush/interface.d.ts +1 -0
  170. package/esm/component/brush/interface.js.map +1 -1
  171. package/esm/component/crosshair/base.d.ts +1 -1
  172. package/esm/component/crosshair/base.js +1 -1
  173. package/esm/component/crosshair/base.js.map +1 -1
  174. package/esm/component/crosshair/utils/cartesian.js +2 -2
  175. package/esm/component/crosshair/utils/cartesian.js.map +1 -1
  176. package/esm/component/custom-mark/custom-mark.js +6 -9
  177. package/esm/component/custom-mark/custom-mark.js.map +1 -1
  178. package/esm/component/data-zoom/data-filter-base-component.d.ts +0 -1
  179. package/esm/component/data-zoom/data-filter-base-component.js +13 -18
  180. package/esm/component/data-zoom/data-filter-base-component.js.map +1 -1
  181. package/esm/component/data-zoom/interface.d.ts +0 -3
  182. package/esm/component/data-zoom/interface.js.map +1 -1
  183. package/esm/component/data-zoom/util.d.ts +0 -1
  184. package/esm/component/data-zoom/util.js +2 -5
  185. package/esm/component/data-zoom/util.js.map +1 -1
  186. package/esm/component/player/player.js +2 -1
  187. package/esm/component/player/player.js.map +1 -1
  188. package/esm/component/tooltip/tooltip.js +8 -3
  189. package/esm/component/tooltip/tooltip.js.map +1 -1
  190. package/esm/constant/attribute.js +1 -2
  191. package/esm/constant/sunburst.js +2 -1
  192. package/esm/constant/waterfall.js +1 -2
  193. package/esm/core/index.d.ts +1 -1
  194. package/esm/core/index.js +1 -1
  195. package/esm/core/index.js.map +1 -1
  196. package/esm/core/interface.d.ts +1 -0
  197. package/esm/core/interface.js.map +1 -1
  198. package/esm/core/util.js +1 -1
  199. package/esm/core/vchart.d.ts +2 -0
  200. package/esm/core/vchart.js +42 -22
  201. package/esm/core/vchart.js.map +1 -1
  202. package/esm/data/transforms/obj-flat.js +1 -4
  203. package/esm/data/transforms/obj-flat.js.map +1 -1
  204. package/esm/mark/base/base-line.d.ts +1 -1
  205. package/esm/mark/base/base-line.js.map +1 -1
  206. package/esm/mark/base/base-mark.d.ts +6 -2
  207. package/esm/mark/base/base-mark.js +69 -50
  208. package/esm/mark/base/base-mark.js.map +1 -1
  209. package/esm/mark/group.d.ts +3 -2
  210. package/esm/mark/group.js +18 -12
  211. package/esm/mark/group.js.map +1 -1
  212. package/esm/mark/interface/common.d.ts +5 -2
  213. package/esm/mark/interface/common.js.map +1 -1
  214. package/esm/model/base-model.d.ts +5 -1
  215. package/esm/model/base-model.js +7 -0
  216. package/esm/model/base-model.js.map +1 -1
  217. package/esm/model/interface.d.ts +5 -2
  218. package/esm/model/interface.js.map +1 -1
  219. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.d.ts +1 -1
  220. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.js +4 -3
  221. package/esm/plugin/components/tooltip-handler/dom-tooltip-handler.js.map +1 -1
  222. package/esm/plugin/components/tooltip-handler/utils/style.js +5 -4
  223. package/esm/plugin/components/tooltip-handler/utils/style.js.map +1 -1
  224. package/esm/region/region.js.map +1 -1
  225. package/esm/series/base/base-series-transformer.js +1 -1
  226. package/esm/series/base/base-series-transformer.js.map +1 -1
  227. package/esm/series/base/base-series.js +2 -3
  228. package/esm/series/base/base-series.js.map +1 -1
  229. package/esm/series/dot/dot.d.ts +0 -1
  230. package/esm/series/dot/dot.js +6 -29
  231. package/esm/series/dot/dot.js.map +1 -1
  232. package/esm/series/dot/interface.d.ts +0 -1
  233. package/esm/series/dot/interface.js.map +1 -1
  234. package/esm/series/dot/tooltip-helper.js +2 -3
  235. package/esm/series/dot/tooltip-helper.js.map +1 -1
  236. package/esm/series/funnel/funnel.js +0 -2
  237. package/esm/series/funnel/funnel.js.map +1 -1
  238. package/esm/series/interface/type.d.ts +0 -3
  239. package/esm/series/interface/type.js +3 -5
  240. package/esm/series/interface/type.js.map +1 -1
  241. package/esm/series/link/constant.js +0 -8
  242. package/esm/series/link/constant.js.map +1 -1
  243. package/esm/series/link/interface.d.ts +1 -10
  244. package/esm/series/link/interface.js +1 -5
  245. package/esm/series/link/interface.js.map +1 -1
  246. package/esm/series/link/link.d.ts +1 -3
  247. package/esm/series/link/link.js +16 -48
  248. package/esm/series/link/link.js.map +1 -1
  249. package/esm/series/map/map.js +1 -2
  250. package/esm/series/map/map.js.map +1 -1
  251. package/esm/series/pie/pie.js +0 -1
  252. package/esm/series/pie/pie.js.map +1 -1
  253. package/esm/series/sankey/sankey.d.ts +10 -10
  254. package/esm/series/sankey/sankey.js +192 -187
  255. package/esm/series/sankey/sankey.js.map +1 -1
  256. package/esm/util/mark.d.ts +1 -0
  257. package/esm/util/mark.js +7 -0
  258. package/esm/util/mark.js.map +1 -1
  259. package/esm/util/object.d.ts +1 -0
  260. package/esm/util/object.js +11 -0
  261. package/esm/util/object.js.map +1 -1
  262. package/package.json +12 -12
  263. package/cjs/animation/animate-manager.d.ts +0 -1
  264. package/cjs/animation/animate-manager.js +0 -2
  265. package/cjs/animation/animate-manager.js.map +0 -1
  266. package/esm/animation/animate-manager.d.ts +0 -1
  267. package/esm/animation/animate-manager.js +0 -2
  268. package/esm/animation/animate-manager.js.map +0 -1
@@ -86,193 +86,6 @@ export class SankeySeries extends CartesianSeries {
86
86
  var _a;
87
87
  const emphasisSpec = null !== (_a = this._spec.emphasis) && void 0 !== _a ? _a : {}, graphic = params.item;
88
88
  "adjacency" === emphasisSpec.effect ? graphic && params.mark === this._nodeMark ? this._handleNodeAdjacencyClick(graphic) : graphic && params.mark === this._linkMark ? this._handleLinkAdjacencyClick(graphic) : this._handleClearEmpty() : "related" === emphasisSpec.effect && (graphic && params.mark === this._nodeMark ? this._handleNodeRelatedClick(graphic) : graphic && params.mark === this._linkMark ? this._handleLinkRelatedClick(graphic) : this._handleClearEmpty());
89
- }, this._handleClearEmpty = () => {
90
- var _a, _b;
91
- if (!this._needClear) return;
92
- const allNodeElements = null === (_a = this._nodeMark) || void 0 === _a ? void 0 : _a.getGraphics();
93
- if (!allNodeElements || !allNodeElements.length) return;
94
- const allLinkElements = null === (_b = this._linkMark) || void 0 === _b ? void 0 : _b.getGraphics();
95
- allLinkElements && allLinkElements.length && (allNodeElements.forEach((el => {
96
- el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
97
- })), allLinkElements.forEach((el => {
98
- el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
99
- })), this._needClear = !1);
100
- }, this._handleNodeAdjacencyClick = graphic => {
101
- const nodeDatum = getDatumOfGraphic(graphic), highlightNodes = [ nodeDatum.key ];
102
- if (this._linkMark) {
103
- const allLinkElements = this._linkMark.getGraphics();
104
- if (!allLinkElements || !allLinkElements.length) return;
105
- allLinkElements.forEach(((linkEl, i) => {
106
- const linkDatum = getDatumOfGraphic(linkEl);
107
- linkDatum.source === nodeDatum.key ? (highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
108
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : linkDatum.target === nodeDatum.key ? (highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
109
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS),
110
- linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
111
- }));
112
- }
113
- this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes),
114
- this._needClear = !0;
115
- }, this._handleLinkAdjacencyClick = graphic => {
116
- const curLinkDatum = getDatumOfGraphic(graphic), highlightNodes = [ curLinkDatum.source, curLinkDatum.target ];
117
- if (this._linkMark) {
118
- const allLinkElements = this._linkMark.getGraphics();
119
- if (!allLinkElements || !allLinkElements.length) return;
120
- allLinkElements.forEach((linkEl => {
121
- linkEl === graphic ? (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
122
- addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
123
- ratio: 1
124
- })) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
125
- }));
126
- }
127
- this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes),
128
- this._needClear = !0;
129
- }, this._handleNodeRelatedClick = graphic => {
130
- var _a;
131
- const nodeDatum = getDatumOfGraphic(graphic), allNodeElements = this._nodeMark.getGraphics();
132
- if (!allNodeElements || !allNodeElements.length) return;
133
- const allLinkElements = this._linkMark.getGraphics();
134
- if (!allLinkElements || !allLinkElements.length) return;
135
- const father = (null === (_a = getDatumOfGraphic(allLinkElements[0])) || void 0 === _a ? void 0 : _a.parents) ? "parents" : "source";
136
- if ("source" === father) {
137
- const highlightNodes = [ nodeDatum.key ], highlightLinks = [];
138
- if (allLinkElements.forEach(((linkEl, i) => {
139
- var _a, _b, _c, _d;
140
- const linkDatum = getDatumOfGraphic(linkEl), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source";
141
- if (array(linkDatum[father]).includes(nodeDatum.key)) {
142
- if (highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) || highlightLinks.push(null !== (_b = linkDatum.key) && void 0 !== _b ? _b : linkDatum.index),
143
- highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
144
- !highlightNodes.includes(linkDatum.target)) {
145
- highlightNodes.push(linkDatum.target);
146
- let targetNodeSourceLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.target)).data[0].sourceLinks;
147
- for (;(null == targetNodeSourceLinks ? void 0 : targetNodeSourceLinks.length) > 0; ) {
148
- const newTargetNodeSourceLinks = [];
149
- return targetNodeSourceLinks.forEach((targetNodeSourceLinkDatum => {
150
- var _a, _b;
151
- if (!highlightLinks.includes(null !== (_a = targetNodeSourceLinkDatum.key) && void 0 !== _a ? _a : targetNodeSourceLinkDatum.index) && (highlightLinks.push(null !== (_b = targetNodeSourceLinkDatum.key) && void 0 !== _b ? _b : targetNodeSourceLinkDatum.index),
152
- !highlightNodes.includes(targetNodeSourceLinkDatum.target))) {
153
- highlightNodes.push(targetNodeSourceLinkDatum.target);
154
- const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === targetNodeSourceLinkDatum.target));
155
- newTargetNodeSourceLinks.push(sourceNodeTemp.data[0].targetLinks);
156
- }
157
- })), void (targetNodeSourceLinks = newTargetNodeSourceLinks);
158
- }
159
- }
160
- } else if (linkDatum.target === nodeDatum.key && (highlightLinks.includes(null !== (_c = linkDatum.key) && void 0 !== _c ? _c : linkDatum.index) || highlightLinks.push(null !== (_d = linkDatum.key) && void 0 !== _d ? _d : linkDatum.index),
161
- !highlightNodes.includes(linkDatum.source))) {
162
- highlightNodes.push(linkDatum.source);
163
- let sourceNodeTargetLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.source)).data[0].targetLinks;
164
- for (;(null == sourceNodeTargetLinks ? void 0 : sourceNodeTargetLinks.length) > 0; ) {
165
- const newSourceNodeTargetLinks = [];
166
- return sourceNodeTargetLinks.forEach((sourceNodeTargetLinkDatum => {
167
- var _a, _b;
168
- if (!highlightLinks.includes(null !== (_a = sourceNodeTargetLinkDatum.key) && void 0 !== _a ? _a : sourceNodeTargetLinkDatum.index) && (highlightLinks.push(null !== (_b = sourceNodeTargetLinkDatum.key) && void 0 !== _b ? _b : sourceNodeTargetLinkDatum.index),
169
- !highlightNodes.includes(sourceNodeTargetLinkDatum.source))) {
170
- highlightNodes.push(sourceNodeTargetLinkDatum.source);
171
- const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === sourceNodeTargetLinkDatum.source));
172
- newSourceNodeTargetLinks.push(sourceNodeTemp.data[0].targetLinks);
173
- }
174
- })), void (sourceNodeTargetLinks = newSourceNodeTargetLinks);
175
- }
176
- }
177
- })), this._linkMark) {
178
- const allLinkElements = this._linkMark.getGraphics();
179
- if (!allLinkElements || !allLinkElements.length) return;
180
- allLinkElements.forEach(((linkEl, i) => {
181
- var _a;
182
- const linkDatum = getDatumOfGraphic(linkEl);
183
- highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) ? (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
184
- linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS),
185
- linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
186
- }));
187
- }
188
- this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes);
189
- } else {
190
- const highlightNodes = [ nodeDatum.key ], upstreamLinks = nodeDatum.targetLinks.reduce(((res, link) => (array(link.datum).forEach((dividedLink => {
191
- const parents = dividedLink.parents, len = parents.length;
192
- for (let i = 0; i < len; i++) {
193
- const source = parents[i].key, target = parents[i + 1] ? parents[i + 1].key : nodeDatum.key, value = dividedLink.value, existingItem = res.find((item => item.source === source && item.target === target));
194
- existingItem ? existingItem.value += value : res.push({
195
- source: source,
196
- target: target,
197
- value: value
198
- });
199
- }
200
- })), res)), []);
201
- allLinkElements.forEach(((linkEl, i) => {
202
- const linkDatum = getDatumOfGraphic(linkEl), originalDatum = linkDatum.datum, selectedDatum = originalDatum ? originalDatum.filter((entry => entry[father].some((par => par.key === nodeDatum.key)))) : null, upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
203
- if (selectedDatum && selectedDatum.length) {
204
- highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
205
- highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
206
- const ratio = selectedDatum.reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
207
- return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
208
- ratio: ratio
209
- });
210
- }
211
- if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
212
- highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
213
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
214
- ratio: upSelectedLink.value / linkDatum.value
215
- });
216
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0);
217
- })), this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes);
218
- }
219
- this._needClear = !0;
220
- }, this._handleLinkRelatedClick = graphic => {
221
- const allNodeElements = this._nodeMark.getGraphics();
222
- if (!allNodeElements || !allNodeElements.length) return;
223
- const allLinkElements = this._linkMark.getGraphics();
224
- if (!allLinkElements || !allLinkElements.length) return;
225
- if ("source" === (getDatumOfGraphic(graphic) ? "parents" : "source")) this._linkMark && allLinkElements.forEach((linkEl => {
226
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
227
- })), this._nodeMark && allNodeElements.forEach((el => {
228
- el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
229
- })); else {
230
- const curLinkDatum = getDatumOfGraphic(graphic), highlightNodes = [ curLinkDatum.source, curLinkDatum.target ], upstreamLinks = [];
231
- array(curLinkDatum.datum).forEach((dividedLink => {
232
- const parents = dividedLink.parents, len = parents.length;
233
- for (let i = 0; i < len - 1; i++) {
234
- const source = parents[i].key, target = parents[i + 1].key, value = dividedLink.value, existingItem = upstreamLinks.find((item => item.source === source && item.target === target));
235
- upstreamLinks.push({
236
- source: parents[i].key,
237
- target: parents[i + 1].key,
238
- value: dividedLink.value
239
- }), existingItem ? existingItem.value += value : upstreamLinks.push({
240
- source: source,
241
- target: target,
242
- value: value
243
- });
244
- }
245
- })), allLinkElements.forEach((linkEl => {
246
- const linkDatum = getDatumOfGraphic(linkEl), originalDatum = linkDatum.datum;
247
- if (linkDatum.source === curLinkDatum.source && linkDatum.target === curLinkDatum.target) return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
248
- void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
249
- ratio: 1
250
- });
251
- const selectedDatum = originalDatum ? originalDatum.filter((entry => {
252
- const parentKeysList = entry.parents.map((item => item.key));
253
- return parentKeysList.includes(curLinkDatum.source) && parentKeysList.includes(curLinkDatum.target);
254
- })) : null;
255
- if (selectedDatum && selectedDatum.length) {
256
- highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
257
- highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
258
- const ratio = selectedDatum.filter((entry => entry.parents.some(((par, index) => {
259
- var _a;
260
- return par.key === curLinkDatum.source && (null === (_a = entry.parents[index + 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.target;
261
- })))).reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
262
- return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
263
- ratio: ratio
264
- });
265
- }
266
- const upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
267
- if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
268
- highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
269
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
270
- ratio: upSelectedLink.value / linkDatum.value
271
- });
272
- linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0);
273
- })), this._highLightElements(allNodeElements, highlightNodes);
274
- }
275
- this._needClear = !0;
276
89
  };
277
90
  }
278
91
  get direction() {
@@ -512,6 +325,198 @@ export class SankeySeries extends CartesianSeries {
512
325
  linksSeriesDataUpdate() {
513
326
  this._linkMark.getData().updateData();
514
327
  }
328
+ _handleClearEmpty() {
329
+ var _a, _b;
330
+ if (!this._needClear) return;
331
+ const allNodeElements = null === (_a = this._nodeMark) || void 0 === _a ? void 0 : _a.getGraphics();
332
+ if (!allNodeElements || !allNodeElements.length) return;
333
+ const allLinkElements = null === (_b = this._linkMark) || void 0 === _b ? void 0 : _b.getGraphics();
334
+ allLinkElements && allLinkElements.length && (allNodeElements.forEach((el => {
335
+ el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
336
+ })), allLinkElements.forEach((el => {
337
+ el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
338
+ })), this._needClear = !1);
339
+ }
340
+ _handleNodeAdjacencyClick(graphic) {
341
+ const nodeDatum = getDatumOfGraphic(graphic), highlightNodes = [ nodeDatum.key ];
342
+ if (this._linkMark) {
343
+ const allLinkElements = this._linkMark.getGraphics();
344
+ if (!allLinkElements || !allLinkElements.length) return;
345
+ allLinkElements.forEach(((linkEl, i) => {
346
+ const linkDatum = getDatumOfGraphic(linkEl);
347
+ linkDatum.source === nodeDatum.key ? (highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
348
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : linkDatum.target === nodeDatum.key ? (highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
349
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS),
350
+ linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
351
+ }));
352
+ }
353
+ this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes),
354
+ this._needClear = !0;
355
+ }
356
+ _handleLinkAdjacencyClick(graphic) {
357
+ const curLinkDatum = getDatumOfGraphic(graphic), highlightNodes = [ curLinkDatum.source, curLinkDatum.target ];
358
+ if (this._linkMark) {
359
+ const allLinkElements = this._linkMark.getGraphics();
360
+ if (!allLinkElements || !allLinkElements.length) return;
361
+ allLinkElements.forEach((linkEl => {
362
+ linkEl === graphic ? (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
363
+ addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
364
+ ratio: 1
365
+ })) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
366
+ }));
367
+ }
368
+ this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes),
369
+ this._needClear = !0;
370
+ }
371
+ _handleNodeRelatedClick(graphic) {
372
+ var _a;
373
+ const nodeDatum = getDatumOfGraphic(graphic), allNodeElements = this._nodeMark.getGraphics();
374
+ if (!allNodeElements || !allNodeElements.length) return;
375
+ const allLinkElements = this._linkMark.getGraphics();
376
+ if (!allLinkElements || !allLinkElements.length) return;
377
+ const father = (null === (_a = getDatumOfGraphic(allLinkElements[0])) || void 0 === _a ? void 0 : _a.parents) ? "parents" : "source";
378
+ if ("source" === father) {
379
+ const highlightNodes = [ nodeDatum.key ], highlightLinks = [];
380
+ if (allLinkElements.forEach(((linkEl, i) => {
381
+ var _a, _b, _c, _d;
382
+ const linkDatum = getDatumOfGraphic(linkEl), father = (null == linkDatum ? void 0 : linkDatum.parents) ? "parents" : "source";
383
+ if (array(linkDatum[father]).includes(nodeDatum.key)) {
384
+ if (highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) || highlightLinks.push(null !== (_b = linkDatum.key) && void 0 !== _b ? _b : linkDatum.index),
385
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
386
+ !highlightNodes.includes(linkDatum.target)) {
387
+ highlightNodes.push(linkDatum.target);
388
+ let targetNodeSourceLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.target)).data[0].sourceLinks;
389
+ for (;(null == targetNodeSourceLinks ? void 0 : targetNodeSourceLinks.length) > 0; ) {
390
+ const newTargetNodeSourceLinks = [];
391
+ return targetNodeSourceLinks.forEach((targetNodeSourceLinkDatum => {
392
+ var _a, _b;
393
+ if (!highlightLinks.includes(null !== (_a = targetNodeSourceLinkDatum.key) && void 0 !== _a ? _a : targetNodeSourceLinkDatum.index) && (highlightLinks.push(null !== (_b = targetNodeSourceLinkDatum.key) && void 0 !== _b ? _b : targetNodeSourceLinkDatum.index),
394
+ !highlightNodes.includes(targetNodeSourceLinkDatum.target))) {
395
+ highlightNodes.push(targetNodeSourceLinkDatum.target);
396
+ const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === targetNodeSourceLinkDatum.target));
397
+ newTargetNodeSourceLinks.push(sourceNodeTemp.data[0].targetLinks);
398
+ }
399
+ })), void (targetNodeSourceLinks = newTargetNodeSourceLinks);
400
+ }
401
+ }
402
+ } else if (linkDatum.target === nodeDatum.key && (highlightLinks.includes(null !== (_c = linkDatum.key) && void 0 !== _c ? _c : linkDatum.index) || highlightLinks.push(null !== (_d = linkDatum.key) && void 0 !== _d ? _d : linkDatum.index),
403
+ !highlightNodes.includes(linkDatum.source))) {
404
+ highlightNodes.push(linkDatum.source);
405
+ let sourceNodeTargetLinks = allNodeElements.find((nodeElement => nodeElement.data[0].key === linkDatum.source)).data[0].targetLinks;
406
+ for (;(null == sourceNodeTargetLinks ? void 0 : sourceNodeTargetLinks.length) > 0; ) {
407
+ const newSourceNodeTargetLinks = [];
408
+ return sourceNodeTargetLinks.forEach((sourceNodeTargetLinkDatum => {
409
+ var _a, _b;
410
+ if (!highlightLinks.includes(null !== (_a = sourceNodeTargetLinkDatum.key) && void 0 !== _a ? _a : sourceNodeTargetLinkDatum.index) && (highlightLinks.push(null !== (_b = sourceNodeTargetLinkDatum.key) && void 0 !== _b ? _b : sourceNodeTargetLinkDatum.index),
411
+ !highlightNodes.includes(sourceNodeTargetLinkDatum.source))) {
412
+ highlightNodes.push(sourceNodeTargetLinkDatum.source);
413
+ const sourceNodeTemp = allNodeElements.find((nodeElement => nodeElement.data[0].key === sourceNodeTargetLinkDatum.source));
414
+ newSourceNodeTargetLinks.push(sourceNodeTemp.data[0].targetLinks);
415
+ }
416
+ })), void (sourceNodeTargetLinks = newSourceNodeTargetLinks);
417
+ }
418
+ }
419
+ })), this._linkMark) {
420
+ const allLinkElements = this._linkMark.getGraphics();
421
+ if (!allLinkElements || !allLinkElements.length) return;
422
+ allLinkElements.forEach(((linkEl, i) => {
423
+ var _a;
424
+ const linkDatum = getDatumOfGraphic(linkEl);
425
+ highlightLinks.includes(null !== (_a = linkDatum.key) && void 0 !== _a ? _a : linkDatum.index) ? (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
426
+ linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, !0)) : (linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS),
427
+ linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0));
428
+ }));
429
+ }
430
+ this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes);
431
+ } else {
432
+ const highlightNodes = [ nodeDatum.key ], upstreamLinks = nodeDatum.targetLinks.reduce(((res, link) => (array(link.datum).forEach((dividedLink => {
433
+ const parents = dividedLink.parents, len = parents.length;
434
+ for (let i = 0; i < len; i++) {
435
+ const source = parents[i].key, target = parents[i + 1] ? parents[i + 1].key : nodeDatum.key, value = dividedLink.value, existingItem = res.find((item => item.source === source && item.target === target));
436
+ existingItem ? existingItem.value += value : res.push({
437
+ source: source,
438
+ target: target,
439
+ value: value
440
+ });
441
+ }
442
+ })), res)), []);
443
+ allLinkElements.forEach(((linkEl, i) => {
444
+ const linkDatum = getDatumOfGraphic(linkEl), originalDatum = linkDatum.datum, selectedDatum = originalDatum ? originalDatum.filter((entry => entry[father].some((par => par.key === nodeDatum.key)))) : null, upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
445
+ if (selectedDatum && selectedDatum.length) {
446
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
447
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
448
+ const ratio = selectedDatum.reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
449
+ return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
450
+ ratio: ratio
451
+ });
452
+ }
453
+ if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
454
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
455
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
456
+ ratio: upSelectedLink.value / linkDatum.value
457
+ });
458
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0);
459
+ })), this._nodeMark && this._highLightElements(this._nodeMark.getGraphics(), highlightNodes);
460
+ }
461
+ this._needClear = !0;
462
+ }
463
+ _handleLinkRelatedClick(graphic) {
464
+ const allNodeElements = this._nodeMark.getGraphics();
465
+ if (!allNodeElements || !allNodeElements.length) return;
466
+ const allLinkElements = this._linkMark.getGraphics();
467
+ if (!allLinkElements || !allLinkElements.length) return;
468
+ if ("source" === (getDatumOfGraphic(graphic) ? "parents" : "source")) this._linkMark && allLinkElements.forEach((linkEl => {
469
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
470
+ })), this._nodeMark && allNodeElements.forEach((el => {
471
+ el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), el.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE);
472
+ })); else {
473
+ const curLinkDatum = getDatumOfGraphic(graphic), highlightNodes = [ curLinkDatum.source, curLinkDatum.target ], upstreamLinks = [];
474
+ array(curLinkDatum.datum).forEach((dividedLink => {
475
+ const parents = dividedLink.parents, len = parents.length;
476
+ for (let i = 0; i < len - 1; i++) {
477
+ const source = parents[i].key, target = parents[i + 1].key, value = dividedLink.value, existingItem = upstreamLinks.find((item => item.source === source && item.target === target));
478
+ upstreamLinks.push({
479
+ source: parents[i].key,
480
+ target: parents[i + 1].key,
481
+ value: dividedLink.value
482
+ }), existingItem ? existingItem.value += value : upstreamLinks.push({
483
+ source: source,
484
+ target: target,
485
+ value: value
486
+ });
487
+ }
488
+ })), allLinkElements.forEach((linkEl => {
489
+ const linkDatum = getDatumOfGraphic(linkEl), originalDatum = linkDatum.datum;
490
+ if (linkDatum.source === curLinkDatum.source && linkDatum.target === curLinkDatum.target) return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE),
491
+ void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
492
+ ratio: 1
493
+ });
494
+ const selectedDatum = originalDatum ? originalDatum.filter((entry => {
495
+ const parentKeysList = entry.parents.map((item => item.key));
496
+ return parentKeysList.includes(curLinkDatum.source) && parentKeysList.includes(curLinkDatum.target);
497
+ })) : null;
498
+ if (selectedDatum && selectedDatum.length) {
499
+ highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
500
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target);
501
+ const ratio = selectedDatum.filter((entry => entry.parents.some(((par, index) => {
502
+ var _a;
503
+ return par.key === curLinkDatum.source && (null === (_a = entry.parents[index + 1]) || void 0 === _a ? void 0 : _a.key) === curLinkDatum.target;
504
+ })))).reduce(((sum, d) => sum + d.value), 0) / linkDatum.value;
505
+ return linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
506
+ ratio: ratio
507
+ });
508
+ }
509
+ const upSelectedLink = upstreamLinks.find((upLink => upLink.source === linkDatum.source && upLink.target === linkDatum.target));
510
+ if (upSelectedLink) return highlightNodes.includes(linkDatum.source) || highlightNodes.push(linkDatum.source),
511
+ highlightNodes.includes(linkDatum.target) || highlightNodes.push(linkDatum.target),
512
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE), void addRuntimeState(linkEl, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS, {
513
+ ratio: upSelectedLink.value / linkDatum.value
514
+ });
515
+ linkEl.removeState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS), linkEl.addState(STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, !0);
516
+ })), this._highLightElements(allNodeElements, highlightNodes);
517
+ }
518
+ this._needClear = !0;
519
+ }
515
520
  _highLightElements(graphics, highlightNodes) {
516
521
  graphics && graphics.length && graphics.forEach((g => {
517
522
  g.removeState([ STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS_REVERSE, STATE_VALUE_ENUM.STATE_SANKEY_EMPHASIS ]),