Skip to content

Commit

Permalink
csv report generation added nested fields
Browse files Browse the repository at this point in the history
Signed-off-by: sumukhswamy <[email protected]>
  • Loading branch information
sumukhswamy committed Jan 18, 2025
1 parent 2973562 commit 47b6b0d
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions server/routes/utils/dataReportHelpers.ts
Original file line number Diff line number Diff line change
Expand Up @@ -307,6 +307,31 @@ function traverse(data, keys, result = {}) {
Object.keys(data)
.filter((sourceKey) => sourceKey.startsWith(key + '.'))
.forEach((sourceKey) => (result[sourceKey] = data[sourceKey]));
Object.keys(data).forEach((key) => {
const value = data[key];

if (Array.isArray(value)) {
const flattenedValues = {};

value.forEach((item) => {
Object.keys(item).forEach((subKey) => {
console.log(key, subKey);
const newKey = `${key}.${subKey}`;
if (!flattenedValues[newKey]) {
flattenedValues[newKey] = [];
}
flattenedValues[newKey].push(item[subKey]);
});
});

// Add flattened values to the result object, ensuring no duplicates
Object.keys(flattenedValues).forEach((newKey) => {
result[newKey] = flattenedValues[newKey];
});
} else {
result[key] = value;
}
});
}
});
return result;
Expand Down

0 comments on commit 47b6b0d

Please sign in to comment.