printSummary method
void
printSummary()
Implementation
void printSummary() {
print('\n━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
print('🩺 DANGI DOCTOR — DIAGNOSIS REPORT');
print('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
print('📊 Total widgets on screen : $totalWidgets');
print('📏 Maximum nesting depth : $maxDepthFound');
print('🔍 Issues found : ${issues.length}');
print('');
if (issues.isEmpty) {
print('✅ No issues found. Your app looks healthy!');
return;
}
final errors = issues.where((i) => i.severity == 'error').toList();
final warnings = issues.where((i) => i.severity == 'warning').toList();
final infos = issues.where((i) => i.severity == 'info').toList();
if (errors.isNotEmpty) {
print('🔴 ERRORS (${errors.length})');
for (final i in errors) {
print(' $i');
}
print('');
}
if (warnings.isNotEmpty) {
print('🟡 WARNINGS (${warnings.length})');
for (final i in warnings) {
print(' $i');
}
print('');
}
if (infos.isNotEmpty) {
print('🔵 INFO (${infos.length})');
for (final i in infos) {
print(' $i');
}
print('');
}
print('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━');
// Top 5 most used widgets
print('\n📦 Top widgets on this screen:');
final sorted = widgetCounts.entries.toList()
..sort((a, b) => b.value.compareTo(a.value));
for (final entry in sorted.take(5)) {
print(' ${entry.key}: ${entry.value}x');
}
}