Settings-modulekaarten consolideren (~150-250 regels scaffold) #2071

Closed
opened 2026-09-13 08:05:21 +00:00 by brenno · 0 comments
Owner

Probleem

Meerdere instellingen-modulekaarten in lib/widgets/dialogs/settings/ gebruiken vrijwel hetzelfde outer Material/RoundedRectangleBorder-scaffold en een SwitchListTile-gebaseerde layout:

Material(
  color: AppTheme.paper,
  clipBehavior: Clip.antiAlias,
  shape: RoundedRectangleBorder(
    side: BorderSide(color: AppTheme.iceBlue),
    borderRadius: BorderRadius.circular(10),
  ),
  child: ...
)

Betrokken bestanden

  • settings/elearning_module_card.dart (regels 21-27, switch op 31)
  • settings/online_storage_module_card.dart (regels 35-40, switch op 45)
  • settings/asset_rights_module_card.dart (regels 15-20, switch op 22)
  • settings/procesverbetering_module_card.dart (regels 47-52, switch op 56)
  • settings/video_calls_module_card.dart (regels 24-29, switch op 33)
  • settings/ai_module_card.dart (regels 40-45, switch op 49)
  • settings/import_module_card.dart
  • settings/collaboration_module_card.dart
  • settings/libreplan_module_card.dart
  • settings/managementsysteem_module_card.dart

ai_module_card.dart en libreplan_module_card.dart lijken qua opbouw bijna identiek: een watch-provider, dezelfde Material-scaffold, dezelfde SwitchListTile-opbouw en dezelfde "Binnenkort"-fallback voor niet-desktop platformen.

Voorstel

Maak een gedeelde SettingsModuleCard-widget die de scaffold, switch-layout en optionele extra rijen (testknoppen, statusmeldingen) accepteert. Begin met ai_module_card.dart en libreplan_module_card.dart als eerste kandidaten.

Schatting

Per kaart ~15-25 regels aan herhaald scaffold/spacing. Bij ~10 kaarten: 150-250 regels.

Labels

duplicate, enhancement

## Probleem Meerdere instellingen-modulekaarten in `lib/widgets/dialogs/settings/` gebruiken vrijwel hetzelfde outer `Material`/`RoundedRectangleBorder`-scaffold en een `SwitchListTile`-gebaseerde layout: ```dart Material( color: AppTheme.paper, clipBehavior: Clip.antiAlias, shape: RoundedRectangleBorder( side: BorderSide(color: AppTheme.iceBlue), borderRadius: BorderRadius.circular(10), ), child: ... ) ``` ## Betrokken bestanden - `settings/elearning_module_card.dart` (regels 21-27, switch op 31) - `settings/online_storage_module_card.dart` (regels 35-40, switch op 45) - `settings/asset_rights_module_card.dart` (regels 15-20, switch op 22) - `settings/procesverbetering_module_card.dart` (regels 47-52, switch op 56) - `settings/video_calls_module_card.dart` (regels 24-29, switch op 33) - `settings/ai_module_card.dart` (regels 40-45, switch op 49) - `settings/import_module_card.dart` - `settings/collaboration_module_card.dart` - `settings/libreplan_module_card.dart` - `settings/managementsysteem_module_card.dart` `ai_module_card.dart` en `libreplan_module_card.dart` lijken qua opbouw bijna identiek: een `watch`-provider, dezelfde `Material`-scaffold, dezelfde `SwitchListTile`-opbouw en dezelfde "Binnenkort"-fallback voor niet-desktop platformen. ## Voorstel Maak een gedeelde `SettingsModuleCard`-widget die de scaffold, switch-layout en optionele extra rijen (testknoppen, statusmeldingen) accepteert. Begin met `ai_module_card.dart` en `libreplan_module_card.dart` als eerste kandidaten. ## Schatting Per kaart ~15-25 regels aan herhaald scaffold/spacing. Bij ~10 kaarten: **150-250 regels**. ## Labels duplicate, enhancement
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
LibreKAT/Ocideck#2071
No description provided.