react-core-ts 2.1.24 → 2.1.25

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.
@@ -14,25 +14,22 @@ Object.defineProperty(exports, "__esModule", { value: true });
14
14
  exports.buildTree = void 0;
15
15
  function buildTree(data, idField, parentField) {
16
16
  var nodeMap = new Map();
17
- // Initialize all nodes
18
17
  data.forEach(function (node) {
19
- node.children = [];
20
- nodeMap.set(node[idField], node);
18
+ nodeMap.set(node[idField], __assign(__assign({}, node), { checked: false, children: [] }));
21
19
  });
22
- // Build the tree structure
23
20
  var tree = [];
24
21
  data.forEach(function (node) {
25
- if (node[parentField]) {
26
- // Find the parent and add the node as a child
27
- var parent_1 = nodeMap.get(node[parentField]);
28
- if (parent_1) {
29
- parent_1.children.push(__assign(__assign({}, node), { checked: false }));
22
+ var currentNode = nodeMap.get(node[idField]);
23
+ var parentId = node[parentField];
24
+ var hasParent = parentId !== null && parentId !== undefined && parentId !== '';
25
+ if (hasParent) {
26
+ var parentNode = nodeMap.get(parentId);
27
+ if (parentNode) {
28
+ parentNode.children.push(currentNode);
29
+ return;
30
30
  }
31
31
  }
32
- else {
33
- // No parentId means it's a root node
34
- tree.push(__assign(__assign({}, node), { checked: false }));
35
- }
32
+ tree.push(currentNode);
36
33
  });
37
34
  return tree;
38
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"convertFlatArraytoTreeStructure.js","sourceRoot":"","sources":["../../src/utilities/convertFlatArraytoTreeStructure.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,SAAgB,SAAS,CAAC,IAAW,EAAE,OAAe,EAAE,WAAmB;IACzE,IAAM,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;IAE1B,uBAAuB;IACvB,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI;QAChB,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,IAAM,IAAI,GAAU,EAAE,CAAC;IAEvB,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI;QAChB,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE;YACrB,8CAA8C;YAC9C,IAAM,QAAM,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;YAC9C,IAAI,QAAM,EAAE;gBACV,QAAM,CAAC,QAAQ,CAAC,IAAI,uBAAM,IAAI,KAAE,OAAO,EAAE,KAAK,IAAG,CAAC;aACnD;SACF;aAAM;YACL,qCAAqC;YACrC,IAAI,CAAC,IAAI,uBAAM,IAAI,KAAE,OAAO,EAAE,KAAK,IAAG,CAAC;SACxC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AA1BD,8BA0BC"}
1
+ {"version":3,"file":"convertFlatArraytoTreeStructure.js","sourceRoot":"","sources":["../../src/utilities/convertFlatArraytoTreeStructure.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,SAAgB,SAAS,CAAC,IAAW,EAAE,OAAe,EAAE,WAAmB;IACzE,IAAM,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;IAE1B,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI;QAChB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,wBACpB,IAAI,KACP,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,EAAE,IACZ,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAM,IAAI,GAAU,EAAE,CAAC;IAEvB,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI;QAChB,IAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC;QACnC,IAAM,SAAS,GAAG,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,EAAE,CAAC;QAEjF,IAAI,SAAS,EAAE;YACb,IAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAEzC,IAAI,UAAU,EAAE;gBACd,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACtC,OAAO;aACR;SACF;QAED,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC;AA/BD,8BA+BC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-core-ts",
3
- "version": "2.1.24",
3
+ "version": "2.1.25",
4
4
  "description": "React Components",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,26 +1,31 @@
1
1
  export function buildTree(data: any[], idField: string, parentField: string) {
2
2
  const nodeMap = new Map();
3
3
 
4
- // Initialize all nodes
5
4
  data.forEach((node) => {
6
- node.children = [];
7
- nodeMap.set(node[idField], node);
5
+ nodeMap.set(node[idField], {
6
+ ...node,
7
+ checked: false,
8
+ children: [],
9
+ });
8
10
  });
9
11
 
10
- // Build the tree structure
11
12
  const tree: any[] = [];
12
13
 
13
14
  data.forEach((node) => {
14
- if (node[parentField]) {
15
- // Find the parent and add the node as a child
16
- const parent = nodeMap.get(node[parentField]);
17
- if (parent) {
18
- parent.children.push({ ...node, checked: false });
15
+ const currentNode = nodeMap.get(node[idField]);
16
+ const parentId = node[parentField];
17
+ const hasParent = parentId !== null && parentId !== undefined && parentId !== '';
18
+
19
+ if (hasParent) {
20
+ const parentNode = nodeMap.get(parentId);
21
+
22
+ if (parentNode) {
23
+ parentNode.children.push(currentNode);
24
+ return;
19
25
  }
20
- } else {
21
- // No parentId means it's a root node
22
- tree.push({ ...node, checked: false });
23
26
  }
27
+
28
+ tree.push(currentNode);
24
29
  });
25
30
 
26
31
  return tree;