feat : #12 recherche et filtre

This commit is contained in:
styve Lioumba
2025-11-28 15:15:33 +01:00
parent 4716e82628
commit 4ed6d812db
30 changed files with 308 additions and 487 deletions

View File

@@ -1,4 +1,4 @@
import { Component, inject, OnInit } from '@angular/core';
import { Component, inject } from '@angular/core';
import { SearchComponent } from '@app/shared/features/search/search.component';
import { VerticalProfileListComponent } from '@app/shared/components/vertical-profile-list/vertical-profile-list.component';
import { UntilDestroy } from '@ngneat/until-destroy';
@@ -7,16 +7,17 @@ import { LoadingComponent } from '@app/shared/components/loading/loading.compone
import { Router } from '@angular/router';
import { SearchFilters } from '@app/domain/search/search-filters';
import { SearchService } from '@app/infrastructure/search/search.service';
import { FilterComponent } from '@app/shared/features/filter/filter.component';
@Component({
selector: 'app-profile-list',
standalone: true,
imports: [SearchComponent, VerticalProfileListComponent, LoadingComponent],
imports: [SearchComponent, VerticalProfileListComponent, LoadingComponent, FilterComponent],
templateUrl: './profile-list.component.html',
styleUrl: './profile-list.component.scss',
})
@UntilDestroy()
export class ProfileListComponent implements OnInit {
export class ProfileListComponent {
private readonly searchService = inject(SearchService);
private readonly facade = inject(ProfileFacade);
private readonly router = inject(Router);
@@ -27,11 +28,12 @@ export class ProfileListComponent implements OnInit {
protected readonly searchFilters = this.searchService.getFilters();
ngOnInit() {
this.facade.load();
}
showNewQuery(filters: SearchFilters) {
this.facade.load(this.searchFilters());
this.router.navigate(['/profiles'], { queryParams: { search: filters.search } });
}
onFilterChange(filters: SearchFilters) {
this.facade.load(filters);
}
}