From 5cc1076225d44af6c522872b3d586174148ca078 Mon Sep 17 00:00:00 2001 From: bisco Date: Wed, 3 Jun 2026 23:05:16 +0200 Subject: [PATCH] fix: remove scouting quick filter bar --- frontend/src/app/app.component.css | 30 ++---------------- frontend/src/app/app.component.html | 42 -------------------------- frontend/src/app/app.component.spec.ts | 18 ----------- frontend/src/app/app.component.ts | 27 ----------------- 4 files changed, 2 insertions(+), 115 deletions(-) diff --git a/frontend/src/app/app.component.css b/frontend/src/app/app.component.css index 044e213..80c88bd 100644 --- a/frontend/src/app/app.component.css +++ b/frontend/src/app/app.component.css @@ -126,23 +126,6 @@ button { background: #e7eeeb; } -.quickbar { - display: grid; - grid-template-columns: auto minmax(0, 1fr) auto; - gap: 10px; - align-items: center; - margin-top: 10px; - padding: 10px 0; -} - -.chip-group { - display: flex; - gap: 6px; - overflow-x: auto; - scrollbar-width: thin; -} - -.chip-group button, .sort { min-height: 30px; padding: 0 10px; @@ -152,20 +135,12 @@ button { white-space: nowrap; } -.chip-group button.active, .sort.active { color: white; background: var(--accent); border-color: var(--accent); } -.filter-count { - color: var(--muted); - font-size: 0.8rem; - font-weight: 800; - white-space: nowrap; -} - .alert { margin: 10px 0 0; padding: 12px 14px; @@ -179,7 +154,7 @@ button { display: grid; grid-template-columns: minmax(0, 1fr) 390px; gap: 16px; - margin-top: 8px; + margin-top: 14px; align-items: start; } @@ -351,8 +326,7 @@ dd { padding-top: 14px; } - .topbar, - .quickbar { + .topbar { align-items: stretch; display: grid; grid-template-columns: 1fr; diff --git a/frontend/src/app/app.component.html b/frontend/src/app/app.component.html index bcae520..7784ff9 100644 --- a/frontend/src/app/app.component.html +++ b/frontend/src/app/app.component.html @@ -81,48 +81,6 @@ -
-
- - -
-
- - -
- {{ isUpdatingResults ? 'Updating...' : activeFiltersCount + ' active' }} -
-

{{ errorMessage }}

diff --git a/frontend/src/app/app.component.spec.ts b/frontend/src/app/app.component.spec.ts index a161ec1..6787c8f 100644 --- a/frontend/src/app/app.component.spec.ts +++ b/frontend/src/app/app.component.spec.ts @@ -89,24 +89,6 @@ describe('AppComponent', () => { assert.equal(calls, 1); }); - it('applies quick filters immediately and can clear them with all controls', () => { - const requestedPositions: string[] = []; - const api = { - searchPlayers: (filters: { position: string; league: string }) => { - requestedPositions.push(`${filters.position}:${filters.league}`); - return of({ count: 0, results: [] }); - }, - } as unknown as PlayerApiService; - const component = new AppComponent(api); - - component.setPosition('PG'); - component.setLeague('LBA'); - component.setPosition(''); - component.setLeague(''); - - assert.deepEqual(requestedPositions, ['PG:', 'PG:LBA', ':LBA', ':']); - }); - it('shows the loading placeholder only before results exist', () => { const api = { searchPlayers: () => of({ count: samplePlayers.length, results: samplePlayers }), diff --git a/frontend/src/app/app.component.ts b/frontend/src/app/app.component.ts index 3e6b74a..5c82264 100644 --- a/frontend/src/app/app.component.ts +++ b/frontend/src/app/app.component.ts @@ -95,16 +95,6 @@ export class AppComponent { this.search(); } - setPosition(position: string): void { - this.filters.position = position; - this.search(); - } - - setLeague(league: string): void { - this.filters.league = league; - this.search(); - } - sortBy(key: SortKey): void { this.activeSort = key; this.players = this.sortPlayers(this.players); @@ -140,27 +130,10 @@ export class AppComponent { return (total / this.players.length).toFixed(2); } - get activeFiltersCount(): number { - return [ - this.filters.q, - this.filters.position, - this.filters.role, - this.filters.league, - this.filters.minPoints, - this.filters.minAssists, - this.filters.minRebounds, - this.filters.minEfficiency, - ].filter((value) => value !== null && String(value).trim().length > 0).length; - } - get showLoadingPlaceholder(): boolean { return this.loading && this.players.length === 0; } - get isUpdatingResults(): boolean { - return this.loading && this.players.length > 0; - } - private sortPlayers(players: PlayerSummary[]): PlayerSummary[] { return [...players].sort((a, b) => this.numericStat(b, this.activeSort) - this.numericStat(a, this.activeSort)); }