Skip to content

Commit 00583c8

Browse files
committed
add org level table
1 parent 8ce85e5 commit 00583c8

File tree

1 file changed

+27
-25
lines changed

1 file changed

+27
-25
lines changed

lib/commands/analytics/index.js

Lines changed: 27 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -118,31 +118,33 @@ async function fetchOrgAnalyticsData (time, spinner) {
118118
return handleUnsuccessfulApiResponse('getOrgAnalytics', result, spinner)
119119
}
120120

121-
// const formattedData = result.data.map(d => {
122-
// const formattedDate = new Date(d.created_at).toLocaleDateString()
123-
// return {
124-
// ...d,
125-
// created_at: formattedDate,
126-
// }
127-
// })
128-
// const data = { ...formattedData.flat(1) }
129-
130-
// const test = result.data.reduce((acc, current) => {
131-
// if (acc[current.created_at]) {
132-
// acc[current.created_at].total_critical_alerts += acc[current.created_at].total_critical_alerts
133-
// } else {
134-
// acc[current.created_at] = current
135-
// }
136-
137-
// return acc
138-
// }, {})
139-
140-
// console.log(test)
141-
142-
// console.log('\n')
143-
// console.table(data, ['created_at', 'repository_name', 'total_critical_alerts', 'total_high_alerts', 'top_five_alert_types'])
144-
// console.table(data, ['created_at', 'repository_name', 'total_critical_added', 'total_high_added'])
145-
// console.table(data, ['created_at', 'repository_name', 'total_critical_prevented', 'total_high_prevented', 'total_medium_prevented', 'total_low_prevented'])
121+
spinner.stop()
122+
123+
const data = result.data.reduce((/** @type {{ [key: string]: any }} */ acc, current) => {
124+
const formattedDate = new Date(current.created_at).toLocaleDateString()
125+
126+
if (acc[formattedDate]) {
127+
acc[formattedDate].total_critical_alerts += current.total_critical_alerts
128+
acc[formattedDate].total_high_alerts += current.total_high_alerts
129+
acc[formattedDate].total_critical_added += current.total_critical_added
130+
acc[formattedDate].total_high_added += current.total_high_added
131+
acc[formattedDate].total_critical_prevented += current.total_critical_prevented
132+
acc[formattedDate].total_high_prevented += current.total_high_prevented
133+
acc[formattedDate].total_medium_prevented += current.total_medium_prevented
134+
acc[formattedDate].total_low_prevented += current.total_low_prevented
135+
// acc[formattedDate].top_five_alert_types += current.top_five_alert_types
136+
} else {
137+
acc[formattedDate] = current
138+
acc[formattedDate].created_at = formattedDate
139+
}
140+
141+
return acc
142+
}, {})
143+
144+
console.log(chalk.bgMagenta.white.bold(`\n Analytics data for the organization over the last ${time} days: \n`))
145+
console.table(data, ['repository_name', 'total_critical_alerts', 'total_high_alerts', 'top_five_alert_types'])
146+
console.table(data, ['repository_name', 'total_critical_added', 'total_high_added'])
147+
console.table(data, ['repository_name', 'total_critical_prevented', 'total_high_prevented', 'total_medium_prevented', 'total_low_prevented'])
146148
}
147149

148150
/**

0 commit comments

Comments
 (0)