@burdenoff/microfe-planmagnet 2026.930.21 → 2026.930.23

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 (127) hide show
  1. package/dist/node_modules/lodash/_arrayEach.js +14 -0
  2. package/dist/node_modules/lodash/_arrayEach.js.map +1 -0
  3. package/dist/node_modules/lodash/_assignValue.js +17 -0
  4. package/dist/node_modules/lodash/_assignValue.js.map +1 -0
  5. package/dist/node_modules/lodash/_baseAssign.js +16 -0
  6. package/dist/node_modules/lodash/_baseAssign.js.map +1 -0
  7. package/dist/node_modules/lodash/_baseAssignIn.js +16 -0
  8. package/dist/node_modules/lodash/_baseAssignIn.js.map +1 -0
  9. package/dist/node_modules/lodash/_baseClone.js +64 -0
  10. package/dist/node_modules/lodash/_baseClone.js.map +1 -0
  11. package/dist/node_modules/lodash/_baseCreate.js +21 -0
  12. package/dist/node_modules/lodash/_baseCreate.js.map +1 -0
  13. package/dist/node_modules/lodash/_baseIsMap.js +16 -0
  14. package/dist/node_modules/lodash/_baseIsMap.js.map +1 -0
  15. package/dist/node_modules/lodash/_baseIsSet.js +16 -0
  16. package/dist/node_modules/lodash/_baseIsSet.js.map +1 -0
  17. package/dist/node_modules/lodash/_baseKeysIn.js +20 -0
  18. package/dist/node_modules/lodash/_baseKeysIn.js.map +1 -0
  19. package/dist/node_modules/lodash/_baseSum.js +17 -0
  20. package/dist/node_modules/lodash/_baseSum.js.map +1 -0
  21. package/dist/node_modules/lodash/_baseUnset.js +26 -0
  22. package/dist/node_modules/lodash/_baseUnset.js.map +1 -0
  23. package/dist/node_modules/lodash/_cloneArrayBuffer.js +16 -0
  24. package/dist/node_modules/lodash/_cloneArrayBuffer.js.map +1 -0
  25. package/dist/node_modules/lodash/_cloneBuffer.js +17 -0
  26. package/dist/node_modules/lodash/_cloneBuffer.js.map +1 -0
  27. package/dist/node_modules/lodash/_cloneDataView.js +16 -0
  28. package/dist/node_modules/lodash/_cloneDataView.js.map +1 -0
  29. package/dist/node_modules/lodash/_cloneRegExp.js +15 -0
  30. package/dist/node_modules/lodash/_cloneRegExp.js.map +1 -0
  31. package/dist/node_modules/lodash/_cloneSymbol.js +15 -0
  32. package/dist/node_modules/lodash/_cloneSymbol.js.map +1 -0
  33. package/dist/node_modules/lodash/_cloneTypedArray.js +16 -0
  34. package/dist/node_modules/lodash/_cloneTypedArray.js.map +1 -0
  35. package/dist/node_modules/lodash/_copyArray.js +15 -0
  36. package/dist/node_modules/lodash/_copyArray.js.map +1 -0
  37. package/dist/node_modules/lodash/_copyObject.js +22 -0
  38. package/dist/node_modules/lodash/_copyObject.js.map +1 -0
  39. package/dist/node_modules/lodash/_copySymbols.js +16 -0
  40. package/dist/node_modules/lodash/_copySymbols.js.map +1 -0
  41. package/dist/node_modules/lodash/_copySymbolsIn.js +16 -0
  42. package/dist/node_modules/lodash/_copySymbolsIn.js.map +1 -0
  43. package/dist/node_modules/lodash/_customOmitClone.js +15 -0
  44. package/dist/node_modules/lodash/_customOmitClone.js.map +1 -0
  45. package/dist/node_modules/lodash/_flatRest.js +17 -0
  46. package/dist/node_modules/lodash/_flatRest.js.map +1 -0
  47. package/dist/node_modules/lodash/_getAllKeysIn.js +17 -0
  48. package/dist/node_modules/lodash/_getAllKeysIn.js.map +1 -0
  49. package/dist/node_modules/lodash/_getSymbolsIn.js +18 -0
  50. package/dist/node_modules/lodash/_getSymbolsIn.js.map +1 -0
  51. package/dist/node_modules/lodash/_initCloneArray.js +15 -0
  52. package/dist/node_modules/lodash/_initCloneArray.js.map +1 -0
  53. package/dist/node_modules/lodash/_initCloneByTag.js +40 -0
  54. package/dist/node_modules/lodash/_initCloneByTag.js.map +1 -0
  55. package/dist/node_modules/lodash/_initCloneObject.js +17 -0
  56. package/dist/node_modules/lodash/_initCloneObject.js.map +1 -0
  57. package/dist/node_modules/lodash/_nativeKeysIn.js +15 -0
  58. package/dist/node_modules/lodash/_nativeKeysIn.js.map +1 -0
  59. package/dist/node_modules/lodash/_parent.js +16 -0
  60. package/dist/node_modules/lodash/_parent.js.map +1 -0
  61. package/dist/node_modules/lodash/flatten.js +15 -0
  62. package/dist/node_modules/lodash/flatten.js.map +1 -0
  63. package/dist/node_modules/lodash/isMap.js +14 -0
  64. package/dist/node_modules/lodash/isMap.js.map +1 -0
  65. package/dist/node_modules/lodash/isSet.js +14 -0
  66. package/dist/node_modules/lodash/isSet.js.map +1 -0
  67. package/dist/node_modules/lodash/keysIn.js +17 -0
  68. package/dist/node_modules/lodash/keysIn.js.map +1 -0
  69. package/dist/node_modules/lodash/maxBy.js +17 -0
  70. package/dist/node_modules/lodash/maxBy.js.map +1 -0
  71. package/dist/node_modules/lodash/omit.js +28 -0
  72. package/dist/node_modules/lodash/omit.js.map +1 -0
  73. package/dist/node_modules/lodash/sumBy.js +16 -0
  74. package/dist/node_modules/lodash/sumBy.js.map +1 -0
  75. package/dist/node_modules/recharts/es6/chart/Sankey.js +556 -0
  76. package/dist/node_modules/recharts/es6/chart/Sankey.js.map +1 -0
  77. package/dist/node_modules/recharts/es6/chart/Treemap.js +545 -0
  78. package/dist/node_modules/recharts/es6/chart/Treemap.js.map +1 -0
  79. package/dist/node_modules/recharts/es6/shape/Polygon.js +112 -0
  80. package/dist/node_modules/recharts/es6/shape/Polygon.js.map +1 -0
  81. package/dist/node_modules/recharts/es6/util/Constants.js +31 -0
  82. package/dist/node_modules/recharts/es6/util/Constants.js.map +1 -0
  83. package/dist/node_modules/recharts/es6/util/ReactUtils.js +15 -10
  84. package/dist/node_modules/recharts/es6/util/ReactUtils.js.map +1 -1
  85. package/dist/planmagnet/controls/AutomationRuleControls.js +10 -10
  86. package/dist/planmagnet/controls/CompetitorControls.js +7 -7
  87. package/dist/planmagnet/controls/FeatureControls.js +38 -38
  88. package/dist/planmagnet/controls/ProgramControls.js +8 -8
  89. package/dist/planmagnet/dependency/DependencyGraph.d.ts.map +1 -1
  90. package/dist/planmagnet/dependency/DependencyGraph.js +13 -10
  91. package/dist/planmagnet/dependency/DependencyGraph.js.map +1 -1
  92. package/dist/planmagnet/dependency/DependencyPanel.js +13 -13
  93. package/dist/planmagnet/dependency/GanttChart.d.ts.map +1 -1
  94. package/dist/planmagnet/dependency/GanttChart.js +11 -5
  95. package/dist/planmagnet/dependency/GanttChart.js.map +1 -1
  96. package/dist/planmagnet/pages/ActivityActivityPagePage.js +16 -16
  97. package/dist/planmagnet/pages/ActivityActivityPagePage.js.map +1 -1
  98. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.d.ts.map +1 -1
  99. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js +91 -73
  100. package/dist/planmagnet/pages/AnalyticsAnalyticsPagePage.js.map +1 -1
  101. package/dist/planmagnet/pages/AutomationAutomationRulesPagePage.js +6 -6
  102. package/dist/planmagnet/pages/AutomationCreateAutomationRulePagePage.js +4 -4
  103. package/dist/planmagnet/pages/DashboardDashboardPagePage.js +11 -11
  104. package/dist/planmagnet/pages/DashboardsProjectManagerPagePage.js +5 -5
  105. package/dist/planmagnet/pages/DashboardsTeamUtilizationPagePage.js +5 -5
  106. package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js +6 -6
  107. package/dist/planmagnet/pages/IntegrationsNewSyncPagePage.js.map +1 -1
  108. package/dist/planmagnet/pages/IntegrationsSyncsPagePage.js +8 -8
  109. package/dist/planmagnet/pages/ProjectsBudgetsPagePage.js +10 -10
  110. package/dist/planmagnet/pages/ProjectsCriticalPathPagePage.js +6 -6
  111. package/dist/planmagnet/pages/ProjectsEditProjectPagePage.js +5 -5
  112. package/dist/planmagnet/pages/ProjectsPlanningPagePage.js +8 -8
  113. package/dist/planmagnet/pages/SprintsStartSprintPagePage.js +4 -4
  114. package/dist/planmagnet/pages/analytics/StatusFlowCard.d.ts +8 -0
  115. package/dist/planmagnet/pages/analytics/StatusFlowCard.d.ts.map +1 -0
  116. package/dist/planmagnet/pages/analytics/StatusFlowCard.js +234 -0
  117. package/dist/planmagnet/pages/analytics/StatusFlowCard.js.map +1 -0
  118. package/dist/planmagnet/pages/analytics/WorkBreakdownCard.d.ts +6 -0
  119. package/dist/planmagnet/pages/analytics/WorkBreakdownCard.d.ts.map +1 -0
  120. package/dist/planmagnet/pages/analytics/WorkBreakdownCard.js +367 -0
  121. package/dist/planmagnet/pages/analytics/WorkBreakdownCard.js.map +1 -0
  122. package/dist/planmagnet/roadmaps/RoadmapControls.js +17 -17
  123. package/dist/planmagnet/utils/statusColor.d.ts +8 -9
  124. package/dist/planmagnet/utils/statusColor.d.ts.map +1 -1
  125. package/dist/planmagnet/utils/statusColor.js +8 -40
  126. package/dist/planmagnet/utils/statusColor.js.map +1 -1
  127. package/package.json +1 -1
@@ -0,0 +1,556 @@
1
+ import { __toESM as e } from "../../../../_virtual/_rolldown/runtime.js";
2
+ import t from "../../../clsx/dist/clsx.js";
3
+ import { require_isFunction as n } from "../../../lodash/isFunction.js";
4
+ import { require_get as r } from "../../../lodash/get.js";
5
+ import { shallowEqual as i } from "../util/ShallowEqual.js";
6
+ import { filterProps as a, filterSvgElements as o, findChildByType as s, validateWidthHeight as c } from "../util/ReactUtils.js";
7
+ import { Surface as l } from "../container/Surface.js";
8
+ import { Layer as u } from "../container/Layer.js";
9
+ import { Tooltip as d } from "../component/Tooltip.js";
10
+ import { require_min as f } from "../../../lodash/min.js";
11
+ import { getValueByDataKey as p } from "../util/ChartUtils.js";
12
+ import { Rectangle as m } from "../shape/Rectangle.js";
13
+ import { require_maxBy as h } from "../../../lodash/maxBy.js";
14
+ import { require_sumBy as g } from "../../../lodash/sumBy.js";
15
+ import _, { PureComponent as v } from "react";
16
+ //#region node_modules/recharts/es6/chart/Sankey.js
17
+ var y = /* @__PURE__ */ e(h()), b = /* @__PURE__ */ e(f()), x = /* @__PURE__ */ e(r()), S = /* @__PURE__ */ e(g()), C = /* @__PURE__ */ e(n()), w = [
18
+ "width",
19
+ "height",
20
+ "className",
21
+ "style",
22
+ "children"
23
+ ], ee = [
24
+ "sourceX",
25
+ "sourceY",
26
+ "sourceControlX",
27
+ "targetX",
28
+ "targetY",
29
+ "targetControlX",
30
+ "linkWidth"
31
+ ];
32
+ function T(e) {
33
+ "@babel/helpers - typeof";
34
+ return T = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(e) {
35
+ return typeof e;
36
+ } : function(e) {
37
+ return e && typeof Symbol == "function" && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : typeof e;
38
+ }, T(e);
39
+ }
40
+ function E(e, t) {
41
+ if (e == null) return {};
42
+ var n = D(e, t), r, i;
43
+ if (Object.getOwnPropertySymbols) {
44
+ var a = Object.getOwnPropertySymbols(e);
45
+ for (i = 0; i < a.length; i++) r = a[i], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
46
+ }
47
+ return n;
48
+ }
49
+ function D(e, t) {
50
+ if (e == null) return {};
51
+ var n = {};
52
+ for (var r in e) if (Object.prototype.hasOwnProperty.call(e, r)) {
53
+ if (t.indexOf(r) >= 0) continue;
54
+ n[r] = e[r];
55
+ }
56
+ return n;
57
+ }
58
+ function O() {
59
+ return O = Object.assign ? Object.assign.bind() : function(e) {
60
+ for (var t = 1; t < arguments.length; t++) {
61
+ var n = arguments[t];
62
+ for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);
63
+ }
64
+ return e;
65
+ }, O.apply(this, arguments);
66
+ }
67
+ function te(e, t) {
68
+ if (!(e instanceof t)) throw TypeError("Cannot call a class as a function");
69
+ }
70
+ function k(e, t) {
71
+ for (var n = 0; n < t.length; n++) {
72
+ var r = t[n];
73
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, V(r.key), r);
74
+ }
75
+ }
76
+ function A(e, t, n) {
77
+ return t && k(e.prototype, t), n && k(e, n), Object.defineProperty(e, "prototype", { writable: !1 }), e;
78
+ }
79
+ function j(e, t, n) {
80
+ return t = F(t), M(e, P() ? Reflect.construct(t, n || [], F(e).constructor) : t.apply(e, n));
81
+ }
82
+ function M(e, t) {
83
+ if (t && (T(t) === "object" || typeof t == "function")) return t;
84
+ if (t !== void 0) throw TypeError("Derived constructors may only return object or undefined");
85
+ return N(e);
86
+ }
87
+ function N(e) {
88
+ if (e === void 0) throw ReferenceError("this hasn't been initialised - super() hasn't been called");
89
+ return e;
90
+ }
91
+ function P() {
92
+ try {
93
+ var e = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {}));
94
+ } catch {}
95
+ return (P = function() {
96
+ return !!e;
97
+ })();
98
+ }
99
+ function F(e) {
100
+ return F = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {
101
+ return e.__proto__ || Object.getPrototypeOf(e);
102
+ }, F(e);
103
+ }
104
+ function I(e, t) {
105
+ if (typeof t != "function" && t !== null) throw TypeError("Super expression must either be null or a function");
106
+ e.prototype = Object.create(t && t.prototype, { constructor: {
107
+ value: e,
108
+ writable: !0,
109
+ configurable: !0
110
+ } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && L(e, t);
111
+ }
112
+ function L(e, t) {
113
+ return L = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
114
+ return e.__proto__ = t, e;
115
+ }, L(e, t);
116
+ }
117
+ function R(e, t) {
118
+ var n = Object.keys(e);
119
+ if (Object.getOwnPropertySymbols) {
120
+ var r = Object.getOwnPropertySymbols(e);
121
+ t && (r = r.filter(function(t) {
122
+ return Object.getOwnPropertyDescriptor(e, t).enumerable;
123
+ })), n.push.apply(n, r);
124
+ }
125
+ return n;
126
+ }
127
+ function z(e) {
128
+ for (var t = 1; t < arguments.length; t++) {
129
+ var n = arguments[t] == null ? {} : arguments[t];
130
+ t % 2 ? R(Object(n), !0).forEach(function(t) {
131
+ B(e, t, n[t]);
132
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : R(Object(n)).forEach(function(t) {
133
+ Object.defineProperty(e, t, Object.getOwnPropertyDescriptor(n, t));
134
+ });
135
+ }
136
+ return e;
137
+ }
138
+ function B(e, t, n) {
139
+ return t = V(t), t in e ? Object.defineProperty(e, t, {
140
+ value: n,
141
+ enumerable: !0,
142
+ configurable: !0,
143
+ writable: !0
144
+ }) : e[t] = n, e;
145
+ }
146
+ function V(e) {
147
+ var t = H(e, "string");
148
+ return T(t) == "symbol" ? t : t + "";
149
+ }
150
+ function H(e, t) {
151
+ if (T(e) != "object" || !e) return e;
152
+ var n = e[Symbol.toPrimitive];
153
+ if (n !== void 0) {
154
+ var r = n.call(e, t || "default");
155
+ if (T(r) != "object") return r;
156
+ throw TypeError("@@toPrimitive must return a primitive value.");
157
+ }
158
+ return (t === "string" ? String : Number)(e);
159
+ }
160
+ var U = {
161
+ x: 0,
162
+ y: 0
163
+ }, W = function(e, t) {
164
+ var n = +e, r = t - n;
165
+ return function(e) {
166
+ return n + r * e;
167
+ };
168
+ }, G = function(e) {
169
+ return e.y + e.dy / 2;
170
+ }, K = function(e) {
171
+ return e && e.value || 0;
172
+ }, q = function(e, t) {
173
+ return t.reduce(function(t, n) {
174
+ return t + K(e[n]);
175
+ }, 0);
176
+ }, J = function(e, t, n) {
177
+ return n.reduce(function(n, r) {
178
+ var i = e[t[r].source];
179
+ return n + G(i) * K(t[r]);
180
+ }, 0);
181
+ }, Y = function(e, t, n) {
182
+ return n.reduce(function(n, r) {
183
+ var i = e[t[r].target];
184
+ return n + G(i) * K(t[r]);
185
+ }, 0);
186
+ }, X = function(e, t) {
187
+ return e.y - t.y;
188
+ }, Z = function(e, t) {
189
+ for (var n = [], r = [], i = [], a = [], o = 0, s = e.length; o < s; o++) {
190
+ var c = e[o];
191
+ c.source === t && (i.push(c.target), a.push(o)), c.target === t && (n.push(c.source), r.push(o));
192
+ }
193
+ return {
194
+ sourceNodes: n,
195
+ sourceLinks: r,
196
+ targetLinks: a,
197
+ targetNodes: i
198
+ };
199
+ }, ne = function e(t, n) {
200
+ for (var r = n.targetNodes, i = 0, a = r.length; i < a; i++) {
201
+ var o = t[r[i]];
202
+ o && (o.depth = Math.max(n.depth + 1, o.depth), e(t, o));
203
+ }
204
+ }, re = function(e, t, n) {
205
+ for (var r = e.nodes, i = e.links, a = r.map(function(e, t) {
206
+ var n = Z(i, t);
207
+ return z(z(z({}, e), n), {}, {
208
+ value: Math.max(q(i, n.sourceLinks), q(i, n.targetLinks)),
209
+ depth: 0
210
+ });
211
+ }), o = 0, s = a.length; o < s; o++) {
212
+ var c = a[o];
213
+ c.sourceNodes.length || ne(a, c);
214
+ }
215
+ var l = (0, y.default)(a, function(e) {
216
+ return e.depth;
217
+ }).depth;
218
+ if (l >= 1) for (var u = (t - n) / l, d = 0, f = a.length; d < f; d++) {
219
+ var p = a[d];
220
+ p.targetNodes.length || (p.depth = l), p.x = p.depth * u, p.dx = n;
221
+ }
222
+ return {
223
+ tree: a,
224
+ maxDepth: l
225
+ };
226
+ }, ie = function(e) {
227
+ for (var t = [], n = 0, r = e.length; n < r; n++) {
228
+ var i = e[n];
229
+ t[i.depth] || (t[i.depth] = []), t[i.depth].push(i);
230
+ }
231
+ return t;
232
+ }, ae = function(e, t, n, r) {
233
+ for (var i = (0, b.default)(e.map(function(e) {
234
+ return (t - (e.length - 1) * n) / (0, S.default)(e, K);
235
+ })), a = 0, o = e.length; a < o; a++) for (var s = 0, c = e[a].length; s < c; s++) {
236
+ var l = e[a][s];
237
+ l.y = s, l.dy = l.value * i;
238
+ }
239
+ return r.map(function(e) {
240
+ return z(z({}, e), {}, { dy: K(e) * i });
241
+ });
242
+ }, Q = function(e, t, n) {
243
+ for (var r = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : !0, i = 0, a = e.length; i < a; i++) {
244
+ var o = e[i], s = o.length;
245
+ r && o.sort(X);
246
+ for (var c = 0, l = 0; l < s; l++) {
247
+ var u = o[l], d = c - u.y;
248
+ d > 0 && (u.y += d), c = u.y + u.dy + n;
249
+ }
250
+ c = t + n;
251
+ for (var f = s - 1; f >= 0; f--) {
252
+ var p = o[f], m = p.y + p.dy + n - c;
253
+ if (m > 0) p.y -= m, c = p.y;
254
+ else break;
255
+ }
256
+ }
257
+ }, oe = function(e, t, n, r) {
258
+ for (var i = 0, a = t.length; i < a; i++) for (var o = t[i], s = 0, c = o.length; s < c; s++) {
259
+ var l = o[s];
260
+ if (l.sourceLinks.length) {
261
+ var u = q(n, l.sourceLinks), d = J(e, n, l.sourceLinks) / u;
262
+ l.y += (d - G(l)) * r;
263
+ }
264
+ }
265
+ }, se = function(e, t, n, r) {
266
+ for (var i = t.length - 1; i >= 0; i--) for (var a = t[i], o = 0, s = a.length; o < s; o++) {
267
+ var c = a[o];
268
+ if (c.targetLinks.length) {
269
+ var l = q(n, c.targetLinks), u = Y(e, n, c.targetLinks) / l;
270
+ c.y += (u - G(c)) * r;
271
+ }
272
+ }
273
+ }, ce = function(e, t) {
274
+ for (var n = 0, r = e.length; n < r; n++) {
275
+ var i = e[n], a = 0, o = 0;
276
+ i.targetLinks.sort(function(n, r) {
277
+ return e[t[n].target].y - e[t[r].target].y;
278
+ }), i.sourceLinks.sort(function(n, r) {
279
+ return e[t[n].source].y - e[t[r].source].y;
280
+ });
281
+ for (var s = 0, c = i.targetLinks.length; s < c; s++) {
282
+ var l = t[i.targetLinks[s]];
283
+ l && (l.sy = a, a += l.dy);
284
+ }
285
+ for (var u = 0, d = i.sourceLinks.length; u < d; u++) {
286
+ var f = t[i.sourceLinks[u]];
287
+ f && (f.ty = o, o += f.dy);
288
+ }
289
+ }
290
+ }, le = function(e) {
291
+ var t = e.data, n = e.width, r = e.height, i = e.iterations, a = e.nodeWidth, o = e.nodePadding, s = e.sort, c = t.links, l = re(t, n, a).tree, u = ie(l), d = ae(u, r, o, c);
292
+ Q(u, r, o, s);
293
+ for (var f = 1, p = 1; p <= i; p++) se(l, u, d, f *= .99), Q(u, r, o, s), oe(l, u, d, f), Q(u, r, o, s);
294
+ return ce(l, d), {
295
+ nodes: l,
296
+ links: d
297
+ };
298
+ }, ue = function(e, t) {
299
+ return t === "node" ? {
300
+ x: e.x + e.width / 2,
301
+ y: e.y + e.height / 2
302
+ } : {
303
+ x: (e.sourceX + e.targetX) / 2,
304
+ y: (e.sourceY + e.targetY) / 2
305
+ };
306
+ }, de = function(e, t, n) {
307
+ var r = e.payload;
308
+ return t === "node" ? [{
309
+ payload: e,
310
+ name: p(r, n, ""),
311
+ value: p(r, "value")
312
+ }] : r.source && r.target ? [{
313
+ payload: e,
314
+ name: `${p(r.source, n, "")} - ${p(r.target, n, "")}`,
315
+ value: p(r, "value")
316
+ }] : [];
317
+ }, $ = /* @__PURE__ */ function(e) {
318
+ function n() {
319
+ var e;
320
+ te(this, n);
321
+ var t = [...arguments];
322
+ return e = j(this, n, [].concat(t)), B(e, "state", {
323
+ activeElement: null,
324
+ activeElementType: null,
325
+ isTooltipActive: !1,
326
+ nodes: [],
327
+ links: []
328
+ }), e;
329
+ }
330
+ return I(n, e), A(n, [
331
+ {
332
+ key: "handleMouseEnter",
333
+ value: function(e, t, n) {
334
+ var r = this.props, i = r.onMouseEnter, a = r.children, o = s(a, d);
335
+ o ? this.setState(function(n) {
336
+ return o.props.trigger === "hover" ? z(z({}, n), {}, {
337
+ activeElement: e,
338
+ activeElementType: t,
339
+ isTooltipActive: !0
340
+ }) : n;
341
+ }, function() {
342
+ i && i(e, t, n);
343
+ }) : i && i(e, t, n);
344
+ }
345
+ },
346
+ {
347
+ key: "handleMouseLeave",
348
+ value: function(e, t, n) {
349
+ var r = this.props, i = r.onMouseLeave, a = r.children, o = s(a, d);
350
+ o ? this.setState(function(e) {
351
+ return o.props.trigger === "hover" ? z(z({}, e), {}, {
352
+ activeElement: void 0,
353
+ activeElementType: void 0,
354
+ isTooltipActive: !1
355
+ }) : e;
356
+ }, function() {
357
+ i && i(e, t, n);
358
+ }) : i && i(e, t, n);
359
+ }
360
+ },
361
+ {
362
+ key: "handleClick",
363
+ value: function(e, t, n) {
364
+ var r = this.props, i = r.onClick, a = r.children, o = s(a, d);
365
+ o && o.props.trigger === "click" && (this.state.isTooltipActive ? this.setState(function(e) {
366
+ return z(z({}, e), {}, {
367
+ activeElement: void 0,
368
+ activeElementType: void 0,
369
+ isTooltipActive: !1
370
+ });
371
+ }) : this.setState(function(n) {
372
+ return z(z({}, n), {}, {
373
+ activeElement: e,
374
+ activeElementType: t,
375
+ isTooltipActive: !0
376
+ });
377
+ })), i && i(e, t, n);
378
+ }
379
+ },
380
+ {
381
+ key: "renderLinks",
382
+ value: function(e, t) {
383
+ var n = this, r = this.props, i = r.linkCurvature, o = r.link, s = r.margin, c = (0, x.default)(s, "top") || 0, l = (0, x.default)(s, "left") || 0;
384
+ return /* @__PURE__ */ _.createElement(u, {
385
+ className: "recharts-sankey-links",
386
+ key: "recharts-sankey-links"
387
+ }, e.map(function(e, r) {
388
+ var s = e.sy, d = e.ty, f = e.dy, p = t[e.source], m = t[e.target], h = p.x + p.dx + l, g = m.x + l, v = W(h, g), y = v(i), b = v(1 - i), x = z({
389
+ sourceX: h,
390
+ targetX: g,
391
+ sourceY: p.y + s + f / 2 + c,
392
+ targetY: m.y + d + f / 2 + c,
393
+ sourceControlX: y,
394
+ targetControlX: b,
395
+ sourceRelativeY: s,
396
+ targetRelativeY: d,
397
+ linkWidth: f,
398
+ index: r,
399
+ payload: z(z({}, e), {}, {
400
+ source: p,
401
+ target: m
402
+ })
403
+ }, a(o, !1)), S = {
404
+ onMouseEnter: n.handleMouseEnter.bind(n, x, "link"),
405
+ onMouseLeave: n.handleMouseLeave.bind(n, x, "link"),
406
+ onClick: n.handleClick.bind(n, x, "link")
407
+ };
408
+ return /* @__PURE__ */ _.createElement(u, O({ key: `link-${e.source}-${e.target}-${e.value}` }, S), n.constructor.renderLinkItem(o, x));
409
+ }));
410
+ }
411
+ },
412
+ {
413
+ key: "renderNodes",
414
+ value: function(e) {
415
+ var t = this, n = this.props, r = n.node, i = n.margin, o = (0, x.default)(i, "top") || 0, s = (0, x.default)(i, "left") || 0;
416
+ return /* @__PURE__ */ _.createElement(u, {
417
+ className: "recharts-sankey-nodes",
418
+ key: "recharts-sankey-nodes"
419
+ }, e.map(function(e, n) {
420
+ var i = e.x, c = e.y, l = e.dx, d = e.dy, f = z(z({}, a(r, !1)), {}, {
421
+ x: i + s,
422
+ y: c + o,
423
+ width: l,
424
+ height: d,
425
+ index: n,
426
+ payload: e
427
+ }), p = {
428
+ onMouseEnter: t.handleMouseEnter.bind(t, f, "node"),
429
+ onMouseLeave: t.handleMouseLeave.bind(t, f, "node"),
430
+ onClick: t.handleClick.bind(t, f, "node")
431
+ };
432
+ return /* @__PURE__ */ _.createElement(u, O({ key: `node-${e.x}-${e.y}-${e.value}` }, p), t.constructor.renderNodeItem(r, f));
433
+ }));
434
+ }
435
+ },
436
+ {
437
+ key: "renderTooltip",
438
+ value: function() {
439
+ var e = this.props, t = e.children, n = e.width, r = e.height, i = e.nameKey, a = s(t, d);
440
+ if (!a) return null;
441
+ var o = this.state, c = o.isTooltipActive, l = o.activeElement, u = o.activeElementType, f = {
442
+ x: 0,
443
+ y: 0,
444
+ width: n,
445
+ height: r
446
+ }, p = l ? ue(l, u) : U, m = l ? de(l, u, i) : [];
447
+ return /* @__PURE__ */ _.cloneElement(a, {
448
+ viewBox: f,
449
+ active: c,
450
+ coordinate: p,
451
+ label: "",
452
+ payload: m
453
+ });
454
+ }
455
+ },
456
+ {
457
+ key: "render",
458
+ value: function() {
459
+ if (!c(this)) return null;
460
+ var e = this.props, n = e.width, r = e.height, i = e.className, s = e.style, u = e.children, d = E(e, w), f = this.state, p = f.links, m = f.nodes, h = a(d, !1);
461
+ return /* @__PURE__ */ _.createElement("div", {
462
+ className: t("recharts-wrapper", i),
463
+ style: z(z({}, s), {}, {
464
+ position: "relative",
465
+ cursor: "default",
466
+ width: n,
467
+ height: r
468
+ }),
469
+ role: "region"
470
+ }, /* @__PURE__ */ _.createElement(l, O({}, h, {
471
+ width: n,
472
+ height: r
473
+ }), o(u), this.renderLinks(p, m), this.renderNodes(m)), this.renderTooltip());
474
+ }
475
+ }
476
+ ], [
477
+ {
478
+ key: "getDerivedStateFromProps",
479
+ value: function(e, t) {
480
+ var n = e.data, r = e.width, a = e.height, o = e.margin, s = e.iterations, c = e.nodeWidth, l = e.nodePadding, u = e.sort;
481
+ if (n !== t.prevData || r !== t.prevWidth || a !== t.prevHeight || !i(o, t.prevMargin) || s !== t.prevIterations || c !== t.prevNodeWidth || l !== t.prevNodePadding || u !== t.sort) {
482
+ var d = le({
483
+ data: n,
484
+ width: r - (o && o.left || 0) - (o && o.right || 0),
485
+ height: a - (o && o.top || 0) - (o && o.bottom || 0),
486
+ iterations: s,
487
+ nodeWidth: c,
488
+ nodePadding: l,
489
+ sort: u
490
+ }), f = d.links, p = d.nodes;
491
+ return z(z({}, t), {}, {
492
+ nodes: p,
493
+ links: f,
494
+ prevData: n,
495
+ prevWidth: s,
496
+ prevHeight: a,
497
+ prevMargin: o,
498
+ prevNodePadding: l,
499
+ prevNodeWidth: c,
500
+ prevIterations: s,
501
+ prevSort: u
502
+ });
503
+ }
504
+ return null;
505
+ }
506
+ },
507
+ {
508
+ key: "renderLinkItem",
509
+ value: function(e, t) {
510
+ if (/* @__PURE__ */ _.isValidElement(e)) return /* @__PURE__ */ _.cloneElement(e, t);
511
+ if ((0, C.default)(e)) return e(t);
512
+ var n = t.sourceX, r = t.sourceY, i = t.sourceControlX, o = t.targetX, s = t.targetY, c = t.targetControlX, l = t.linkWidth, u = E(t, ee);
513
+ return /* @__PURE__ */ _.createElement("path", O({
514
+ className: "recharts-sankey-link",
515
+ d: `
516
+ M${n},${r}
517
+ C${i},${r} ${c},${s} ${o},${s}
518
+ `,
519
+ fill: "none",
520
+ stroke: "#333",
521
+ strokeWidth: l,
522
+ strokeOpacity: "0.2"
523
+ }, a(u, !1)));
524
+ }
525
+ },
526
+ {
527
+ key: "renderNodeItem",
528
+ value: function(e, t) {
529
+ return /* @__PURE__ */ _.isValidElement(e) ? /* @__PURE__ */ _.cloneElement(e, t) : (0, C.default)(e) ? e(t) : /* @__PURE__ */ _.createElement(m, O({
530
+ className: "recharts-sankey-node",
531
+ fill: "#0088fe",
532
+ fillOpacity: "0.8"
533
+ }, a(t, !1), { role: "img" }));
534
+ }
535
+ }
536
+ ]);
537
+ }(v);
538
+ B($, "displayName", "Sankey"), B($, "defaultProps", {
539
+ nameKey: "name",
540
+ dataKey: "value",
541
+ nodePadding: 10,
542
+ nodeWidth: 10,
543
+ linkCurvature: .5,
544
+ iterations: 32,
545
+ margin: {
546
+ top: 5,
547
+ right: 5,
548
+ bottom: 5,
549
+ left: 5
550
+ },
551
+ sort: !0
552
+ });
553
+ //#endregion
554
+ export { $ as Sankey };
555
+
556
+ //# sourceMappingURL=Sankey.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Sankey.js","names":[],"sources":["../../../../../node_modules/recharts/es6/chart/Sankey.js"],"sourcesContent":["var _excluded = [\"width\", \"height\", \"className\", \"style\", \"children\"],\n _excluded2 = [\"sourceX\", \"sourceY\", \"sourceControlX\", \"targetX\", \"targetY\", \"targetControlX\", \"linkWidth\"];\nfunction _typeof(o) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o; }, _typeof(o); }\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } } return target; }\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\nfunction _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\nfunction _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\nfunction ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }\nfunction _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }\nfunction _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == _typeof(i) ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != _typeof(i)) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\n/**\n * @file TreemapChart\n */\nimport React, { PureComponent } from 'react';\nimport maxBy from 'lodash/maxBy';\nimport min from 'lodash/min';\nimport get from 'lodash/get';\nimport sumBy from 'lodash/sumBy';\nimport isFunction from 'lodash/isFunction';\nimport clsx from 'clsx';\nimport { Surface } from '../container/Surface';\nimport { Layer } from '../container/Layer';\nimport { Tooltip } from '../component/Tooltip';\nimport { Rectangle } from '../shape/Rectangle';\nimport { shallowEqual } from '../util/ShallowEqual';\nimport { filterSvgElements, validateWidthHeight, findChildByType, filterProps } from '../util/ReactUtils';\nimport { getValueByDataKey } from '../util/ChartUtils';\nvar defaultCoordinateOfTooltip = {\n x: 0,\n y: 0\n};\nvar interpolationGenerator = function interpolationGenerator(a, b) {\n var ka = +a;\n var kb = b - ka;\n return function (t) {\n return ka + kb * t;\n };\n};\nvar centerY = function centerY(node) {\n return node.y + node.dy / 2;\n};\nvar getValue = function getValue(entry) {\n return entry && entry.value || 0;\n};\nvar getSumOfIds = function getSumOfIds(links, ids) {\n return ids.reduce(function (result, id) {\n return result + getValue(links[id]);\n }, 0);\n};\nvar getSumWithWeightedSource = function getSumWithWeightedSource(tree, links, ids) {\n return ids.reduce(function (result, id) {\n var link = links[id];\n var sourceNode = tree[link.source];\n return result + centerY(sourceNode) * getValue(links[id]);\n }, 0);\n};\nvar getSumWithWeightedTarget = function getSumWithWeightedTarget(tree, links, ids) {\n return ids.reduce(function (result, id) {\n var link = links[id];\n var targetNode = tree[link.target];\n return result + centerY(targetNode) * getValue(links[id]);\n }, 0);\n};\nvar ascendingY = function ascendingY(a, b) {\n return a.y - b.y;\n};\nvar searchTargetsAndSources = function searchTargetsAndSources(links, id) {\n var sourceNodes = [];\n var sourceLinks = [];\n var targetNodes = [];\n var targetLinks = [];\n for (var i = 0, len = links.length; i < len; i++) {\n var link = links[i];\n if (link.source === id) {\n targetNodes.push(link.target);\n targetLinks.push(i);\n }\n if (link.target === id) {\n sourceNodes.push(link.source);\n sourceLinks.push(i);\n }\n }\n return {\n sourceNodes: sourceNodes,\n sourceLinks: sourceLinks,\n targetLinks: targetLinks,\n targetNodes: targetNodes\n };\n};\nvar updateDepthOfTargets = function updateDepthOfTargets(tree, curNode) {\n var targetNodes = curNode.targetNodes;\n for (var i = 0, len = targetNodes.length; i < len; i++) {\n var target = tree[targetNodes[i]];\n if (target) {\n target.depth = Math.max(curNode.depth + 1, target.depth);\n updateDepthOfTargets(tree, target);\n }\n }\n};\nvar getNodesTree = function getNodesTree(_ref, width, nodeWidth) {\n var nodes = _ref.nodes,\n links = _ref.links;\n var tree = nodes.map(function (entry, index) {\n var result = searchTargetsAndSources(links, index);\n return _objectSpread(_objectSpread(_objectSpread({}, entry), result), {}, {\n value: Math.max(getSumOfIds(links, result.sourceLinks), getSumOfIds(links, result.targetLinks)),\n depth: 0\n });\n });\n for (var i = 0, len = tree.length; i < len; i++) {\n var node = tree[i];\n if (!node.sourceNodes.length) {\n updateDepthOfTargets(tree, node);\n }\n }\n var maxDepth = maxBy(tree, function (entry) {\n return entry.depth;\n }).depth;\n if (maxDepth >= 1) {\n var childWidth = (width - nodeWidth) / maxDepth;\n for (var _i = 0, _len = tree.length; _i < _len; _i++) {\n var _node = tree[_i];\n if (!_node.targetNodes.length) {\n _node.depth = maxDepth;\n }\n _node.x = _node.depth * childWidth;\n _node.dx = nodeWidth;\n }\n }\n return {\n tree: tree,\n maxDepth: maxDepth\n };\n};\nvar getDepthTree = function getDepthTree(tree) {\n var result = [];\n for (var i = 0, len = tree.length; i < len; i++) {\n var node = tree[i];\n if (!result[node.depth]) {\n result[node.depth] = [];\n }\n result[node.depth].push(node);\n }\n return result;\n};\nvar updateYOfTree = function updateYOfTree(depthTree, height, nodePadding, links) {\n var yRatio = min(depthTree.map(function (nodes) {\n return (height - (nodes.length - 1) * nodePadding) / sumBy(nodes, getValue);\n }));\n for (var d = 0, maxDepth = depthTree.length; d < maxDepth; d++) {\n for (var i = 0, len = depthTree[d].length; i < len; i++) {\n var node = depthTree[d][i];\n node.y = i;\n node.dy = node.value * yRatio;\n }\n }\n return links.map(function (link) {\n return _objectSpread(_objectSpread({}, link), {}, {\n dy: getValue(link) * yRatio\n });\n });\n};\nvar resolveCollisions = function resolveCollisions(depthTree, height, nodePadding) {\n var sort = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : true;\n for (var i = 0, len = depthTree.length; i < len; i++) {\n var nodes = depthTree[i];\n var n = nodes.length;\n\n // Sort by the value of y\n if (sort) {\n nodes.sort(ascendingY);\n }\n var y0 = 0;\n for (var j = 0; j < n; j++) {\n var node = nodes[j];\n var dy = y0 - node.y;\n if (dy > 0) {\n node.y += dy;\n }\n y0 = node.y + node.dy + nodePadding;\n }\n y0 = height + nodePadding;\n for (var _j = n - 1; _j >= 0; _j--) {\n var _node2 = nodes[_j];\n var _dy = _node2.y + _node2.dy + nodePadding - y0;\n if (_dy > 0) {\n _node2.y -= _dy;\n y0 = _node2.y;\n } else {\n break;\n }\n }\n }\n};\nvar relaxLeftToRight = function relaxLeftToRight(tree, depthTree, links, alpha) {\n for (var i = 0, maxDepth = depthTree.length; i < maxDepth; i++) {\n var nodes = depthTree[i];\n for (var j = 0, len = nodes.length; j < len; j++) {\n var node = nodes[j];\n if (node.sourceLinks.length) {\n var sourceSum = getSumOfIds(links, node.sourceLinks);\n var weightedSum = getSumWithWeightedSource(tree, links, node.sourceLinks);\n var y = weightedSum / sourceSum;\n node.y += (y - centerY(node)) * alpha;\n }\n }\n }\n};\nvar relaxRightToLeft = function relaxRightToLeft(tree, depthTree, links, alpha) {\n for (var i = depthTree.length - 1; i >= 0; i--) {\n var nodes = depthTree[i];\n for (var j = 0, len = nodes.length; j < len; j++) {\n var node = nodes[j];\n if (node.targetLinks.length) {\n var targetSum = getSumOfIds(links, node.targetLinks);\n var weightedSum = getSumWithWeightedTarget(tree, links, node.targetLinks);\n var y = weightedSum / targetSum;\n node.y += (y - centerY(node)) * alpha;\n }\n }\n }\n};\nvar updateYOfLinks = function updateYOfLinks(tree, links) {\n for (var i = 0, len = tree.length; i < len; i++) {\n var node = tree[i];\n var sy = 0;\n var ty = 0;\n node.targetLinks.sort(function (a, b) {\n return tree[links[a].target].y - tree[links[b].target].y;\n });\n node.sourceLinks.sort(function (a, b) {\n return tree[links[a].source].y - tree[links[b].source].y;\n });\n for (var j = 0, tLen = node.targetLinks.length; j < tLen; j++) {\n var link = links[node.targetLinks[j]];\n if (link) {\n link.sy = sy;\n sy += link.dy;\n }\n }\n for (var _j2 = 0, sLen = node.sourceLinks.length; _j2 < sLen; _j2++) {\n var _link = links[node.sourceLinks[_j2]];\n if (_link) {\n _link.ty = ty;\n ty += _link.dy;\n }\n }\n }\n};\nvar computeData = function computeData(_ref2) {\n var data = _ref2.data,\n width = _ref2.width,\n height = _ref2.height,\n iterations = _ref2.iterations,\n nodeWidth = _ref2.nodeWidth,\n nodePadding = _ref2.nodePadding,\n sort = _ref2.sort;\n var links = data.links;\n var _getNodesTree = getNodesTree(data, width, nodeWidth),\n tree = _getNodesTree.tree;\n var depthTree = getDepthTree(tree);\n var newLinks = updateYOfTree(depthTree, height, nodePadding, links);\n resolveCollisions(depthTree, height, nodePadding, sort);\n var alpha = 1;\n for (var i = 1; i <= iterations; i++) {\n relaxRightToLeft(tree, depthTree, newLinks, alpha *= 0.99);\n resolveCollisions(depthTree, height, nodePadding, sort);\n relaxLeftToRight(tree, depthTree, newLinks, alpha);\n resolveCollisions(depthTree, height, nodePadding, sort);\n }\n updateYOfLinks(tree, newLinks);\n return {\n nodes: tree,\n links: newLinks\n };\n};\nvar getCoordinateOfTooltip = function getCoordinateOfTooltip(el, type) {\n if (type === 'node') {\n return {\n x: el.x + el.width / 2,\n y: el.y + el.height / 2\n };\n }\n return {\n x: (el.sourceX + el.targetX) / 2,\n y: (el.sourceY + el.targetY) / 2\n };\n};\nvar getPayloadOfTooltip = function getPayloadOfTooltip(el, type, nameKey) {\n var payload = el.payload;\n if (type === 'node') {\n return [{\n payload: el,\n name: getValueByDataKey(payload, nameKey, ''),\n value: getValueByDataKey(payload, 'value')\n }];\n }\n if (payload.source && payload.target) {\n var sourceName = getValueByDataKey(payload.source, nameKey, '');\n var targetName = getValueByDataKey(payload.target, nameKey, '');\n return [{\n payload: el,\n name: \"\".concat(sourceName, \" - \").concat(targetName),\n value: getValueByDataKey(payload, 'value')\n }];\n }\n return [];\n};\nexport var Sankey = /*#__PURE__*/function (_PureComponent) {\n function Sankey() {\n var _this;\n _classCallCheck(this, Sankey);\n for (var _len2 = arguments.length, args = new Array(_len2), _key = 0; _key < _len2; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _callSuper(this, Sankey, [].concat(args));\n _defineProperty(_this, \"state\", {\n activeElement: null,\n activeElementType: null,\n isTooltipActive: false,\n nodes: [],\n links: []\n });\n return _this;\n }\n _inherits(Sankey, _PureComponent);\n return _createClass(Sankey, [{\n key: \"handleMouseEnter\",\n value: function handleMouseEnter(el, type, e) {\n var _this$props = this.props,\n onMouseEnter = _this$props.onMouseEnter,\n children = _this$props.children;\n var tooltipItem = findChildByType(children, Tooltip);\n if (tooltipItem) {\n this.setState(function (prev) {\n if (tooltipItem.props.trigger === 'hover') {\n return _objectSpread(_objectSpread({}, prev), {}, {\n activeElement: el,\n activeElementType: type,\n isTooltipActive: true\n });\n }\n return prev;\n }, function () {\n if (onMouseEnter) {\n onMouseEnter(el, type, e);\n }\n });\n } else if (onMouseEnter) {\n onMouseEnter(el, type, e);\n }\n }\n }, {\n key: \"handleMouseLeave\",\n value: function handleMouseLeave(el, type, e) {\n var _this$props2 = this.props,\n onMouseLeave = _this$props2.onMouseLeave,\n children = _this$props2.children;\n var tooltipItem = findChildByType(children, Tooltip);\n if (tooltipItem) {\n this.setState(function (prev) {\n if (tooltipItem.props.trigger === 'hover') {\n return _objectSpread(_objectSpread({}, prev), {}, {\n activeElement: undefined,\n activeElementType: undefined,\n isTooltipActive: false\n });\n }\n return prev;\n }, function () {\n if (onMouseLeave) {\n onMouseLeave(el, type, e);\n }\n });\n } else if (onMouseLeave) {\n onMouseLeave(el, type, e);\n }\n }\n }, {\n key: \"handleClick\",\n value: function handleClick(el, type, e) {\n var _this$props3 = this.props,\n onClick = _this$props3.onClick,\n children = _this$props3.children;\n var tooltipItem = findChildByType(children, Tooltip);\n if (tooltipItem && tooltipItem.props.trigger === 'click') {\n if (this.state.isTooltipActive) {\n this.setState(function (prev) {\n return _objectSpread(_objectSpread({}, prev), {}, {\n activeElement: undefined,\n activeElementType: undefined,\n isTooltipActive: false\n });\n });\n } else {\n this.setState(function (prev) {\n return _objectSpread(_objectSpread({}, prev), {}, {\n activeElement: el,\n activeElementType: type,\n isTooltipActive: true\n });\n });\n }\n }\n if (onClick) onClick(el, type, e);\n }\n }, {\n key: \"renderLinks\",\n value: function renderLinks(links, nodes) {\n var _this2 = this;\n var _this$props4 = this.props,\n linkCurvature = _this$props4.linkCurvature,\n linkContent = _this$props4.link,\n margin = _this$props4.margin;\n var top = get(margin, 'top') || 0;\n var left = get(margin, 'left') || 0;\n return /*#__PURE__*/React.createElement(Layer, {\n className: \"recharts-sankey-links\",\n key: \"recharts-sankey-links\"\n }, links.map(function (link, i) {\n var sourceRelativeY = link.sy,\n targetRelativeY = link.ty,\n linkWidth = link.dy;\n var source = nodes[link.source];\n var target = nodes[link.target];\n var sourceX = source.x + source.dx + left;\n var targetX = target.x + left;\n var interpolationFunc = interpolationGenerator(sourceX, targetX);\n var sourceControlX = interpolationFunc(linkCurvature);\n var targetControlX = interpolationFunc(1 - linkCurvature);\n var sourceY = source.y + sourceRelativeY + linkWidth / 2 + top;\n var targetY = target.y + targetRelativeY + linkWidth / 2 + top;\n var linkProps = _objectSpread({\n sourceX: sourceX,\n targetX: targetX,\n sourceY: sourceY,\n targetY: targetY,\n sourceControlX: sourceControlX,\n targetControlX: targetControlX,\n sourceRelativeY: sourceRelativeY,\n targetRelativeY: targetRelativeY,\n linkWidth: linkWidth,\n index: i,\n payload: _objectSpread(_objectSpread({}, link), {}, {\n source: source,\n target: target\n })\n }, filterProps(linkContent, false));\n var events = {\n onMouseEnter: _this2.handleMouseEnter.bind(_this2, linkProps, 'link'),\n onMouseLeave: _this2.handleMouseLeave.bind(_this2, linkProps, 'link'),\n onClick: _this2.handleClick.bind(_this2, linkProps, 'link')\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n key: \"link-\".concat(link.source, \"-\").concat(link.target, \"-\").concat(link.value)\n }, events), _this2.constructor.renderLinkItem(linkContent, linkProps));\n }));\n }\n }, {\n key: \"renderNodes\",\n value: function renderNodes(nodes) {\n var _this3 = this;\n var _this$props5 = this.props,\n nodeContent = _this$props5.node,\n margin = _this$props5.margin;\n var top = get(margin, 'top') || 0;\n var left = get(margin, 'left') || 0;\n return /*#__PURE__*/React.createElement(Layer, {\n className: \"recharts-sankey-nodes\",\n key: \"recharts-sankey-nodes\"\n }, nodes.map(function (node, i) {\n var x = node.x,\n y = node.y,\n dx = node.dx,\n dy = node.dy;\n var nodeProps = _objectSpread(_objectSpread({}, filterProps(nodeContent, false)), {}, {\n x: x + left,\n y: y + top,\n width: dx,\n height: dy,\n index: i,\n payload: node\n });\n var events = {\n onMouseEnter: _this3.handleMouseEnter.bind(_this3, nodeProps, 'node'),\n onMouseLeave: _this3.handleMouseLeave.bind(_this3, nodeProps, 'node'),\n onClick: _this3.handleClick.bind(_this3, nodeProps, 'node')\n };\n return /*#__PURE__*/React.createElement(Layer, _extends({\n key: \"node-\".concat(node.x, \"-\").concat(node.y, \"-\").concat(node.value)\n }, events), _this3.constructor.renderNodeItem(nodeContent, nodeProps));\n }));\n }\n }, {\n key: \"renderTooltip\",\n value: function renderTooltip() {\n var _this$props6 = this.props,\n children = _this$props6.children,\n width = _this$props6.width,\n height = _this$props6.height,\n nameKey = _this$props6.nameKey;\n var tooltipItem = findChildByType(children, Tooltip);\n if (!tooltipItem) {\n return null;\n }\n var _this$state = this.state,\n isTooltipActive = _this$state.isTooltipActive,\n activeElement = _this$state.activeElement,\n activeElementType = _this$state.activeElementType;\n var viewBox = {\n x: 0,\n y: 0,\n width: width,\n height: height\n };\n var coordinate = activeElement ? getCoordinateOfTooltip(activeElement, activeElementType) : defaultCoordinateOfTooltip;\n var payload = activeElement ? getPayloadOfTooltip(activeElement, activeElementType, nameKey) : [];\n return /*#__PURE__*/React.cloneElement(tooltipItem, {\n viewBox: viewBox,\n active: isTooltipActive,\n coordinate: coordinate,\n label: '',\n payload: payload\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!validateWidthHeight(this)) {\n return null;\n }\n var _this$props7 = this.props,\n width = _this$props7.width,\n height = _this$props7.height,\n className = _this$props7.className,\n style = _this$props7.style,\n children = _this$props7.children,\n others = _objectWithoutProperties(_this$props7, _excluded);\n var _this$state2 = this.state,\n links = _this$state2.links,\n nodes = _this$state2.nodes;\n var attrs = filterProps(others, false);\n return /*#__PURE__*/React.createElement(\"div\", {\n className: clsx('recharts-wrapper', className),\n style: _objectSpread(_objectSpread({}, style), {}, {\n position: 'relative',\n cursor: 'default',\n width: width,\n height: height\n }),\n role: \"region\"\n }, /*#__PURE__*/React.createElement(Surface, _extends({}, attrs, {\n width: width,\n height: height\n }), filterSvgElements(children), this.renderLinks(links, nodes), this.renderNodes(nodes)), this.renderTooltip());\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps, prevState) {\n var data = nextProps.data,\n width = nextProps.width,\n height = nextProps.height,\n margin = nextProps.margin,\n iterations = nextProps.iterations,\n nodeWidth = nextProps.nodeWidth,\n nodePadding = nextProps.nodePadding,\n sort = nextProps.sort;\n if (data !== prevState.prevData || width !== prevState.prevWidth || height !== prevState.prevHeight || !shallowEqual(margin, prevState.prevMargin) || iterations !== prevState.prevIterations || nodeWidth !== prevState.prevNodeWidth || nodePadding !== prevState.prevNodePadding || sort !== prevState.sort) {\n var contentWidth = width - (margin && margin.left || 0) - (margin && margin.right || 0);\n var contentHeight = height - (margin && margin.top || 0) - (margin && margin.bottom || 0);\n var _computeData = computeData({\n data: data,\n width: contentWidth,\n height: contentHeight,\n iterations: iterations,\n nodeWidth: nodeWidth,\n nodePadding: nodePadding,\n sort: sort\n }),\n links = _computeData.links,\n nodes = _computeData.nodes;\n return _objectSpread(_objectSpread({}, prevState), {}, {\n nodes: nodes,\n links: links,\n prevData: data,\n prevWidth: iterations,\n prevHeight: height,\n prevMargin: margin,\n prevNodePadding: nodePadding,\n prevNodeWidth: nodeWidth,\n prevIterations: iterations,\n prevSort: sort\n });\n }\n return null;\n }\n }, {\n key: \"renderLinkItem\",\n value: function renderLinkItem(option, props) {\n if ( /*#__PURE__*/React.isValidElement(option)) {\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n if (isFunction(option)) {\n return option(props);\n }\n var sourceX = props.sourceX,\n sourceY = props.sourceY,\n sourceControlX = props.sourceControlX,\n targetX = props.targetX,\n targetY = props.targetY,\n targetControlX = props.targetControlX,\n linkWidth = props.linkWidth,\n others = _objectWithoutProperties(props, _excluded2);\n return /*#__PURE__*/React.createElement(\"path\", _extends({\n className: \"recharts-sankey-link\",\n d: \"\\n M\".concat(sourceX, \",\").concat(sourceY, \"\\n C\").concat(sourceControlX, \",\").concat(sourceY, \" \").concat(targetControlX, \",\").concat(targetY, \" \").concat(targetX, \",\").concat(targetY, \"\\n \"),\n fill: \"none\",\n stroke: \"#333\",\n strokeWidth: linkWidth,\n strokeOpacity: \"0.2\"\n }, filterProps(others, false)));\n }\n }, {\n key: \"renderNodeItem\",\n value: function renderNodeItem(option, props) {\n if ( /*#__PURE__*/React.isValidElement(option)) {\n return /*#__PURE__*/React.cloneElement(option, props);\n }\n if (isFunction(option)) {\n return option(props);\n }\n return /*#__PURE__*/React.createElement(Rectangle, _extends({\n className: \"recharts-sankey-node\",\n fill: \"#0088fe\",\n fillOpacity: \"0.8\"\n }, filterProps(props, false), {\n role: \"img\"\n }));\n }\n }]);\n}(PureComponent);\n_defineProperty(Sankey, \"displayName\", 'Sankey');\n_defineProperty(Sankey, \"defaultProps\", {\n nameKey: 'name',\n dataKey: 'value',\n nodePadding: 10,\n nodeWidth: 10,\n linkCurvature: 0.5,\n iterations: 32,\n margin: {\n top: 5,\n right: 5,\n bottom: 5,\n left: 5\n },\n sort: true\n});"],"x_google_ignoreList":[0],"mappings":"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"}