Fix grafica scouthub-home-fe

This commit is contained in:
Lorenzo Sanesi
2026-07-25 12:02:03 +02:00
parent 7e0544c5ab
commit 08271b8a15
60 changed files with 4305 additions and 149 deletions
@@ -0,0 +1,41 @@
import { Component, OnInit, inject, signal } from '@angular/core';
import { MatButtonModule } from '@angular/material/button';
import { MatTableModule } from '@angular/material/table';
import { RouterLink } from '@angular/router';
import { firstValueFrom } from 'rxjs';
import { GruppiApiService, GruppoListItem } from '../gruppi-api.service';
@Component({
selector: 'app-gruppi-list',
imports: [MatButtonModule, MatTableModule, RouterLink],
templateUrl: './gruppi-list.html',
styleUrl: './gruppi-list.css'
})
export class GruppiList implements OnInit {
private readonly gruppiApi = inject(GruppiApiService);
readonly displayedColumns = ['nome', 'regione'];
readonly loading = signal(true);
readonly loadError = signal<string | null>(null);
readonly gruppi = signal<GruppoListItem[]>([]);
async ngOnInit(): Promise<void> {
await this.caricaGruppi();
}
private async caricaGruppi(): Promise<void> {
this.loading.set(true);
this.loadError.set(null);
try {
const gruppi = await firstValueFrom(this.gruppiApi.listGruppi());
this.gruppi.set(gruppi);
} catch {
this.loadError.set("Impossibile caricare l'elenco dei gruppi. Riprova più tardi.");
} finally {
this.loading.set(false);
}
}
}