40 lines
1.4 KiB
Dart
40 lines
1.4 KiB
Dart
import '../../../state/app/modules/capabilities/bloc/capabilities_state.dart';
|
|
import '../../../state/app/modules/nextcloud_capabilities/bloc/nextcloud_capabilities_state.dart';
|
|
|
|
/// Demo fixtures for the mobile capability flags — everything granted so the
|
|
/// demo persona sees every feature (incl. push) as available and the timetable
|
|
/// scroll range stays unlimited (null day counts).
|
|
class DemoCapabilities {
|
|
const DemoCapabilities._();
|
|
|
|
static CapabilitiesState state() => const CapabilitiesState(
|
|
viewForeignTimetables: true,
|
|
pushNotifications: true,
|
|
timetablePastDays: null,
|
|
timetableFutureDays: null,
|
|
// Die Demo-Persona ist explizit Schüler — null hieße "Backend kennt das
|
|
// Feld nicht" (siehe CapabilitiesResponse.userType).
|
|
userType: 'STUDENT',
|
|
loaded: true,
|
|
);
|
|
}
|
|
|
|
/// Demo fixtures for the Nextcloud `files_sharing` capabilities — a permissive
|
|
/// "everything enabled, nothing enforced" server profile.
|
|
class DemoNextcloudCapabilities {
|
|
const DemoNextcloudCapabilities._();
|
|
|
|
static NextcloudCapabilitiesState state() => const NextcloudCapabilitiesState(
|
|
apiEnabled: true,
|
|
publicEnabled: true,
|
|
publicMultipleLinks: true,
|
|
publicUploadEnabled: true,
|
|
publicPasswordEnforced: false,
|
|
publicExpireEnabled: false,
|
|
publicExpireEnforced: false,
|
|
groupEnabled: true,
|
|
resharing: true,
|
|
loaded: true,
|
|
);
|
|
}
|