implemented a comprehensive client-side demo mode triggered by a "demo@" username prefix, serving curated fixture data for all app modules

This commit is contained in:
MineTec committed 2026-07-07 20:24:16 +02:00
1 parent 2668b111f1
commit 9b74c9fd81
45 files changed
+1409 -43

No files matched your search

@@ -2,6 +2,8 @@ import 'dart:developer';
import 'package:hydrated_bloc/hydrated_bloc.dart';
import '../../../../../api/demo/data/demo_capabilities.dart';
import '../../../../../api/demo/demo_mode.dart';
import '../../../../../api/marianumconnect/queries/get_capabilities/get_capabilities.dart';
import 'capabilities_state.dart';
@@ -20,6 +22,10 @@ class CapabilitiesCubit extends HydratedCubit<CapabilitiesState> {
/// state is marked `loaded` — a failed fetch never silently grants a
/// capability, and an offline launch keeps whatever was cached.
Future<void> load() async {
if (DemoMode.active) {
emit(DemoCapabilities.state());
return;
}
try {
final response = await GetCapabilities().run();
emit(