logIssue method

void logIssue(
  1. Issue issue
)

Implementation

void logIssue(Issue issue) {
  if (silent) return;
  _clearSpinner();

  final color = switch (issue.severity) {
    IssueSeverity.critical => '\x1B[31m', // Red
    IssueSeverity.high => '\x1B[33m', // Yellow
    IssueSeverity.medium => '\x1B[34m', // Blue
    IssueSeverity.low => '\x1B[37m', // White
  };

  stdout.writeln(
    '$color[${issue.severity.name.toUpperCase()}]\x1B[0m ${issue.title}',
  );
  stdout.writeln('  ${issue.description}');
  if (issue.suggestion != null) {
    stdout.writeln('  \x1B[32mSuggestion:\x1B[0m ${issue.suggestion}');
  }
  if (issue.file != null) {
    stdout.writeln(
      '  \x1B[90mFile:\x1B[0m ${issue.file}${issue.line != null ? ":${issue.line}" : ""}',
    );
  }
  stdout.writeln('');
}