Przeglądaj źródła

Taak 113 stap 7: Home omgebouwd naar FilterBalkComponent

Convert to Component op Row+TextField; App State zoekOpen stuurt nu zowel
het zoekveld als de slider (opposite). Update Page on Changes aan.
Verse export + dart analyze: 0 errors.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob 23 godzin temu
rodzic
commit
add46ce322
1 zmienionych plików z 1 dodań i 1 usunięć
  1. 1 1
      TASKS.md

+ 1 - 1
TASKS.md

@@ -31,7 +31,7 @@ Google Play en één doorloop die alleen Bob kan doen.
 | **112** | `SelectStateDropDownComponent`: hartje bij tikken ook in het favorietenlijstje | **Eigenaar: Bob (of Claude in een eigen sessie).** De laadkant is af (2026-09-20): bij het openen vult `favorieteGemeenteIds` zich uit `favorieten_gemeenten.json`, dus het hartje klopt meteen. Wat nog ontbreekt: tik je op het hartje, dan verandert het lijstje eronder pas na opnieuw openen. Nodig: één custom function `favorietenLijstToggle(lijst, nid, titel, parentNid, parentTitel)` die het item toevoegt of verwijdert, plus in beide IconButton-ketens (If- én Else-tak van de `ConditionalBuilder`) een `Update Component State → favorieteGemeentenLijst` met die functie. ~10 argument-bindingen; kan ook met een extra `drupalRequest`-GET (6 argumenten per tak) i.p.v. de functie |
 
 
-| **113** | Filterbalk (zoek + datum + chips) ook op `PUitgaanPage` | **Eigenaar: Claude — bezig (2026-09-20).** `PUitgaanPage` bedient **provincie én gemeente** (10 drawer-ingangen) — één keer bouwen dekt beide. Drupal is al klaar (gemeten: `townid` + `datum_van`/`datum_tot`/`zoek` werkt op plaats-, gemeente- én provincie-tid, mét tegencontrole). Recept + valkuilen van *Convert to Component* en *Update Page on Changes* staan in `CLAUDE.md`. **✅ Stap 5 af:** `UitgaanstabelCall` heeft nu variabelen + query-parameters `datum_van`/`datum_tot`/`zoek` (lege defaults, dus geen gedragswijziging voor bestaande aanroepers). **✅ Stap 6 af:** `PUitgaantabelKaartComponent` heeft `datumVan`/`datumTot`/`zoekterm` (**Required uit** → `String?`, geen `!`-crash) en die zijn gebonden in de Backend Query; `page` staat nog op *Pagination - Next Page Number*. Beide geverifieerd met verse export + `dart analyze` (0 errors). **Nog te doen:** (1) op **Home** de `Row` in een `Column` wrappen + `TextField` erin slepen, dán *Convert to Component* → `FilterBalkComponent`; (2) component-state `zoekOpen` (Boolean, false) + zoekknop → *Update Component State* → **Toggle Value**, en de *Clear Text Fields*-actie opnieuw op het TextField richten; (3) slider-verstopconditie op Home hangt aan `textFieldFocusNode.hasFocus` — wijst na conversie naar buiten, dus omzetten (ontwerpkeuze Bob); (4) `PUitgaanPage`: component erin, waarden doorgeven via `filterDatumVan`/`filterDatumTot`, **Update Page on Changes aan**. Testcomponent `FilterBalkKanweg` + `homeCopy`/`PUitgaanPageCopy` mogen na afloop op de opruimlijst |
+| **113** | Filterbalk (zoek + datum + chips) ook op `PUitgaanPage` | **Eigenaar: Claude — bezig (2026-09-20).** `PUitgaanPage` bedient **provincie én gemeente** (10 drawer-ingangen) — één keer bouwen dekt beide. Drupal was al klaar (gemeten). **✅ Stap 5:** `UitgaanstabelCall` heeft `datum_van`/`datum_tot`/`zoek` (lege defaults). **✅ Stap 6:** `PUitgaantabelKaartComponent` heeft `datumVan`/`datumTot`/`zoekterm` (Required uit → `String?`), gebonden in de Backend Query; `page` intact. **✅ Stap 7 (Home omgebouwd):** `Row` + `TextField` gewrapt in een `Column` en via *Convert to Component* → **`FilterBalkComponent`**. App State **`zoekOpen`** (Boolean, niet persisted) aangemaakt; TextField-zichtbaarheid en de slider-conditie hangen daaraan (slider via *Apply Opposite Statement*), zoekknop → *Update App State* → **Toggle Value**, en **Update Page on Changes** aan op de instantie (`updateOnChange: true`). Export bevestigt de hele keten; `dart analyze` **0 errors**. Slider verdwijnt nu bij een tik op het **zoekicoon** (was: bij focus in het veld) — bewuste keuze Bob. **Nog te doen:** `PUitgaanPage`: `FilterBalkComponent` erin, `datumVan`/`datumTot` via `filterDatumVan`/`filterDatumTot` + `zoekterm` doorgeven aan `PUitgaantabelKaartComponent`, en Update Page on Changes aan. **Restpunten:** (a) `parameter1` op `FilterBalkComponent` is door de conversie automatisch ontstaan en wordt nergens meer gelezen — mag weg (Bob); (b) page state `zoekOpen` op Home is daarmee ook overbodig; (c) App State **`zoekActief`** (Boolean) bestond al en heeft **0 gebruikers** — opruimkandidaat; (d) testcomponent `FilterBalkKanweg` + `homeCopy`/`PUitgaanPageCopy` mogen op de opruimlijst |
 
 ## 👤 BOB — OPEN, in volgorde van wat de livegang blokkeert