@progress/kendo-charts 2.3.0-dev.202404121620 → 2.3.0-dev.202404191639

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.
@@ -642,6 +642,6 @@ setDefaultOptions(Sankey, {
642
642
  },
643
643
  tooltip: {
644
644
  followPointer: false,
645
- delay: 1000
645
+ delay: 200
646
646
  }
647
647
  });
@@ -0,0 +1,48 @@
1
+ export var createSankeyData = function (data, dimensions, measure) {
2
+ var nodes = new Set();
3
+ var links = new Map();
4
+ var linksMap = new Map();
5
+
6
+ data.forEach(function (row) {
7
+ dimensions.forEach(function (dimension) {
8
+ nodes.add(dimension.value(row));
9
+ });
10
+
11
+ for (var i = 0; i < dimensions.length - 1; i++) {
12
+ var source = dimensions[i].value(row);
13
+ var target = dimensions[i + 1].value(row);
14
+ var key = source + "_" + target;
15
+ var value = measure.value(row);
16
+ var existingValue = links.get(key);
17
+
18
+ if (existingValue !== undefined) {
19
+ links.set(key, existingValue + value);
20
+ } else {
21
+ links.set(key, value);
22
+ linksMap.set(key, { source: source, target: target });
23
+ }
24
+ }
25
+ });
26
+
27
+ var nodesId = new Map();
28
+ var nodesArray = Array.from(nodes).map(function (node, index) {
29
+ nodesId.set(node, index);
30
+ return { id: index, label: { text: String(node) } };
31
+ });
32
+
33
+ var linksArray = Array.from(links).map(function (ref) {
34
+ var key = ref[0];
35
+ var value = ref[1];
36
+
37
+ var ref$1 = linksMap.get(key);
38
+ var source = ref$1.source;
39
+ var target = ref$1.target;
40
+ return {
41
+ sourceId: nodesId.get(source),
42
+ targetId: nodesId.get(target),
43
+ value: value
44
+ };
45
+ });
46
+
47
+ return { nodes: nodesArray, links: linksArray };
48
+ };
package/dist/es/sankey.js CHANGED
@@ -1 +1,2 @@
1
1
  export { Sankey } from './sankey/sankey';
2
+ export { createSankeyData } from './sankey/utils';
@@ -593,6 +593,6 @@ setDefaultOptions(Sankey, {
593
593
  },
594
594
  tooltip: {
595
595
  followPointer: false,
596
- delay: 1000
596
+ delay: 200
597
597
  }
598
598
  });
@@ -0,0 +1,43 @@
1
+ export const createSankeyData = (data, dimensions, measure) => {
2
+ const nodes = new Set();
3
+ const links = new Map();
4
+ const linksMap = new Map();
5
+
6
+ data.forEach((row) => {
7
+ dimensions.forEach((dimension) => {
8
+ nodes.add(dimension.value(row));
9
+ });
10
+
11
+ for (let i = 0; i < dimensions.length - 1; i++) {
12
+ const source = dimensions[i].value(row);
13
+ const target = dimensions[i + 1].value(row);
14
+ const key = `${source}_${target}`;
15
+ const value = measure.value(row);
16
+ const existingValue = links.get(key);
17
+
18
+ if (existingValue !== undefined) {
19
+ links.set(key, existingValue + value);
20
+ } else {
21
+ links.set(key, value);
22
+ linksMap.set(key, { source, target });
23
+ }
24
+ }
25
+ });
26
+
27
+ const nodesId = new Map();
28
+ const nodesArray = Array.from(nodes).map((node, index) => {
29
+ nodesId.set(node, index);
30
+ return { id: index, label: { text: String(node) } };
31
+ });
32
+
33
+ const linksArray = Array.from(links).map(([key, value]) => {
34
+ const { source, target } = linksMap.get(key);
35
+ return {
36
+ sourceId: nodesId.get(source),
37
+ targetId: nodesId.get(target),
38
+ value
39
+ };
40
+ });
41
+
42
+ return { nodes: nodesArray, links: linksArray };
43
+ };
@@ -1 +1,2 @@
1
1
  export { Sankey } from './sankey/sankey';
2
+ export { createSankeyData } from './sankey/utils';