@if (!devMode) {

{{ 'diagnostics.disabledTitle' | translate }}

{{ 'diagnostics.disabledDescription' | translate }}

} @else {
@if (report$ | async; as report) {

{{ 'diagnostics.title' | translate }}

{{ 'diagnostics.generatedAt' | translate:{ value: report.generatedAt } }}

{{ report.summary.score }}% {{ 'diagnostics.healthScore' | translate }}

{{ 'diagnostics.summary' | translate }}

  • {{ 'diagnostics.passedChecks' | translate:{ count: report.summary.passedChecks } }}
  • {{ 'diagnostics.warnings' | translate:{ count: report.summary.warningCount } }}
  • {{ 'diagnostics.errors' | translate:{ count: report.summary.errorCount } }}
  • {{ 'diagnostics.critical' | translate:{ count: report.summary.criticalCount } }}

{{ 'diagnostics.healthChecks' | translate }}

    @for (check of report.checks; track check.key) {
  • {{ ('diagnostics.checks.' + check.key) | translate }} {{ check.passed ? ('diagnostics.ok' | translate) : ('diagnostics.failed' | translate) }}
  • }

{{ 'diagnostics.results' | translate }}

@if (report.entries.length === 0) {

{{ 'diagnostics.noIssues' | translate }}

} @else {
@for (entry of report.entries; track entry.code + entry.affectedComponent + entry.description) {
{{ ('diagnostics.severity.' + entry.severity) | translate }} {{ entry.code }}

{{ tDiagnostic(entry.title) }}

{{ tDiagnostic(entry.description) }}

{{ 'diagnostics.affectedComponent' | translate }}: {{ entry.affectedComponent }}

{{ 'diagnostics.suggestedResolution' | translate }}: {{ tDiagnostic(entry.suggestedResolution) }}

}
}
}
}