From 12672fa0bf0c9d656f79e1de04644cac3aeed227 Mon Sep 17 00:00:00 2001 From: Vasa Date: Fri, 29 Aug 2025 14:13:54 +0300 Subject: [PATCH] last fix i hope --- .../application-list.component.html | 2 +- .../application-list.component.ts | 21 +++++++++---------- .../application/application.component.html | 2 +- .../application/application.component.ts | 11 ++++------ src/app/services/socket-io.service.ts | 1 - 5 files changed, 16 insertions(+), 21 deletions(-) diff --git a/src/app/components/application-list/application-list.component.html b/src/app/components/application-list/application-list.component.html index 512643f..57cab10 100644 --- a/src/app/components/application-list/application-list.component.html +++ b/src/app/components/application-list/application-list.component.html @@ -32,7 +32,7 @@ @if (viewMode() === 'map') { } diff --git a/src/app/components/application-list/application-list.component.ts b/src/app/components/application-list/application-list.component.ts index b517db8..3e7794e 100644 --- a/src/app/components/application-list/application-list.component.ts +++ b/src/app/components/application-list/application-list.component.ts @@ -43,16 +43,15 @@ export class ApplicationListComponent implements OnInit { snackBar = inject(MatSnackBar) environment = environment; - applicationList = signal([]); searchTerm = signal(''); filterCity = signal(''); sortField = signal('fullName'); - viewMode = signal<'map' | 'charts'>('map'); + viewMode = signal<'map' | 'charts'>('map'); availableCities = signal(CITY_LIST); filteredList = computed(() => { - const apps = this.applicationList(); + const apps = this.dataService.cachedApplicationList(); const term = this.searchTerm().toLowerCase(); const city = this.filterCity(); @@ -99,7 +98,7 @@ export class ApplicationListComponent implements OnInit { constructor() { effect(() => { - const data = this.applicationList(); + const data = this.dataService.cachedApplicationList(); if (data.length === 0) { this.ageChartData.set({ labels: [], datasets: [] }); @@ -183,27 +182,27 @@ export class ApplicationListComponent implements OnInit { ngOnInit(): void { this.dataService.loadCandidateList().subscribe(data => { - this.applicationList.set(data); + this.dataService.cachedApplicationList.set(data); this.availableCities.set(this.getUniqueCities(data)); }); this.socketService.onCandidateRegistered().subscribe(newCandidate => { - this.applicationList.update(list => [newCandidate, ...list]); - this.availableCities.set(this.getUniqueCities(this.applicationList())); + this.dataService.cachedApplicationList.update(list => [newCandidate, ...list]); + this.availableCities.set(this.getUniqueCities(this.dataService.cachedApplicationList())); }); this.socketService.onCandidateUpdated().subscribe(updatedCandidate => { - this.applicationList.update(list => + this.dataService.cachedApplicationList.update(list => list.map(app => app.id === updatedCandidate.id ? updatedCandidate : app) ); - this.availableCities.set(this.getUniqueCities(this.applicationList())); + this.availableCities.set(this.getUniqueCities(this.dataService.cachedApplicationList())); }); this.socketService.onCandidateDeleted().subscribe(deletedCandidateId => { - this.applicationList.update(list => + this.dataService.cachedApplicationList.update(list => list.filter(app => app.id !== deletedCandidateId) ); - this.availableCities.set(this.getUniqueCities(this.applicationList())); + this.availableCities.set(this.getUniqueCities(this.dataService.cachedApplicationList())); }); } diff --git a/src/app/components/application/application.component.html b/src/app/components/application/application.component.html index 34c3e88..ed765df 100644 --- a/src/app/components/application/application.component.html +++ b/src/app/components/application/application.component.html @@ -18,7 +18,7 @@ chevron_left - {{ currentIndex() + 1 }} of {{ applicationList().length }} + {{ currentIndex() + 1 }} of {{ this.dataService.cachedApplicationList().length }}