@mobileaction/action-kit 1.61.2 → 1.61.3

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.
@@ -8412,6 +8412,7 @@ var ga = ["title"], _a = /* @__PURE__ */ y({
8412
8412
  wordcloud: () => import("./wordcloud-C3D1uwk_.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8413
8413
  venn: () => import("./venn-CurseBI5.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8414
8414
  funnel: () => import("./funnel-BW7xv81C.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8415
+ sankey: () => import("./sankey-Btki0CZi.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8415
8416
  annotations: () => import("./annotations-BCOVFPsH.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8416
8417
  exporting: () => import("./exporting-CXBXPnzk.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
8417
8418
  "offline-exporting": () => import("./offline-exporting-6YZIgF2r.js").then((e) => /* @__PURE__ */ t(e.default, 1)),
@@ -109,7 +109,7 @@ export type ChartConstructorType = 'chart' | 'stockChart' | 'mapChart';
109
109
  export type ChartOptions = Highcharts.Options;
110
110
  export type ChartSeriesOptionsType = Highcharts.SeriesOptionsType;
111
111
  export type ChartUpdateArgs = [boolean] | [boolean, boolean] | [boolean, boolean, boolean];
112
- export type ChartModuleName = 'stock' | 'map' | 'wordcloud' | 'venn' | 'funnel' | 'annotations' | 'exporting' | 'offline-exporting' | 'export-data';
112
+ export type ChartModuleName = 'stock' | 'map' | 'wordcloud' | 'venn' | 'funnel' | 'sankey' | 'annotations' | 'exporting' | 'offline-exporting' | 'export-data';
113
113
  export interface ModulesToLoad {
114
114
  parallel?: ChartModuleName[];
115
115
  sequential?: ChartModuleName[];
@@ -0,0 +1,767 @@
1
+ import { t as e } from "./rolldown-runtime-B0aSnxlc.js";
2
+ //#region node_modules/.pnpm/highcharts@12.6.0/node_modules/highcharts/modules/sankey.js
3
+ var t = /* @__PURE__ */ e(((e, t) => {
4
+ (function(n, r) {
5
+ typeof e == "object" && typeof t == "object" ? t.exports = r(n._Highcharts, n._Highcharts.SeriesRegistry, n._Highcharts.Point, n._Highcharts.Color, n._Highcharts.SVGElement) : typeof define == "function" && define.amd ? define("highcharts/modules/sankey", ["highcharts/highcharts"], function(e) {
6
+ return r(e, e.SeriesRegistry, e.Point, e.Color, e.SVGElement);
7
+ }) : typeof e == "object" ? e["highcharts/modules/sankey"] = r(n._Highcharts, n._Highcharts.SeriesRegistry, n._Highcharts.Point, n._Highcharts.Color, n._Highcharts.SVGElement) : n.Highcharts = r(n.Highcharts, n.Highcharts.SeriesRegistry, n.Highcharts.Point, n.Highcharts.Color, n.Highcharts.SVGElement);
8
+ })("u" < typeof window ? e : window, (e, t, n, r, i) => (() => {
9
+ var a, o, s = {
10
+ 28: (e) => {
11
+ e.exports = i;
12
+ },
13
+ 260: (e) => {
14
+ e.exports = n;
15
+ },
16
+ 512: (e) => {
17
+ e.exports = t;
18
+ },
19
+ 620: (e) => {
20
+ e.exports = r;
21
+ },
22
+ 944: (t) => {
23
+ t.exports = e;
24
+ }
25
+ }, c = {};
26
+ function l(e) {
27
+ var t = c[e];
28
+ if (t !== void 0) return t.exports;
29
+ var n = c[e] = { exports: {} };
30
+ return s[e](n, n.exports, l), n.exports;
31
+ }
32
+ l.n = (e) => {
33
+ var t = e && e.__esModule ? () => e.default : () => e;
34
+ return l.d(t, { a: t }), t;
35
+ }, l.d = (e, t) => {
36
+ for (var n in t) l.o(t, n) && !l.o(e, n) && Object.defineProperty(e, n, {
37
+ enumerable: !0,
38
+ get: t[n]
39
+ });
40
+ }, l.o = (e, t) => Object.prototype.hasOwnProperty.call(e, t);
41
+ var u = {};
42
+ l.d(u, { default: () => ee });
43
+ var d = l(944), f = l.n(d), p = l(512), m = l.n(p);
44
+ let { doc: h, win: g } = f();
45
+ function _(e, t, n, r = {}) {
46
+ let i = typeof e == "function" && e.prototype || e;
47
+ Object.hasOwnProperty.call(i, "hcEvents") || (i.hcEvents = {});
48
+ let a = i.hcEvents;
49
+ f().Point && e instanceof f().Point && e.series && e.series.chart && (e.series.chart.runTrackerClick = !0);
50
+ let o = e.addEventListener;
51
+ o && o.call(e, t, n, !!f().supportsPassiveEvents && {
52
+ passive: r.passive === void 0 ? t.indexOf("touch") !== -1 : r.passive,
53
+ capture: !1
54
+ }), a[t] || (a[t] = []);
55
+ let s = {
56
+ fn: n,
57
+ order: typeof r.order == "number" ? r.order : 1 / 0
58
+ };
59
+ return a[t].push(s), a[t].sort((e, t) => e.order - t.order), function() {
60
+ (function(e, t, n) {
61
+ function r(t, n) {
62
+ let r = e.removeEventListener;
63
+ r && r.call(e, t, n, !1);
64
+ }
65
+ function i(n) {
66
+ let i, a;
67
+ e.nodeName && (t ? (i = {})[t] = !0 : i = n, D(i, function(e, t) {
68
+ if (n[t]) for (a = n[t].length; a--;) r(t, n[t][a].fn);
69
+ }));
70
+ }
71
+ let a = typeof e == "function" && e.prototype || e;
72
+ if (Object.hasOwnProperty.call(a, "hcEvents")) {
73
+ let e = a.hcEvents;
74
+ if (t) {
75
+ let a = e[t] || [];
76
+ n ? (e[t] = a.filter(function(e) {
77
+ return n !== e.fn;
78
+ }), r(t, n)) : (i(e), e[t] = []);
79
+ } else i(e), delete a.hcEvents;
80
+ }
81
+ })(e, t, n);
82
+ };
83
+ }
84
+ function v(e, t = 0, n) {
85
+ let r = t % 2 / 2, i = n ? -1 : 1;
86
+ return (Math.round(e * i - r) + r) * i;
87
+ }
88
+ function y(e) {
89
+ return e != null;
90
+ }
91
+ function b(e, t) {
92
+ let n;
93
+ for (n in e ||= {}, t) e[n] = t[n];
94
+ return e;
95
+ }
96
+ let x = Array.prototype.find ? function(e, t) {
97
+ return e.find(t);
98
+ } : function(e, t) {
99
+ let n, r = e.length;
100
+ for (n = 0; n < r; n++) if (t(e[n], n)) return e[n];
101
+ };
102
+ function S(e) {
103
+ return T(e) && typeof e.nodeType == "number";
104
+ }
105
+ function C(e) {
106
+ return typeof e == "number" && !isNaN(e) && e < 1 / 0 && e > -1 / 0;
107
+ }
108
+ function w(e) {
109
+ let t = Object.prototype.toString.call(e);
110
+ return t === "[object Array]" || t === "[object Array Iterator]";
111
+ }
112
+ function T(e, t) {
113
+ return !!e && typeof e == "object" && (!t || !w(e));
114
+ }
115
+ function E(e, ...t) {
116
+ let n, r = [e, ...t], i = {}, a = function(e, t) {
117
+ return typeof e != "object" && (e = {}), D(t, function(n, r) {
118
+ if (r !== "__proto__" && r !== "constructor") {
119
+ let i;
120
+ !T(n, !0) || (i = n?.constructor, T(n, !0) && !S(n) && i?.name && i.name !== "Object") || S(n) ? e[r] = t[r] : e[r] = a(e[r] || {}, n);
121
+ }
122
+ }), e;
123
+ };
124
+ !0 === e && (i = r[1], r = Array.prototype.slice.call(r, 2));
125
+ let o = r.length;
126
+ for (n = 0; n < o; n++) i = a(i, r[n]);
127
+ return i;
128
+ }
129
+ function D(e, t, n) {
130
+ for (let r in e) Object.hasOwnProperty.call(e, r) && t.call(n || e[r], e[r], r, e);
131
+ }
132
+ function O() {
133
+ let e = arguments, t = e.length;
134
+ for (let n = 0; n < t; n++) {
135
+ let t = e[n];
136
+ if (t != null) return t;
137
+ }
138
+ }
139
+ function k(e, t, n) {
140
+ return /%$/.test(e) ? t * parseFloat(e) / 100 + (n || 0) : parseFloat(e);
141
+ }
142
+ let { series: { prototype: A, prototype: { pointClass: { prototype: j } } } } = m();
143
+ (function(e) {
144
+ function t() {
145
+ return this.data = [].concat(this.points || [], this.nodes), A.destroy.apply(this, arguments);
146
+ }
147
+ function n() {
148
+ this.nodes && (this.nodes.forEach((e) => {
149
+ e.destroy();
150
+ }), this.nodes.length = 0), A.setData.apply(this, arguments);
151
+ }
152
+ function r(e) {
153
+ let t = arguments, n = this.isNode ? this.linksTo.concat(this.linksFrom) : [this.fromNode, this.toNode];
154
+ e !== "select" && n.forEach((e) => {
155
+ e && e.series && (j.setState.apply(e, t), !e.isNode && (e.fromNode.graphic && j.setState.apply(e.fromNode, t), e.toNode && e.toNode.graphic && j.setState.apply(e.toNode, t)));
156
+ }), j.setState.apply(this, t);
157
+ }
158
+ function i(e, t, n, r) {
159
+ let i = this.series.options.nodes, a = this.series.options.data, o = a?.length || 0, s = a?.[this.index];
160
+ if (j.update.call(this, e, !this.isNode && t, n, r), this.isNode) {
161
+ let e = (i || []).reduce((e, t, n) => this.id === t.id ? n : e, -1), r = E(i && i[e] || {}, a?.[this.index] || {});
162
+ a && (s ? a[this.index] = s : a.length = o), i ? e >= 0 ? i[e] = r : i.push(r) : this.series.options.nodes = [r], O(t, !0) && this.series.chart.redraw(n);
163
+ }
164
+ }
165
+ e.compose = function(e, a) {
166
+ let o = e.prototype, s = a.prototype;
167
+ return o.setNodeState = r, o.setState = r, o.update = i, s.destroy = t, s.setData = n, a;
168
+ }, e.createNode = function(e) {
169
+ let t = this.pointClass, n = (e, t) => x(e, (e) => e.id === t), r = n(this.nodes, e), i;
170
+ if (!r) {
171
+ i = this.options.nodes && n(this.options.nodes, e);
172
+ let a = new t(this, b({
173
+ className: "highcharts-node",
174
+ isNode: !0,
175
+ id: e,
176
+ y: 1
177
+ }, i));
178
+ a.linksTo = [], a.linksFrom = [], a.getSum = function() {
179
+ let e = 0, t = 0;
180
+ return a.linksTo.forEach((t) => {
181
+ e += t.weight || 0;
182
+ }), a.linksFrom.forEach((e) => {
183
+ t += e.weight || 0;
184
+ }), Math.max(e, t);
185
+ }, a.offset = function(e, t) {
186
+ let n = 0;
187
+ for (let r = 0; r < a[t].length; r++) {
188
+ if (a[t][r] === e) return n;
189
+ n += a[t][r].weight;
190
+ }
191
+ }, a.hasShape = function() {
192
+ let e = 0;
193
+ return a.linksTo.forEach((t) => {
194
+ t.outgoing && e++;
195
+ }), !a.linksTo.length || e !== a.linksTo.length;
196
+ }, a.index = this.nodes.push(a) - 1, r = a;
197
+ }
198
+ return r.formatPrefix = "node", r.name = r.name || r.options.id || "", r.mass = O(r.options.mass, r.options.marker && r.options.marker.radius, this.options.marker && this.options.marker.radius, 4), r;
199
+ }, e.destroy = t, e.generatePoints = function() {
200
+ let e = this.chart, t = {};
201
+ A.generatePoints.call(this), this.nodes ||= [], this.colorCounter = 0, this.nodes.forEach((e) => {
202
+ e.linksFrom.length = 0, e.linksTo.length = 0, e.level = e.options.level;
203
+ }), this.points.forEach((n) => {
204
+ y(n.from) && (t[n.from] || (t[n.from] = this.createNode(n.from)), t[n.from].linksFrom.push(n), n.fromNode = t[n.from], e.styledMode ? n.colorIndex = O(n.options.colorIndex, t[n.from].colorIndex) : n.color = n.options.color || t[n.from].color), y(n.to) && (t[n.to] || (t[n.to] = this.createNode(n.to)), t[n.to].linksTo.push(n), n.toNode = t[n.to]), n.name = n.name || n.id;
205
+ }, this), this.nodeLookup = t;
206
+ }, e.setNodeState = r, e.updateNode = i;
207
+ })(a ||= {});
208
+ let M = a;
209
+ var N = l(260), P = l.n(N);
210
+ let { column: F } = m().seriesTypes;
211
+ class I extends F.prototype.pointClass {
212
+ applyOptions(e, t) {
213
+ return P().prototype.applyOptions.call(this, e, t), y(this.options.level) && (this.options.column = this.column = this.options.level), this;
214
+ }
215
+ getClassName() {
216
+ return (this.isNode ? "highcharts-node " : "highcharts-link ") + P().prototype.getClassName.call(this);
217
+ }
218
+ getFromNode() {
219
+ let e = -1, t;
220
+ for (let n = 0; n < this.linksTo.length; n++) {
221
+ let r = this.linksTo[n];
222
+ r.fromNode.column > e && r.fromNode !== this && (e = (t = r.fromNode).column);
223
+ }
224
+ return {
225
+ fromNode: t,
226
+ fromColumn: e
227
+ };
228
+ }
229
+ setNodeColumn() {
230
+ y(this.options.column) || (this.column = this.linksTo.length === 0 ? 0 : this.getFromNode().fromColumn + 1);
231
+ }
232
+ isValid() {
233
+ return this.isNode || typeof this.weight == "number";
234
+ }
235
+ }
236
+ var L = o ||= {};
237
+ L.compose = function(e, t) {
238
+ return e.sankeyColumn = new R(e, t), e;
239
+ };
240
+ class R {
241
+ constructor(e, t) {
242
+ this.points = e, this.series = t;
243
+ }
244
+ getTranslationFactor(e) {
245
+ let t = this.points, n = t.slice(), r = e.chart, i = e.options.minLinkWidth || 0, a, o = 0, s, c = (r.plotSizeY || 0) - (e.options.borderWidth || 0) - (t.length - 1) * e.nodePadding;
246
+ for (; t.length;) {
247
+ for (o = c / t.sankeyColumn.sum(), a = !1, s = t.length; s--;) t[s].getSum() * o < i && (t.splice(s, 1), c = Math.max(0, c - i), a = !0);
248
+ if (!a) break;
249
+ }
250
+ for (let e of (t.length = 0, n)) t.push(e);
251
+ return o;
252
+ }
253
+ top(e) {
254
+ let t = this.series, n = t.nodePadding, r = this.points.reduce((r, i) => (r > 0 && (r += n), r += Math.max(i.getSum() * e, t.options.minLinkWidth || 0)), 0);
255
+ return ((e = "") => ({
256
+ center: .5,
257
+ right: 1,
258
+ middle: .5,
259
+ bottom: 1
260
+ })[e] || 0)(t.options.nodeAlignment || "center") * ((t.chart.plotSizeY || 0) - r);
261
+ }
262
+ left(e) {
263
+ let t = this.series, n = t.chart, r = t.options.equalNodes, i = n.inverted ? n.plotHeight : n.plotWidth, a = t.nodePadding, o = this.points.reduce((n, o) => (n > 0 && (n += a), n += r ? i / o.series.nodes.length - a : Math.max(o.getSum() * e, t.options.minLinkWidth || 0)), 0);
264
+ return ((n.plotSizeX || 0) - Math.round(o)) / 2;
265
+ }
266
+ sum() {
267
+ return this.points.reduce((e, t) => e + t.getSum(), 0);
268
+ }
269
+ offset(e, t) {
270
+ let n = this.points, r = this.series, i = r.nodePadding, a = 0, o;
271
+ if (r.is("organization") && e.hangsFrom) return { absoluteTop: e.hangsFrom.nodeY };
272
+ for (let s = 0; s < n.length; s++) {
273
+ let c = n[s].getSum(), l = Math.max(c * t, r.options.minLinkWidth || 0), u = e.options[r.chart.inverted ? "offsetHorizontal" : "offsetVertical"], d = e.options.offset || 0;
274
+ if (o = c ? l + i : 0, n[s] === e) return { relativeTop: a + (y(u) ? k(u, l) : k(d, o)) };
275
+ a += o;
276
+ }
277
+ }
278
+ }
279
+ L.SankeyColumnAdditions = R;
280
+ let z = o;
281
+ var B = l(620), V = l.n(B), H = l(28), U = l.n(H);
282
+ let { deg2rad: W } = f();
283
+ function G(e, t) {
284
+ t = E(!0, {
285
+ enabled: !0,
286
+ attributes: {
287
+ dy: -5,
288
+ startOffset: "50%",
289
+ textAnchor: "middle"
290
+ }
291
+ }, t);
292
+ let n = this.renderer.url, r = this.text || this, i = r.textPath, { attributes: a, enabled: o } = t;
293
+ if (e ||= i && i.path, i && i.undo(), e && o) {
294
+ let t = _(r, "afterModifyTree", (t) => {
295
+ if (e && o) {
296
+ let i = e.attr("id");
297
+ i || e.attr("id", i = (0, d.uniqueKey)());
298
+ let o = {
299
+ x: 0,
300
+ y: 0
301
+ };
302
+ y(a.dx) && (o.dx = a.dx, delete a.dx), y(a.dy) && (o.dy = a.dy, delete a.dy), r.attr(o), this.attr({ transform: "" }), this.box &&= this.box.destroy();
303
+ let s = t.nodes.slice(0);
304
+ t.nodes.length = 0, t.nodes[0] = {
305
+ tagName: "textPath",
306
+ attributes: b(a, {
307
+ "text-anchor": a.textAnchor,
308
+ href: `${n}#${i}`
309
+ }),
310
+ children: s
311
+ };
312
+ }
313
+ });
314
+ r.textPath = {
315
+ path: e,
316
+ undo: t
317
+ };
318
+ } else r.attr({
319
+ dx: 0,
320
+ dy: 0
321
+ }), delete r.textPath;
322
+ return this.added && (r.textCache = "", this.renderer.buildText(r)), this;
323
+ }
324
+ function K(e) {
325
+ let t = e.bBox, n = this.element?.querySelector("textPath");
326
+ if (n) {
327
+ let e = [], { b: r, h: i } = this.renderer.fontMetrics(this.element), a = i - r, o = RegExp("(<tspan>|<tspan(?!\\sclass=\"highcharts-br\")[^>]*>|<\\/tspan>)", "g"), s = n.innerHTML.replace(o, "").split(/<tspan class="highcharts-br"[^>]*>/), c = s.length, l = (e, t) => {
328
+ let { x: i, y: o } = t, s = (n.getRotationOfChar(e) - 90) * W, c = Math.cos(s), l = Math.sin(s);
329
+ return [[i - a * c, o - a * l], [i + r * c, o + r * l]];
330
+ };
331
+ for (let t = 0, r = 0; r < c; r++) {
332
+ let i = s[r].length;
333
+ for (let a = 0; a < i; a += 5) try {
334
+ let i = t + a + r, [o, s] = l(i, n.getStartPositionOfChar(i));
335
+ a === 0 ? (e.push(s), e.push(o)) : (r === 0 && e.unshift(s), r === c - 1 && e.push(o));
336
+ } catch {
337
+ break;
338
+ }
339
+ t += i - 1;
340
+ try {
341
+ let i = t + r, [a, o] = l(i, n.getEndPositionOfChar(i));
342
+ e.unshift(o), e.unshift(a);
343
+ } catch {
344
+ break;
345
+ }
346
+ }
347
+ e.length && e.push(e[0].slice()), t.polygon = e;
348
+ }
349
+ return t;
350
+ }
351
+ function q(e) {
352
+ let t = e.labelOptions, n = e.point, r = t[n.formatPrefix + "TextPath"] || t.textPath;
353
+ r && !t.useHTML && (this.setTextPath(n.getDataLabelPath?.(this) || n.graphic, r), n.dataLabelPath && !r.enabled && (n.dataLabelPath = n.dataLabelPath.destroy()));
354
+ }
355
+ let { column: J, line: Y } = m().seriesTypes, { parse: X } = V(), { getLevelOptions: Z, getNodeWidth: Q } = {
356
+ getColor: function(e, t) {
357
+ let n, r, i, a, o, s, c = t.index, l = t.mapOptionsToLevel, u = t.parentColor, d = t.parentColorIndex, f = t.series, p = t.colors, m = t.siblings, h = f.points, g = f.chart.options.chart;
358
+ if (e) {
359
+ let _;
360
+ n = h[e.i], r = l[e.level] || {}, n && r.colorByPoint && (a = n.index % (p ? p.length : g.colorCount), i = p && p[a]), f.chart.styledMode || (o = O(n && n.options.color, r && r.color, i, u && ((_ = r && r.colorVariation) && _.key === "brightness" && c && m ? V().parse(u).brighten(_.to * (c / m)).get() : u), f.color)), s = O(n && n.options.colorIndex, r && r.colorIndex, a, d, t.colorIndex);
361
+ }
362
+ return {
363
+ color: o,
364
+ colorIndex: s
365
+ };
366
+ },
367
+ getLevelOptions: function(e) {
368
+ let t, n, r, i, a, o, s = {};
369
+ if (T(e)) for (i = C(e.from) ? e.from : 1, o = e.levels, n = {}, t = T(e.defaults) ? e.defaults : {}, w(o) && (n = o.reduce((e, n) => {
370
+ let r, a, o;
371
+ return T(n) && C(n.level) && (a = O((o = E({}, n)).levelIsConstant, t.levelIsConstant), delete o.levelIsConstant, delete o.level, T(e[r = n.level + (a ? 0 : i - 1)]) ? E(!0, e[r], o) : e[r] = o), e;
372
+ }, {})), a = C(e.to) ? e.to : 1, r = 0; r <= a; r++) s[r] = E({}, t, T(n[r]) ? n[r] : {});
373
+ return s;
374
+ },
375
+ getNodeWidth: function(e, t) {
376
+ let { chart: n, options: r } = e, { nodeDistance: i = 0, nodeWidth: a = 0 } = r, { plotSizeX: o = 1 } = n;
377
+ if (a === "auto") {
378
+ if (typeof i == "string" && /%$/.test(i)) return o / (t + parseFloat(i) / 100 * (t - 1));
379
+ let e = Number(i);
380
+ return (o + e) / (t || 1) - e;
381
+ }
382
+ return k(a, o);
383
+ },
384
+ setTreeValues: function e(t, n) {
385
+ let r = n.before, i = n.idRoot, a = n.mapIdToNode[i], o = !1 !== n.levelIsConstant, s = n.points[t.i], c = s && s.options || {}, l = [], u = 0;
386
+ t.levelDynamic = t.level - (o ? 0 : a.level), t.name = O(s && s.name, ""), t.visible = i === t.id || !0 === n.visible, typeof r == "function" && (t = r(t, n)), t.children.forEach((r, i) => {
387
+ let a = b({}, n);
388
+ b(a, {
389
+ index: i,
390
+ siblings: t.children.length,
391
+ visible: t.visible
392
+ }), r = e(r, a), l.push(r), r.visible && (u += r.val);
393
+ });
394
+ let d = O(c.value, u);
395
+ return t.visible = d >= 0 && (u > 0 || t.visible), t.children = l, t.childrenTotal = u, t.isLeaf = t.visible && !u, t.val = d, t;
396
+ },
397
+ updateRootId: function(e) {
398
+ let t, n;
399
+ return T(e) && (n = T(e.options) ? e.options : {}, t = O(e.rootNode, n.rootId, ""), T(e.userOptions) && (e.userOptions.rootId = t), e.rootNode = t), t;
400
+ }
401
+ };
402
+ ({ compose: function(e) {
403
+ _(e, "afterGetBBox", K), _(e, "beforeAddingDataLabel", q);
404
+ let t = e.prototype;
405
+ t.setTextPath ||= G;
406
+ } }).compose(U());
407
+ class $ extends J {
408
+ static getDLOptions(e) {
409
+ let t = T(e.optionsPoint) ? e.optionsPoint.dataLabels : {}, n = T(e.level) ? e.level.dataLabels : {};
410
+ return E({ style: {} }, n, t, { zIndex: n?.zIndex });
411
+ }
412
+ createNodeColumns() {
413
+ let e = [];
414
+ for (let t of this.nodes) t.setNodeColumn(), e[t.column] || (e[t.column] = z.compose([], this)), e[t.column].push(t);
415
+ for (let t = 0; t < e.length; t++) e[t] === void 0 && (e[t] = z.compose([], this));
416
+ return e;
417
+ }
418
+ order(e, t) {
419
+ if (e.level === void 0) for (let n of (e.level = t, e.linksFrom)) n.toNode && this.order(n.toNode, t + 1);
420
+ }
421
+ generatePoints() {
422
+ if (M.generatePoints.apply(this, arguments), this.orderNodes) {
423
+ for (let e of this.nodes) e.linksTo.length === 0 && this.order(e, 0);
424
+ (function(e, t) {
425
+ let n, r, i = e.length;
426
+ for (r = 0; r < i; r++) e[r].safeI = r;
427
+ for (e.sort(function(e, r) {
428
+ return (n = t(e, r)) === 0 ? e.safeI - r.safeI : n;
429
+ }), r = 0; r < i; r++) delete e[r].safeI;
430
+ })(this.nodes, (e, t) => e.level - t.level);
431
+ }
432
+ }
433
+ getNodePadding() {
434
+ let e = this.options.nodePadding || 0;
435
+ if (this.nodeColumns) {
436
+ let t = this.nodeColumns.reduce((e, t) => Math.max(e, t.length), 0);
437
+ t * e > this.chart.plotSizeY && (e = this.chart.plotSizeY / t);
438
+ }
439
+ return e;
440
+ }
441
+ hasData() {
442
+ return !!this.dataTable.rowCount;
443
+ }
444
+ pointAttribs(e, t) {
445
+ if (!e) return {};
446
+ let n = this, r = e.isNode ? e.level : e.fromNode.level, i = n.mapOptionsToLevel[r || 0] || {}, a = e.options, o = i.states && i.states[t || ""] || {}, s = [
447
+ "colorByPoint",
448
+ "borderColor",
449
+ "borderWidth",
450
+ "linkOpacity",
451
+ "opacity"
452
+ ].reduce((e, t) => (e[t] = O(o[t], a[t], i[t], n.options[t]), e), {}), c = O(o.color, a.color, s.colorByPoint ? e.color : i.color);
453
+ return e.isNode ? {
454
+ fill: c,
455
+ stroke: s.borderColor,
456
+ "stroke-width": s.borderWidth,
457
+ opacity: s.opacity
458
+ } : {
459
+ fill: c,
460
+ "fill-opacity": s.linkOpacity
461
+ };
462
+ }
463
+ drawTracker() {
464
+ J.prototype.drawTracker.call(this, this.points), J.prototype.drawTracker.call(this, this.nodes);
465
+ }
466
+ drawPoints() {
467
+ J.prototype.drawPoints.call(this, this.points), J.prototype.drawPoints.call(this, this.nodes);
468
+ }
469
+ drawDataLabels() {
470
+ J.prototype.drawDataLabels.call(this, this.points), J.prototype.drawDataLabels.call(this, this.nodes);
471
+ }
472
+ translate() {
473
+ this.generatePoints(), this.nodeColumns = this.createNodeColumns();
474
+ let e = this, t = this.chart, n = this.options, r = this.nodeColumns, i = r.length;
475
+ for (let a of (this.nodeWidth = Q(this, i), this.nodePadding = this.getNodePadding(), this.translationFactor = r.reduce((t, n) => Math.min(t, n.sankeyColumn.getTranslationFactor(e)), 1 / 0), this.colDistance = (t.plotSizeX - this.nodeWidth - n.borderWidth) / Math.max(1, r.length - 1), e.mapOptionsToLevel = Z({
476
+ from: 1,
477
+ levels: n.levels,
478
+ to: r.length - 1,
479
+ defaults: {
480
+ borderColor: n.borderColor,
481
+ borderRadius: n.borderRadius,
482
+ borderWidth: n.borderWidth,
483
+ color: e.color,
484
+ colorByPoint: n.colorByPoint,
485
+ levelIsConstant: !0,
486
+ linkColor: n.linkColor,
487
+ linkLineWidth: n.linkLineWidth,
488
+ linkOpacity: n.linkOpacity,
489
+ states: n.states
490
+ }
491
+ }), r)) for (let t of a) e.translateNode(t, a);
492
+ for (let t of this.nodes) for (let n of t.linksFrom) (n.weight || n.isNull) && n.to && (e.translateLink(n), n.allowShadow = !1);
493
+ }
494
+ translateLink(e) {
495
+ let t = (t, n) => {
496
+ let r = t.offset(e, n) * o;
497
+ return Math.min(t.nodeY + r, t.nodeY + (t.shapeArgs && t.shapeArgs.height || 0) - p);
498
+ }, n = e.fromNode, r = e.toNode, i = this.chart, { inverted: a } = i, o = this.translationFactor, s = this.options, c = O(e.linkColorMode, s.linkColorMode), l = (i.inverted ? -this.colDistance : this.colDistance) * s.curveFactor, u = n.nodeX, d = r.nodeX, f = e.outgoing, p = Math.max(e.weight * o, this.options.minLinkWidth), m = t(n, "linksFrom"), h = t(r, "linksTo"), g = this.nodeWidth, _ = d > u + g;
499
+ if (i.inverted && (m = i.plotSizeY - m, h = (i.plotSizeY || 0) - h, g = -g, p = -p, _ = u > d), e.shapeType = "path", e.linkBase = [
500
+ m,
501
+ m + p,
502
+ h,
503
+ h + p
504
+ ], _ && typeof h == "number") e.shapeArgs = { d: [
505
+ [
506
+ "M",
507
+ u + g,
508
+ m
509
+ ],
510
+ [
511
+ "C",
512
+ u + g + l,
513
+ m,
514
+ d - l,
515
+ h,
516
+ d,
517
+ h
518
+ ],
519
+ [
520
+ "L",
521
+ d + (f ? g : 0),
522
+ h + p / 2
523
+ ],
524
+ [
525
+ "L",
526
+ d,
527
+ h + p
528
+ ],
529
+ [
530
+ "C",
531
+ d - l,
532
+ h + p,
533
+ u + g + l,
534
+ m + p,
535
+ u + g,
536
+ m + p
537
+ ],
538
+ ["Z"]
539
+ ] };
540
+ else if (typeof h == "number") {
541
+ let t = i.plotHeight - m - p, n = d - 20 - p, r = d - 20, a = u + g, o = a + 20, s = o + p, c = m, l = m + p, f = l + 20, _ = f + t, v = _ + 20, y = v + p, b = h, x = b + p, S = x + 20, C = l - .7 * p, w = v + .7 * p, T = x - .7 * p, E = d - .7 * p, D = a + .7 * p;
542
+ e.shapeArgs = { d: [
543
+ [
544
+ "M",
545
+ a,
546
+ c
547
+ ],
548
+ [
549
+ "C",
550
+ D,
551
+ c,
552
+ s,
553
+ C,
554
+ s,
555
+ f
556
+ ],
557
+ [
558
+ "L",
559
+ s,
560
+ _
561
+ ],
562
+ [
563
+ "C",
564
+ s,
565
+ w,
566
+ D,
567
+ y,
568
+ a,
569
+ y
570
+ ],
571
+ [
572
+ "L",
573
+ d,
574
+ y
575
+ ],
576
+ [
577
+ "C",
578
+ E,
579
+ y,
580
+ n,
581
+ w,
582
+ n,
583
+ _
584
+ ],
585
+ [
586
+ "L",
587
+ n,
588
+ S
589
+ ],
590
+ [
591
+ "C",
592
+ n,
593
+ T,
594
+ E,
595
+ b,
596
+ d,
597
+ b
598
+ ],
599
+ [
600
+ "L",
601
+ d,
602
+ x
603
+ ],
604
+ [
605
+ "C",
606
+ r,
607
+ x,
608
+ r,
609
+ x,
610
+ r,
611
+ S
612
+ ],
613
+ [
614
+ "L",
615
+ r,
616
+ _
617
+ ],
618
+ [
619
+ "C",
620
+ r,
621
+ v,
622
+ r,
623
+ v,
624
+ d,
625
+ v
626
+ ],
627
+ [
628
+ "L",
629
+ a,
630
+ v
631
+ ],
632
+ [
633
+ "C",
634
+ o,
635
+ v,
636
+ o,
637
+ v,
638
+ o,
639
+ _
640
+ ],
641
+ [
642
+ "L",
643
+ o,
644
+ f
645
+ ],
646
+ [
647
+ "C",
648
+ o,
649
+ l,
650
+ o,
651
+ l,
652
+ a,
653
+ l
654
+ ],
655
+ ["Z"]
656
+ ] };
657
+ }
658
+ if (e.dlBox = {
659
+ x: u + (d - u + g) / 2,
660
+ y: m + (h - m) / 2,
661
+ height: p,
662
+ width: 0
663
+ }, e.tooltipPos = i.inverted ? [i.plotSizeY - e.dlBox.y - p / 2, i.plotSizeX - e.dlBox.x] : [e.dlBox.x, e.dlBox.y + p / 2], e.y = e.plotY = 1, e.x = e.plotX = 1, !e.options.color) {
664
+ if (c === "from") e.color = n.color;
665
+ else if (c === "to") e.color = r.color;
666
+ else if (c === "gradient") {
667
+ let t = X(n.color).get(), i = X(r.color).get();
668
+ e.color = {
669
+ linearGradient: {
670
+ x1: 1,
671
+ x2: 0,
672
+ y1: 0,
673
+ y2: 0
674
+ },
675
+ stops: [[0, a ? t : i], [1, a ? i : t]]
676
+ };
677
+ }
678
+ }
679
+ }
680
+ translateNode(e, t) {
681
+ let n = this.translationFactor, r = this.chart, i = this.options, { borderRadius: a, borderWidth: o = 0 } = i, s = e.getSum(), c = Math.max(Math.round(s * n), this.options.minLinkWidth), l = Math.round(this.nodeWidth), u = t.sankeyColumn.offset(e, n), d = v(O(u.absoluteTop, t.sankeyColumn.top(n) + u.relativeTop), o), f = v(this.colDistance * e.column + o / 2, o) + k(e.options[r.inverted ? "offsetVertical" : "offsetHorizontal"] || 0, l), p = r.inverted ? r.plotSizeX - f : f;
682
+ if (e.sum = s, s) {
683
+ var m, h;
684
+ e.shapeType = "roundedRect", e.nodeX = p, e.nodeY = d;
685
+ let t = p, n = d, o = e.options.width || i.width || l, s = e.options.height || i.height || c, u = (m = k(typeof a == "object" ? a.radius : a || 0, o), h = c / 2, m > 0 ? m < h ? m : h : 0);
686
+ r.inverted && (t = p - l, n = r.plotSizeY - d - c, o = e.options.height || i.height || l, s = e.options.width || i.width || c), e.dlOptions = {
687
+ ...$.getDLOptions({
688
+ level: this.mapOptionsToLevel[e.level],
689
+ optionsPoint: e.options
690
+ }),
691
+ zIndex: void 0
692
+ }, e.plotX = 1, e.plotY = 1, e.tooltipPos = r.inverted ? [r.plotSizeY - n - s / 2, r.plotSizeX - t - o / 2] : [t + o / 2, n + s / 2], e.shapeArgs = {
693
+ x: t,
694
+ y: n,
695
+ width: o,
696
+ height: s,
697
+ r: u,
698
+ display: e.hasShape() ? "" : "none"
699
+ };
700
+ } else e.dlOptions = { enabled: !1 };
701
+ }
702
+ }
703
+ $.defaultOptions = E(J.defaultOptions, {
704
+ borderWidth: 0,
705
+ colorByPoint: !0,
706
+ curveFactor: .33,
707
+ dataLabels: {
708
+ enabled: !0,
709
+ backgroundColor: "none",
710
+ crop: !1,
711
+ nodeFormat: void 0,
712
+ nodeFormatter: function() {
713
+ return this.point.name;
714
+ },
715
+ format: void 0,
716
+ formatter: function() {},
717
+ inside: !0
718
+ },
719
+ inactiveOtherPoints: !0,
720
+ linkColorMode: "from",
721
+ linkOpacity: .5,
722
+ opacity: 1,
723
+ minLinkWidth: 0,
724
+ nodeAlignment: "center",
725
+ nodeWidth: 20,
726
+ nodePadding: 10,
727
+ nodeDistance: 30,
728
+ showInLegend: !1,
729
+ states: {
730
+ hover: {
731
+ linkOpacity: 1,
732
+ opacity: 1
733
+ },
734
+ inactive: {
735
+ linkOpacity: .1,
736
+ opacity: .1,
737
+ animation: { duration: 50 }
738
+ }
739
+ },
740
+ tooltip: {
741
+ followPointer: !0,
742
+ headerFormat: "<span style=\"font-size: 0.8em\">{series.name}</span><br/>",
743
+ pointFormat: "{point.fromNode.name} → {point.toNode.name}: <b>{point.weight}</b><br/>",
744
+ nodeFormat: "{point.name}: <b>{point.sum}</b><br/>"
745
+ }
746
+ }), M.compose(I, $), b($.prototype, {
747
+ animate: Y.prototype.animate,
748
+ createNode: M.createNode,
749
+ forceDL: !0,
750
+ invertible: !0,
751
+ isCartesian: !1,
752
+ orderNodes: !0,
753
+ noSharedTooltip: !0,
754
+ pointArrayMap: [
755
+ "from",
756
+ "to",
757
+ "weight"
758
+ ],
759
+ pointClass: I,
760
+ searchPoint: f().noop
761
+ }), m().registerSeriesType("sankey", $);
762
+ let ee = f();
763
+ return u.default;
764
+ })());
765
+ }));
766
+ //#endregion
767
+ export default t();
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mobileaction/action-kit",
3
3
  "type": "module",
4
- "version": "1.61.2",
4
+ "version": "1.61.3",
5
5
  "description": "UI Component library for Mobile Action.",
6
6
  "author": "MobileAction",
7
7
  "license": "MIT",