Переглянути джерело

Home: zoekveld blijft zichtbaar bij toetsenbord + sliderkaart-overflow weg

Zoekveld (tablet landschap, veld viel volledig onder het toetsenbord):
- resizeToAvoidBottomInset uit op de pagina (overflow van 63 px weg)
- slider wijkt tijdens zoeken: Visibility op Widget Focus State van het
  zoekveld, met Apply Opposite Statement
- On Focus Change -> Rebuild Page op het zoekveld; zonder die actie
  genereert FlutterFlow geen focus-listener en doet de conditie niets

Sliderkaart (103 px overflow bij een event met 4 categorielabels, alle
labels behouden - geen take(N)):
- Align(1.0, 1.0) om elk label gewist, labels stromen nu naast elkaar
- tagCategorieComponent: padding onder 18 -> 4, tekst Max Lines 1 +
  ellipsis
- hoogtes gelijkgetrokken: carousel 4x 240, Home-container 250 -> 280

Op emulator-5554 nagemeten: 103 -> 63 -> 21 -> 0 px, zoeken op "jazz"
geeft 6 treffers, slider komt terug zodra de focus weggaat.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
bob 2 годин тому
батько
коміт
8fe6eaeb89
49 змінених файлів з 3274 додано та 1078 видалено
  1. 56 0
      CLAUDE.md
  2. 40 1
      TASKS.md
  3. 4 4
      ios/Runner.xcodeproj/project.pbxproj
  4. 36 0
      lib/app_state.dart
  5. 10 8
      lib/backend/api_requests/api_calls.dart
  6. 1 1
      lib/components/header_buttons_component_widget.dart
  7. 1 1
      lib/evenement/evenement_component/evenement_component_widget.dart
  8. 45 42
      lib/evenement/evenement_horecagelegenheid/evenement_horecagelegenheid_widget.dart
  9. 24 45
      lib/evenement/evenement_info/evenement_info_widget.dart
  10. 2 2
      lib/favorieten/favorieten_widget.dart
  11. 25 21
      lib/flutter_flow/custom_functions.dart
  12. 6 6
      lib/flutter_flow/flutter_flow_theme.dart
  13. 54 367
      lib/flutter_flow/internationalization.dart
  14. 10 44
      lib/flutter_flow/nav/nav.dart
  15. 87 57
      lib/horecagelegenhedenoverzicht/event_current/event_current_widget.dart
  16. 2 1
      lib/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_current/horecagelegenheden_overzicht_current_widget.dart
  17. 1 1
      lib/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_provincie_page/horecagelegenheden_overzicht_provincie_page_widget.dart
  18. 9 9
      lib/horecagelegenhedenoverzicht/horecagelegenheid_current/horecagelegenheid_current_model.dart
  19. 32 41
      lib/horecagelegenhedenoverzicht/horecagelegenheid_current/horecagelegenheid_current_widget.dart
  20. 1 0
      lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_model.dart
  21. 22 13
      lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_widget.dart
  22. 70 0
      lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_model.dart
  23. 459 0
      lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_widget.dart
  24. 224 227
      lib/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_widget.dart
  25. 1 8
      lib/index.dart
  26. 56 0
      lib/kanweg/kanweg_header_buttons_component_copy/kanweg_header_buttons_component_copy_model.dart
  27. 245 0
      lib/kanweg/kanweg_header_buttons_component_copy/kanweg_header_buttons_component_copy_widget.dart
  28. 1 1
      lib/kanweg/kanweghorecagelegenheid_current_copy/kanweghorecagelegenheid_current_copy_widget.dart
  29. 1 1
      lib/login/login/login_widget.dart
  30. 1 1
      lib/mijn_profiel/mijn_profiel_widget.dart
  31. 1 1
      lib/selecteer_plaats/selectprovinciegemeente/selectprovinciegemeente_widget.dart
  32. 0 2
      lib/shared/drawer_component/drawer_component_model.dart
  33. 123 102
      lib/shared/drawer_component/drawer_component_widget.dart
  34. 2 2
      lib/shared/drawer_component_copy/drawer_component_copy_widget.dart
  35. 3 1
      lib/shared/tag_categorie_component/tag_categorie_component_widget.dart
  36. 7 7
      lib/stadsactiviteit_aanmaken/stadsactiviteit_aanmaken_widget.dart
  37. 159 0
      lib/thuis_bezorgen/thuis_bezorgen_model.dart
  38. 272 0
      lib/thuis_bezorgen/thuis_bezorgen_widget.dart
  39. 7 7
      lib/uitgaansevenement_aanmaken/uitgaansevenement_aanmaken_widget.dart
  40. 16 0
      lib/uitgaanspaginas/home/home_model.dart
  41. 145 18
      lib/uitgaanspaginas/home/home_widget.dart
  42. 243 0
      lib/uitgaanspaginas/home_copy2/home_copy2_model.dart
  43. 712 0
      lib/uitgaanspaginas/home_copy2/home_copy2_widget.dart
  44. 4 4
      lib/uitgaanspaginas/home_uitgaan_slider_component/home_uitgaan_slider_component_widget.dart
  45. 10 0
      lib/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_model.dart
  46. 12 5
      lib/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_widget.dart
  47. 22 21
      lib/uitgaanspaginas/p_uitgaan_slider_kaart_component/p_uitgaan_slider_kaart_component_widget.dart
  48. 9 5
      lib/uitgaanspaginas/uitgaantabel_kaart/uitgaantabel_kaart_widget.dart
  49. 1 1
      lib/wachtwoord_vergeten/wachtwoord_vergeten_widget.dart

+ 56 - 0
CLAUDE.md

@@ -984,6 +984,27 @@ na één klik op de chevron 20-30 s volledig met rust, dan renderen de opties
 vanzelf (zonder hover-truc); (2) na een `Duplicate` van een `Text` erft de
 kopie de **Engelse vertaling** van het origineel, dus check P1-17 daarna.
 
+**Een widget laten reageren op het focussen van een TextField: bron
+"Widget Focus State", plús een `On Focus Change`-actie die een rebuild
+afdwingt — die tweede stap genereert FlutterFlow NIET vanzelf.** Bevestigd
+2026-09-17 (Home: de slider wijkt zodra het zoekveld focus krijgt, zodat het
+veld niet onder het toetsenbord verdwijnt). Twee delen:
+1. **De conditie.** In de Visibility-dialoog (Type: Boolean) levert de zoekterm
+   `zoek` de bron **Widget Focus State → "TextField (…) Has Focus"** op — een
+   echte boolean, dus géén Single Condition nodig. Negatie via **Apply Opposite
+   Statement**. Geeft `if (!(_model.xFocusNode?.hasFocus ?? false))`.
+2. **De rebuild.** `hasFocus` wordt alleen gelezen tijdens een build, en niets
+   triggert er een bij een focuswissel: de export toont dan kaal
+   `_model.xFocusNode ??= FocusNode();` zonder listener. De conditie doet dus
+   niets. **Fix: zet op het TextField Actions → "+ Add New Trigger" → On Focus
+   Change → actie `Rebuild Page`** (State Management, naast Update App State).
+   Daarna staat er `xFocusNode!.addListener(() async { safeSetState(() {}); })`
+   en werkt de conditie. Een eigen App State-boolean is hiervoor overbodig.
+**Algemener: een `..addListener(() => safeSetState(() {}))` in de export hangt
+in dit project altijd op een tekst*controller*, nooit op een focusNode** — een
+conditie op focus is dus zonder deze actie stil kapot, en `dart analyze` ziet
+daar niets van.
+
 **Checken of een `List<String>` App State-variabele een waarde bevat
 ("bevat dit item?"): geen aparte condition-operator, maar een
 transform binnen "Set from Variable".** Bevestigd 2026-08-11 op
@@ -2104,6 +2125,10 @@ plekken wissen op de kind-container: **Alignment** (↺ naast de sectiekop) én,
 onderaan het Container-paneel, **Child → Child Alignment** (eigen ↺). Pas als
 beide leeg zijn verdwijnt `alignment:` uit de export en stromen de kinderen
 naast elkaar. Het canvas laat dat meteen zien.
+**Zelfde oorzaak, tweede vindplaats (2026-09-17, `PUitgaanSliderKaartComponent`):**
+daar stond `Align(alignment: (1.0, 1.0))` om elk categorielabel, waardoor vier
+labels vier regels van 40 dp vulden en de kaart met 103 px overliep. Check dit
+patroon dus bij élke Wrap met labels; het komt uit hetzelfde bouwsel.
 
 **Een node "onder" een `Row` zetten die het enige kind van een Container is:
 Wrap Widget → Column op de Row, dan slepen.** Volledig recept 2026-09-16
@@ -3134,6 +3159,37 @@ terwijl een verborgen-maar-aanwezig widget er wél in staat. Reken bij
 een `Row` met vaste breedtes dus altijd even uit of N × breedte binnen
 de smalste doeldevice-breedte past (telefoon-AVD = 411dp).
 
+**Wél een overflow-melding, maar je weet niet wélke widget de ruimte opeet:
+vraag de render-tree op bij de draaiende DEBUG-app via de Dart VM service.**
+Dat geeft per RenderBox de exacte `constraints` en `size` — meten in plaats van
+schatten, en het scheelde 2026-09-17 een reeks gok-builds bij de sliderkaart.
+Recept (de app moet via `ff-run-fvm.sh` draaien, dus debug):
+```
+adb -s <device> logcat -d | grep -o "The Dart VM service is listening on http://[^ ]*"
+adb -s <device> forward --list          # host-poort die naar die poort wijst
+B="http://127.0.0.1:<hostpoort>/<token>="
+ID=$(curl -s "$B/getVM" | python3 -c "import sys,json;print(json.load(sys.stdin)['result']['isolates'][0]['id'])")
+curl -s "$B/ext.flutter.debugDumpRenderTree?isolateId=$ID" > tree.json
+```
+De dump is groot (hier 2 MB), dus schrijf 'm naar een bestand en zoek gericht:
+`grep -n "OVERFLOWING" tree.json` wijst de RenderFlex aan, en de regels eronder
+geven `creator:` (het volledige widget-pad, inclusief componentnaam) plus de
+`constraints`/`size`. Tel daarna de `size: Size(...)` van de directe kinderen op
+— dan zie je meteen welk blok de boosdoener is. Concreet leverde dat op: kolom
+kreeg 208 dp en wilde 311, waarvan **165 dp categorielabels** tegen 58 titel,
+20 datum, 24 zaak en 44 adres. Zonder die cijfers had ik op de verkeerde plek
+(titel/adres afkappen) zitten sleutelen.
+
+**Een vaste kaarthoogte wordt vaak op drie plekken tegelijk bepaald — trek ze
+gelijk vóór je aan één ervan draait.** Bij de Home-slider (2026-09-17) stonden
+naast elkaar: `Container(height: 250)` op de pagina, `Container(height:
+MediaQuery.height * 0.32)` in het component, en een responsive
+`180/220/260/300` op de Carousel. De grootste verloor: de gevraagde 300 werd op
+de tablet stil teruggeknepen tot 212, en alleen de kaart met de meeste inhoud
+klapte eruit — waardoor het probleem per kaart leek te verschillen. Zoek bij
+een overflow in een carousel/slider dus eerst álle `height`-waarden in de keten
+op, en zet ze op één consistente waarde (nu: Home 280, carousel 4× 240).
+
 **Layoutkeuze voor een afhankelijke keten van dropdowns (provincie →
 gemeente → plaats): een gewone `Column`, niet `Wrap` en al helemaal
 niet `StaggeredView`.** Overwogen en verworpen 2026-09-03:

+ 40 - 1
TASKS.md

@@ -1,5 +1,43 @@
 ## ▶ Nu aan de beurt (stand 2026-09-14)
 
+### ✅ Sessie 2026-09-17 (Claude in de builder, Bob kijkt mee) — zoekveld onder toetsenbord + sliderkaart-overflow
+
+**1. Het zoekveld op Home was onbereikbaar op een tablet in landschap** (het
+toetsenbord dekte het af, plus `BOTTOM OVERFLOWED BY 63 PIXELS`). Oorzaak: het
+toetsenbord eet daar 451 van de 800 dp, en header + slider vulden samen al 320 dp.
+Opgelost met, alle drie export-geverifieerd en op emulator-5554 nagemeten:
+- `home` → **Disable Resize To Avoid Bottom Inset aan** (`resizeToAvoidBottomInset:
+  false`) — haalt de overflow weg.
+- De slider-`Container` krijgt Visibility → Conditional op **Widget Focus State →
+  "TextField (Zoek op titel) Has Focus"** met *Apply Opposite Statement*: tijdens
+  het zoeken wijkt de slider en staat het veld direct onder de header.
+- Op het zoekveld: Actions → **On Focus Change → Rebuild Page**. Zonder die actie
+  genereert FlutterFlow geen focus-listener en doet de conditie stil niets — zie
+  `CLAUDE.md`.
+Getest: veld aantikken → slider weg, veld + chips + tabs + 3 kaarten in beeld;
+`jazz` typen → 6 treffers; elders tikken → slider terug, zoekterm blijft.
+
+**2. Sliderkaart liep 103 px over** (event met vier categorielabels). Bob:
+aantal labels niet beperken, wel afkorten. Reeks 103 → 63 → 21 → **0**:
+- `PUitgaanSliderKaartComponent`: de `Align(1.0, 1.0)` om elk label gewist →
+  labels stromen naast elkaar (zelfde patroon als P2-34 op de horecakaart).
+- `tagCategorieComponent`: padding onder **18 → 4 dp** (regelhoogte 40 → 24) en
+  op de tekst **Max Lines 1 + Ellipsis**, zodat een breed label afkort i.p.v.
+  twee regels hoog te worden.
+- Hoogtes gelijkgetrokken: Carousel 180/220/260/300 → **4× 240**, Home-container
+  **250 → 280**. Alle vier labels staan nu op de kaart.
+
+**Twee punten die nog bij Bob liggen:**
+- Het zoekveld staat nu op **width 260** (was 200, tussenstap na het terugdraaien
+  van full-width). Prima zo, of terug naar 200?
+- App State **`zoekActief`** (Boolean) is aangemaakt maar uiteindelijk niet
+  gebruikt — Rebuild Page bleek genoeg. Laten staan of opruimen? *(Claude ruimt
+  niets op.)*
+
+*Terzijde, geen regressie: zoeken op Home geeft landelijke treffers (Rotterdam,
+Maastricht) terwijl de header Amsterdam toont — Home is bewust landelijk, Bob
+bevestigd 2026-09-17.*
+
 *Sessie 2026-09-15 laat (Claude, builder + verse export per stap, `dart analyze`
 0 errors): **restpunt P1-23** — de 12 klikbare teksten (website, menukaart,
 bestellink, Facebook, Twitter, Instagram) op `HorecagelegenheidCurrent` en
@@ -166,7 +204,8 @@ de website-homepage; `/nl/user/register` is anoniem bereikbaar (200).
 
 
 - **77 · "Account aanmaken" ontbreekt in de app, en een uitgelogde gebruiker
-  ziet juist "Uitloggen". Eigenaar: Claude (opdracht Bob 2026-09-17).**
+  ziet juist "Uitloggen". Eigenaar: Claude — bezig (sessie 2026-09-17; Bob
+  akkoord op het hele rijtje, inloggen in-app).**
   Gemeten in de export van 17 sep: `Favorieten` heeft **geen login-guard** — je
   komt er ook zonder in te loggen. Tab 4 (*Gebruiker*) toont dan wél gewoon
   **"Uitloggen"** (`275gmehq`, r.788) en **"Account verwijderen"**

+ 4 - 4
ios/Runner.xcodeproj/project.pbxproj

@@ -49,8 +49,8 @@
 		97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
 		97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
 		97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
-		6436409627A31CDA00820AF7 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
-		6436409C27A31CDD00820AF7 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+		6436409427A31CD700820AF7 /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+		6436409D27A31CD300820AF7 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
 		97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
 		A9C17DEFA21738E5FBD7F54A /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; };
 		B8285832C7E7A3262A5A897C /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -317,8 +317,8 @@
 		6436409C27A31CD800820AF7 /* InfoPlist.strings */ = {
 			isa = PBXVariantGroup;
 			children = (
-				6436409627A31CDA00820AF7 /* nl */,
-				6436409C27A31CDD00820AF7 /* en */,
+				6436409427A31CD700820AF7 /* nl */,
+				6436409D27A31CD300820AF7 /* en */,
 			);
 			name = InfoPlist.strings;
 			sourceTree = "<group>";

+ 36 - 0
lib/app_state.dart

@@ -584,6 +584,22 @@ class FFAppState extends ChangeNotifier {
     debugLogAppState(this);
   }
 
+  String _zoekterm = '';
+  String get zoekterm => _zoekterm;
+  set zoekterm(String value) {
+    _zoekterm = value;
+
+    debugLogAppState(this);
+  }
+
+  bool _zoekActief = false;
+  bool get zoekActief => _zoekActief;
+  set zoekActief(bool value) {
+    _zoekActief = value;
+
+    debugLogAppState(this);
+  }
+
   Map<String, DebugDataField> toDebugSerializableMap() => {
         'userToken': debugSerializeParam(
           userToken,
@@ -821,6 +837,26 @@ class FFAppState extends ChangeNotifier {
               'reference=Ch8KFwoLZGF0dW1GaWx0ZXISCHRxdnh0ZmZicgIIA3oAWgtkYXR1bUZpbHRlcg==',
           name: 'String',
           nullable: false,
+        ),
+        'zoekterm': debugSerializeParam(
+          zoekterm,
+          ParamType.String,
+          link:
+              'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
+          searchReference:
+              'reference=ChwKFAoIem9la3Rlcm0SCG1qYWVibmkwcgIIA3oAWgh6b2VrdGVybQ==',
+          name: 'String',
+          nullable: false,
+        ),
+        'zoekActief': debugSerializeParam(
+          zoekActief,
+          ParamType.bool,
+          link:
+              'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=appValues&appValuesTab=state',
+          searchReference:
+              'reference=Ch4KFgoKem9la0FjdGllZhIIdm1tcXM1bW9yAggFegBaCnpvZWtBY3RpZWY=',
+          name: 'bool',
+          nullable: false,
         )
       };
 }

+ 10 - 8
lib/backend/api_requests/api_calls.dart

@@ -39,7 +39,7 @@ class PlaatsenBijGemeenteCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: false,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -83,7 +83,7 @@ class EntreeoptiesCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: false,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -108,7 +108,7 @@ class CategorieenCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: false,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -248,6 +248,7 @@ class HomeTabelCall {
     String? displayId = 'services_2',
     String? datumVan = '',
     String? datumTot = '',
+    String? zoek = '',
   }) async {
     return ApiManager.instance.makeApiCall(
       callName: 'homeTabel',
@@ -260,6 +261,7 @@ class HomeTabelCall {
         'display_id': displayId,
         'datum_van': datumVan,
         'datum_tot': datumTot,
+        'zoek': zoek,
       },
       returnBody: true,
       encodeBodyUtf8: false,
@@ -341,7 +343,7 @@ class HomeSliderCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: true,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -429,7 +431,7 @@ class UitgaanstabelCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: true,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -510,7 +512,7 @@ class UitgaanSliderCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: true,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -791,7 +793,7 @@ class HorecagelegenheidEventsCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: true,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );
@@ -940,7 +942,7 @@ class EvenementCall {
       returnBody: true,
       encodeBodyUtf8: false,
       decodeUtf8: true,
-      cache: false,
+      cache: true,
       isStreamingApi: false,
       alwaysAllowBody: false,
     );

+ 1 - 1
lib/components/header_buttons_component_widget.dart

@@ -200,7 +200,7 @@ class _HeaderButtonsComponentWidgetState
                   padding: EdgeInsetsDirectional.fromSTEB(4.0, 0.0, 0.0, 0.0),
                   child: FlutterFlowIconButton(
                     borderColor: Color(0x00FF0000),
-                    borderRadius: 30.0,
+                    borderRadius: 8.0,
                     borderWidth: 1.0,
                     buttonSize: 50.0,
                     fillColor: FlutterFlowTheme.of(context).secondary,

+ 1 - 1
lib/evenement/evenement_component/evenement_component_widget.dart

@@ -226,7 +226,7 @@ class _EvenementComponentWidgetState extends State<EvenementComponentWidget>
                 'title',
               ),
               style: FlutterFlowTheme.of(context).headlineLarge.override(
-                    font: GoogleFonts.roboto(
+                    font: GoogleFonts.notoSerif(
                       fontWeight:
                           FlutterFlowTheme.of(context).headlineLarge.fontWeight,
                       fontStyle:

+ 45 - 42
lib/evenement/evenement_horecagelegenheid/evenement_horecagelegenheid_widget.dart

@@ -187,22 +187,19 @@ class _EvenementHorecagelegenheidWidgetState
                     ),
                     'HorecaNaam',
                   ),
-                  style: FlutterFlowTheme.of(context).headlineLarge.override(
+                  style: FlutterFlowTheme.of(context).titleLarge.override(
                         font: GoogleFonts.roboto(
                           fontWeight: FlutterFlowTheme.of(context)
-                              .headlineLarge
+                              .titleLarge
                               .fontWeight,
-                          fontStyle: FlutterFlowTheme.of(context)
-                              .headlineLarge
-                              .fontStyle,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).titleLarge.fontStyle,
                         ),
                         letterSpacing: 0.0,
-                        fontWeight: FlutterFlowTheme.of(context)
-                            .headlineLarge
-                            .fontWeight,
-                        fontStyle: FlutterFlowTheme.of(context)
-                            .headlineLarge
-                            .fontStyle,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).titleLarge.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).titleLarge.fontStyle,
                       ),
                 ),
               ),
@@ -241,29 +238,42 @@ class _EvenementHorecagelegenheidWidgetState
                         (categoriehorecaIndex) {
                       final categoriehorecaItem =
                           categoriehoreca[categoriehorecaIndex];
-                      return Container(
-                        decoration: BoxDecoration(
-                          color: Color(0xFFC84E4E),
-                          boxShadow: [
-                            BoxShadow(
-                              blurRadius: 4.0,
-                              color: Color(0x33000000),
-                              offset: Offset(
-                                0.0,
-                                2.0,
-                              ),
-                            )
-                          ],
-                        ),
-                        child: Padding(
-                          padding: EdgeInsetsDirectional.fromSTEB(
-                              2.0, 0.0, 2.0, 0.0),
-                          child: Text(
-                            categoriehorecaItem,
-                            style: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .override(
-                                  font: GoogleFonts.roboto(
+                      return Padding(
+                        padding:
+                            EdgeInsetsDirectional.fromSTEB(7.0, 0.0, 7.0, 0.0),
+                        child: Container(
+                          decoration: BoxDecoration(
+                            color: FlutterFlowTheme.of(context).tertiary,
+                            boxShadow: [
+                              BoxShadow(
+                                blurRadius: 4.0,
+                                color: Colors.transparent,
+                                offset: Offset(
+                                  0.0,
+                                  2.0,
+                                ),
+                              )
+                            ],
+                          ),
+                          child: Padding(
+                            padding: EdgeInsetsDirectional.fromSTEB(
+                                2.0, 0.0, 2.0, 0.0),
+                            child: Text(
+                              categoriehorecaItem,
+                              style: FlutterFlowTheme.of(context)
+                                  .bodyMedium
+                                  .override(
+                                    font: GoogleFonts.roboto(
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontStyle,
+                                    ),
+                                    color: FlutterFlowTheme.of(context)
+                                        .secondaryBackground,
+                                    letterSpacing: 0.0,
                                     fontWeight: FlutterFlowTheme.of(context)
                                         .bodyMedium
                                         .fontWeight,
@@ -271,14 +281,7 @@ class _EvenementHorecagelegenheidWidgetState
                                         .bodyMedium
                                         .fontStyle,
                                   ),
-                                  letterSpacing: 0.0,
-                                  fontWeight: FlutterFlowTheme.of(context)
-                                      .bodyMedium
-                                      .fontWeight,
-                                  fontStyle: FlutterFlowTheme.of(context)
-                                      .bodyMedium
-                                      .fontStyle,
-                                ),
+                            ),
                           ),
                         ),
                       );

+ 24 - 45
lib/evenement/evenement_info/evenement_info_widget.dart

@@ -127,54 +127,32 @@ class _EvenementInfoWidgetState extends State<EvenementInfoWidget>
             mainAxisSize: MainAxisSize.max,
             mainAxisAlignment: MainAxisAlignment.start,
             children: [
-              Column(
-                mainAxisSize: MainAxisSize.max,
-                children: [
-                  Text(
-                    valueOrDefault<String>(
-                      widget!.adres,
-                      'Adres onbekend',
-                    ),
-                    style: FlutterFlowTheme.of(context).bodyMedium.override(
-                          font: GoogleFonts.roboto(
-                            fontWeight: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .fontWeight,
-                            fontStyle: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .fontStyle,
-                          ),
-                          letterSpacing: 0.0,
-                          fontWeight: FlutterFlowTheme.of(context)
-                              .bodyMedium
-                              .fontWeight,
-                          fontStyle:
-                              FlutterFlowTheme.of(context).bodyMedium.fontStyle,
-                        ),
-                  ),
-                  Text(
-                    valueOrDefault<String>(
-                      widget!.plaats,
-                      'Plaats onbekend',
-                    ),
-                    style: FlutterFlowTheme.of(context).bodyMedium.override(
-                          font: GoogleFonts.roboto(
-                            fontWeight: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .fontWeight,
-                            fontStyle: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .fontStyle,
-                          ),
-                          letterSpacing: 0.0,
+              Padding(
+                padding: EdgeInsetsDirectional.fromSTEB(0.0, 0.0, 4.0, 0.0),
+                child: Icon(
+                  Icons.location_on_sharp,
+                  color: FlutterFlowTheme.of(context).primaryText,
+                  size: 20.0,
+                ),
+              ),
+              Expanded(
+                child: Text(
+                  '${widget!.adres}, ${widget!.plaats}',
+                  style: FlutterFlowTheme.of(context).bodyMedium.override(
+                        font: GoogleFonts.roboto(
                           fontWeight: FlutterFlowTheme.of(context)
                               .bodyMedium
                               .fontWeight,
                           fontStyle:
                               FlutterFlowTheme.of(context).bodyMedium.fontStyle,
                         ),
-                  ),
-                ],
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      ),
+                ),
               ),
             ],
           ),
@@ -270,9 +248,8 @@ class _EvenementInfoWidgetState extends State<EvenementInfoWidget>
                 await launchURL(widget!.website!);
               },
               child: Text(
-                valueOrDefault<String>(
-                  widget!.website,
-                  'website',
+                FFLocalizations.of(context).getText(
+                  'khjv0wcp' /* Website */,
                 ),
                 style: FlutterFlowTheme.of(context).bodyMedium.override(
                       font: GoogleFonts.roboto(
@@ -281,11 +258,13 @@ class _EvenementInfoWidgetState extends State<EvenementInfoWidget>
                         fontStyle:
                             FlutterFlowTheme.of(context).bodyMedium.fontStyle,
                       ),
+                      color: FlutterFlowTheme.of(context).secondary,
                       letterSpacing: 0.0,
                       fontWeight:
                           FlutterFlowTheme.of(context).bodyMedium.fontWeight,
                       fontStyle:
                           FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      decoration: TextDecoration.underline,
                     ),
               ),
             ),

+ 2 - 2
lib/favorieten/favorieten_widget.dart

@@ -150,7 +150,7 @@ class _FavorietenWidgetState extends State<FavorietenWidget>
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(
@@ -243,7 +243,7 @@ class _FavorietenWidgetState extends State<FavorietenWidget>
                           ),
                           Tab(
                             text: FFLocalizations.of(context).getText(
-                              'jwojezxv' /* Gebruiker */,
+                              'y9b1k3hk' /* Gebruiker */,
                             ),
                           ),
                         ],

+ 25 - 21
lib/flutter_flow/custom_functions.dart

@@ -199,7 +199,7 @@ List<dynamic> filterHorecagelegenheden(
   }).toList();
 }
 
-String? datumVoorApi(String? datum) {
+String? dISABLEdatumVoorApi(String? datum) {
   if (datum == null) return '';
   final s = datum.trim();
   if (s.isEmpty) return '';
@@ -279,20 +279,22 @@ List<dynamic>? categorieAlsLijst(dynamic categorie) {
 }
 
 String? filterDatumVan(String? keuze) {
-  if (keuze == 'Vandaag') keuze = 'vandaag';
-  if (keuze == 'Dit weekend') keuze = 'weekend';
-  if (keuze == 'Deze week') keuze = 'week';
-  if (keuze == null) {
+  final k = (keuze ?? '').toLowerCase().trim();
+  String soort = '';
+  if (k.contains('weekend')) {
+    soort = 'weekend';
+  } else if (k.contains('vandaag') || k.contains('today')) {
+    soort = 'vandaag';
+  } else if (k.contains('week')) {
+    soort = 'week';
+  }
+  if (soort == '') {
     return '';
   }
   final nu = DateTime.now();
   int extra = 0;
-  if (keuze == 'weekend') {
-    if (nu.weekday < 6) {
-      extra = 6 - nu.weekday;
-    }
-  } else if (keuze != 'vandaag' && keuze != 'week') {
-    return '';
+  if (soort == 'weekend' && nu.weekday < 6) {
+    extra = 6 - nu.weekday;
   }
   final start = DateTime(nu.year, nu.month, nu.day + extra);
   final maand = start.month.toString().padLeft(2, '0');
@@ -301,20 +303,22 @@ String? filterDatumVan(String? keuze) {
 }
 
 String? filterDatumTot(String? keuze) {
-  if (keuze == 'Vandaag') keuze = 'vandaag';
-  if (keuze == 'Dit weekend') keuze = 'weekend';
-  if (keuze == 'Deze week') keuze = 'week';
-  if (keuze == null) {
+  final k = (keuze ?? '').toLowerCase().trim();
+  String soort = '';
+  if (k.contains('weekend')) {
+    soort = 'weekend';
+  } else if (k.contains('vandaag') || k.contains('today')) {
+    soort = 'vandaag';
+  } else if (k.contains('week')) {
+    soort = 'week';
+  }
+  if (soort == '') {
     return '';
   }
   final nu = DateTime.now();
   int extra = 0;
-  if (keuze == 'weekend' || keuze == 'week') {
-    if (nu.weekday < 7) {
-      extra = 7 - nu.weekday;
-    }
-  } else if (keuze != 'vandaag') {
-    return '';
+  if (soort != 'vandaag' && nu.weekday < 7) {
+    extra = 7 - nu.weekday;
   }
   final eind = DateTime(nu.year, nu.month, nu.day + extra);
   final maand = eind.month.toString().padLeft(2, '0');

+ 6 - 6
lib/flutter_flow/flutter_flow_theme.dart

@@ -212,23 +212,23 @@ class ThemeTypography extends Typography {
         fontWeight: FontWeight.w600,
         fontSize: 36.0,
       );
-  String get headlineLargeFamily => 'Roboto';
+  String get headlineLargeFamily => 'Noto Serif';
   bool get headlineLargeIsCustom => false;
-  TextStyle get headlineLarge => GoogleFonts.roboto(
+  TextStyle get headlineLarge => GoogleFonts.notoSerif(
         color: theme.primaryText,
         fontWeight: FontWeight.w600,
         fontSize: 32.0,
       );
-  String get headlineMediumFamily => 'Roboto';
+  String get headlineMediumFamily => 'Noto Serif';
   bool get headlineMediumIsCustom => false;
-  TextStyle get headlineMedium => GoogleFonts.roboto(
+  TextStyle get headlineMedium => GoogleFonts.notoSerif(
         color: theme.primaryText,
         fontWeight: FontWeight.w600,
         fontSize: 28.0,
       );
-  String get headlineSmallFamily => 'Roboto';
+  String get headlineSmallFamily => 'Noto Serif';
   bool get headlineSmallIsCustom => false;
-  TextStyle get headlineSmall => GoogleFonts.roboto(
+  TextStyle get headlineSmall => GoogleFonts.notoSerif(
         color: theme.primaryText,
         fontWeight: FontWeight.w600,
         fontSize: 24.0,

+ 54 - 367
lib/flutter_flow/internationalization.dart

@@ -152,7 +152,7 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
     },
     'pj545url': {
       'nl': 'Veld wissen',
-      'en': 'Favorite',
+      'en': 'Erase field',
     },
     't8h5f8ir': {
       'nl': 'Wachtwoord',
@@ -160,7 +160,7 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
     },
     'n3cyffso': {
       'nl': 'Wachtwoord tonen/verbergen',
-      'en': 'Favorite',
+      'en': 'Show/hide Password',
     },
     'gkx4luhw': {
       'nl': 'Inloggen',
@@ -193,6 +193,10 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'nl': 'Bezorgen',
       'en': 'Delivery',
     },
+    'jwojezxv': {
+      'nl': 'Agenda',
+      'en': 'Agenda',
+    },
     'ukbd1ac9': {
       'nl': 'Alle horecagelegenheden',
       'en': 'All venues',
@@ -204,25 +208,29 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
   },
   // home
   {
+    'qflzdn1h': {
+      'nl': 'Zoek op titel',
+      'en': 'Select on title',
+    },
     '8khvlnye': {
       'nl': 'Alles',
-      'en': '',
+      'en': 'All',
     },
     'iov8u1yi': {
       'nl': 'Vandaag',
-      'en': '',
+      'en': 'Today',
     },
     'gco4jgol': {
       'nl': 'Dit weekend',
-      'en': '',
+      'en': 'This weekend',
     },
     'h6ou1q9q': {
       'nl': 'Deze week',
-      'en': '',
+      'en': 'This week',
     },
     'g09d1fb5': {
       'nl': 'Alles',
-      'en': '',
+      'en': 'All',
     },
     'eor4c9rz': {
       'nl': 'Uitgaan',
@@ -253,11 +261,11 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
   {
     'xsyz36fr': {
       'nl': 'Kies je gemeente',
-      'en': '',
+      'en': 'Select Municipality',
     },
     'z0wynid6': {
       'nl': 'Je ziet dan het uitgaansnieuws van die gemeente in het menu.',
-      'en': '',
+      'en': 'You will see go out news of your municipality in the menu',
     },
     'vg44lbt3': {
       'nl': 'Home',
@@ -289,50 +297,11 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'en': 'Home',
     },
   },
-  // kanwegHorecagelegenhedenOverzicht
-  {
-    'cfmj0g86': {
-      'nl': 'Activiteiten',
-      'en': 'Cityactivities',
-    },
-    'zk6al0vg': {
-      'nl': 'TextField',
-      'en': '',
-    },
-    'od4c0ph1': {
-      'nl': 'Cultuur',
-      'en': 'Culture',
-    },
-    '4hoz3fa1': {
-      'nl': 'TextField',
-      'en': '',
-    },
-    'i9cdclh1': {
-      'nl': 'Eetgelegenheden',
-      'en': 'Eatery',
-    },
-    '9s07bzb1': {
-      'nl': 'Overnachten',
-      'en': 'Overnight',
-    },
-    'egcnfi7k': {
-      'nl': 'Uitgaan',
-      'en': 'Go Out',
-    },
-    '3i8p2r6z': {
-      'nl': 'Verhuur, catering',
-      'en': 'Renting, catering',
-    },
-    '9eldyvgz': {
-      'nl': 'Home',
-      'en': 'Home',
-    },
-  },
   // HorecagelegenhedenOverzichtProvinciePage
   {
     'mgbxk04v': {
       'nl': 'Activiteiten',
-      'en': 'Cityactivities',
+      'en': 'Activities',
     },
     '7x2d53vo': {
       'nl': 'Cultuur',
@@ -369,7 +338,7 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'nl':
           'Vul je gebruikersnaam of e-mailadres in. Je ontvangt een e-mail om je wachtwoord opnieuw in te stellen.',
       'en':
-          'Use your username or password to recieve an email to reset your password.',
+          'Enter your username or email address. You\'ll receive an email to reset your password.',
     },
     'ush5uxz1': {
       'nl': 'Gebruikersnaam of e-mailadres',
@@ -406,9 +375,9 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'nl': 'Favoriete Gelegenheden',
       'en': 'Favorite Establishment',
     },
-    'jwojezxv': {
+    'y9b1k3hk': {
       'nl': 'Gebruiker',
-      'en': 'User',
+      'en': 'Agenda',
     },
     '275gmehq': {
       'nl': 'Uitloggen',
@@ -451,50 +420,11 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'en': 'Home',
     },
   },
-  // favorietenCopy
-  {
-    'sxsbwdh5': {
-      'nl': 'Persoonlijke agenda',
-      'en': '',
-    },
-    '0n8r8p9y': {
-      'nl': 'Favoriete gemeenten',
-      'en': '',
-    },
-    '8f3r68yl': {
-      'nl': 'De gemeentes die je hebt gemarkeerd als favoriet.',
-      'en': '',
-    },
-    'onk58tcz': {
-      'nl': 'Favoriete Gelegenheden',
-      'en': '',
-    },
-    'yvdkblxt': {
-      'nl': '',
-      'en': '',
-    },
-    'htdoblfs': {
-      'nl': 'Gebruiker',
-      'en': '',
-    },
-    'xj88822s': {
-      'nl': 'Uitloggen',
-      'en': '',
-    },
-    '1lttf4eu': {
-      'nl': '',
-      'en': '',
-    },
-    'bclqbfp9': {
-      'nl': 'Home',
-      'en': 'Home',
-    },
-  },
   // kanwegTestUpload
   {
     'mw7suah8': {
       'nl': 'Test Upload',
-      'en': '',
+      'en': 'Test upload',
     },
     's7n2u93z': {
       'nl': 'Home',
@@ -572,19 +502,19 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
     },
     'dq3j79df': {
       'nl': 'Wanneer',
-      'en': 'Wanneer',
+      'en': 'When',
     },
     'dfa8vusy': {
       'nl': 'Datum',
-      'en': 'Datum',
+      'en': 'Date',
     },
     '7vogkwoh': {
       'nl': 'Datum',
-      'en': 'Datum',
+      'en': 'Date',
     },
     '71z3uvd8': {
       'nl': 'Datum eind',
-      'en': 'Datum eind',
+      'en': 'Date end',
     },
     '1k52hayg': {
       'nl': 'Datum eind',
@@ -755,33 +685,6 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'en': 'Home',
     },
   },
-  // kanwegHomeCopy
-  {
-    'l7r0djaf': {
-      'nl': 'Uitgaan',
-      'en': '',
-    },
-    'jegwuc6g': {
-      'nl': 'Activiteiten',
-      'en': '',
-    },
-    '8fahztli': {
-      'nl': 'Cultuur',
-      'en': '',
-    },
-    'p85c5ps2': {
-      'nl': 'Films',
-      'en': '',
-    },
-    '4z239l94': {
-      'nl': 'Jeugd',
-      'en': '',
-    },
-    '8hzld7t5': {
-      'nl': 'Home',
-      'en': '',
-    },
-  },
   // uitgaansevenementAanmaken
   {
     'opgbl8g0': {
@@ -957,91 +860,48 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'en': 'Home',
     },
   },
-  // kanweghorecagelegenheidCurrentCopy
+  // horecagelegenhedenOverzichtCurrent
   {
-    'ue87dvtq': {
-      'nl': 'Favoriet',
-      'en': 'Favorite',
-    },
-    'wxft9hbq': {
-      'nl': 'Info',
-      'en': 'Info',
-    },
-    'sg6018ij': {
-      'nl': 'Links',
-      'en': 'Links',
-    },
-    '4y9eogfi': {
-      'nl': 'Bezorgen',
-      'en': 'Bezorgen',
-    },
-    'g3ajtxn8': {
-      'nl': 'Alle horecagelegenheden',
-      'en': '',
-    },
-    'a3cva8iz': {
-      'nl': 'Home',
+    '5c1xrzjg': {
+      'nl': '',
       'en': '',
     },
-  },
-  // horecagelegenhedenOverzichtCurrent
-  {
     'qqb1howd': {
       'nl': 'Zoek op naam',
-      'en': '',
+      'en': 'Search title',
     },
     '8gwyy71q': {
       'nl': 'Activiteiten',
-      'en': 'Activiteiten',
+      'en': 'Activities',
     },
     'b8oov17m': {
       'nl': 'Cultuur',
-      'en': 'Cultuur',
+      'en': 'Culture',
     },
     'hnnqfnhk': {
       'nl': 'Eetgelegenheden',
-      'en': 'Eetgelegenheden',
+      'en': 'Restaurants',
     },
     'ykjsgvsf': {
       'nl': 'Overnachten',
-      'en': 'Overnachten',
+      'en': 'Accommodation',
     },
     'waxjo567': {
       'nl': 'Uitgaan',
-      'en': 'Uitgaan',
+      'en': 'Go out',
     },
     'er4hrrph': {
       'nl': 'Verhuur, catering',
-      'en': 'Verhuur, catering',
+      'en': 'Rent, catering',
     },
     '2bhbe1y0': {
       'nl': 'Home',
       'en': '',
     },
   },
-  // homeCopy
+  // thuisBezorgen
   {
-    'h4tuk5yz': {
-      'nl': 'Uitgaan',
-      'en': 'Go Out',
-    },
-    '5ls3ykhr': {
-      'nl': 'Activiteiten',
-      'en': 'Cityactivities',
-    },
-    'xbbkuxgt': {
-      'nl': 'Cultuur & Info',
-      'en': 'Culture & Info',
-    },
-    'yi7vplyx': {
-      'nl': 'Films',
-      'en': 'Moviews',
-    },
-    'wl0i9zwv': {
-      'nl': 'Jeugd',
-      'en': 'Youth',
-    },
-    'kevv0tbb': {
+    'xyig2ny4': {
       'nl': 'Home',
       'en': 'Home',
     },
@@ -1090,11 +950,11 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
     },
     'nosgkxy0': {
       'nl': 'Gemeente volgen',
-      'en': 'Add to favorites',
+      'en': 'Follow Municipality',
     },
     'elx7kse2': {
       'nl': 'Je volgt deze gemeente',
-      'en': 'Add to favorites',
+      'en': 'Municipality favorite',
     },
     '24bdnkhi': {
       'nl':
@@ -1252,14 +1112,18 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'nl': '',
       'en': '',
     },
+    'ukq39p63': {
+      'nl': 'Support pagina',
+      'en': 'Support page',
+    },
+    'nrk3tqrl': {
+      'nl': '',
+      'en': '',
+    },
     '0xszp35t': {
       'nl': 'Mijn Account',
       'en': 'My account',
     },
-    'vnwx710y': {
-      'nl': 'Terug',
-      'en': 'Favorite',
-    },
     '7qpu1l01': {
       'nl': 'v0001',
       'en': 'v0001',
@@ -1324,7 +1188,7 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
     },
     '5tdut8bf': {
       'nl': 'Bezorgen',
-      'en': 'Bezorgen',
+      'en': 'Delivery',
     },
   },
   // EvenementInfo
@@ -1333,6 +1197,10 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
       'nl': 'Entree: ',
       'en': 'Fee:',
     },
+    'khjv0wcp': {
+      'nl': 'Website',
+      'en': 'Website',
+    },
   },
   // GeenEvenementenComponent
   {
@@ -1371,194 +1239,13 @@ final kTranslationsMap = <Map<String, Map<String, String>>>[
   {
     'p3hbyhqm': {
       'nl': ', ',
-      'en': ',',
+      'en': ', ',
     },
     'q3hgdkv4': {
       'nl': 'Binnenkort meer...',
       'en': 'Soon more...',
     },
   },
-  // HeaderButtonsComponentCopymethartje
-  {
-    'eiqzkhnd': {
-      'nl': 'Menu openen',
-      'en': 'Open Menu',
-    },
-    'vakum2qi': {
-      'nl': 'Terug',
-      'en': 'Favorite',
-    },
-  },
-  // drawerComponentCopy
-  {
-    'v1jfssya': {
-      'nl': 'Zoek stad',
-      'en': 'Zoek stad',
-    },
-    'rvubhme5': {
-      'nl': '',
-      'en': '',
-    },
-    '67rxy2fu': {
-      'nl': 'Home',
-      'en': 'Home',
-    },
-    '6trl1sce': {
-      'nl': '',
-      'en': '',
-    },
-    'a5tz4648': {
-      'nl': 'Favorieten',
-      'en': 'Favorieten',
-    },
-    '32goj2nu': {
-      'nl': '',
-      'en': '',
-    },
-    'fcfgi92o': {
-      'nl': 'Gemeente',
-      'en': 'Gemeente',
-    },
-    'ig02peps': {
-      'nl': '',
-      'en': '',
-    },
-    '6b82korh': {
-      'nl': 'Uitgaan',
-      'en': 'Uitgaan',
-    },
-    'qnuzj30u': {
-      'nl': '',
-      'en': '',
-    },
-    'qauy99kh': {
-      'nl': 'Activiteiten',
-      'en': 'Activiteiten',
-    },
-    'mcilhmgs': {
-      'nl': '',
-      'en': '',
-    },
-    '0brmy2i9': {
-      'nl': 'Cultuur',
-      'en': 'Cultuur',
-    },
-    't4stlo7r': {
-      'nl': '',
-      'en': '',
-    },
-    'zdzm2kft': {
-      'nl': 'Films',
-      'en': 'Films',
-    },
-    '43pzpcet': {
-      'nl': '',
-      'en': '',
-    },
-    '7y8gooyu': {
-      'nl': 'Jeugd',
-      'en': 'Jeugd',
-    },
-    'pwvtmajn': {
-      'nl': '',
-      'en': '',
-    },
-    'yi44pg8d': {
-      'nl': 'Horeca',
-      'en': 'Horeca',
-    },
-    'c2qo4uye': {
-      'nl': '',
-      'en': '',
-    },
-    'scudzlrz': {
-      'nl': 'Thuis bezorgen',
-      'en': 'Thuis bezorgen',
-    },
-    'r6wig7z5': {
-      'nl': '',
-      'en': '',
-    },
-    'xd7eqwxl': {
-      'nl': 'Provincie',
-      'en': 'Provincie',
-    },
-    'sqz2u2pl': {
-      'nl': '',
-      'en': '',
-    },
-    'yj3rblt8': {
-      'nl': 'Uitgaan',
-      'en': 'Uitgaan',
-    },
-    'fn51jnns': {
-      'nl': '',
-      'en': '',
-    },
-    'l7ctw4qh': {
-      'nl': 'Activiteiten',
-      'en': 'Activiteiten',
-    },
-    'soru5l6l': {
-      'nl': '',
-      'en': '',
-    },
-    'sb4jk0au': {
-      'nl': 'Cultuur',
-      'en': 'Cultuur',
-    },
-    '2f4z6yjw': {
-      'nl': '',
-      'en': '',
-    },
-    'ongjy3bk': {
-      'nl': 'Films',
-      'en': 'Films',
-    },
-    'a3ins4yo': {
-      'nl': '',
-      'en': '',
-    },
-    'weuu7eoq': {
-      'nl': 'Jeugd',
-      'en': 'Jeugd',
-    },
-    'uhq33691': {
-      'nl': '',
-      'en': '',
-    },
-    'hnq8op6j': {
-      'nl': 'Horeca',
-      'en': 'Horeca',
-    },
-    'xofddopp': {
-      'nl': '',
-      'en': '',
-    },
-    'xwiuhl5v': {
-      'nl': 'Mijn Account',
-      'en': 'Mijn Account',
-    },
-    'oug8uvm7': {
-      'nl': 'Terug',
-      'en': 'Favorite',
-    },
-    'vdrqgyci': {
-      'nl': 'v0001',
-      'en': 'v0001',
-    },
-  },
-  // kanwegHeaderButtonsComponentCopy
-  {
-    '2hj132xq': {
-      'nl': 'Menu openen',
-      'en': 'Open Menu',
-    },
-    '7ktnxpcu': {
-      'nl': 'Terug',
-      'en': 'Back',
-    },
-  },
   // Miscellaneous
   {
     '1wdja323': {

+ 10 - 44
lib/flutter_flow/nav/nav.dart

@@ -41,32 +41,24 @@ const debugRouteLinkMap = {
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=Event',
   '/eventCurrent':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=EventCurrent',
-  '/kanwegHorecagelegenhedenOverzicht':
-      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=kanwegHorecagelegenhedenOverzicht',
   '/horecagelegenhedenOverzichtProvinciePage':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenhedenOverzichtProvinciePage',
   '/wachtwoordVergeten':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=wachtwoordVergeten',
   '/favorieten':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=favorieten',
-  '/favorietenCopy':
-      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=favorietenCopy',
   '/kanwegTestUpload':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=kanwegTestUpload',
   '/mijnProfiel':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=mijnProfiel',
   '/stadsactiviteitAanmaken':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=stadsactiviteitAanmaken',
-  '/kanwegHomeCopy':
-      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=kanwegHomeCopy',
   '/uitgaansevenementAanmaken':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=uitgaansevenementAanmaken',
-  '/kanweghorecagelegenheidCurrentCopy':
-      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=kanweghorecagelegenheidCurrentCopy',
   '/horecagelegenhedenOverzichtCurrent':
       'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=horecagelegenhedenOverzichtCurrent',
-  '/homeCopy':
-      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy'
+  '/thuisBezorgen':
+      'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=thuisBezorgen'
 };
 
 class AppStateNotifier extends ChangeNotifier {
@@ -199,16 +191,6 @@ GoRouter createRouter(AppStateNotifier appStateNotifier) => GoRouter(
             ),
           ),
         ),
-        FFRoute(
-          name: KanwegHorecagelegenhedenOverzichtWidget.routeName,
-          path: KanwegHorecagelegenhedenOverzichtWidget.routePath,
-          builder: (context, params) => KanwegHorecagelegenhedenOverzichtWidget(
-            plaats: params.getParam(
-              'plaats',
-              ParamType.String,
-            ),
-          ),
-        ),
         FFRoute(
           name: HorecagelegenhedenOverzichtProvinciePageWidget.routeName,
           path: HorecagelegenhedenOverzichtProvinciePageWidget.routePath,
@@ -230,11 +212,6 @@ GoRouter createRouter(AppStateNotifier appStateNotifier) => GoRouter(
           path: FavorietenWidget.routePath,
           builder: (context, params) => FavorietenWidget(),
         ),
-        FFRoute(
-          name: FavorietenCopyWidget.routeName,
-          path: FavorietenCopyWidget.routePath,
-          builder: (context, params) => FavorietenCopyWidget(),
-        ),
         FFRoute(
           name: KanwegTestUploadWidget.routeName,
           path: KanwegTestUploadWidget.routePath,
@@ -250,11 +227,6 @@ GoRouter createRouter(AppStateNotifier appStateNotifier) => GoRouter(
           path: StadsactiviteitAanmakenWidget.routePath,
           builder: (context, params) => StadsactiviteitAanmakenWidget(),
         ),
-        FFRoute(
-          name: KanwegHomeCopyWidget.routeName,
-          path: KanwegHomeCopyWidget.routePath,
-          builder: (context, params) => KanwegHomeCopyWidget(),
-        ),
         FFRoute(
           name: UitgaansevenementAanmakenWidget.routeName,
           path: UitgaansevenementAanmakenWidget.routePath,
@@ -265,17 +237,6 @@ GoRouter createRouter(AppStateNotifier appStateNotifier) => GoRouter(
             ),
           ),
         ),
-        FFRoute(
-          name: KanweghorecagelegenheidCurrentCopyWidget.routeName,
-          path: KanweghorecagelegenheidCurrentCopyWidget.routePath,
-          builder: (context, params) =>
-              KanweghorecagelegenheidCurrentCopyWidget(
-            nid: params.getParam(
-              'nid',
-              ParamType.String,
-            ),
-          ),
-        ),
         FFRoute(
           name: HorecagelegenhedenOverzichtCurrentWidget.routeName,
           path: HorecagelegenhedenOverzichtCurrentWidget.routePath,
@@ -288,9 +249,14 @@ GoRouter createRouter(AppStateNotifier appStateNotifier) => GoRouter(
           ),
         ),
         FFRoute(
-          name: HomeCopyWidget.routeName,
-          path: HomeCopyWidget.routePath,
-          builder: (context, params) => HomeCopyWidget(),
+          name: ThuisBezorgenWidget.routeName,
+          path: ThuisBezorgenWidget.routePath,
+          builder: (context, params) => ThuisBezorgenWidget(
+            plaats: params.getParam(
+              'plaats',
+              ParamType.String,
+            ),
+          ),
         )
       ].map((r) => r.toRoute(appStateNotifier)).toList(),
       observers: ffNavigatorObservers,

+ 87 - 57
lib/horecagelegenhedenoverzicht/event_current/event_current_widget.dart

@@ -177,7 +177,7 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
               preferredSize:
                   Size.fromHeight(MediaQuery.sizeOf(context).height * 0.12),
               child: AppBar(
-                backgroundColor: FlutterFlowTheme.of(context).info,
+                backgroundColor: FlutterFlowTheme.of(context).primaryText,
                 automaticallyImplyLeading: false,
                 actions: [],
                 flexibleSpace: FlexibleSpaceBar(
@@ -320,20 +320,31 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                               r'''$[0].title''',
                             ) !=
                             null)
-                          Padding(
-                            padding: EdgeInsetsDirectional.fromSTEB(
-                                0.0, 0.0, 8.0, 0.0),
-                            child: Text(
-                              valueOrDefault<String>(
-                                EvenementCall.eventTitle(
-                                  eventCurrentEvenementResponse.jsonBody,
+                          Expanded(
+                            child: Padding(
+                              padding: EdgeInsetsDirectional.fromSTEB(
+                                  8.0, 0.0, 8.0, 0.0),
+                              child: Text(
+                                valueOrDefault<String>(
+                                  EvenementCall.eventTitle(
+                                    eventCurrentEvenementResponse.jsonBody,
+                                  ),
+                                  'title',
                                 ),
-                                'title',
-                              ),
-                              style: FlutterFlowTheme.of(context)
-                                  .headlineLarge
-                                  .override(
-                                    font: GoogleFonts.roboto(
+                                textAlign: TextAlign.start,
+                                maxLines: 3,
+                                style: FlutterFlowTheme.of(context)
+                                    .headlineLarge
+                                    .override(
+                                      font: GoogleFonts.notoSerif(
+                                        fontWeight: FlutterFlowTheme.of(context)
+                                            .headlineLarge
+                                            .fontWeight,
+                                        fontStyle: FlutterFlowTheme.of(context)
+                                            .headlineLarge
+                                            .fontStyle,
+                                      ),
+                                      letterSpacing: 0.0,
                                       fontWeight: FlutterFlowTheme.of(context)
                                           .headlineLarge
                                           .fontWeight,
@@ -341,14 +352,7 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                                           .headlineLarge
                                           .fontStyle,
                                     ),
-                                    letterSpacing: 0.0,
-                                    fontWeight: FlutterFlowTheme.of(context)
-                                        .headlineLarge
-                                        .fontWeight,
-                                    fontStyle: FlutterFlowTheme.of(context)
-                                        .headlineLarge
-                                        .fontStyle,
-                                  ),
+                              ),
                             ),
                           ),
                         AlignedTooltip(
@@ -412,37 +416,59 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                         ),
                       ],
                     ),
-                    if (getJsonField(
-                          eventCurrentEvenementResponse.jsonBody,
-                          r'''$[0].datum''',
-                        ) !=
-                        null)
-                      Text(
-                        valueOrDefault<String>(
-                          EvenementCall.eventDate(
-                            eventCurrentEvenementResponse.jsonBody,
+                    Row(
+                      mainAxisSize: MainAxisSize.max,
+                      children: [
+                        Padding(
+                          padding: EdgeInsetsDirectional.fromSTEB(
+                              8.0, 0.0, 4.0, 0.0),
+                          child: Icon(
+                            Icons.calendar_month,
+                            color: FlutterFlowTheme.of(context).primaryText,
+                            size: 20.0,
                           ),
-                          'date',
                         ),
-                        style:
-                            FlutterFlowTheme.of(context).headlineSmall.override(
-                                  font: GoogleFonts.roboto(
-                                    fontWeight: FlutterFlowTheme.of(context)
-                                        .headlineSmall
-                                        .fontWeight,
-                                    fontStyle: FlutterFlowTheme.of(context)
-                                        .headlineSmall
-                                        .fontStyle,
+                        if (getJsonField(
+                              eventCurrentEvenementResponse.jsonBody,
+                              r'''$[0].datum''',
+                            ) !=
+                            null)
+                          Align(
+                            alignment: AlignmentDirectional(-1.0, 0.0),
+                            child: Padding(
+                              padding: EdgeInsetsDirectional.fromSTEB(
+                                  8.0, 0.0, 0.0, 0.0),
+                              child: Text(
+                                valueOrDefault<String>(
+                                  EvenementCall.eventDate(
+                                    eventCurrentEvenementResponse.jsonBody,
                                   ),
-                                  letterSpacing: 0.0,
-                                  fontWeight: FlutterFlowTheme.of(context)
-                                      .headlineSmall
-                                      .fontWeight,
-                                  fontStyle: FlutterFlowTheme.of(context)
-                                      .headlineSmall
-                                      .fontStyle,
+                                  'date',
                                 ),
-                      ),
+                                style: FlutterFlowTheme.of(context)
+                                    .titleMedium
+                                    .override(
+                                      font: GoogleFonts.roboto(
+                                        fontWeight: FlutterFlowTheme.of(context)
+                                            .titleMedium
+                                            .fontWeight,
+                                        fontStyle: FlutterFlowTheme.of(context)
+                                            .titleMedium
+                                            .fontStyle,
+                                      ),
+                                      letterSpacing: 0.0,
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .titleMedium
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .titleMedium
+                                          .fontStyle,
+                                    ),
+                              ),
+                            ),
+                          ),
+                      ],
+                    ),
                     Column(
                       mainAxisSize: MainAxisSize.min,
                       children: [
@@ -527,15 +553,17 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                                                   .fromSTEB(4.0, 1.0, 4.0, 1.0),
                                               child: Material(
                                                 color: Colors.transparent,
-                                                elevation: 3.0,
+                                                elevation: 0.0,
                                                 shape: RoundedRectangleBorder(
                                                   borderRadius:
                                                       BorderRadius.circular(
-                                                          2.0),
+                                                          0.0),
                                                 ),
                                                 child: Container(
                                                   decoration: BoxDecoration(
-                                                    color: Color(0xFF25CC3E),
+                                                    color: FlutterFlowTheme.of(
+                                                            context)
+                                                        .tertiary,
                                                     boxShadow: [
                                                       BoxShadow(
                                                         blurRadius: 4.0,
@@ -549,9 +577,9 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                                                     ],
                                                     borderRadius:
                                                         BorderRadius.circular(
-                                                            2.0),
+                                                            0.0),
                                                     border: Border.all(
-                                                      width: 0.5,
+                                                      width: 0.0,
                                                     ),
                                                   ),
                                                   child: Padding(
@@ -748,11 +776,12 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                               Container(
                                 width: MediaQuery.sizeOf(context).width * 1.0,
                                 decoration: BoxDecoration(
-                                  color: FlutterFlowTheme.of(context).alternate,
+                                  color: FlutterFlowTheme.of(context)
+                                      .secondaryBackground,
                                   boxShadow: [
                                     BoxShadow(
                                       blurRadius: 4.0,
-                                      color: Color(0x33000000),
+                                      color: Colors.transparent,
                                       offset: Offset(
                                         4.0,
                                         2.0,
@@ -761,7 +790,8 @@ class _EventCurrentWidgetState extends State<EventCurrentWidget>
                                   ],
                                   borderRadius: BorderRadius.circular(4.0),
                                   border: Border.all(
-                                    color: Colors.black,
+                                    color:
+                                        FlutterFlowTheme.of(context).alternate,
                                   ),
                                 ),
                                 child: wrapWithModel(

+ 2 - 1
lib/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_current/horecagelegenheden_overzicht_current_widget.dart

@@ -166,7 +166,7 @@ class _HorecagelegenhedenOverzichtCurrentWidgetState
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             iconTheme:
                 IconThemeData(color: FlutterFlowTheme.of(context).secondary),
             automaticallyImplyLeading: false,
@@ -309,6 +309,7 @@ class _HorecagelegenhedenOverzichtCurrentWidgetState
               Expanded(
                 child: Container(
                   decoration: BoxDecoration(
+                    color: FlutterFlowTheme.of(context).primaryBackground,
                     boxShadow: [
                       BoxShadow(
                         blurRadius: 4.0,

+ 1 - 1
lib/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_provincie_page/horecagelegenheden_overzicht_provincie_page_widget.dart

@@ -145,7 +145,7 @@ class _HorecagelegenhedenOverzichtProvinciePageWidgetState
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             iconTheme:
                 IconThemeData(color: FlutterFlowTheme.of(context).secondary),
             automaticallyImplyLeading: false,

+ 9 - 9
lib/horecagelegenhedenoverzicht/horecagelegenheid_current/horecagelegenheid_current_model.dart

@@ -5,7 +5,7 @@ import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
-import '/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_widget.dart';
+import '/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_widget.dart';
 import '/shared/drawer_component/drawer_component_widget.dart';
 import 'dart:ui';
 import '/custom_code/actions/index.dart' as actions;
@@ -46,9 +46,9 @@ class HorecagelegenheidCurrentModel
 
   // Model for GoogleMapsIconButton component.
   late GoogleMapsIconButtonModel googleMapsIconButtonModel;
-  // Model for HorecagelegenheidEventTabelComponentCopy component.
-  late HorecagelegenheidEventTabelComponentCopyModel
-      horecagelegenheidEventTabelComponentCopyModel;
+  // Model for HorecagelegenheidEventTabelComponentCurrent component.
+  late HorecagelegenheidEventTabelComponentCurrentModel
+      horecagelegenheidEventTabelComponentCurrentModel;
   // Model for drawerComponent component.
   late DrawerComponentModel drawerComponentModel;
   // Model for HeaderButtonsComponent component.
@@ -61,8 +61,8 @@ class HorecagelegenheidCurrentModel
   void initState(BuildContext context) {
     googleMapsIconButtonModel =
         createModel(context, () => GoogleMapsIconButtonModel());
-    horecagelegenheidEventTabelComponentCopyModel = createModel(
-        context, () => HorecagelegenheidEventTabelComponentCopyModel());
+    horecagelegenheidEventTabelComponentCurrentModel = createModel(
+        context, () => HorecagelegenheidEventTabelComponentCurrentModel());
     drawerComponentModel = createModel(context, () => DrawerComponentModel());
     headerButtonsComponentModel =
         createModel(context, () => HeaderButtonsComponentModel());
@@ -74,7 +74,7 @@ class HorecagelegenheidCurrentModel
   void dispose() {
     tabBarController?.dispose();
     googleMapsIconButtonModel.dispose();
-    horecagelegenheidEventTabelComponentCopyModel.dispose();
+    horecagelegenheidEventTabelComponentCurrentModel.dispose();
     drawerComponentModel.dispose();
     headerButtonsComponentModel.dispose();
   }
@@ -124,8 +124,8 @@ class HorecagelegenheidCurrentModel
         componentStates: {
           'googleMapsIconButtonModel (GoogleMapsIconButton)':
               googleMapsIconButtonModel?.toWidgetClassDebugData(),
-          'horecagelegenheidEventTabelComponentCopyModel (HorecagelegenheidEventTabelComponentCopy)':
-              horecagelegenheidEventTabelComponentCopyModel
+          'horecagelegenheidEventTabelComponentCurrentModel (HorecagelegenheidEventTabelComponentCurrent)':
+              horecagelegenheidEventTabelComponentCurrentModel
                   ?.toWidgetClassDebugData(),
           'drawerComponentModel (drawerComponent)':
               drawerComponentModel?.toWidgetClassDebugData(),

+ 32 - 41
lib/horecagelegenhedenoverzicht/horecagelegenheid_current/horecagelegenheid_current_widget.dart

@@ -5,7 +5,7 @@ import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
-import '/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_widget.dart';
+import '/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_widget.dart';
 import '/shared/drawer_component/drawer_component_widget.dart';
 import 'dart:ui';
 import '/custom_code/actions/index.dart' as actions;
@@ -55,7 +55,7 @@ class _HorecagelegenheidCurrentWidgetState
 
     _model.tabBarController = TabController(
       vsync: this,
-      length: 3,
+      length: 4,
       initialIndex: 0,
     )
       ..addListener(() => safeSetState(() {}))
@@ -191,7 +191,7 @@ class _HorecagelegenheidCurrentWidgetState
             appBar: PreferredSize(
               preferredSize: Size.fromHeight(80.0),
               child: AppBar(
-                backgroundColor: FlutterFlowTheme.of(context).info,
+                backgroundColor: FlutterFlowTheme.of(context).primaryText,
                 iconTheme: IconThemeData(
                     color: FlutterFlowTheme.of(context).secondary),
                 automaticallyImplyLeading: false,
@@ -232,11 +232,8 @@ class _HorecagelegenheidCurrentWidgetState
                     children: [
                       Container(
                         width: 366.1,
-                        height: 281.5,
-                        decoration: BoxDecoration(
-                          color:
-                              FlutterFlowTheme.of(context).secondaryBackground,
-                        ),
+                        height: 200.0,
+                        decoration: BoxDecoration(),
                         child: Builder(
                           builder: (context) {
                             final fotoos =
@@ -456,7 +453,7 @@ class _HorecagelegenheidCurrentWidgetState
                       ),
                       style:
                           FlutterFlowTheme.of(context).headlineMedium.override(
-                                font: GoogleFonts.roboto(
+                                font: GoogleFonts.notoSerif(
                                   fontWeight: FlutterFlowTheme.of(context)
                                       .headlineMedium
                                       .fontWeight,
@@ -539,10 +536,20 @@ class _HorecagelegenheidCurrentWidgetState
                                   's1b6yp7v' /* Bezorgen */,
                                 ),
                               ),
+                              Tab(
+                                text: FFLocalizations.of(context).getText(
+                                  'jwojezxv' /* Agenda */,
+                                ),
+                              ),
                             ],
                             controller: _model.tabBarController,
                             onTap: (i) async {
-                              [() async {}, () async {}, () async {}][i]();
+                              [
+                                () async {},
+                                () async {},
+                                () async {},
+                                () async {}
+                              ][i]();
                             },
                           ),
                         ),
@@ -1560,43 +1567,27 @@ class _HorecagelegenheidCurrentWidgetState
                                     ),
                                 ],
                               ),
+                              wrapWithModel(
+                                model: _model
+                                    .horecagelegenheidEventTabelComponentCurrentModel,
+                                updateCallback: () => safeSetState(() {}),
+                                child: Builder(builder: (_) {
+                                  return DebugFlutterFlowModelContext(
+                                    rootModel: _model.rootModel,
+                                    child:
+                                        HorecagelegenheidEventTabelComponentCurrentWidget(
+                                      nid: widget!.nid!,
+                                      horecaid: widget!.nid,
+                                    ),
+                                  );
+                                }),
+                              ),
                             ],
                           ),
                         ),
                       ],
                     ),
                   ),
-                  Expanded(
-                    child: Container(
-                      width: 462.72,
-                      height: 100.0,
-                      decoration: BoxDecoration(
-                        color: FlutterFlowTheme.of(context).secondaryBackground,
-                      ),
-                      child: Column(
-                        mainAxisSize: MainAxisSize.max,
-                        children: [
-                          Expanded(
-                            child: wrapWithModel(
-                              model: _model
-                                  .horecagelegenheidEventTabelComponentCopyModel,
-                              updateCallback: () => safeSetState(() {}),
-                              child: Builder(builder: (_) {
-                                return DebugFlutterFlowModelContext(
-                                  rootModel: _model.rootModel,
-                                  child:
-                                      HorecagelegenheidEventTabelComponentCopyWidget(
-                                    nid: widget!.nid!,
-                                    horecaid: widget!.nid,
-                                  ),
-                                );
-                              }),
-                            ),
-                          ),
-                        ],
-                      ),
-                    ),
-                  ),
                   FFButtonWidget(
                     onPressed: () async {
                       context.pushNamed(

+ 1 - 0
lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_model.dart

@@ -11,6 +11,7 @@ import 'package:cached_network_image/cached_network_image.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_blurhash/flutter_blurhash.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
 import 'package:google_fonts/google_fonts.dart';
 import 'package:octo_image/octo_image.dart';
 import 'package:provider/provider.dart';

+ 22 - 13
lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_copy/horecagelegenheid_event_tabel_component_copy_widget.dart

@@ -9,6 +9,7 @@ import 'package:cached_network_image/cached_network_image.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_blurhash/flutter_blurhash.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
 import 'package:google_fonts/google_fonts.dart';
 import 'package:octo_image/octo_image.dart';
 import 'package:provider/provider.dart';
@@ -124,11 +125,11 @@ class _HorecagelegenheidEventTabelComponentCopyWidgetState
             ),
           );
         }
-        final gridViewHorecagelegenheidEventsResponse = snapshot.data!;
+        final staggeredViewHorecagelegenheidEventsResponse = snapshot.data!;
         _model.debugBackendQueries[
                 'HorecagelegenheidEventsCall_statusCode_GridView_2f57d5kz'] =
             debugSerializeParam(
-          gridViewHorecagelegenheidEventsResponse.statusCode,
+          staggeredViewHorecagelegenheidEventsResponse.statusCode,
           ParamType.int,
           link:
               'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCopy',
@@ -138,7 +139,7 @@ class _HorecagelegenheidEventTabelComponentCopyWidgetState
         _model.debugBackendQueries[
                 'HorecagelegenheidEventsCall_responseBody_GridView_2f57d5kz'] =
             debugSerializeParam(
-          gridViewHorecagelegenheidEventsResponse.bodyText,
+          staggeredViewHorecagelegenheidEventsResponse.bodyText,
           ParamType.String,
           link:
               'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCopy',
@@ -150,7 +151,7 @@ class _HorecagelegenheidEventTabelComponentCopyWidgetState
         return Builder(
           builder: (context) {
             final evenementen = HorecagelegenheidEventsCall.items(
-                  gridViewHorecagelegenheidEventsResponse.jsonBody,
+                  staggeredViewHorecagelegenheidEventsResponse.jsonBody,
                 )?.toList() ??
                 [];
             if (evenementen.isEmpty) {
@@ -169,16 +170,24 @@ class _HorecagelegenheidEventTabelComponentCopyWidgetState
             );
             debugLogWidgetClass(_model);
 
-            return GridView.builder(
-              padding: EdgeInsets.zero,
-              gridDelegate: SliverGridDelegateWithFixedCrossAxisCount(
-                crossAxisCount: 2,
-                crossAxisSpacing: 10.0,
-                mainAxisSpacing: 10.0,
-                childAspectRatio: 3.0,
+            return MasonryGridView.builder(
+              gridDelegate: SliverSimpleGridDelegateWithFixedCrossAxisCount(
+                crossAxisCount: () {
+                  if (MediaQuery.sizeOf(context).width < kBreakpointSmall) {
+                    return 0;
+                  } else if (MediaQuery.sizeOf(context).width <
+                      kBreakpointMedium) {
+                    return 0;
+                  } else if (MediaQuery.sizeOf(context).width <
+                      kBreakpointLarge) {
+                    return 0;
+                  } else {
+                    return 0;
+                  }
+                }(),
               ),
-              shrinkWrap: true,
-              scrollDirection: Axis.vertical,
+              crossAxisSpacing: 10.0,
+              mainAxisSpacing: 10.0,
               itemCount: evenementen.length,
               itemBuilder: (context, evenementenIndex) {
                 final evenementenItem = evenementen[evenementenIndex];

+ 70 - 0
lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_model.dart

@@ -0,0 +1,70 @@
+import '/backend/api_requests/api_calls.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/shared/geen_evenementen_component/geen_evenementen_component_widget.dart';
+import 'dart:ui';
+import '/index.dart';
+import 'horecagelegenheid_event_tabel_component_current_widget.dart'
+    show HorecagelegenheidEventTabelComponentCurrentWidget;
+import 'package:cached_network_image/cached_network_image.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_blurhash/flutter_blurhash.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:octo_image/octo_image.dart';
+import 'package:provider/provider.dart';
+
+class HorecagelegenheidEventTabelComponentCurrentModel extends FlutterFlowModel<
+    HorecagelegenheidEventTabelComponentCurrentWidget> {
+  final Map<String, DebugDataField> debugGeneratorVariables = {};
+  final Map<String, DebugDataField> debugBackendQueries = {};
+  final Map<String, FlutterFlowModel> widgetBuilderComponents = {};
+  @override
+  void initState(BuildContext context) {}
+
+  @override
+  void dispose() {}
+
+  @override
+  WidgetClassDebugData toWidgetClassDebugData() => WidgetClassDebugData(
+        widgetParameters: {
+          'nid': debugSerializeParam(
+            widget?.nid,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+            searchReference:
+                'reference=ShUKDQoDbmlkEgZ6czZ2ZzhyBAgDIAFQAFoDbmlk',
+            name: 'String',
+            nullable: true,
+          ),
+          'horecaid': debugSerializeParam(
+            widget?.horecaid,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+            searchReference:
+                'reference=ShoKEgoIaG9yZWNhaWQSBmkyN3VwM3IECAMgAFAAWghob3JlY2FpZA==',
+            name: 'String',
+            nullable: true,
+          )
+        }.withoutNulls.entries,
+        generatorVariables: debugGeneratorVariables.entries,
+        backendQueries: debugBackendQueries.entries,
+        componentStates: {
+          ...widgetBuilderComponents.map(
+            (key, value) => MapEntry(
+              key,
+              value.toWidgetClassDebugData(),
+            ),
+          ),
+        }.withoutNulls.entries,
+        link:
+            'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd/tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+        searchReference:
+            'reference=OitIb3JlY2FnZWxlZ2VuaGVpZEV2ZW50VGFiZWxDb21wb25lbnRDdXJyZW50UABaK0hvcmVjYWdlbGVnZW5oZWlkRXZlbnRUYWJlbENvbXBvbmVudEN1cnJlbnQ=',
+        widgetClassName: 'HorecagelegenheidEventTabelComponentCurrent',
+      );
+}

+ 459 - 0
lib/horecagelegenhedenoverzicht/horecagelegenheid_event_tabel_component_current/horecagelegenheid_event_tabel_component_current_widget.dart

@@ -0,0 +1,459 @@
+import '/backend/api_requests/api_calls.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/shared/geen_evenementen_component/geen_evenementen_component_widget.dart';
+import 'dart:ui';
+import '/index.dart';
+import 'package:cached_network_image/cached_network_image.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_blurhash/flutter_blurhash.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:octo_image/octo_image.dart';
+import 'package:provider/provider.dart';
+import 'horecagelegenheid_event_tabel_component_current_model.dart';
+export 'horecagelegenheid_event_tabel_component_current_model.dart';
+
+class HorecagelegenheidEventTabelComponentCurrentWidget extends StatefulWidget {
+  const HorecagelegenheidEventTabelComponentCurrentWidget({
+    super.key,
+    required this.nid,
+    this.horecaid,
+  });
+
+  final String? nid;
+  final String? horecaid;
+
+  @override
+  State<HorecagelegenheidEventTabelComponentCurrentWidget> createState() =>
+      _HorecagelegenheidEventTabelComponentCurrentWidgetState();
+}
+
+class _HorecagelegenheidEventTabelComponentCurrentWidgetState
+    extends State<HorecagelegenheidEventTabelComponentCurrentWidget>
+    with RouteAware {
+  late HorecagelegenheidEventTabelComponentCurrentModel _model;
+
+  @override
+  void setState(VoidCallback callback) {
+    super.setState(callback);
+    _model.onUpdate();
+  }
+
+  @override
+  void initState() {
+    super.initState();
+    _model = createModel(
+        context, () => HorecagelegenheidEventTabelComponentCurrentModel());
+  }
+
+  @override
+  void dispose() {
+    routeObserver.unsubscribe(this);
+
+    _model.maybeDispose();
+
+    super.dispose();
+  }
+
+  @override
+  void didUpdateWidget(
+      HorecagelegenheidEventTabelComponentCurrentWidget oldWidget) {
+    super.didUpdateWidget(oldWidget);
+    _model.widget = widget;
+  }
+
+  @override
+  void didChangeDependencies() {
+    super.didChangeDependencies();
+    final route = DebugModalRoute.of(context);
+    if (route != null) {
+      routeObserver.subscribe(this, route);
+    }
+    debugLogGlobalProperty(context);
+  }
+
+  @override
+  void didPopNext() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPush() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPop() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  void didPushNext() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    DebugFlutterFlowModelContext.maybeOf(context)
+        ?.parentModelCallback
+        ?.call(_model);
+
+    return FutureBuilder<ApiCallResponse>(
+      future: HorecagelegenheidEventsCall.call(
+        horecanid: widget!.nid,
+      ),
+      builder: (context, snapshot) {
+        // Customize what your widget looks like when it's loading.
+        if (!snapshot.hasData) {
+          return Center(
+            child: SizedBox(
+              width: 80.0,
+              height: 80.0,
+              child: SpinKitFadingCircle(
+                color: FlutterFlowTheme.of(context).primary,
+                size: 80.0,
+              ),
+            ),
+          );
+        }
+        final staggeredViewHorecagelegenheidEventsResponse = snapshot.data!;
+        _model.debugBackendQueries[
+                'HorecagelegenheidEventsCall_statusCode_GridView_2f57d5kz'] =
+            debugSerializeParam(
+          staggeredViewHorecagelegenheidEventsResponse.statusCode,
+          ParamType.int,
+          link:
+              'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+          name: 'int',
+          nullable: false,
+        );
+        _model.debugBackendQueries[
+                'HorecagelegenheidEventsCall_responseBody_GridView_2f57d5kz'] =
+            debugSerializeParam(
+          staggeredViewHorecagelegenheidEventsResponse.bodyText,
+          ParamType.String,
+          link:
+              'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+          name: 'String',
+          nullable: false,
+        );
+        debugLogWidgetClass(_model);
+
+        return Builder(
+          builder: (context) {
+            final evenementen = HorecagelegenheidEventsCall.items(
+                  staggeredViewHorecagelegenheidEventsResponse.jsonBody,
+                )?.toList() ??
+                [];
+            if (evenementen.isEmpty) {
+              return GeenEvenementenComponentWidget();
+            }
+            _model.debugGeneratorVariables[
+                    'evenementen${evenementen.length > 100 ? ' (first 100)' : ''}'] =
+                debugSerializeParam(
+              evenementen.take(100),
+              ParamType.JSON,
+              isList: true,
+              link:
+                  'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+              name: 'dynamic',
+              nullable: false,
+            );
+            debugLogWidgetClass(_model);
+
+            return MasonryGridView.builder(
+              gridDelegate: SliverSimpleGridDelegateWithFixedCrossAxisCount(
+                crossAxisCount: () {
+                  if (MediaQuery.sizeOf(context).width < kBreakpointSmall) {
+                    return 1;
+                  } else if (MediaQuery.sizeOf(context).width <
+                      kBreakpointMedium) {
+                    return 1;
+                  } else if (MediaQuery.sizeOf(context).width <
+                      kBreakpointLarge) {
+                    return 2;
+                  } else {
+                    return 3;
+                  }
+                }(),
+              ),
+              crossAxisSpacing: 10.0,
+              mainAxisSpacing: 10.0,
+              itemCount: evenementen.length,
+              itemBuilder: (context, evenementenIndex) {
+                final evenementenItem = evenementen[evenementenIndex];
+                return InkWell(
+                  splashColor: Colors.transparent,
+                  focusColor: Colors.transparent,
+                  hoverColor: Colors.transparent,
+                  highlightColor: Colors.transparent,
+                  onTap: () async {
+                    context.pushNamed(
+                      EventCurrentWidget.routeName,
+                      queryParameters: {
+                        'nid': serializeParam(
+                          getJsonField(
+                            evenementenItem,
+                            r'''$.nid''',
+                          ).toString(),
+                          ParamType.String,
+                        ),
+                        'horecaid': serializeParam(
+                          widget!.horecaid,
+                          ParamType.String,
+                        ),
+                      }.withoutNulls,
+                    );
+                  },
+                  child: Column(
+                    mainAxisSize: MainAxisSize.max,
+                    children: [
+                      Row(
+                        mainAxisSize: MainAxisSize.max,
+                        children: [
+                          Expanded(
+                            child: Container(
+                              width: 200.0,
+                              decoration: BoxDecoration(
+                                color: FlutterFlowTheme.of(context)
+                                    .secondaryBackground,
+                              ),
+                              child: Align(
+                                alignment: AlignmentDirectional(-1.0, 0.0),
+                                child: Column(
+                                  mainAxisSize: MainAxisSize.max,
+                                  mainAxisAlignment: MainAxisAlignment.start,
+                                  crossAxisAlignment: CrossAxisAlignment.start,
+                                  children: [
+                                    Text(
+                                      getJsonField(
+                                        evenementenItem,
+                                        r'''$.titel''',
+                                      ).toString(),
+                                      style: FlutterFlowTheme.of(context)
+                                          .bodyLarge
+                                          .override(
+                                            font: GoogleFonts.roboto(
+                                              fontWeight:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodyLarge
+                                                      .fontWeight,
+                                              fontStyle:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodyLarge
+                                                      .fontStyle,
+                                            ),
+                                            letterSpacing: 0.0,
+                                            fontWeight:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodyLarge
+                                                    .fontWeight,
+                                            fontStyle:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodyLarge
+                                                    .fontStyle,
+                                          ),
+                                    ),
+                                    Text(
+                                      getJsonField(
+                                        evenementenItem,
+                                        r'''$.datum''',
+                                      ).toString(),
+                                      style: FlutterFlowTheme.of(context)
+                                          .bodySmall
+                                          .override(
+                                            font: GoogleFonts.roboto(
+                                              fontWeight:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodySmall
+                                                      .fontWeight,
+                                              fontStyle:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodySmall
+                                                      .fontStyle,
+                                            ),
+                                            letterSpacing: 0.0,
+                                            fontWeight:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodySmall
+                                                    .fontWeight,
+                                            fontStyle:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodySmall
+                                                    .fontStyle,
+                                          ),
+                                    ),
+                                    Text(
+                                      getJsonField(
+                                        evenementenItem,
+                                        r'''$.inhoud''',
+                                      ).toString(),
+                                      textAlign: TextAlign.start,
+                                      maxLines: 3,
+                                      style: FlutterFlowTheme.of(context)
+                                          .bodySmall
+                                          .override(
+                                            font: GoogleFonts.roboto(
+                                              fontWeight:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodySmall
+                                                      .fontWeight,
+                                              fontStyle:
+                                                  FlutterFlowTheme.of(context)
+                                                      .bodySmall
+                                                      .fontStyle,
+                                            ),
+                                            letterSpacing: 0.0,
+                                            fontWeight:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodySmall
+                                                    .fontWeight,
+                                            fontStyle:
+                                                FlutterFlowTheme.of(context)
+                                                    .bodySmall
+                                                    .fontStyle,
+                                          ),
+                                    ),
+                                  ],
+                                ),
+                              ),
+                            ),
+                          ),
+                          Expanded(
+                            child: Container(
+                              width: 200.0,
+                              decoration: BoxDecoration(
+                                color: FlutterFlowTheme.of(context)
+                                    .secondaryBackground,
+                              ),
+                              child: Stack(
+                                children: [
+                                  ClipRRect(
+                                    borderRadius: BorderRadius.circular(8.0),
+                                    child: OctoImage(
+                                      placeholderBuilder: (_) {
+                                        final blurHash =
+                                            'L6PZfSi_.AyE_3t7t7R**0o#DgR4';
+
+                                        if (!validateBlurhash(blurHash)) {
+                                          return const SizedBox.shrink();
+                                        }
+                                        return SizedBox.expand(
+                                          child: Image(
+                                            image: BlurHashImage(blurHash),
+                                            fit: BoxFit.cover,
+                                          ),
+                                        );
+                                      },
+                                      image: CachedNetworkImageProvider(
+                                        getJsonField(
+                                          evenementenItem,
+                                          r'''$.logo''',
+                                        ).toString(),
+                                      ),
+                                      width: 200.0,
+                                      height: 60.0,
+                                      fit: BoxFit.cover,
+                                    ),
+                                  ),
+                                  Builder(
+                                    builder: (context) {
+                                      final categorie = getJsonField(
+                                        evenementenItem,
+                                        r'''$.categorie''',
+                                      ).toList();
+                                      _model.debugGeneratorVariables[
+                                              'categorie${categorie.length > 100 ? ' (first 100)' : ''}'] =
+                                          debugSerializeParam(
+                                        categorie.take(100),
+                                        ParamType.JSON,
+                                        isList: true,
+                                        link:
+                                            'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidEventTabelComponentCurrent',
+                                        name: 'dynamic',
+                                        nullable: false,
+                                      );
+                                      debugLogWidgetClass(_model);
+
+                                      return Column(
+                                        mainAxisSize: MainAxisSize.max,
+                                        children: List.generate(
+                                            categorie.length, (categorieIndex) {
+                                          final categorieItem =
+                                              categorie[categorieIndex];
+                                          return Align(
+                                            alignment: AlignmentDirectional(
+                                                -0.92, 0.76),
+                                            child: Padding(
+                                              padding: EdgeInsetsDirectional
+                                                  .fromSTEB(8.0, 4.0, 8.0, 4.0),
+                                              child: Container(
+                                                decoration: BoxDecoration(
+                                                  color: Color(0xFF42E31C),
+                                                ),
+                                                child: Text(
+                                                  categorieItem.toString(),
+                                                  style: FlutterFlowTheme.of(
+                                                          context)
+                                                      .bodySmall
+                                                      .override(
+                                                        font:
+                                                            GoogleFonts.roboto(
+                                                          fontWeight:
+                                                              FlutterFlowTheme.of(
+                                                                      context)
+                                                                  .bodySmall
+                                                                  .fontWeight,
+                                                          fontStyle:
+                                                              FlutterFlowTheme.of(
+                                                                      context)
+                                                                  .bodySmall
+                                                                  .fontStyle,
+                                                        ),
+                                                        color: Colors.white,
+                                                        letterSpacing: 0.0,
+                                                        fontWeight:
+                                                            FlutterFlowTheme.of(
+                                                                    context)
+                                                                .bodySmall
+                                                                .fontWeight,
+                                                        fontStyle:
+                                                            FlutterFlowTheme.of(
+                                                                    context)
+                                                                .bodySmall
+                                                                .fontStyle,
+                                                      ),
+                                                ),
+                                              ),
+                                            ),
+                                          );
+                                        }),
+                                      );
+                                    },
+                                  ),
+                                ],
+                              ),
+                            ),
+                          ),
+                        ],
+                      ),
+                    ],
+                  ),
+                );
+              },
+            );
+          },
+        );
+      },
+    );
+  }
+}

+ 224 - 227
lib/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_widget.dart

@@ -130,14 +130,14 @@ class _HorecagelegenheidoverzichtKaartWidgetState
         ?.call(_model);
 
     return Padding(
-      padding: EdgeInsetsDirectional.fromSTEB(16.0, 16.0, 16.0, 16.0),
+      padding: EdgeInsetsDirectional.fromSTEB(12.0, 12.0, 12.0, 12.0),
       child: Container(
         decoration: BoxDecoration(
           color: FlutterFlowTheme.of(context).secondaryBackground,
           boxShadow: [
             BoxShadow(
               blurRadius: 4.0,
-              color: Color(0x33000000),
+              color: Colors.transparent,
               offset: Offset(
                 0.0,
                 2.0,
@@ -145,261 +145,258 @@ class _HorecagelegenheidoverzichtKaartWidgetState
               spreadRadius: 0.0,
             )
           ],
-          borderRadius: BorderRadius.circular(12.0),
+          borderRadius: BorderRadius.circular(8.0),
+          border: Border.all(
+            color: FlutterFlowTheme.of(context).alternate,
+            width: 2.0,
+          ),
         ),
-        child: Padding(
-          padding: EdgeInsets.all(12.0),
-          child: Row(
-            mainAxisSize: MainAxisSize.max,
-            children: [
-              Flexible(
-                child: Align(
-                  alignment: AlignmentDirectional(-1.0, 1.0),
-                  child: Stack(
-                    alignment: AlignmentDirectional(-1.0, 1.0),
-                    children: [
-                      Builder(
-                        builder: (context) {
-                          if ((widget!.logo != '') &&
-                              (widget!.logo != null && widget!.logo != '')) {
-                            return ClipRRect(
-                              borderRadius: BorderRadius.circular(8.0),
-                              child: OctoImage(
-                                placeholderBuilder: (_) {
-                                  final blurHash =
-                                      'L6PZfSi_.AyE_3t7t7R**0o#DgR4';
+        child: Column(
+          mainAxisSize: MainAxisSize.min,
+          crossAxisAlignment: CrossAxisAlignment.start,
+          children: [
+            Padding(
+              padding: EdgeInsets.all(12.0),
+              child: Row(
+                mainAxisSize: MainAxisSize.max,
+                children: [
+                  Flexible(
+                    child: Align(
+                      alignment: AlignmentDirectional(-1.0, 1.0),
+                      child: Stack(
+                        alignment: AlignmentDirectional(-1.0, 1.0),
+                        children: [
+                          Builder(
+                            builder: (context) {
+                              if ((widget!.logo != '') &&
+                                  (widget!.logo != null &&
+                                      widget!.logo != '')) {
+                                return ClipRRect(
+                                  borderRadius: BorderRadius.circular(8.0),
+                                  child: OctoImage(
+                                    placeholderBuilder: (_) {
+                                      final blurHash =
+                                          'L6PZfSi_.AyE_3t7t7R**0o#DgR4';
 
-                                  if (!validateBlurhash(blurHash)) {
-                                    return const SizedBox.shrink();
-                                  }
-                                  return SizedBox.expand(
-                                    child: Image(
-                                      image: BlurHashImage(blurHash),
-                                      fit: BoxFit.cover,
+                                      if (!validateBlurhash(blurHash)) {
+                                        return const SizedBox.shrink();
+                                      }
+                                      return SizedBox.expand(
+                                        child: Image(
+                                          image: BlurHashImage(blurHash),
+                                          fit: BoxFit.cover,
+                                        ),
+                                      );
+                                    },
+                                    image: CachedNetworkImageProvider(
+                                      widget!.logo!,
                                     ),
-                                  );
-                                },
-                                image: CachedNetworkImageProvider(
-                                  widget!.logo!,
-                                ),
-                                width: 100.0,
-                                height: 100.0,
-                                fit: BoxFit.cover,
-                              ),
-                            );
-                          } else {
-                            return Icon(
-                              Icons.image_not_supported,
-                              color: FlutterFlowTheme.of(context).primaryText,
-                              size: 24.0,
-                            );
-                          }
-                        },
-                      ),
-                    ],
-                  ),
-                ),
-              ),
-              Expanded(
-                child: Container(
-                  width: () {
-                    if (MediaQuery.sizeOf(context).width < kBreakpointSmall) {
-                      return 200.0;
-                    } else if (MediaQuery.sizeOf(context).width <
-                        kBreakpointMedium) {
-                      return 250.0;
-                    } else if (MediaQuery.sizeOf(context).width <
-                        kBreakpointLarge) {
-                      return 300.0;
-                    } else {
-                      return 350.0;
-                    }
-                  }(),
-                  decoration: BoxDecoration(),
-                  child: Column(
-                    mainAxisSize: MainAxisSize.min,
-                    mainAxisAlignment: MainAxisAlignment.start,
-                    crossAxisAlignment: CrossAxisAlignment.start,
-                    children: [
-                      Text(
-                        valueOrDefault<String>(
-                          widget!.titel,
-                          'Titel onbekend',
-                        ),
-                        maxLines: 2,
-                        style:
-                            FlutterFlowTheme.of(context).titleMedium.override(
-                                  font: GoogleFonts.roboto(
-                                    fontWeight: FontWeight.w600,
-                                    fontStyle: FlutterFlowTheme.of(context)
-                                        .titleMedium
-                                        .fontStyle,
+                                    width: 100.0,
+                                    height: 100.0,
+                                    fit: BoxFit.cover,
                                   ),
-                                  letterSpacing: 0.0,
-                                  fontWeight: FontWeight.w600,
-                                  fontStyle: FlutterFlowTheme.of(context)
-                                      .titleMedium
-                                      .fontStyle,
-                                ),
+                                );
+                              } else {
+                                return Icon(
+                                  Icons.image_not_supported,
+                                  color:
+                                      FlutterFlowTheme.of(context).primaryText,
+                                  size: 24.0,
+                                );
+                              }
+                            },
+                          ),
+                        ],
                       ),
-                      Column(
+                    ),
+                  ),
+                  Expanded(
+                    child: Container(
+                      width: () {
+                        if (MediaQuery.sizeOf(context).width <
+                            kBreakpointSmall) {
+                          return 200.0;
+                        } else if (MediaQuery.sizeOf(context).width <
+                            kBreakpointMedium) {
+                          return 250.0;
+                        } else if (MediaQuery.sizeOf(context).width <
+                            kBreakpointLarge) {
+                          return 300.0;
+                        } else {
+                          return 350.0;
+                        }
+                      }(),
+                      decoration: BoxDecoration(),
+                      child: Column(
                         mainAxisSize: MainAxisSize.min,
+                        mainAxisAlignment: MainAxisAlignment.start,
                         crossAxisAlignment: CrossAxisAlignment.start,
                         children: [
                           Text(
                             valueOrDefault<String>(
-                              widget!.adres,
-                              'Adres onbekend',
+                              widget!.titel,
+                              'Titel onbekend',
                             ),
+                            maxLines: 2,
                             style: FlutterFlowTheme.of(context)
-                                .bodyMedium
+                                .titleMedium
                                 .override(
                                   font: GoogleFonts.roboto(
-                                    fontWeight: FlutterFlowTheme.of(context)
-                                        .bodyMedium
-                                        .fontWeight,
+                                    fontWeight: FontWeight.w600,
                                     fontStyle: FlutterFlowTheme.of(context)
-                                        .bodyMedium
+                                        .titleMedium
                                         .fontStyle,
                                   ),
-                                  color: FlutterFlowTheme.of(context)
-                                      .secondaryText,
                                   letterSpacing: 0.0,
-                                  fontWeight: FlutterFlowTheme.of(context)
-                                      .bodyMedium
-                                      .fontWeight,
+                                  fontWeight: FontWeight.w600,
                                   fontStyle: FlutterFlowTheme.of(context)
-                                      .bodyMedium
+                                      .titleMedium
                                       .fontStyle,
                                 ),
                           ),
-                          Text(
-                            valueOrDefault<String>(
-                              widget!.plaats,
-                              'Plaats onbekend',
-                            ),
-                            style: FlutterFlowTheme.of(context)
-                                .bodyMedium
-                                .override(
-                                  font: GoogleFonts.roboto(
-                                    fontWeight: FlutterFlowTheme.of(context)
-                                        .bodyMedium
-                                        .fontWeight,
-                                    fontStyle: FlutterFlowTheme.of(context)
-                                        .bodyMedium
-                                        .fontStyle,
-                                  ),
-                                  color: FlutterFlowTheme.of(context)
-                                      .secondaryText,
-                                  letterSpacing: 0.0,
-                                  fontWeight: FlutterFlowTheme.of(context)
-                                      .bodyMedium
-                                      .fontWeight,
-                                  fontStyle: FlutterFlowTheme.of(context)
-                                      .bodyMedium
-                                      .fontStyle,
+                          Column(
+                            mainAxisSize: MainAxisSize.min,
+                            crossAxisAlignment: CrossAxisAlignment.start,
+                            children: [
+                              Text(
+                                valueOrDefault<String>(
+                                  widget!.adres,
+                                  'Adres onbekend',
                                 ),
+                                style: FlutterFlowTheme.of(context)
+                                    .bodyMedium
+                                    .override(
+                                      font: GoogleFonts.roboto(
+                                        fontWeight: FlutterFlowTheme.of(context)
+                                            .bodyMedium
+                                            .fontWeight,
+                                        fontStyle: FlutterFlowTheme.of(context)
+                                            .bodyMedium
+                                            .fontStyle,
+                                      ),
+                                      color: FlutterFlowTheme.of(context)
+                                          .secondaryText,
+                                      letterSpacing: 0.0,
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontStyle,
+                                    ),
+                              ),
+                              Text(
+                                valueOrDefault<String>(
+                                  widget!.plaats,
+                                  'Plaats onbekend',
+                                ),
+                                style: FlutterFlowTheme.of(context)
+                                    .bodyMedium
+                                    .override(
+                                      font: GoogleFonts.roboto(
+                                        fontWeight: FlutterFlowTheme.of(context)
+                                            .bodyMedium
+                                            .fontWeight,
+                                        fontStyle: FlutterFlowTheme.of(context)
+                                            .bodyMedium
+                                            .fontStyle,
+                                      ),
+                                      color: FlutterFlowTheme.of(context)
+                                          .secondaryText,
+                                      letterSpacing: 0.0,
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .bodyMedium
+                                          .fontStyle,
+                                    ),
+                              ),
+                            ].divide(SizedBox(height: 4.0)),
                           ),
-                        ].divide(SizedBox(height: 4.0)),
+                        ].divide(SizedBox(height: 8.0)),
                       ),
-                      Padding(
-                        padding:
-                            EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 8.0, 0.0),
-                        child: Builder(
-                          builder: (context) {
-                            final categorie =
-                                (widget!.categorie?.toList() ?? [])
-                                    .take(3)
-                                    .toList();
-                            _model.debugGeneratorVariables[
-                                    'categorie${categorie.length > 100 ? ' (first 100)' : ''}'] =
-                                debugSerializeParam(
-                              categorie.take(100),
-                              ParamType.String,
-                              isList: true,
-                              link:
-                                  'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidoverzichtKaart',
-                              name: 'String',
-                              nullable: false,
-                            );
-                            debugLogWidgetClass(_model);
+                    ),
+                  ),
+                ].divide(SizedBox(width: 16.0)),
+              ),
+            ),
+            Padding(
+              padding: EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 8.0, 0.0),
+              child: Builder(
+                builder: (context) {
+                  final categorie =
+                      (widget!.categorie?.toList() ?? []).take(3).toList();
+                  _model.debugGeneratorVariables[
+                          'categorie${categorie.length > 100 ? ' (first 100)' : ''}'] =
+                      debugSerializeParam(
+                    categorie.take(100),
+                    ParamType.String,
+                    isList: true,
+                    link:
+                        'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HorecagelegenheidoverzichtKaart',
+                    name: 'String',
+                    nullable: false,
+                  );
+                  debugLogWidgetClass(_model);
 
-                            return Wrap(
-                              spacing: 0.0,
-                              runSpacing: 4.0,
-                              alignment: WrapAlignment.start,
-                              crossAxisAlignment: WrapCrossAlignment.start,
-                              direction: Axis.horizontal,
-                              runAlignment: WrapAlignment.start,
-                              verticalDirection: VerticalDirection.down,
-                              clipBehavior: Clip.none,
-                              children: List.generate(categorie.length,
-                                  (categorieIndex) {
-                                final categorieItem = categorie[categorieIndex];
-                                return Align(
-                                  alignment: AlignmentDirectional(-1.0, 1.0),
-                                  child: Container(
-                                    decoration: BoxDecoration(),
-                                    alignment: AlignmentDirectional(-1.0, 1.0),
-                                    child: Padding(
-                                      padding: EdgeInsetsDirectional.fromSTEB(
-                                          6.0, 0.0, 6.0, 0.0),
-                                      child: Container(
-                                        decoration: BoxDecoration(
-                                          color: Color(0xFF09B34A),
-                                          borderRadius:
-                                              BorderRadius.circular(0.0),
-                                        ),
-                                        child: Padding(
-                                          padding: EdgeInsets.all(8.0),
-                                          child: Text(
-                                            categorieItem,
-                                            style: FlutterFlowTheme.of(context)
-                                                .labelSmall
-                                                .override(
-                                                  font: GoogleFonts.roboto(
-                                                    fontWeight:
-                                                        FlutterFlowTheme.of(
-                                                                context)
-                                                            .labelSmall
-                                                            .fontWeight,
-                                                    fontStyle:
-                                                        FlutterFlowTheme.of(
-                                                                context)
-                                                            .labelSmall
-                                                            .fontStyle,
-                                                  ),
-                                                  color: Colors.white,
-                                                  fontSize: 10.0,
-                                                  letterSpacing: 0.0,
-                                                  fontWeight:
-                                                      FlutterFlowTheme.of(
-                                                              context)
-                                                          .labelSmall
-                                                          .fontWeight,
-                                                  fontStyle:
-                                                      FlutterFlowTheme.of(
-                                                              context)
-                                                          .labelSmall
-                                                          .fontStyle,
-                                                ),
-                                          ),
-                                        ),
+                  return Wrap(
+                    spacing: 6.0,
+                    runSpacing: 4.0,
+                    alignment: WrapAlignment.start,
+                    crossAxisAlignment: WrapCrossAlignment.start,
+                    direction: Axis.horizontal,
+                    runAlignment: WrapAlignment.start,
+                    verticalDirection: VerticalDirection.down,
+                    clipBehavior: Clip.none,
+                    children: List.generate(categorie.length, (categorieIndex) {
+                      final categorieItem = categorie[categorieIndex];
+                      return Container(
+                        decoration: BoxDecoration(),
+                        child: Padding(
+                          padding: EdgeInsetsDirectional.fromSTEB(
+                              6.0, 0.0, 6.0, 0.0),
+                          child: Container(
+                            decoration: BoxDecoration(
+                              color: Color(0xFF09B34A),
+                              borderRadius: BorderRadius.circular(0.0),
+                            ),
+                            child: Padding(
+                              padding: EdgeInsets.all(8.0),
+                              child: Text(
+                                categorieItem,
+                                style: FlutterFlowTheme.of(context)
+                                    .labelSmall
+                                    .override(
+                                      font: GoogleFonts.roboto(
+                                        fontWeight: FlutterFlowTheme.of(context)
+                                            .labelSmall
+                                            .fontWeight,
+                                        fontStyle: FlutterFlowTheme.of(context)
+                                            .labelSmall
+                                            .fontStyle,
                                       ),
+                                      color: Colors.white,
+                                      fontSize: 10.0,
+                                      letterSpacing: 0.0,
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .labelSmall
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .labelSmall
+                                          .fontStyle,
                                     ),
-                                  ),
-                                );
-                              }),
-                            );
-                          },
+                              ),
+                            ),
+                          ),
                         ),
-                      ),
-                    ].divide(SizedBox(height: 8.0)),
-                  ),
-                ),
+                      );
+                    }),
+                  );
+                },
               ),
-            ].divide(SizedBox(width: 16.0)),
-          ),
+            ),
+          ],
         ),
       ),
     );

+ 1 - 8
lib/index.dart

@@ -10,25 +10,18 @@ export '/uitgaanspaginas/p_uitgaan_page/p_uitgaan_page_widget.dart'
 export '/evenement/event/event_widget.dart' show EventWidget;
 export '/horecagelegenhedenoverzicht/event_current/event_current_widget.dart'
     show EventCurrentWidget;
-export '/kanweg/kanweg_horecagelegenheden_overzicht/kanweg_horecagelegenheden_overzicht_widget.dart'
-    show KanwegHorecagelegenhedenOverzichtWidget;
 export '/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_provincie_page/horecagelegenheden_overzicht_provincie_page_widget.dart'
     show HorecagelegenhedenOverzichtProvinciePageWidget;
 export '/wachtwoord_vergeten/wachtwoord_vergeten_widget.dart'
     show WachtwoordVergetenWidget;
 export '/favorieten/favorieten_widget.dart' show FavorietenWidget;
-export '/favorieten_copy/favorieten_copy_widget.dart' show FavorietenCopyWidget;
 export '/kanweg_test_upload/kanweg_test_upload_widget.dart'
     show KanwegTestUploadWidget;
 export '/mijn_profiel/mijn_profiel_widget.dart' show MijnProfielWidget;
 export '/stadsactiviteit_aanmaken/stadsactiviteit_aanmaken_widget.dart'
     show StadsactiviteitAanmakenWidget;
-export '/kanweg/kanweg_home_copy/kanweg_home_copy_widget.dart'
-    show KanwegHomeCopyWidget;
 export '/uitgaansevenement_aanmaken/uitgaansevenement_aanmaken_widget.dart'
     show UitgaansevenementAanmakenWidget;
-export '/kanweg/kanweghorecagelegenheid_current_copy/kanweghorecagelegenheid_current_copy_widget.dart'
-    show KanweghorecagelegenheidCurrentCopyWidget;
 export '/horecagelegenhedenoverzicht/horecagelegenheden_overzicht_current/horecagelegenheden_overzicht_current_widget.dart'
     show HorecagelegenhedenOverzichtCurrentWidget;
-export '/uitgaanspaginas/home_copy/home_copy_widget.dart' show HomeCopyWidget;
+export '/thuis_bezorgen/thuis_bezorgen_widget.dart' show ThuisBezorgenWidget;

+ 56 - 0
lib/kanweg/kanweg_header_buttons_component_copy/kanweg_header_buttons_component_copy_model.dart

@@ -0,0 +1,56 @@
+import '/flutter_flow/flutter_flow_icon_button.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import 'dart:ui';
+import '/index.dart';
+import 'kanweg_header_buttons_component_copy_widget.dart'
+    show KanwegHeaderButtonsComponentCopyWidget;
+import 'package:aligned_tooltip/aligned_tooltip.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:provider/provider.dart';
+
+class KanwegHeaderButtonsComponentCopyModel
+    extends FlutterFlowModel<KanwegHeaderButtonsComponentCopyWidget> {
+  final Map<String, DebugDataField> debugGeneratorVariables = {};
+  final Map<String, DebugDataField> debugBackendQueries = {};
+  final Map<String, FlutterFlowModel> widgetBuilderComponents = {};
+  @override
+  void initState(BuildContext context) {}
+
+  @override
+  void dispose() {}
+
+  @override
+  WidgetClassDebugData toWidgetClassDebugData() => WidgetClassDebugData(
+        widgetParameters: {
+          'showBackButton': debugSerializeParam(
+            widget?.showBackButton,
+            ParamType.bool,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=kanwegHeaderButtonsComponentCopy',
+            searchReference:
+                'reference=SigKGAoOc2hvd0JhY2tCdXR0b24SBnloN3loNyoGEgR0cnVlcgQIBSABUABaDnNob3dCYWNrQnV0dG9u',
+            name: 'bool',
+            nullable: false,
+          )
+        }.withoutNulls.entries,
+        generatorVariables: debugGeneratorVariables.entries,
+        backendQueries: debugBackendQueries.entries,
+        componentStates: {
+          ...widgetBuilderComponents.map(
+            (key, value) => MapEntry(
+              key,
+              value.toWidgetClassDebugData(),
+            ),
+          ),
+        }.withoutNulls.entries,
+        link:
+            'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd/tab=uiBuilder&page=kanwegHeaderButtonsComponentCopy',
+        searchReference:
+            'reference=OiBrYW53ZWdIZWFkZXJCdXR0b25zQ29tcG9uZW50Q29weVAAWiBrYW53ZWdIZWFkZXJCdXR0b25zQ29tcG9uZW50Q29weQ==',
+        widgetClassName: 'kanwegHeaderButtonsComponentCopy',
+      );
+}

+ 245 - 0
lib/kanweg/kanweg_header_buttons_component_copy/kanweg_header_buttons_component_copy_widget.dart

@@ -0,0 +1,245 @@
+import '/flutter_flow/flutter_flow_icon_button.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import 'dart:ui';
+import '/index.dart';
+import 'package:aligned_tooltip/aligned_tooltip.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:provider/provider.dart';
+import 'kanweg_header_buttons_component_copy_model.dart';
+export 'kanweg_header_buttons_component_copy_model.dart';
+
+/// Standaard header-knoppen (drawer + terug) voor herbruik op alle pagina's
+class KanwegHeaderButtonsComponentCopyWidget extends StatefulWidget {
+  const KanwegHeaderButtonsComponentCopyWidget({
+    super.key,
+    bool? showBackButton,
+  }) : this.showBackButton = showBackButton ?? true;
+
+  final bool showBackButton;
+
+  @override
+  State<KanwegHeaderButtonsComponentCopyWidget> createState() =>
+      _KanwegHeaderButtonsComponentCopyWidgetState();
+}
+
+class _KanwegHeaderButtonsComponentCopyWidgetState
+    extends State<KanwegHeaderButtonsComponentCopyWidget> with RouteAware {
+  late KanwegHeaderButtonsComponentCopyModel _model;
+
+  @override
+  void setState(VoidCallback callback) {
+    super.setState(callback);
+    _model.onUpdate();
+  }
+
+  @override
+  void initState() {
+    super.initState();
+    _model =
+        createModel(context, () => KanwegHeaderButtonsComponentCopyModel());
+  }
+
+  @override
+  void dispose() {
+    routeObserver.unsubscribe(this);
+
+    _model.maybeDispose();
+
+    super.dispose();
+  }
+
+  @override
+  void didUpdateWidget(KanwegHeaderButtonsComponentCopyWidget oldWidget) {
+    super.didUpdateWidget(oldWidget);
+    _model.widget = widget;
+  }
+
+  @override
+  void didChangeDependencies() {
+    super.didChangeDependencies();
+    final route = DebugModalRoute.of(context);
+    if (route != null) {
+      routeObserver.subscribe(this, route);
+    }
+    debugLogGlobalProperty(context);
+  }
+
+  @override
+  void didPopNext() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPush() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPop() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  void didPushNext() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    DebugFlutterFlowModelContext.maybeOf(context)
+        ?.parentModelCallback
+        ?.call(_model);
+    context.watch<FFAppState>();
+
+    return Align(
+      alignment: AlignmentDirectional(0.0, 0.0),
+      child: Row(
+        mainAxisSize: MainAxisSize.max,
+        children: [
+          AlignedTooltip(
+            content: Padding(
+              padding: EdgeInsets.all(4.0),
+              child: Text(
+                FFLocalizations.of(context).getText(
+                  '2hj132xq' /* Menu openen */,
+                ),
+                style: FlutterFlowTheme.of(context).bodyLarge.override(
+                      font: GoogleFonts.roboto(
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyLarge.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyLarge.fontStyle,
+                      ),
+                      letterSpacing: 0.0,
+                      fontWeight:
+                          FlutterFlowTheme.of(context).bodyLarge.fontWeight,
+                      fontStyle:
+                          FlutterFlowTheme.of(context).bodyLarge.fontStyle,
+                    ),
+              ),
+            ),
+            offset: 4.0,
+            preferredDirection: AxisDirection.down,
+            borderRadius: BorderRadius.circular(8.0),
+            backgroundColor: FlutterFlowTheme.of(context).secondaryBackground,
+            elevation: 4.0,
+            tailBaseWidth: 24.0,
+            tailLength: 12.0,
+            waitDuration: Duration(milliseconds: 100),
+            showDuration: Duration(milliseconds: 1500),
+            triggerMode: TooltipTriggerMode.tap,
+            child: FlutterFlowIconButton(
+              borderRadius: 8.0,
+              buttonSize: 40.0,
+              fillColor: FlutterFlowTheme.of(context).secondary,
+              icon: Icon(
+                Icons.dehaze_outlined,
+                color: FlutterFlowTheme.of(context).info,
+                size: 24.0,
+              ),
+              onPressed: () async {
+                Scaffold.of(context).openDrawer();
+              },
+            ),
+          ),
+          if (widget!.showBackButton == true)
+            AlignedTooltip(
+              content: Padding(
+                padding: EdgeInsets.all(4.0),
+                child: Text(
+                  FFLocalizations.of(context).getText(
+                    '7ktnxpcu' /* Terug */,
+                  ),
+                  style: FlutterFlowTheme.of(context).bodyLarge.override(
+                        font: GoogleFonts.roboto(
+                          fontWeight:
+                              FlutterFlowTheme.of(context).bodyLarge.fontWeight,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).bodyLarge.fontStyle,
+                        ),
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyLarge.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyLarge.fontStyle,
+                      ),
+                ),
+              ),
+              offset: 4.0,
+              preferredDirection: AxisDirection.down,
+              borderRadius: BorderRadius.circular(8.0),
+              backgroundColor: FlutterFlowTheme.of(context).secondaryBackground,
+              elevation: 4.0,
+              tailBaseWidth: 24.0,
+              tailLength: 12.0,
+              waitDuration: Duration(milliseconds: 100),
+              showDuration: Duration(milliseconds: 1500),
+              triggerMode: TooltipTriggerMode.tap,
+              child: Padding(
+                padding: EdgeInsetsDirectional.fromSTEB(4.0, 0.0, 0.0, 0.0),
+                child: FlutterFlowIconButton(
+                  borderColor: Color(0x00FF0000),
+                  borderRadius: 30.0,
+                  borderWidth: 1.0,
+                  buttonSize: 50.0,
+                  fillColor: FlutterFlowTheme.of(context).secondary,
+                  icon: Icon(
+                    Icons.arrow_back_outlined,
+                    color: Colors.white,
+                    size: 30.0,
+                  ),
+                  onPressed: () async {
+                    context.pop();
+                  },
+                ),
+              ),
+            ),
+          ClipRRect(
+            borderRadius: BorderRadius.circular(8.0),
+            child: Image.asset(
+              'assets/images/logo800px.png',
+              width: 200.0,
+              height: 200.0,
+              fit: BoxFit.contain,
+            ),
+          ),
+          InkWell(
+            splashColor: Colors.transparent,
+            focusColor: Colors.transparent,
+            hoverColor: Colors.transparent,
+            highlightColor: Colors.transparent,
+            onTap: () async {
+              context.pushNamed(SelectprovinciegemeenteWidget.routeName);
+            },
+            child: Text(
+              FFAppState().gemeenteSelectNaam,
+              style: FlutterFlowTheme.of(context).bodyMedium.override(
+                    font: GoogleFonts.roboto(
+                      fontWeight:
+                          FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                      fontStyle:
+                          FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                    ),
+                    letterSpacing: 0.0,
+                    fontWeight:
+                        FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                    fontStyle:
+                        FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                  ),
+            ),
+          ),
+        ],
+      ),
+    );
+  }
+}

+ 1 - 1
lib/kanweg/kanweghorecagelegenheid_current_copy/kanweghorecagelegenheid_current_copy_widget.dart

@@ -453,7 +453,7 @@ class _KanweghorecagelegenheidCurrentCopyWidgetState
                       ),
                       style:
                           FlutterFlowTheme.of(context).headlineMedium.override(
-                                font: GoogleFonts.roboto(
+                                font: GoogleFonts.notoSerif(
                                   fontWeight: FlutterFlowTheme.of(context)
                                       .headlineMedium
                                       .fontWeight,

+ 1 - 1
lib/login/login/login_widget.dart

@@ -141,7 +141,7 @@ class _LoginWidgetState extends State<LoginWidget> with RouteAware {
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             iconTheme:
                 IconThemeData(color: FlutterFlowTheme.of(context).secondary),
             automaticallyImplyLeading: false,

+ 1 - 1
lib/mijn_profiel/mijn_profiel_widget.dart

@@ -118,7 +118,7 @@ class _MijnProfielWidgetState extends State<MijnProfielWidget> with RouteAware {
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(

+ 1 - 1
lib/selecteer_plaats/selectprovinciegemeente/selectprovinciegemeente_widget.dart

@@ -116,7 +116,7 @@ class _SelectprovinciegemeenteWidgetState
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(

+ 0 - 2
lib/shared/drawer_component/drawer_component_model.dart

@@ -1,4 +1,3 @@
-import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
@@ -6,7 +5,6 @@ import 'dart:ui';
 import '/flutter_flow/custom_functions.dart' as functions;
 import '/index.dart';
 import 'drawer_component_widget.dart' show DrawerComponentWidget;
-import 'package:aligned_tooltip/aligned_tooltip.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
 import 'package:font_awesome_flutter/font_awesome_flutter.dart';

+ 123 - 102
lib/shared/drawer_component/drawer_component_widget.dart

@@ -1,11 +1,9 @@
-import '/flutter_flow/flutter_flow_icon_button.dart';
 import '/flutter_flow/flutter_flow_theme.dart';
 import '/flutter_flow/flutter_flow_util.dart';
 import '/flutter_flow/flutter_flow_widgets.dart';
 import 'dart:ui';
 import '/flutter_flow/custom_functions.dart' as functions;
 import '/index.dart';
-import 'package:aligned_tooltip/aligned_tooltip.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
 import 'package:font_awesome_flutter/font_awesome_flutter.dart';
@@ -105,7 +103,7 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
             children: [
               Expanded(
                 child: Padding(
-                  padding: EdgeInsetsDirectional.fromSTEB(0.0, 40.0, 0.0, 5.0),
+                  padding: EdgeInsetsDirectional.fromSTEB(0.0, 8.0, 0.0, 5.0),
                   child: ClipRRect(
                     borderRadius: BorderRadius.circular(8.0),
                     child: Image.asset(
@@ -138,7 +136,7 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                     child: ListTile(
                       leading: Icon(
                         Icons.holiday_village_sharp,
-                        size: 1.0,
+                        size: 24.0,
                       ),
                       title: Text(
                         FFLocalizations.of(context).getText(
@@ -305,7 +303,7 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                         style: FlutterFlowTheme.of(context)
                             .headlineMedium
                             .override(
-                              font: GoogleFonts.roboto(
+                              font: GoogleFonts.notoSerif(
                                 fontWeight: FlutterFlowTheme.of(context)
                                     .headlineMedium
                                     .fontWeight,
@@ -499,8 +497,8 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                     child: Material(
                       color: Colors.transparent,
                       child: ListTile(
-                        leading: FaIcon(
-                          FontAwesomeIcons.piedPiperAlt,
+                        leading: Icon(
+                          Icons.theater_comedy,
                         ),
                         title: Text(
                           FFLocalizations.of(context).getText(
@@ -744,46 +742,64 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                 ),
                 Padding(
                   padding: EdgeInsetsDirectional.fromSTEB(50.0, 0.0, 0.0, 0.0),
-                  child: Material(
-                    color: Colors.transparent,
-                    child: ListTile(
-                      leading: Icon(
-                        Icons.delivery_dining,
-                      ),
-                      title: Text(
-                        FFLocalizations.of(context).getText(
-                          't46xiboh' /* Thuis bezorgen */,
+                  child: InkWell(
+                    splashColor: Colors.transparent,
+                    focusColor: Colors.transparent,
+                    hoverColor: Colors.transparent,
+                    highlightColor: Colors.transparent,
+                    onTap: () async {
+                      context.pushNamed(
+                        ThuisBezorgenWidget.routeName,
+                        queryParameters: {
+                          'plaats': serializeParam(
+                            FFAppState().gemeenteSelectId,
+                            ParamType.String,
+                          ),
+                        }.withoutNulls,
+                      );
+                    },
+                    child: Material(
+                      color: Colors.transparent,
+                      child: ListTile(
+                        leading: Icon(
+                          Icons.delivery_dining,
+                        ),
+                        title: Text(
+                          FFLocalizations.of(context).getText(
+                            't46xiboh' /* Thuis bezorgen */,
+                          ),
+                          style:
+                              FlutterFlowTheme.of(context).titleLarge.override(
+                                    font: GoogleFonts.roboto(
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .titleLarge
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .titleLarge
+                                          .fontStyle,
+                                    ),
+                                    letterSpacing: 0.0,
+                                    fontWeight: FlutterFlowTheme.of(context)
+                                        .titleLarge
+                                        .fontWeight,
+                                    fontStyle: FlutterFlowTheme.of(context)
+                                        .titleLarge
+                                        .fontStyle,
+                                  ),
+                        ),
+                        trailing: Icon(
+                          Icons.arrow_forward_ios_rounded,
+                          color: FlutterFlowTheme.of(context).secondaryText,
+                          size: 24.0,
+                        ),
+                        tileColor:
+                            FlutterFlowTheme.of(context).secondaryBackground,
+                        dense: false,
+                        contentPadding: EdgeInsetsDirectional.fromSTEB(
+                            12.0, 0.0, 12.0, 0.0),
+                        shape: RoundedRectangleBorder(
+                          borderRadius: BorderRadius.circular(8.0),
                         ),
-                        style: FlutterFlowTheme.of(context).titleLarge.override(
-                              font: GoogleFonts.roboto(
-                                fontWeight: FlutterFlowTheme.of(context)
-                                    .titleLarge
-                                    .fontWeight,
-                                fontStyle: FlutterFlowTheme.of(context)
-                                    .titleLarge
-                                    .fontStyle,
-                              ),
-                              letterSpacing: 0.0,
-                              fontWeight: FlutterFlowTheme.of(context)
-                                  .titleLarge
-                                  .fontWeight,
-                              fontStyle: FlutterFlowTheme.of(context)
-                                  .titleLarge
-                                  .fontStyle,
-                            ),
-                      ),
-                      trailing: Icon(
-                        Icons.arrow_forward_ios_rounded,
-                        color: FlutterFlowTheme.of(context).secondaryText,
-                        size: 24.0,
-                      ),
-                      tileColor:
-                          FlutterFlowTheme.of(context).secondaryBackground,
-                      dense: false,
-                      contentPadding:
-                          EdgeInsetsDirectional.fromSTEB(12.0, 0.0, 12.0, 0.0),
-                      shape: RoundedRectangleBorder(
-                        borderRadius: BorderRadius.circular(8.0),
                       ),
                     ),
                   ),
@@ -803,7 +819,7 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                         style: FlutterFlowTheme.of(context)
                             .headlineMedium
                             .override(
-                              font: GoogleFonts.roboto(
+                              font: GoogleFonts.notoSerif(
                                 fontWeight: FlutterFlowTheme.of(context)
                                     .headlineMedium
                                     .fontWeight,
@@ -997,8 +1013,8 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                     child: Material(
                       color: Colors.transparent,
                       child: ListTile(
-                        leading: FaIcon(
-                          FontAwesomeIcons.piedPiperAlt,
+                        leading: Icon(
+                          Icons.theater_comedy,
                         ),
                         title: Text(
                           FFLocalizations.of(context).getText(
@@ -1247,7 +1263,64 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                   ),
                 ),
                 Padding(
-                  padding: EdgeInsetsDirectional.fromSTEB(0.0, 0.0, 0.0, 48.0),
+                  padding: EdgeInsetsDirectional.fromSTEB(50.0, 0.0, 0.0, 0.0),
+                  child: InkWell(
+                    splashColor: Colors.transparent,
+                    focusColor: Colors.transparent,
+                    hoverColor: Colors.transparent,
+                    highlightColor: Colors.transparent,
+                    onTap: () async {
+                      await launchURL(
+                          'https://uitgaanskrant.com/nl/support/mobieleapp');
+                    },
+                    child: Material(
+                      color: Colors.transparent,
+                      child: ListTile(
+                        leading: Icon(
+                          Icons.help,
+                        ),
+                        title: Text(
+                          FFLocalizations.of(context).getText(
+                            'ukq39p63' /* Support pagina */,
+                          ),
+                          style:
+                              FlutterFlowTheme.of(context).titleMedium.override(
+                                    font: GoogleFonts.roboto(
+                                      fontWeight: FlutterFlowTheme.of(context)
+                                          .titleMedium
+                                          .fontWeight,
+                                      fontStyle: FlutterFlowTheme.of(context)
+                                          .titleMedium
+                                          .fontStyle,
+                                    ),
+                                    letterSpacing: 0.0,
+                                    fontWeight: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontWeight,
+                                    fontStyle: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontStyle,
+                                  ),
+                        ),
+                        trailing: Icon(
+                          Icons.arrow_forward_ios_rounded,
+                          color: FlutterFlowTheme.of(context).secondaryText,
+                          size: 24.0,
+                        ),
+                        tileColor:
+                            FlutterFlowTheme.of(context).secondaryBackground,
+                        dense: true,
+                        contentPadding: EdgeInsetsDirectional.fromSTEB(
+                            12.0, 0.0, 12.0, 0.0),
+                        shape: RoundedRectangleBorder(
+                          borderRadius: BorderRadius.circular(8.0),
+                        ),
+                      ),
+                    ),
+                  ),
+                ),
+                Padding(
+                  padding: EdgeInsetsDirectional.fromSTEB(0.0, 0.0, 0.0, 8.0),
                   child: Row(
                     mainAxisSize: MainAxisSize.max,
                     children: [
@@ -1333,58 +1406,6 @@ class _DrawerComponentWidgetState extends State<DrawerComponentWidget>
                           }
                         },
                       ),
-                      AlignedTooltip(
-                        content: Padding(
-                          padding: EdgeInsets.all(4.0),
-                          child: Text(
-                            FFLocalizations.of(context).getText(
-                              'vnwx710y' /* Terug */,
-                            ),
-                            style:
-                                FlutterFlowTheme.of(context).bodyLarge.override(
-                                      font: GoogleFonts.roboto(
-                                        fontWeight: FlutterFlowTheme.of(context)
-                                            .bodyLarge
-                                            .fontWeight,
-                                        fontStyle: FlutterFlowTheme.of(context)
-                                            .bodyLarge
-                                            .fontStyle,
-                                      ),
-                                      letterSpacing: 0.0,
-                                      fontWeight: FlutterFlowTheme.of(context)
-                                          .bodyLarge
-                                          .fontWeight,
-                                      fontStyle: FlutterFlowTheme.of(context)
-                                          .bodyLarge
-                                          .fontStyle,
-                                    ),
-                          ),
-                        ),
-                        offset: 4.0,
-                        preferredDirection: AxisDirection.down,
-                        borderRadius: BorderRadius.circular(8.0),
-                        backgroundColor:
-                            FlutterFlowTheme.of(context).secondaryBackground,
-                        elevation: 4.0,
-                        tailBaseWidth: 24.0,
-                        tailLength: 12.0,
-                        waitDuration: Duration(milliseconds: 100),
-                        showDuration: Duration(milliseconds: 1500),
-                        triggerMode: TooltipTriggerMode.tap,
-                        child: FlutterFlowIconButton(
-                          borderRadius: 8.0,
-                          buttonSize: 40.0,
-                          fillColor: FlutterFlowTheme.of(context).primary,
-                          icon: Icon(
-                            Icons.arrow_back,
-                            color: FlutterFlowTheme.of(context).info,
-                            size: 24.0,
-                          ),
-                          onPressed: () async {
-                            Navigator.pop(context);
-                          },
-                        ),
-                      ),
                       Text(
                         FFLocalizations.of(context).getText(
                           '7qpu1l01' /* v0001 */,

+ 2 - 2
lib/shared/drawer_component_copy/drawer_component_copy_widget.dart

@@ -306,7 +306,7 @@ class _DrawerComponentCopyWidgetState extends State<DrawerComponentCopyWidget>
                         style: FlutterFlowTheme.of(context)
                             .headlineMedium
                             .override(
-                              font: GoogleFonts.roboto(
+                              font: GoogleFonts.notoSerif(
                                 fontWeight: FlutterFlowTheme.of(context)
                                     .headlineMedium
                                     .fontWeight,
@@ -804,7 +804,7 @@ class _DrawerComponentCopyWidgetState extends State<DrawerComponentCopyWidget>
                         style: FlutterFlowTheme.of(context)
                             .headlineMedium
                             .override(
-                              font: GoogleFonts.roboto(
+                              font: GoogleFonts.notoSerif(
                                 fontWeight: FlutterFlowTheme.of(context)
                                     .headlineMedium
                                     .fontWeight,

+ 3 - 1
lib/shared/tag_categorie_component/tag_categorie_component_widget.dart

@@ -95,7 +95,7 @@ class _TagCategorieComponentWidgetState
         ?.call(_model);
 
     return Padding(
-      padding: EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 12.0, 18.0),
+      padding: EdgeInsetsDirectional.fromSTEB(8.0, 0.0, 12.0, 4.0),
       child: Container(
         decoration: BoxDecoration(
           color: Color(0xFF09B34A),
@@ -113,6 +113,7 @@ class _TagCategorieComponentWidgetState
               'Uitgaan',
             ),
             textAlign: TextAlign.start,
+            maxLines: 1,
             style: FlutterFlowTheme.of(context).bodyMedium.override(
                   font: GoogleFonts.roboto(
                     fontWeight:
@@ -126,6 +127,7 @@ class _TagCategorieComponentWidgetState
                       FlutterFlowTheme.of(context).bodyMedium.fontWeight,
                   fontStyle: FlutterFlowTheme.of(context).bodyMedium.fontStyle,
                 ),
+            overflow: TextOverflow.ellipsis,
           ),
         ),
       ),

+ 7 - 7
lib/stadsactiviteit_aanmaken/stadsactiviteit_aanmaken_widget.dart

@@ -196,7 +196,7 @@ class _StadsactiviteitAanmakenWidgetState
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(
@@ -795,7 +795,7 @@ class _StadsactiviteitAanmakenWidgetState
                                               context)
                                           .headlineLarge
                                           .override(
-                                            font: GoogleFonts.roboto(
+                                            font: GoogleFonts.notoSerif(
                                               fontWeight: FontWeight.w600,
                                               fontStyle:
                                                   FlutterFlowTheme.of(context)
@@ -847,7 +847,7 @@ class _StadsactiviteitAanmakenWidgetState
                                                 context)
                                             .headlineLarge
                                             .override(
-                                              font: GoogleFonts.roboto(
+                                              font: GoogleFonts.notoSerif(
                                                 fontWeight: FontWeight.w600,
                                                 fontStyle:
                                                     FlutterFlowTheme.of(context)
@@ -1072,7 +1072,7 @@ class _StadsactiviteitAanmakenWidgetState
                                               context)
                                           .headlineLarge
                                           .override(
-                                            font: GoogleFonts.roboto(
+                                            font: GoogleFonts.notoSerif(
                                               fontWeight: FontWeight.w600,
                                               fontStyle:
                                                   FlutterFlowTheme.of(context)
@@ -1124,7 +1124,7 @@ class _StadsactiviteitAanmakenWidgetState
                                                 context)
                                             .headlineLarge
                                             .override(
-                                              font: GoogleFonts.roboto(
+                                              font: GoogleFonts.notoSerif(
                                                 fontWeight: FontWeight.w600,
                                                 fontStyle:
                                                     FlutterFlowTheme.of(context)
@@ -2777,7 +2777,7 @@ class _StadsactiviteitAanmakenWidgetState
                                   style: FlutterFlowTheme.of(context)
                                       .headlineSmall
                                       .override(
-                                        font: GoogleFonts.roboto(
+                                        font: GoogleFonts.notoSerif(
                                           fontWeight:
                                               FlutterFlowTheme.of(context)
                                                   .headlineSmall
@@ -3287,7 +3287,7 @@ class _StadsactiviteitAanmakenWidgetState
                               style: FlutterFlowTheme.of(context)
                                   .headlineSmall
                                   .override(
-                                    font: GoogleFonts.roboto(
+                                    font: GoogleFonts.notoSerif(
                                       fontWeight: FlutterFlowTheme.of(context)
                                           .headlineSmall
                                           .fontWeight,

+ 159 - 0
lib/thuis_bezorgen/thuis_bezorgen_model.dart

@@ -0,0 +1,159 @@
+import '/backend/api_requests/api_calls.dart';
+import '/components/header_buttons_component_widget.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_widget.dart';
+import '/shared/drawer_component/drawer_component_widget.dart';
+import 'dart:ui';
+import 'dart:async';
+import 'thuis_bezorgen_widget.dart' show ThuisBezorgenWidget;
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
+import 'package:provider/provider.dart';
+
+class ThuisBezorgenModel extends FlutterFlowModel<ThuisBezorgenWidget> {
+  ///  State fields for stateful widgets in this page.
+
+  // State field(s) for StaggeredView widget.
+
+  PagingController<ApiPagingParams, dynamic>? staggeredViewPagingController;
+  Function(ApiPagingParams nextPageMarker)? staggeredViewApiCall;
+
+  // Models for HorecagelegenheidoverzichtKaart dynamic component.
+  Map<String, FlutterFlowModel> horecagelegenheidoverzichtKaartModels = {};
+  // Model for HeaderButtonsComponent component.
+  late HeaderButtonsComponentModel headerButtonsComponentModel;
+  // Model for drawerComponent component.
+  late DrawerComponentModel drawerComponentModel;
+
+  final Map<String, DebugDataField> debugGeneratorVariables = {};
+  final Map<String, DebugDataField> debugBackendQueries = {};
+  final Map<String, FlutterFlowModel> widgetBuilderComponents = {};
+  @override
+  void initState(BuildContext context) {
+    headerButtonsComponentModel =
+        createModel(context, () => HeaderButtonsComponentModel());
+    drawerComponentModel = createModel(context, () => DrawerComponentModel());
+
+    debugLogWidgetClass(this);
+  }
+
+  @override
+  void dispose() {
+    staggeredViewPagingController?.dispose();
+    headerButtonsComponentModel.dispose();
+    drawerComponentModel.dispose();
+  }
+
+  /// Additional helper methods.
+  PagingController<ApiPagingParams, dynamic> setStaggeredViewController(
+    Function(ApiPagingParams) apiCall,
+  ) {
+    staggeredViewApiCall = apiCall;
+    return staggeredViewPagingController ??=
+        _createStaggeredViewController(apiCall);
+  }
+
+  PagingController<ApiPagingParams, dynamic> _createStaggeredViewController(
+    Function(ApiPagingParams) query,
+  ) {
+    final controller = PagingController<ApiPagingParams, dynamic>(
+      firstPageKey: ApiPagingParams(
+        nextPageNumber: 0,
+        numItems: 0,
+        lastResponse: null,
+      ),
+    );
+    return controller
+      ..addPageRequestListener(staggeredViewHorecagelegenheidoverzichtPage);
+  }
+
+  void staggeredViewHorecagelegenheidoverzichtPage(
+          ApiPagingParams nextPageMarker) =>
+      staggeredViewApiCall!(nextPageMarker)
+          .then((staggeredViewHorecagelegenheidoverzichtResponse) {
+        final pageItems = (getJsonField(
+                  staggeredViewHorecagelegenheidoverzichtResponse.jsonBody,
+                  r'''$''',
+                ) ??
+                [])
+            .toList() as List;
+        final newNumItems = nextPageMarker.numItems + pageItems.length;
+        staggeredViewPagingController?.appendPage(
+          pageItems,
+          (pageItems.length > 0)
+              ? ApiPagingParams(
+                  nextPageNumber: nextPageMarker.nextPageNumber + 1,
+                  numItems: newNumItems,
+                  lastResponse: staggeredViewHorecagelegenheidoverzichtResponse,
+                )
+              : null,
+        );
+      });
+
+  Future waitForOnePageForStaggeredView({
+    double minWait = 0,
+    double maxWait = double.infinity,
+  }) async {
+    final stopwatch = Stopwatch()..start();
+    while (true) {
+      await Future.delayed(Duration(milliseconds: 50));
+      final timeElapsed = stopwatch.elapsedMilliseconds;
+      final requestComplete =
+          (staggeredViewPagingController?.nextPageKey?.nextPageNumber ?? 0) > 0;
+      if (timeElapsed > maxWait || (requestComplete && timeElapsed > minWait)) {
+        break;
+      }
+    }
+  }
+
+  @override
+  WidgetClassDebugData toWidgetClassDebugData() => WidgetClassDebugData(
+        widgetParameters: {
+          'plaats': debugSerializeParam(
+            widget?.plaats,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=thuisBezorgen',
+            searchReference:
+                'reference=ShgKEAoGcGxhYXRzEgY2d2xkOXdyBAgDIAFQAVoGcGxhYXRz',
+            name: 'String',
+            nullable: true,
+          )
+        }.withoutNulls.entries,
+        generatorVariables: debugGeneratorVariables.entries,
+        backendQueries: debugBackendQueries.entries,
+        componentStates: {
+          'headerButtonsComponentModel (HeaderButtonsComponent)':
+              headerButtonsComponentModel?.toWidgetClassDebugData(),
+          'drawerComponentModel (drawerComponent)':
+              drawerComponentModel?.toWidgetClassDebugData(),
+          ...widgetBuilderComponents.map(
+            (key, value) => MapEntry(
+              key,
+              value.toWidgetClassDebugData(),
+            ),
+          ),
+        }.withoutNulls.entries,
+        dynamicComponentStates: {
+          'horecagelegenheidoverzichtKaartModels (List<HorecagelegenheidoverzichtKaart>)':
+              DynamicWidgetClassDebugData(
+            componentStates: Map.fromIterables(
+              List.generate(horecagelegenheidoverzichtKaartModels.length,
+                  (index) => '[$index]'),
+              horecagelegenheidoverzichtKaartModels.values
+                  .map((e) => e.toWidgetClassDebugData()),
+            ).entries,
+          ),
+        }.withoutNulls.entries,
+        link:
+            'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd/tab=uiBuilder&page=thuisBezorgen',
+        searchReference:
+            'reference=Og10aHVpc0Jlem9yZ2VuUAFaDXRodWlzQmV6b3JnZW4=',
+        widgetClassName: 'thuisBezorgen',
+      );
+}

+ 272 - 0
lib/thuis_bezorgen/thuis_bezorgen_widget.dart

@@ -0,0 +1,272 @@
+import '/backend/api_requests/api_calls.dart';
+import '/components/header_buttons_component_widget.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/horecagelegenhedenoverzicht/horecagelegenheidoverzicht_kaart/horecagelegenheidoverzicht_kaart_widget.dart';
+import '/shared/drawer_component/drawer_component_widget.dart';
+import 'dart:ui';
+import 'dart:async';
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:flutter_staggered_grid_view/flutter_staggered_grid_view.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:infinite_scroll_pagination/infinite_scroll_pagination.dart';
+import 'package:provider/provider.dart';
+import 'thuis_bezorgen_model.dart';
+export 'thuis_bezorgen_model.dart';
+
+class ThuisBezorgenWidget extends StatefulWidget {
+  const ThuisBezorgenWidget({
+    super.key,
+    required this.plaats,
+  });
+
+  final String? plaats;
+
+  static String routeName = 'thuisBezorgen';
+  static String routePath = '/thuisBezorgen';
+
+  @override
+  State<ThuisBezorgenWidget> createState() => _ThuisBezorgenWidgetState();
+}
+
+class _ThuisBezorgenWidgetState extends State<ThuisBezorgenWidget>
+    with RouteAware {
+  late ThuisBezorgenModel _model;
+
+  final scaffoldKey = GlobalKey<ScaffoldState>();
+
+  @override
+  void initState() {
+    super.initState();
+    _model = createModel(context, () => ThuisBezorgenModel());
+  }
+
+  @override
+  void dispose() {
+    routeObserver.unsubscribe(this);
+
+    _model.dispose();
+
+    super.dispose();
+  }
+
+  @override
+  void didUpdateWidget(ThuisBezorgenWidget oldWidget) {
+    super.didUpdateWidget(oldWidget);
+    _model.widget = widget;
+  }
+
+  @override
+  void didChangeDependencies() {
+    super.didChangeDependencies();
+    final route = DebugModalRoute.of(context);
+    if (route != null) {
+      routeObserver.subscribe(this, route);
+    }
+    debugLogGlobalProperty(context);
+  }
+
+  @override
+  void didPopNext() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPush() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPop() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  void didPushNext() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    DebugFlutterFlowModelContext.maybeOf(context)
+        ?.parentModelCallback
+        ?.call(_model);
+    _model.horecagelegenheidoverzichtKaartModels.clear();
+
+    return GestureDetector(
+      onTap: () {
+        FocusScope.of(context).unfocus();
+        FocusManager.instance.primaryFocus?.unfocus();
+      },
+      child: Scaffold(
+        key: scaffoldKey,
+        backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
+        drawer: Drawer(
+          elevation: 16.0,
+          child: wrapWithModel(
+            model: _model.drawerComponentModel,
+            updateCallback: () => safeSetState(() {}),
+            child: Builder(builder: (_) {
+              return DebugFlutterFlowModelContext(
+                rootModel: _model.rootModel,
+                child: DrawerComponentWidget(),
+              );
+            }),
+          ),
+        ),
+        appBar: PreferredSize(
+          preferredSize: Size.fromHeight(80.0),
+          child: AppBar(
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
+            automaticallyImplyLeading: false,
+            actions: [],
+            flexibleSpace: FlexibleSpaceBar(
+              background: wrapWithModel(
+                model: _model.headerButtonsComponentModel,
+                updateCallback: () => safeSetState(() {}),
+                child: Builder(builder: (_) {
+                  return DebugFlutterFlowModelContext(
+                    rootModel: _model.rootModel,
+                    child: HeaderButtonsComponentWidget(),
+                  );
+                }),
+              ),
+              centerTitle: true,
+              expandedTitleScale: 1.0,
+            ),
+            bottom: PreferredSize(
+              preferredSize: Size.fromHeight(70.0),
+              child: Container(),
+            ),
+            toolbarHeight: MediaQuery.sizeOf(context).height * 0.25,
+            elevation: 2.0,
+          ),
+        ),
+        body: SafeArea(
+          top: true,
+          child: Column(
+            mainAxisSize: MainAxisSize.max,
+            children: [
+              Expanded(
+                child: RefreshIndicator(
+                  onRefresh: () async {
+                    safeSetState(
+                        () => _model.staggeredViewPagingController?.refresh());
+                    await _model.waitForOnePageForStaggeredView();
+                  },
+                  child: PagedMasonryGridView<ApiPagingParams, dynamic>.count(
+                    pagingController: _model.setStaggeredViewController(
+                      (nextPageMarker) => HorecagelegenheidoverzichtCall.call(
+                        townid: widget!.plaats,
+                        displayId: 'services_2',
+                        page: nextPageMarker.nextPageNumber,
+                      ),
+                    ),
+                    crossAxisCount: () {
+                      if (MediaQuery.sizeOf(context).width < kBreakpointSmall) {
+                        return 1;
+                      } else if (MediaQuery.sizeOf(context).width <
+                          kBreakpointMedium) {
+                        return 1;
+                      } else if (MediaQuery.sizeOf(context).width <
+                          kBreakpointLarge) {
+                        return 2;
+                      } else {
+                        return 3;
+                      }
+                    }(),
+                    crossAxisSpacing: 10.0,
+                    mainAxisSpacing: 10.0,
+                    builderDelegate: PagedChildBuilderDelegate<dynamic>(
+                      // Customize what your widget looks like when it's loading the first page.
+                      firstPageProgressIndicatorBuilder: (_) => Center(
+                        child: SizedBox(
+                          width: 80.0,
+                          height: 80.0,
+                          child: SpinKitFadingCircle(
+                            color: FlutterFlowTheme.of(context).primary,
+                            size: 80.0,
+                          ),
+                        ),
+                      ),
+                      // Customize what your widget looks like when it's loading another page.
+                      newPageProgressIndicatorBuilder: (_) => Center(
+                        child: SizedBox(
+                          width: 80.0,
+                          height: 80.0,
+                          child: SpinKitFadingCircle(
+                            color: FlutterFlowTheme.of(context).primary,
+                            size: 80.0,
+                          ),
+                        ),
+                      ),
+                      noItemsFoundIndicatorBuilder: (_) => Center(
+                        child: Image.asset(
+                          'assets/images/logo800px.png',
+                        ),
+                      ),
+                      itemBuilder: (context, _, bezorgerItemIndex) {
+                        final bezorgerItemItem = _model
+                            .staggeredViewPagingController!
+                            .itemList![bezorgerItemIndex];
+                        return Builder(builder: (_) {
+                          return DebugFlutterFlowModelContext(
+                            rootModel: _model.rootModel,
+                            parentModelCallback: (m) {
+                              _model.horecagelegenheidoverzichtKaartModels[
+                                  'Keyjjq_${bezorgerItemIndex}_of_${_model.staggeredViewPagingController!.itemList!.length}'] = m;
+                            },
+                            child: HorecagelegenheidoverzichtKaartWidget(
+                              key: Key(
+                                  'Keyjjq_${bezorgerItemIndex}_of_${_model.staggeredViewPagingController!.itemList!.length}'),
+                              titel: getJsonField(
+                                bezorgerItemItem,
+                                r'''$.titel''',
+                              ).toString(),
+                              logo: getJsonField(
+                                bezorgerItemItem,
+                                r'''$.logo''',
+                              ).toString(),
+                              nid: getJsonField(
+                                bezorgerItemItem,
+                                r'''$.nid''',
+                              ).toString(),
+                              adres: getJsonField(
+                                bezorgerItemItem,
+                                r'''$.adres''',
+                              ).toString(),
+                              plaats: getJsonField(
+                                bezorgerItemItem,
+                                r'''$.plaats''',
+                              ).toString(),
+                              categorie: (getJsonField(
+                                bezorgerItemItem,
+                                r'''$.categorie''',
+                                true,
+                              ) as List?)
+                                  ?.map<String>((e) => e.toString())
+                                  .toList()
+                                  .cast<String>(),
+                            ),
+                          );
+                        });
+                      },
+                    ),
+                  ),
+                ),
+              ),
+            ],
+          ),
+        ),
+      ),
+    );
+  }
+}

+ 7 - 7
lib/uitgaansevenement_aanmaken/uitgaansevenement_aanmaken_widget.dart

@@ -192,7 +192,7 @@ class _UitgaansevenementAanmakenWidgetState
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(
@@ -1006,7 +1006,7 @@ class _UitgaansevenementAanmakenWidgetState
                                               context)
                                           .headlineLarge
                                           .override(
-                                            font: GoogleFonts.roboto(
+                                            font: GoogleFonts.notoSerif(
                                               fontWeight: FontWeight.w600,
                                               fontStyle:
                                                   FlutterFlowTheme.of(context)
@@ -1058,7 +1058,7 @@ class _UitgaansevenementAanmakenWidgetState
                                                 context)
                                             .headlineLarge
                                             .override(
-                                              font: GoogleFonts.roboto(
+                                              font: GoogleFonts.notoSerif(
                                                 fontWeight: FontWeight.w600,
                                                 fontStyle:
                                                     FlutterFlowTheme.of(context)
@@ -1283,7 +1283,7 @@ class _UitgaansevenementAanmakenWidgetState
                                               context)
                                           .headlineLarge
                                           .override(
-                                            font: GoogleFonts.roboto(
+                                            font: GoogleFonts.notoSerif(
                                               fontWeight: FontWeight.w600,
                                               fontStyle:
                                                   FlutterFlowTheme.of(context)
@@ -1335,7 +1335,7 @@ class _UitgaansevenementAanmakenWidgetState
                                                 context)
                                             .headlineLarge
                                             .override(
-                                              font: GoogleFonts.roboto(
+                                              font: GoogleFonts.notoSerif(
                                                 fontWeight: FontWeight.w600,
                                                 fontStyle:
                                                     FlutterFlowTheme.of(context)
@@ -1885,7 +1885,7 @@ class _UitgaansevenementAanmakenWidgetState
                                   style: FlutterFlowTheme.of(context)
                                       .headlineSmall
                                       .override(
-                                        font: GoogleFonts.roboto(
+                                        font: GoogleFonts.notoSerif(
                                           fontWeight:
                                               FlutterFlowTheme.of(context)
                                                   .headlineSmall
@@ -2393,7 +2393,7 @@ class _UitgaansevenementAanmakenWidgetState
                             style: FlutterFlowTheme.of(context)
                                 .headlineSmall
                                 .override(
-                                  font: GoogleFonts.roboto(
+                                  font: GoogleFonts.notoSerif(
                                     fontWeight: FlutterFlowTheme.of(context)
                                         .headlineSmall
                                         .fontWeight,

+ 16 - 0
lib/uitgaanspaginas/home/home_model.dart

@@ -11,6 +11,7 @@ import 'dart:ui';
 import '/custom_code/actions/index.dart' as actions;
 import '/flutter_flow/custom_functions.dart' as functions;
 import 'home_widget.dart' show HomeWidget;
+import 'package:easy_debounce/easy_debounce.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
 import 'package:google_fonts/google_fonts.dart';
@@ -55,6 +56,10 @@ class HomeModel extends FlutterFlowModel<HomeWidget> {
 
   // Model for HomeUitgaanSliderComponent component.
   late HomeUitgaanSliderComponentModel homeUitgaanSliderComponentModel;
+  // State field(s) for TextField widget.
+  FocusNode? textFieldFocusNode;
+  TextEditingController? textController;
+  String? Function(BuildContext, String?)? textControllerValidator;
   // State field(s) for ChoiceChips widget.
   FormFieldController<List<String>>? choiceChipsValueController;
   String? get choiceChipsValue =>
@@ -113,6 +118,9 @@ class HomeModel extends FlutterFlowModel<HomeWidget> {
   @override
   void dispose() {
     homeUitgaanSliderComponentModel.dispose();
+    textFieldFocusNode?.dispose();
+    textController?.dispose();
+
     tabBarController?.dispose();
     homeUitgaantabelKaartComponentModel1.dispose();
     homeUitgaantabelKaartComponentModel2.dispose();
@@ -168,6 +176,14 @@ class HomeModel extends FlutterFlowModel<HomeWidget> {
           )
         }.entries,
         widgetStates: {
+          'textFieldText': debugSerializeParam(
+            textController?.text,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=home',
+            name: 'String',
+            nullable: true,
+          ),
           'choiceChipsValue': debugSerializeParam(
             choiceChipsValue,
             ParamType.String,

+ 145 - 18
lib/uitgaanspaginas/home/home_widget.dart

@@ -10,6 +10,7 @@ import '/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaa
 import 'dart:ui';
 import '/custom_code/actions/index.dart' as actions;
 import '/flutter_flow/custom_functions.dart' as functions;
+import 'package:easy_debounce/easy_debounce.dart';
 import 'package:flutter/material.dart';
 import 'package:flutter_spinkit/flutter_spinkit.dart';
 import 'package:google_fonts/google_fonts.dart';
@@ -38,6 +39,16 @@ class _HomeWidgetState extends State<HomeWidget>
     super.initState();
     _model = createModel(context, () => HomeModel());
 
+    _model.textController ??= TextEditingController()
+      ..addListener(() {
+        debugLogWidgetClass(_model);
+      });
+    _model.textFieldFocusNode ??= FocusNode();
+    _model.textFieldFocusNode!.addListener(
+      () async {
+        safeSetState(() {});
+      },
+    );
     _model.tabBarController = TabController(
       vsync: this,
       length: 5,
@@ -114,6 +125,7 @@ class _HomeWidgetState extends State<HomeWidget>
       },
       child: Scaffold(
         key: scaffoldKey,
+        resizeToAvoidBottomInset: false,
         backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
         drawer: Drawer(
           elevation: 16.0,
@@ -165,24 +177,134 @@ class _HomeWidgetState extends State<HomeWidget>
           child: Column(
             mainAxisSize: MainAxisSize.max,
             children: [
-              Material(
-                color: Colors.transparent,
-                elevation: 0.0,
-                child: Container(
-                  height: 250.0,
-                  decoration: BoxDecoration(),
-                  child: wrapWithModel(
-                    model: _model.homeUitgaanSliderComponentModel,
-                    updateCallback: () => safeSetState(() {}),
-                    child: Builder(builder: (_) {
-                      return DebugFlutterFlowModelContext(
-                        rootModel: _model.rootModel,
-                        child: HomeUitgaanSliderComponentWidget(
-                          displayid: 'services_1',
-                        ),
-                      );
-                    }),
+              if (!(_model.textFieldFocusNode?.hasFocus ?? false))
+                Material(
+                  color: Colors.transparent,
+                  elevation: 0.0,
+                  child: Container(
+                    height: 280.0,
+                    decoration: BoxDecoration(),
+                    child: wrapWithModel(
+                      model: _model.homeUitgaanSliderComponentModel,
+                      updateCallback: () => safeSetState(() {}),
+                      child: Builder(builder: (_) {
+                        return DebugFlutterFlowModelContext(
+                          rootModel: _model.rootModel,
+                          child: HomeUitgaanSliderComponentWidget(
+                            displayid: 'services_1',
+                          ),
+                        );
+                      }),
+                    ),
+                  ),
+                ),
+              Container(
+                width: 260.0,
+                child: TextFormField(
+                  controller: _model.textController,
+                  focusNode: _model.textFieldFocusNode,
+                  onChanged: (_) => EasyDebounce.debounce(
+                    '_model.textController',
+                    Duration(milliseconds: 2000),
+                    () async {
+                      FFAppState().zoekterm = _model.textController.text;
+                      safeSetState(() {});
+                      await actions.herlaadLijsten();
+                    },
+                  ),
+                  autofocus: false,
+                  enabled: true,
+                  obscureText: false,
+                  decoration: InputDecoration(
+                    isDense: true,
+                    labelStyle:
+                        FlutterFlowTheme.of(context).labelMedium.override(
+                              font: GoogleFonts.roboto(
+                                fontWeight: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontWeight,
+                                fontStyle: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontStyle,
+                              ),
+                              letterSpacing: 0.0,
+                              fontWeight: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontWeight,
+                              fontStyle: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontStyle,
+                            ),
+                    hintText: FFLocalizations.of(context).getText(
+                      'qflzdn1h' /* Zoek op titel */,
+                    ),
+                    hintStyle:
+                        FlutterFlowTheme.of(context).labelMedium.override(
+                              font: GoogleFonts.roboto(
+                                fontWeight: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontWeight,
+                                fontStyle: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontStyle,
+                              ),
+                              letterSpacing: 0.0,
+                              fontWeight: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontWeight,
+                              fontStyle: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontStyle,
+                            ),
+                    enabledBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: Color(0x00000000),
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    focusedBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: Color(0x00000000),
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    errorBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: FlutterFlowTheme.of(context).error,
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    focusedErrorBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: FlutterFlowTheme.of(context).error,
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    filled: true,
+                    fillColor: FlutterFlowTheme.of(context).secondaryBackground,
                   ),
+                  style: FlutterFlowTheme.of(context).bodyMedium.override(
+                        font: GoogleFonts.roboto(
+                          fontWeight: FlutterFlowTheme.of(context)
+                              .bodyMedium
+                              .fontWeight,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                        ),
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      ),
+                  cursorColor: FlutterFlowTheme.of(context).primaryText,
+                  enableInteractiveSelection: true,
+                  validator:
+                      _model.textControllerValidator.asValidator(context),
                 ),
               ),
               FlutterFlowChoiceChips(
@@ -208,7 +330,7 @@ class _HomeWidgetState extends State<HomeWidget>
                   await actions.herlaadLijsten();
                 },
                 selectedChipStyle: ChipStyle(
-                  backgroundColor: FlutterFlowTheme.of(context).primary,
+                  backgroundColor: FlutterFlowTheme.of(context).secondary,
                   textStyle: FlutterFlowTheme.of(context).bodyMedium.override(
                         font: GoogleFonts.roboto(
                           fontWeight: FlutterFlowTheme.of(context)
@@ -389,6 +511,7 @@ class _HomeWidgetState extends State<HomeWidget>
                                             FFAppState().datumFilter),
                                         datumTot: functions.filterDatumTot(
                                             FFAppState().datumFilter),
+                                        zoekterm: FFAppState().zoekterm,
                                       ),
                                     );
                                   }),
@@ -422,6 +545,7 @@ class _HomeWidgetState extends State<HomeWidget>
                                               datumTot:
                                                   functions.filterDatumTot(
                                                       FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
                                             ),
                                           );
                                         }),
@@ -467,6 +591,7 @@ class _HomeWidgetState extends State<HomeWidget>
                                               datumTot:
                                                   functions.filterDatumTot(
                                                       FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
                                             ),
                                           );
                                         }),
@@ -512,6 +637,7 @@ class _HomeWidgetState extends State<HomeWidget>
                                               datumTot:
                                                   functions.filterDatumTot(
                                                       FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
                                             ),
                                           );
                                         }),
@@ -557,6 +683,7 @@ class _HomeWidgetState extends State<HomeWidget>
                                               datumTot:
                                                   functions.filterDatumTot(
                                                       FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
                                             ),
                                           );
                                         }),

+ 243 - 0
lib/uitgaanspaginas/home_copy2/home_copy2_model.dart

@@ -0,0 +1,243 @@
+import '/components/header_buttons_component_widget.dart';
+import '/flutter_flow/flutter_flow_choice_chips.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/flutter_flow/form_field_controller.dart';
+import '/shared/drawer_component/drawer_component_widget.dart';
+import '/uitgaanspaginas/home_uitgaan_slider_component/home_uitgaan_slider_component_widget.dart';
+import '/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_widget.dart';
+import 'dart:ui';
+import '/custom_code/actions/index.dart' as actions;
+import '/flutter_flow/custom_functions.dart' as functions;
+import 'home_copy2_widget.dart' show HomeCopy2Widget;
+import 'package:easy_debounce/easy_debounce.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:provider/provider.dart';
+
+class HomeCopy2Model extends FlutterFlowModel<HomeCopy2Widget> {
+  ///  Local state fields for this page.
+
+  bool _tabActiviteitenGeladen = false;
+  set tabActiviteitenGeladen(bool value) {
+    _tabActiviteitenGeladen = value;
+    debugLogWidgetClass(this);
+  }
+
+  bool get tabActiviteitenGeladen => _tabActiviteitenGeladen;
+
+  bool _tabCultuurGeladen = false;
+  set tabCultuurGeladen(bool value) {
+    _tabCultuurGeladen = value;
+    debugLogWidgetClass(this);
+  }
+
+  bool get tabCultuurGeladen => _tabCultuurGeladen;
+
+  bool _tabFilmsGeladen = false;
+  set tabFilmsGeladen(bool value) {
+    _tabFilmsGeladen = value;
+    debugLogWidgetClass(this);
+  }
+
+  bool get tabFilmsGeladen => _tabFilmsGeladen;
+
+  bool _tabJeugdGeladen = false;
+  set tabJeugdGeladen(bool value) {
+    _tabJeugdGeladen = value;
+    debugLogWidgetClass(this);
+  }
+
+  bool get tabJeugdGeladen => _tabJeugdGeladen;
+
+  ///  State fields for stateful widgets in this page.
+
+  // State field(s) for TextField widget.
+  FocusNode? textFieldFocusNode;
+  TextEditingController? textController;
+  String? Function(BuildContext, String?)? textControllerValidator;
+  // Model for HomeUitgaanSliderComponent component.
+  late HomeUitgaanSliderComponentModel homeUitgaanSliderComponentModel;
+  // State field(s) for ChoiceChips widget.
+  FormFieldController<List<String>>? choiceChipsValueController;
+  String? get choiceChipsValue =>
+      choiceChipsValueController?.value?.firstOrNull;
+  set choiceChipsValue(String? val) {
+    choiceChipsValueController?.value = val != null ? [val] : [];
+    debugLogWidgetClass(this);
+  }
+
+  // State field(s) for TabBar widget.
+  TabController? tabBarController;
+  int get tabBarCurrentIndex =>
+      tabBarController != null ? tabBarController!.index : 0;
+  int get tabBarPreviousIndex =>
+      tabBarController != null ? tabBarController!.previousIndex : 0;
+
+  // Model for HomeUitgaantabelKaartComponent component.
+  late HomeUitgaantabelKaartComponentModel homeUitgaantabelKaartComponentModel1;
+  // Model for HomeUitgaantabelKaartComponent component.
+  late HomeUitgaantabelKaartComponentModel homeUitgaantabelKaartComponentModel2;
+  // Model for HomeUitgaantabelKaartComponent component.
+  late HomeUitgaantabelKaartComponentModel homeUitgaantabelKaartComponentModel3;
+  // Model for HomeUitgaantabelKaartComponent component.
+  late HomeUitgaantabelKaartComponentModel homeUitgaantabelKaartComponentModel4;
+  // Model for HomeUitgaantabelKaartComponent component.
+  late HomeUitgaantabelKaartComponentModel homeUitgaantabelKaartComponentModel5;
+  // Model for drawerComponent component.
+  late DrawerComponentModel drawerComponentModel;
+  // Model for HeaderButtonsComponent component.
+  late HeaderButtonsComponentModel headerButtonsComponentModel;
+
+  final Map<String, DebugDataField> debugGeneratorVariables = {};
+  final Map<String, DebugDataField> debugBackendQueries = {};
+  final Map<String, FlutterFlowModel> widgetBuilderComponents = {};
+  @override
+  void initState(BuildContext context) {
+    homeUitgaanSliderComponentModel =
+        createModel(context, () => HomeUitgaanSliderComponentModel());
+    homeUitgaantabelKaartComponentModel1 =
+        createModel(context, () => HomeUitgaantabelKaartComponentModel());
+    homeUitgaantabelKaartComponentModel2 =
+        createModel(context, () => HomeUitgaantabelKaartComponentModel());
+    homeUitgaantabelKaartComponentModel3 =
+        createModel(context, () => HomeUitgaantabelKaartComponentModel());
+    homeUitgaantabelKaartComponentModel4 =
+        createModel(context, () => HomeUitgaantabelKaartComponentModel());
+    homeUitgaantabelKaartComponentModel5 =
+        createModel(context, () => HomeUitgaantabelKaartComponentModel());
+    drawerComponentModel = createModel(context, () => DrawerComponentModel());
+    headerButtonsComponentModel =
+        createModel(context, () => HeaderButtonsComponentModel());
+
+    debugLogWidgetClass(this);
+  }
+
+  @override
+  void dispose() {
+    textFieldFocusNode?.dispose();
+    textController?.dispose();
+
+    homeUitgaanSliderComponentModel.dispose();
+    tabBarController?.dispose();
+    homeUitgaantabelKaartComponentModel1.dispose();
+    homeUitgaantabelKaartComponentModel2.dispose();
+    homeUitgaantabelKaartComponentModel3.dispose();
+    homeUitgaantabelKaartComponentModel4.dispose();
+    homeUitgaantabelKaartComponentModel5.dispose();
+    drawerComponentModel.dispose();
+    headerButtonsComponentModel.dispose();
+  }
+
+  @override
+  WidgetClassDebugData toWidgetClassDebugData() => WidgetClassDebugData(
+        localStates: {
+          'tabActiviteitenGeladen': debugSerializeParam(
+            tabActiviteitenGeladen,
+            ParamType.bool,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            searchReference:
+                'reference=QjAKHwoWdGFiQWN0aXZpdGVpdGVuR2VsYWRlbhIFeXYzOXEqBxIFZmFsc2VyBAgFIAFQAVoWdGFiQWN0aXZpdGVpdGVuR2VsYWRlbmIJaG9tZUNvcHky',
+            name: 'bool',
+            nullable: false,
+          ),
+          'tabCultuurGeladen': debugSerializeParam(
+            tabCultuurGeladen,
+            ParamType.bool,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            searchReference:
+                'reference=QisKGgoRdGFiQ3VsdHV1ckdlbGFkZW4SBW1rdnZxKgcSBWZhbHNlcgQIBSABUAFaEXRhYkN1bHR1dXJHZWxhZGVuYglob21lQ29weTI=',
+            name: 'bool',
+            nullable: false,
+          ),
+          'tabFilmsGeladen': debugSerializeParam(
+            tabFilmsGeladen,
+            ParamType.bool,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            searchReference:
+                'reference=QikKGAoPdGFiRmlsbXNHZWxhZGVuEgVuN2JnZSoHEgVmYWxzZXIECAUgAVABWg90YWJGaWxtc0dlbGFkZW5iCWhvbWVDb3B5Mg==',
+            name: 'bool',
+            nullable: false,
+          ),
+          'tabJeugdGeladen': debugSerializeParam(
+            tabJeugdGeladen,
+            ParamType.bool,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            searchReference:
+                'reference=QikKGAoPdGFiSmV1Z2RHZWxhZGVuEgVwMTcxNSoHEgVmYWxzZXIECAUgAVABWg90YWJKZXVnZEdlbGFkZW5iCWhvbWVDb3B5Mg==',
+            name: 'bool',
+            nullable: false,
+          )
+        }.entries,
+        widgetStates: {
+          'textFieldText': debugSerializeParam(
+            textController?.text,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            name: 'String',
+            nullable: true,
+          ),
+          'choiceChipsValue': debugSerializeParam(
+            choiceChipsValue,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            name: 'String',
+            nullable: true,
+          ),
+          'tabBarCurrentIndex': debugSerializeParam(
+            tabBarCurrentIndex,
+            ParamType.int,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            name: 'int',
+            nullable: true,
+          ),
+          'tabBarPreviousIndex': debugSerializeParam(
+            tabBarPreviousIndex,
+            ParamType.int,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=homeCopy2',
+            name: 'int',
+            nullable: true,
+          )
+        }.entries,
+        generatorVariables: debugGeneratorVariables.entries,
+        backendQueries: debugBackendQueries.entries,
+        componentStates: {
+          'homeUitgaanSliderComponentModel (HomeUitgaanSliderComponent)':
+              homeUitgaanSliderComponentModel?.toWidgetClassDebugData(),
+          'homeUitgaantabelKaartComponentModel1 (HomeUitgaantabelKaartComponent)':
+              homeUitgaantabelKaartComponentModel1?.toWidgetClassDebugData(),
+          'homeUitgaantabelKaartComponentModel2 (HomeUitgaantabelKaartComponent)':
+              homeUitgaantabelKaartComponentModel2?.toWidgetClassDebugData(),
+          'homeUitgaantabelKaartComponentModel3 (HomeUitgaantabelKaartComponent)':
+              homeUitgaantabelKaartComponentModel3?.toWidgetClassDebugData(),
+          'homeUitgaantabelKaartComponentModel4 (HomeUitgaantabelKaartComponent)':
+              homeUitgaantabelKaartComponentModel4?.toWidgetClassDebugData(),
+          'homeUitgaantabelKaartComponentModel5 (HomeUitgaantabelKaartComponent)':
+              homeUitgaantabelKaartComponentModel5?.toWidgetClassDebugData(),
+          'drawerComponentModel (drawerComponent)':
+              drawerComponentModel?.toWidgetClassDebugData(),
+          'headerButtonsComponentModel (HeaderButtonsComponent)':
+              headerButtonsComponentModel?.toWidgetClassDebugData(),
+          ...widgetBuilderComponents.map(
+            (key, value) => MapEntry(
+              key,
+              value.toWidgetClassDebugData(),
+            ),
+          ),
+        }.withoutNulls.entries,
+        link:
+            'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd/tab=uiBuilder&page=homeCopy2',
+        searchReference: 'reference=Oglob21lQ29weTJQAVoJaG9tZUNvcHky',
+        widgetClassName: 'homeCopy2',
+      );
+}

+ 712 - 0
lib/uitgaanspaginas/home_copy2/home_copy2_widget.dart

@@ -0,0 +1,712 @@
+import '/components/header_buttons_component_widget.dart';
+import '/flutter_flow/flutter_flow_choice_chips.dart';
+import '/flutter_flow/flutter_flow_theme.dart';
+import '/flutter_flow/flutter_flow_util.dart';
+import '/flutter_flow/flutter_flow_widgets.dart';
+import '/flutter_flow/form_field_controller.dart';
+import '/shared/drawer_component/drawer_component_widget.dart';
+import '/uitgaanspaginas/home_uitgaan_slider_component/home_uitgaan_slider_component_widget.dart';
+import '/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_widget.dart';
+import 'dart:ui';
+import '/custom_code/actions/index.dart' as actions;
+import '/flutter_flow/custom_functions.dart' as functions;
+import 'package:easy_debounce/easy_debounce.dart';
+import 'package:flutter/material.dart';
+import 'package:flutter_spinkit/flutter_spinkit.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:provider/provider.dart';
+import 'home_copy2_model.dart';
+export 'home_copy2_model.dart';
+
+class HomeCopy2Widget extends StatefulWidget {
+  const HomeCopy2Widget({super.key});
+
+  static String routeName = 'homeCopy2';
+  static String routePath = '/homeCopy2';
+
+  @override
+  State<HomeCopy2Widget> createState() => _HomeCopy2WidgetState();
+}
+
+class _HomeCopy2WidgetState extends State<HomeCopy2Widget>
+    with TickerProviderStateMixin, RouteAware {
+  late HomeCopy2Model _model;
+
+  final scaffoldKey = GlobalKey<ScaffoldState>();
+
+  @override
+  void initState() {
+    super.initState();
+    _model = createModel(context, () => HomeCopy2Model());
+
+    _model.textController ??= TextEditingController()
+      ..addListener(() {
+        debugLogWidgetClass(_model);
+      });
+    _model.textFieldFocusNode ??= FocusNode();
+
+    _model.tabBarController = TabController(
+      vsync: this,
+      length: 5,
+      initialIndex: 0,
+    )
+      ..addListener(() => safeSetState(() {}))
+      ..addListener(() {
+        debugLogWidgetClass(_model);
+      });
+  }
+
+  @override
+  void dispose() {
+    routeObserver.unsubscribe(this);
+
+    _model.dispose();
+
+    super.dispose();
+  }
+
+  @override
+  void didUpdateWidget(HomeCopy2Widget oldWidget) {
+    super.didUpdateWidget(oldWidget);
+    _model.widget = widget;
+  }
+
+  @override
+  void didChangeDependencies() {
+    super.didChangeDependencies();
+    final route = DebugModalRoute.of(context);
+    if (route != null) {
+      routeObserver.subscribe(this, route);
+    }
+    debugLogGlobalProperty(context);
+  }
+
+  @override
+  void didPopNext() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPush() {
+    if (mounted && DebugFlutterFlowModelContext.maybeOf(context) == null) {
+      setState(() => _model.isRouteVisible = true);
+      debugLogWidgetClass(_model);
+    }
+  }
+
+  @override
+  void didPop() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  void didPushNext() {
+    _model.isRouteVisible = false;
+  }
+
+  @override
+  Widget build(BuildContext context) {
+    DebugFlutterFlowModelContext.maybeOf(context)
+        ?.parentModelCallback
+        ?.call(_model);
+    context.watch<FFAppState>();
+
+    return GestureDetector(
+      onTap: () {
+        FocusScope.of(context).unfocus();
+        FocusManager.instance.primaryFocus?.unfocus();
+      },
+      child: Scaffold(
+        key: scaffoldKey,
+        backgroundColor: FlutterFlowTheme.of(context).primaryBackground,
+        drawer: Drawer(
+          elevation: 16.0,
+          child: wrapWithModel(
+            model: _model.drawerComponentModel,
+            updateCallback: () => safeSetState(() {}),
+            child: Builder(builder: (_) {
+              return DebugFlutterFlowModelContext(
+                rootModel: _model.rootModel,
+                child: DrawerComponentWidget(),
+              );
+            }),
+          ),
+        ),
+        appBar: PreferredSize(
+          preferredSize: Size.fromHeight(50.0),
+          child: AppBar(
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
+            iconTheme:
+                IconThemeData(color: FlutterFlowTheme.of(context).secondary),
+            automaticallyImplyLeading: false,
+            actions: [],
+            flexibleSpace: FlexibleSpaceBar(
+              background: wrapWithModel(
+                model: _model.headerButtonsComponentModel,
+                updateCallback: () => safeSetState(() {}),
+                child: Builder(builder: (_) {
+                  return DebugFlutterFlowModelContext(
+                    rootModel: _model.rootModel,
+                    child: HeaderButtonsComponentWidget(
+                      showBackButton: false,
+                    ),
+                  );
+                }),
+              ),
+              centerTitle: true,
+              expandedTitleScale: 1.0,
+            ),
+            bottom: PreferredSize(
+              preferredSize: Size.fromHeight(70.0),
+              child: Container(),
+            ),
+            toolbarHeight: MediaQuery.sizeOf(context).height * 0.25,
+            elevation: 2.0,
+          ),
+        ),
+        body: SafeArea(
+          top: true,
+          child: Column(
+            mainAxisSize: MainAxisSize.max,
+            children: [
+              Container(
+                width: 200.0,
+                child: TextFormField(
+                  controller: _model.textController,
+                  focusNode: _model.textFieldFocusNode,
+                  onChanged: (_) => EasyDebounce.debounce(
+                    '_model.textController',
+                    Duration(milliseconds: 2000),
+                    () async {
+                      FFAppState().zoekterm = _model.textController.text;
+                      safeSetState(() {});
+                      await actions.herlaadLijsten();
+                    },
+                  ),
+                  autofocus: false,
+                  enabled: true,
+                  obscureText: false,
+                  decoration: InputDecoration(
+                    isDense: true,
+                    labelStyle:
+                        FlutterFlowTheme.of(context).labelMedium.override(
+                              font: GoogleFonts.roboto(
+                                fontWeight: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontWeight,
+                                fontStyle: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontStyle,
+                              ),
+                              letterSpacing: 0.0,
+                              fontWeight: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontWeight,
+                              fontStyle: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontStyle,
+                            ),
+                    hintText: FFLocalizations.of(context).getText(
+                      'mekk4pq5' /* Zoek op titel */,
+                    ),
+                    hintStyle:
+                        FlutterFlowTheme.of(context).labelMedium.override(
+                              font: GoogleFonts.roboto(
+                                fontWeight: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontWeight,
+                                fontStyle: FlutterFlowTheme.of(context)
+                                    .labelMedium
+                                    .fontStyle,
+                              ),
+                              letterSpacing: 0.0,
+                              fontWeight: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontWeight,
+                              fontStyle: FlutterFlowTheme.of(context)
+                                  .labelMedium
+                                  .fontStyle,
+                            ),
+                    enabledBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: Color(0x00000000),
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    focusedBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: Color(0x00000000),
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    errorBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: FlutterFlowTheme.of(context).error,
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    focusedErrorBorder: OutlineInputBorder(
+                      borderSide: BorderSide(
+                        color: FlutterFlowTheme.of(context).error,
+                        width: 1.0,
+                      ),
+                      borderRadius: BorderRadius.circular(8.0),
+                    ),
+                    filled: true,
+                    fillColor: FlutterFlowTheme.of(context).secondaryBackground,
+                  ),
+                  style: FlutterFlowTheme.of(context).bodyMedium.override(
+                        font: GoogleFonts.roboto(
+                          fontWeight: FlutterFlowTheme.of(context)
+                              .bodyMedium
+                              .fontWeight,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                        ),
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      ),
+                  cursorColor: FlutterFlowTheme.of(context).primaryText,
+                  enableInteractiveSelection: true,
+                  validator:
+                      _model.textControllerValidator.asValidator(context),
+                ),
+              ),
+              Material(
+                color: Colors.transparent,
+                elevation: 0.0,
+                child: Container(
+                  height: 250.0,
+                  decoration: BoxDecoration(),
+                  child: wrapWithModel(
+                    model: _model.homeUitgaanSliderComponentModel,
+                    updateCallback: () => safeSetState(() {}),
+                    child: Builder(builder: (_) {
+                      return DebugFlutterFlowModelContext(
+                        rootModel: _model.rootModel,
+                        child: HomeUitgaanSliderComponentWidget(
+                          displayid: 'services_1',
+                        ),
+                      );
+                    }),
+                  ),
+                ),
+              ),
+              FlutterFlowChoiceChips(
+                options: [
+                  ChipData(FFLocalizations.of(context).getText(
+                    'h5672897' /* Alles */,
+                  )),
+                  ChipData(FFLocalizations.of(context).getText(
+                    'wt4i47fd' /* Vandaag */,
+                  )),
+                  ChipData(FFLocalizations.of(context).getText(
+                    'fcb6a7vy' /* Dit weekend */,
+                  )),
+                  ChipData(FFLocalizations.of(context).getText(
+                    'q7un7bnp' /* Deze week */,
+                  ))
+                ],
+                onChanged: (val) async {
+                  safeSetState(
+                      () => _model.choiceChipsValue = val?.firstOrNull);
+                  FFAppState().datumFilter = _model.choiceChipsValue!;
+                  safeSetState(() {});
+                  await actions.herlaadLijsten();
+                },
+                selectedChipStyle: ChipStyle(
+                  backgroundColor: FlutterFlowTheme.of(context).secondary,
+                  textStyle: FlutterFlowTheme.of(context).bodyMedium.override(
+                        font: GoogleFonts.roboto(
+                          fontWeight: FlutterFlowTheme.of(context)
+                              .bodyMedium
+                              .fontWeight,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                        ),
+                        color: FlutterFlowTheme.of(context).info,
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      ),
+                  iconColor: FlutterFlowTheme.of(context).info,
+                  iconSize: 16.0,
+                  elevation: 0.0,
+                  borderRadius: BorderRadius.circular(8.0),
+                ),
+                unselectedChipStyle: ChipStyle(
+                  backgroundColor:
+                      FlutterFlowTheme.of(context).secondaryBackground,
+                  textStyle: FlutterFlowTheme.of(context).bodyMedium.override(
+                        font: GoogleFonts.roboto(
+                          fontWeight: FlutterFlowTheme.of(context)
+                              .bodyMedium
+                              .fontWeight,
+                          fontStyle:
+                              FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                        ),
+                        color: FlutterFlowTheme.of(context).secondaryText,
+                        letterSpacing: 0.0,
+                        fontWeight:
+                            FlutterFlowTheme.of(context).bodyMedium.fontWeight,
+                        fontStyle:
+                            FlutterFlowTheme.of(context).bodyMedium.fontStyle,
+                      ),
+                  iconColor: FlutterFlowTheme.of(context).secondaryText,
+                  iconSize: 16.0,
+                  elevation: 0.0,
+                  borderRadius: BorderRadius.circular(8.0),
+                ),
+                chipSpacing: 8.0,
+                rowSpacing: 8.0,
+                multiselect: false,
+                initialized: _model.choiceChipsValue != null,
+                alignment: WrapAlignment.start,
+                controller: _model.choiceChipsValueController ??=
+                    FormFieldController<List<String>>(
+                  [
+                    FFLocalizations.of(context).getText(
+                      'bz77r1r1' /* Alles */,
+                    )
+                  ],
+                ),
+                wrapped: true,
+              ),
+              Expanded(
+                child: Column(
+                  children: [
+                    Align(
+                      alignment: Alignment(0.0, 0),
+                      child: TabBar(
+                        isScrollable: true,
+                        tabAlignment: TabAlignment.center,
+                        labelColor: FlutterFlowTheme.of(context).primaryText,
+                        unselectedLabelColor:
+                            FlutterFlowTheme.of(context).secondaryText,
+                        labelStyle:
+                            FlutterFlowTheme.of(context).titleMedium.override(
+                                  font: GoogleFonts.roboto(
+                                    fontWeight: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontWeight,
+                                    fontStyle: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontStyle,
+                                  ),
+                                  letterSpacing: 0.0,
+                                  fontWeight: FlutterFlowTheme.of(context)
+                                      .titleMedium
+                                      .fontWeight,
+                                  fontStyle: FlutterFlowTheme.of(context)
+                                      .titleMedium
+                                      .fontStyle,
+                                ),
+                        unselectedLabelStyle:
+                            FlutterFlowTheme.of(context).titleMedium.override(
+                                  font: GoogleFonts.roboto(
+                                    fontWeight: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontWeight,
+                                    fontStyle: FlutterFlowTheme.of(context)
+                                        .titleMedium
+                                        .fontStyle,
+                                  ),
+                                  letterSpacing: 0.0,
+                                  fontWeight: FlutterFlowTheme.of(context)
+                                      .titleMedium
+                                      .fontWeight,
+                                  fontStyle: FlutterFlowTheme.of(context)
+                                      .titleMedium
+                                      .fontStyle,
+                                ),
+                        indicatorColor: FlutterFlowTheme.of(context).secondary,
+                        tabs: [
+                          Tab(
+                            text: FFLocalizations.of(context).getText(
+                              'ddmj640y' /* Uitgaan */,
+                            ),
+                          ),
+                          Tab(
+                            text: FFLocalizations.of(context).getText(
+                              'va3qvqmz' /* Activiteiten */,
+                            ),
+                          ),
+                          Tab(
+                            text: FFLocalizations.of(context).getText(
+                              'bl0f6fx0' /* Cultuur & Info */,
+                            ),
+                          ),
+                          Tab(
+                            text: FFLocalizations.of(context).getText(
+                              'el9jnqjo' /* Films */,
+                            ),
+                          ),
+                          Tab(
+                            text: FFLocalizations.of(context).getText(
+                              'j2plh81y' /* Jeugd */,
+                            ),
+                          ),
+                        ],
+                        controller: _model.tabBarController,
+                        onTap: (i) async {
+                          [
+                            () async {},
+                            () async {
+                              _model.tabActiviteitenGeladen = true;
+                              safeSetState(() {});
+                            },
+                            () async {
+                              _model.tabCultuurGeladen = true;
+                              safeSetState(() {});
+                            },
+                            () async {
+                              _model.tabFilmsGeladen = true;
+                              safeSetState(() {});
+                            },
+                            () async {
+                              _model.tabJeugdGeladen = true;
+                              safeSetState(() {});
+                            }
+                          ][i]();
+                        },
+                      ),
+                    ),
+                    Expanded(
+                      child: TabBarView(
+                        controller: _model.tabBarController,
+                        children: [
+                          Column(
+                            mainAxisSize: MainAxisSize.max,
+                            children: [
+                              Expanded(
+                                child: wrapWithModel(
+                                  model: _model
+                                      .homeUitgaantabelKaartComponentModel1,
+                                  updateCallback: () => safeSetState(() {}),
+                                  child: Builder(builder: (_) {
+                                    return DebugFlutterFlowModelContext(
+                                      rootModel: _model.rootModel,
+                                      child:
+                                          HomeUitgaantabelKaartComponentWidget(
+                                        key: ValueKey(FFAppState().datumFilter),
+                                        displayid: 'services_3',
+                                        datumVan: functions.filterDatumVan(
+                                            FFAppState().datumFilter),
+                                        datumTot: functions.filterDatumTot(
+                                            FFAppState().datumFilter),
+                                        zoekterm: FFAppState().zoekterm,
+                                      ),
+                                    );
+                                  }),
+                                ),
+                              ),
+                            ],
+                          ),
+                          Builder(
+                            builder: (context) {
+                              if (_model.tabActiviteitenGeladen) {
+                                return Column(
+                                  mainAxisSize: MainAxisSize.max,
+                                  children: [
+                                    Expanded(
+                                      child: wrapWithModel(
+                                        model: _model
+                                            .homeUitgaantabelKaartComponentModel2,
+                                        updateCallback: () =>
+                                            safeSetState(() {}),
+                                        child: Builder(builder: (_) {
+                                          return DebugFlutterFlowModelContext(
+                                            rootModel: _model.rootModel,
+                                            child:
+                                                HomeUitgaantabelKaartComponentWidget(
+                                              key: ValueKey(
+                                                  FFAppState().datumFilter),
+                                              displayid: 'services_4',
+                                              datumVan:
+                                                  functions.filterDatumVan(
+                                                      FFAppState().datumFilter),
+                                              datumTot:
+                                                  functions.filterDatumTot(
+                                                      FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
+                                            ),
+                                          );
+                                        }),
+                                      ),
+                                    ),
+                                  ],
+                                );
+                              } else {
+                                return Container(
+                                  width: 100.0,
+                                  height: 100.0,
+                                  decoration: BoxDecoration(
+                                    color: FlutterFlowTheme.of(context)
+                                        .secondaryBackground,
+                                  ),
+                                );
+                              }
+                            },
+                          ),
+                          Builder(
+                            builder: (context) {
+                              if (_model.tabCultuurGeladen) {
+                                return Column(
+                                  mainAxisSize: MainAxisSize.max,
+                                  children: [
+                                    Expanded(
+                                      child: wrapWithModel(
+                                        model: _model
+                                            .homeUitgaantabelKaartComponentModel3,
+                                        updateCallback: () =>
+                                            safeSetState(() {}),
+                                        child: Builder(builder: (_) {
+                                          return DebugFlutterFlowModelContext(
+                                            rootModel: _model.rootModel,
+                                            child:
+                                                HomeUitgaantabelKaartComponentWidget(
+                                              key: ValueKey(
+                                                  FFAppState().datumFilter),
+                                              displayid: 'services_5',
+                                              datumVan:
+                                                  functions.filterDatumVan(
+                                                      FFAppState().datumFilter),
+                                              datumTot:
+                                                  functions.filterDatumTot(
+                                                      FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
+                                            ),
+                                          );
+                                        }),
+                                      ),
+                                    ),
+                                  ],
+                                );
+                              } else {
+                                return Container(
+                                  width: 100.0,
+                                  height: 100.0,
+                                  decoration: BoxDecoration(
+                                    color: FlutterFlowTheme.of(context)
+                                        .secondaryBackground,
+                                  ),
+                                );
+                              }
+                            },
+                          ),
+                          Builder(
+                            builder: (context) {
+                              if (_model.tabFilmsGeladen) {
+                                return Column(
+                                  mainAxisSize: MainAxisSize.max,
+                                  children: [
+                                    Expanded(
+                                      child: wrapWithModel(
+                                        model: _model
+                                            .homeUitgaantabelKaartComponentModel4,
+                                        updateCallback: () =>
+                                            safeSetState(() {}),
+                                        child: Builder(builder: (_) {
+                                          return DebugFlutterFlowModelContext(
+                                            rootModel: _model.rootModel,
+                                            child:
+                                                HomeUitgaantabelKaartComponentWidget(
+                                              key: ValueKey(
+                                                  FFAppState().datumFilter),
+                                              displayid: 'services_6',
+                                              datumVan:
+                                                  functions.filterDatumVan(
+                                                      FFAppState().datumFilter),
+                                              datumTot:
+                                                  functions.filterDatumTot(
+                                                      FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
+                                            ),
+                                          );
+                                        }),
+                                      ),
+                                    ),
+                                  ],
+                                );
+                              } else {
+                                return Container(
+                                  width: 100.0,
+                                  height: 100.0,
+                                  decoration: BoxDecoration(
+                                    color: FlutterFlowTheme.of(context)
+                                        .secondaryBackground,
+                                  ),
+                                );
+                              }
+                            },
+                          ),
+                          Builder(
+                            builder: (context) {
+                              if (_model.tabJeugdGeladen) {
+                                return Column(
+                                  mainAxisSize: MainAxisSize.max,
+                                  children: [
+                                    Expanded(
+                                      child: wrapWithModel(
+                                        model: _model
+                                            .homeUitgaantabelKaartComponentModel5,
+                                        updateCallback: () =>
+                                            safeSetState(() {}),
+                                        child: Builder(builder: (_) {
+                                          return DebugFlutterFlowModelContext(
+                                            rootModel: _model.rootModel,
+                                            child:
+                                                HomeUitgaantabelKaartComponentWidget(
+                                              key: ValueKey(
+                                                  FFAppState().datumFilter),
+                                              displayid: 'services_7',
+                                              datumVan:
+                                                  functions.filterDatumVan(
+                                                      FFAppState().datumFilter),
+                                              datumTot:
+                                                  functions.filterDatumTot(
+                                                      FFAppState().datumFilter),
+                                              zoekterm: FFAppState().zoekterm,
+                                            ),
+                                          );
+                                        }),
+                                      ),
+                                    ),
+                                  ],
+                                );
+                              } else {
+                                return Container(
+                                  width: 100.0,
+                                  height: 100.0,
+                                  decoration: BoxDecoration(
+                                    color: FlutterFlowTheme.of(context)
+                                        .secondaryBackground,
+                                  ),
+                                );
+                              }
+                            },
+                          ),
+                        ],
+                      ),
+                    ),
+                  ],
+                ),
+              ),
+            ],
+          ),
+        ),
+      ),
+    );
+  }
+}

+ 4 - 4
lib/uitgaanspaginas/home_uitgaan_slider_component/home_uitgaan_slider_component_widget.dart

@@ -187,15 +187,15 @@ class _HomeUitgaanSliderComponentWidgetState
                           height: () {
                             if (MediaQuery.sizeOf(context).width <
                                 kBreakpointSmall) {
-                              return 180.0;
+                              return 240.0;
                             } else if (MediaQuery.sizeOf(context).width <
                                 kBreakpointMedium) {
-                              return 220.0;
+                              return 240.0;
                             } else if (MediaQuery.sizeOf(context).width <
                                 kBreakpointLarge) {
-                              return 260.0;
+                              return 240.0;
                             } else {
-                              return 300.0;
+                              return 240.0;
                             }
                           }(),
                           child: CarouselSlider.builder(

+ 10 - 0
lib/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_model.dart

@@ -134,6 +134,16 @@ class HomeUitgaantabelKaartComponentModel
                 'reference=ShoKEgoIZGF0dW1Ub3QSBnh4dmpia3IECAMgAFAAWghkYXR1bVRvdA==',
             name: 'String',
             nullable: true,
+          ),
+          'zoekterm': debugSerializeParam(
+            widget?.zoekterm,
+            ParamType.String,
+            link:
+                'https://app.flutterflow.io/project/uitgaanskrant-1qhvtd?tab=uiBuilder&page=HomeUitgaantabelKaartComponent',
+            searchReference:
+                'reference=ShoKEgoIem9la3Rlcm0SBndsNTc4dXIECAMgAFAAWgh6b2VrdGVybQ==',
+            name: 'String',
+            nullable: true,
           )
         }.withoutNulls.entries,
         generatorVariables: debugGeneratorVariables.entries,

+ 12 - 5
lib/uitgaanspaginas/home_uitgaantabel_kaart_component/home_uitgaantabel_kaart_component_widget.dart

@@ -25,11 +25,13 @@ class HomeUitgaantabelKaartComponentWidget extends StatefulWidget {
     required this.displayid,
     this.datumVan,
     this.datumTot,
+    this.zoekterm,
   });
 
   final String? displayid;
   final String? datumVan;
   final String? datumTot;
+  final String? zoekterm;
 
   @override
   State<HomeUitgaantabelKaartComponentWidget> createState() =>
@@ -141,6 +143,7 @@ class _HomeUitgaantabelKaartComponentWidgetState
               displayId: widget!.displayid,
               datumVan: widget!.datumVan,
               datumTot: widget!.datumTot,
+              zoek: widget!.zoekterm,
             ),
           ),
           crossAxisCount: () {
@@ -234,7 +237,7 @@ class _HomeUitgaantabelKaartComponentWidgetState
                       boxShadow: [
                         BoxShadow(
                           blurRadius: 4.0,
-                          color: Color(0x33000000),
+                          color: Colors.transparent,
                           offset: Offset(
                             0.0,
                             2.0,
@@ -242,10 +245,14 @@ class _HomeUitgaantabelKaartComponentWidgetState
                         )
                       ],
                       borderRadius: BorderRadius.only(
-                        topLeft: Radius.circular(12.0),
-                        topRight: Radius.circular(12.0),
-                        bottomLeft: Radius.circular(12.0),
-                        bottomRight: Radius.circular(12.0),
+                        topLeft: Radius.circular(8.0),
+                        topRight: Radius.circular(8.0),
+                        bottomLeft: Radius.circular(8.0),
+                        bottomRight: Radius.circular(8.0),
+                      ),
+                      border: Border.all(
+                        color: FlutterFlowTheme.of(context).alternate,
+                        width: 2.0,
                       ),
                     ),
                     child: Row(

+ 22 - 21
lib/uitgaanspaginas/p_uitgaan_slider_kaart_component/p_uitgaan_slider_kaart_component_widget.dart

@@ -124,14 +124,14 @@ class _PUitgaanSliderKaartComponentWidgetState
                   boxShadow: [
                     BoxShadow(
                       blurRadius: 4.0,
-                      color: Color(0x33000000),
+                      color: Colors.transparent,
                       offset: Offset(
                         0.0,
                         2.0,
                       ),
                     )
                   ],
-                  borderRadius: BorderRadius.circular(24.0),
+                  borderRadius: BorderRadius.circular(8.0),
                 ),
                 child: Align(
                   alignment: AlignmentDirectional(1.0, 0.0),
@@ -178,14 +178,18 @@ class _PUitgaanSliderKaartComponentWidgetState
                   boxShadow: [
                     BoxShadow(
                       blurRadius: 4.0,
-                      color: Color(0x33000000),
+                      color: Colors.transparent,
                       offset: Offset(
                         0.0,
                         2.0,
                       ),
                     )
                   ],
-                  borderRadius: BorderRadius.circular(12.0),
+                  borderRadius: BorderRadius.circular(8.0),
+                  border: Border.all(
+                    color: FlutterFlowTheme.of(context).alternate,
+                    width: 2.0,
+                  ),
                 ),
                 alignment: AlignmentDirectional(0.0, 0.0),
                 child: Column(
@@ -379,23 +383,20 @@ class _PUitgaanSliderKaartComponentWidgetState
                             children: List.generate(categorie.length,
                                 (categorieIndex) {
                               final categorieItem = categorie[categorieIndex];
-                              return Align(
-                                alignment: AlignmentDirectional(1.0, 1.0),
-                                child: Builder(builder: (_) {
-                                  return DebugFlutterFlowModelContext(
-                                    rootModel: _model.rootModel,
-                                    parentModelCallback: (m) {
-                                      _model.tagCategorieComponentModels[
-                                          'Keyb8d_${categorieIndex}_of_${categorie.length}'] = m;
-                                    },
-                                    child: TagCategorieComponentWidget(
-                                      key: Key(
-                                          'Keyb8d_${categorieIndex}_of_${categorie.length}'),
-                                      categorieTag: categorieItem,
-                                    ),
-                                  );
-                                }),
-                              );
+                              return Builder(builder: (_) {
+                                return DebugFlutterFlowModelContext(
+                                  rootModel: _model.rootModel,
+                                  parentModelCallback: (m) {
+                                    _model.tagCategorieComponentModels[
+                                        'Keyb8d_${categorieIndex}_of_${categorie.length}'] = m;
+                                  },
+                                  child: TagCategorieComponentWidget(
+                                    key: Key(
+                                        'Keyb8d_${categorieIndex}_of_${categorie.length}'),
+                                    categorieTag: categorieItem,
+                                  ),
+                                );
+                              });
                             }),
                           );
                         },

+ 9 - 5
lib/uitgaanspaginas/uitgaantabel_kaart/uitgaantabel_kaart_widget.dart

@@ -159,7 +159,7 @@ class _UitgaantabelKaartWidgetState extends State<UitgaantabelKaartWidget>
             boxShadow: [
               BoxShadow(
                 blurRadius: 4.0,
-                color: Color(0x33000000),
+                color: Colors.transparent,
                 offset: Offset(
                   0.0,
                   2.0,
@@ -167,10 +167,14 @@ class _UitgaantabelKaartWidgetState extends State<UitgaantabelKaartWidget>
               )
             ],
             borderRadius: BorderRadius.only(
-              topLeft: Radius.circular(12.0),
-              topRight: Radius.circular(12.0),
-              bottomLeft: Radius.circular(12.0),
-              bottomRight: Radius.circular(12.0),
+              topLeft: Radius.circular(8.0),
+              topRight: Radius.circular(8.0),
+              bottomLeft: Radius.circular(8.0),
+              bottomRight: Radius.circular(8.0),
+            ),
+            border: Border.all(
+              color: FlutterFlowTheme.of(context).alternate,
+              width: 2.0,
             ),
           ),
           child: Row(

+ 1 - 1
lib/wachtwoord_vergeten/wachtwoord_vergeten_widget.dart

@@ -124,7 +124,7 @@ class _WachtwoordVergetenWidgetState extends State<WachtwoordVergetenWidget>
         appBar: PreferredSize(
           preferredSize: Size.fromHeight(80.0),
           child: AppBar(
-            backgroundColor: FlutterFlowTheme.of(context).info,
+            backgroundColor: FlutterFlowTheme.of(context).primaryText,
             automaticallyImplyLeading: false,
             actions: [],
             flexibleSpace: FlexibleSpaceBar(