home-page.component.html 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <div
  2. class="d-grid"
  3. [style.grid-template-columns]="'250px repeat(' + (grid.columns - 1) + ', 1fr)'"
  4. [style.grid-template-rows]="'repeat(' + grid.rows + ', max-content)'">
  5. <div class="card-header btn btn-toolbar bg-light text-primary" routerLink="/" style="grid-column: 1 / span 1; grid-row: 1 / span 1">
  6. <fa-icon [icon]="fa.faChalkboard" class="pe-2"></fa-icon>
  7. <span class="flex-fill text-start">Dashboard</span>
  8. <fa-icon [icon]="fa.faAngleRight" class="ps-2"></fa-icon>
  9. </div>
  10. <div class="card-header bg-primary text-light text-center" style="grid-column: 2 / span 1; grid-row: 1 / span 1">
  11. <fa-icon [icon]="fa.faChartBar" class="pe-2"></fa-icon>
  12. <span class="flex-fill">Server Metrics (24h)</span>
  13. </div>
  14. <div class="card-header bg-primary text-light text-center" style="grid-column: 3 / span 1; grid-row: 1 / span 1">
  15. <fa-icon [icon]="fa.faTheaterMasks" class="pe-2"></fa-icon>
  16. <span class="flex-fill">Service Status (24h)</span>
  17. </div>
  18. <ng-container *ngFor="let server of serverConfigs; index as i">
  19. <div class="card-header bg-primary text-light" style="grid-column: 1 / span 1" [style.grid-row]="i + 2 + ' / span 1'">
  20. <fa-icon [icon]="fa.faServer" class="pe-2"></fa-icon>
  21. <span class="flex-fill text-start">{{ server.title }}</span>
  22. </div>
  23. <app-server-metrics-widget
  24. class="d-block p-1 border-end border-bottom text-primary pointer link-panel-highlight"
  25. style="grid-column: 2 / span 1"
  26. [style.grid-row]="i + 2 + ' / span 1'"
  27. [server]="server"
  28. [routerLink]="'/srv/' + server.id">
  29. </app-server-metrics-widget>
  30. <app-service-checks-widget
  31. [server]="server"
  32. class="d-block p-1 border-end border-bottom"
  33. style="grid-column: 3 / span 1"
  34. [style.grid-row]="i + 2 + ' / span 1'"></app-service-checks-widget>
  35. </ng-container>
  36. </div>