Browse Source

P2-46: restpunten in TASKS + builderlessen (TabBar ombouwen, bracket-JSON-path) in CLAUDE

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
bob 13 hours ago
parent
commit
67d1645f59
2 changed files with 36 additions and 5 deletions
  1. 27 0
      CLAUDE.md
  2. 9 5
      TASKS.md

+ 27 - 0
CLAUDE.md

@@ -939,6 +939,33 @@ vraag voor Bob. Wat wél werkt: **"+" op de TabBar Page-rij → 2e tab-icoon
 Marketplace-resultaten) → kaart → daarna de parameters binden. **De tree loopt
 na zo'n insert vaak achter** (nieuwe node zonder chevron); ga af op de export.
 
+**Een TabBar ombouwen naar losse secties: sleep de Column uit elke `TabBar Page`
+rechtstreeks op de buitenste Column — dat werkt wél (2026-09-19, P2-46).** Eerder
+stond hier dat inhoud van een TabBar Page niet te verslepen is; dat gold voor
+*tussen twee pages*. Naar een ouder buiten de TabBar landt hij gewoon op positie 0.
+Daarna de lege TabBar via rechtsklik → rode prullenbak weghalen. Zes dingen die
+in die sessie steeds terugkwamen:
+- **Geef gelijknamige nodes eerst een naam** (naamveld rechtsboven, `triple_click`
+  + typen + Return): drie rijen "Column" onder elkaar zijn anders niet uit elkaar
+  te houden, en één keer werd zo de verkeerde kolom hernoemd.
+- **De boom verschuift na élke selectie of rename.** Maak vóór elke sleep een
+  verse `zoom`; een klik op een onthouden y-positie pakte 2× een verkeerde node
+  (een `Icon` uit een Row, een `TextWebsite` naar een andere kolom). Bij twijfel
+  meteen de undo-knop in de werkbalk.
+- **Een sleep die niet landt laat de bronrij gedimd achter**; dezelfde sleep een
+  tweede keer landt vrijwel altijd.
+- **JSON Path met een streepje in de sleutel wil bracket-notatie:** `$[:].e-mail`
+  geeft "End of input expected", `$[:]['e-mail']` wordt geaccepteerd en komt
+  ongewijzigd in `api_calls.dart`.
+- **Fill Color van een Container wissen: het kruisje naast de kleurnaam** — geen
+  kleurdialoog nodig. Zo verdwenen de roze/rode debugkleuren van twee blokken.
+- **In de Single-Condition-dialoog opent het "+"-icoon van First Value de
+  UNSET-rij, maar die rendert niet; een klik op de plek eronder raakt de
+  operator-dropdown.** Werkende volgorde: "+" klikken → hover ver weg → hover op
+  de rij → `zoom` (de rij staat er dan vaag) → potlood klikken. En de
+  Predefined-Path-zoeker matcht op de exacte getter-naam: de establishment-getters
+  heten deels `establshment*` (typfout), dus zoek op `establshmentInh`.
+
 **Een subtree in één keer weghalen: rechtsklik de node → rode prullenbak in de
 zwevende iconenbalk.** "Remove Widget" haalt alleen die ene node weg en tilt de
 kinderen op. Bevestigd 2026-09-17 op `Expanded > Container > Column > component`.

+ 9 - 5
TASKS.md

@@ -942,11 +942,15 @@ op de Home-tabs), en de horeca-sortering (alfabetisch, live).
 ---
 
 
-### P2-46 · EventCurrent: layout event-kaart + zaak-blok zonder tabs · Eigenaar: Claude — bezig (2026-09-19)
-- Backup: Duplicate Page `EventCurrent` en Duplicate Component `EvenementHorecagelegenheid`/`EvenementInfo` vóór de ombouw.
-- Event-kaart (`EvenementInfo` + logo op `EventCurrent`): logo links vast formaat, adres/entree/contact/website rechts ernaast.
-- Zaak-blok (`EvenementHorecagelegenheid`): tabs eruit, één kaart (logo links, naam/labels/adres/telefoon/e-mail rechts, links-rij, `inhoud`, foto's); Openingstijden en Bezorgen als secties met Visibility op de data; 500 px-Container op `EventCurrent` weg.
-- Bugfixes: `EstablishmentInfoCall.establishmentEmail` leest `$[:].email` maar de API levert `e-mail`; drie `phone: false`-velden; telefoon-guard via `valueOrDefault` (altijd waar); "Hello World"-Text; tweede Website-link opent relatief pad `url` (host ervoor nodig).
+### P2-46 · EventCurrent: restpunten na de ombouw van 2026-09-19 · Eigenaar: Claude
+**Gedaan (export- en toestel-geverifieerd, profile-build op emulator-5554):** backups `EventCurrentCopy`, `EvenementHorecagelegenheidCopy`, `EvenementInfoCopy`; event-kaart met logo 96×96 links en `EvenementInfo` (Expanded) + Maps-knop rechts; de 500 px-Container weg; `EvenementHorecagelegenheid` zonder tabs: `RowLogo` (logo 96×96 + `ColumnRechts`: titel, labels, adres/plaats, telefoon, e-mail), links in een `Wrap` (Menukaart/Website/Facebook/Instagram/X/"Op Uitgaanskrant.com" met host ervoor), `TextInhoud` (zaakbeschrijving), foto's, `ColumnOpening` en `ColumnBezorgen` met Visibility op `openingstijden`/`bezorgtijden`; e-mail leest nu `$[:]['e-mail']`; drie `phone: false`-vlaggen weg; telefoon-guard zonder `valueOrDefault`; Entree-blok alleen bij `entreeprijs`; roze/rode vulkleuren van Entree/Contact weg; EN-vertalingen "Opening hours"/"On Uitgaanskrant.com".
+**Nog te doen:**
+- Verse profile-build op het toestel voor de láátste ronde (TextInhoud, Menukaart in de Wrap, adres-Row `[Icon, TextAdres, TextPlaats]` met spacing 6): route `uitgaanskrant://uitgaanskrant.com/eventCurrent?nid=214689&horecaid=50013` (A la Ferme, heeft openingstijden) en `horecaid=67233` (Carré, alles leeg).
+- `ColumnBezorgen` is alleen in de "verborgen"-tak getest; geen Amsterdamse zaak met `bezorgtijden` gevonden op de eerste 40 van Eetgelegenheden. Zoek er een (`bezorgtijden`/`bestellink` niet null) en bekijk de sectie.
+- `TextInhoud` staat onderaan `ColumnInfo` (na het Contact-blok), Body Medium, zonder Max Lines — overweeg padding-top 8 en een kop "Over deze zaak".
+- EN-vertaling van de nieuwe literal "Menukaart" (`22xoyrqe`) controleren in `internationalization.dart`.
+- Niet getoond: `kvk` (zaak), `organisator` (event, vrijwel altijd leeg). Bewust overgeslagen.
+- Bob: de drie backup-kopieën (`EventCurrentCopy`, `EvenementHorecagelegenheidCopy`, `EvenementInfoCopy`) op de P2-7-opruimlijst zetten zodra de nieuwe pagina goedgekeurd is. Claude verwijdert niets.
 
 ## 🗄 Drupal / views — open