diff --git a/flutter_client/lib/admin/admin_requests_screen.dart b/flutter_client/lib/admin/admin_requests_screen.dart index 0c5acbaa..b0faecf6 100644 --- a/flutter_client/lib/admin/admin_requests_screen.dart +++ b/flutter_client/lib/admin/admin_requests_screen.dart @@ -17,7 +17,7 @@ class AdminRequestsScreen extends ConsumerWidget { // Best-effort lookup for requester usernames. If the users provider // hasn't loaded yet, valueOrNull is null and rows fall back to the // UUID prefix; no blocking spinner. - final users = ref.watch(adminUsersProvider).valueOrNull ?? const []; + final users = ref.watch(adminUsersProvider).value ?? const []; final usersById = {for (final u in users) u.id: u}; return Scaffold( diff --git a/flutter_client/lib/admin/widgets/admin_user_edit_sheet.dart b/flutter_client/lib/admin/widgets/admin_user_edit_sheet.dart index 7b087c18..870d4af4 100644 --- a/flutter_client/lib/admin/widgets/admin_user_edit_sheet.dart +++ b/flutter_client/lib/admin/widgets/admin_user_edit_sheet.dart @@ -151,7 +151,9 @@ class AdminUserEditSheet extends ConsumerWidget { message: 'Permanently delete user "${user.username}" and all their data. ' 'Cannot be undone.', - )) return; + )) { + return; + } try { await users.delete(user.id); if (context.mounted) Navigator.pop(context); diff --git a/flutter_client/lib/library/home_screen.dart b/flutter_client/lib/library/home_screen.dart index 3c4c404f..87c00645 100644 --- a/flutter_client/lib/library/home_screen.dart +++ b/flutter_client/lib/library/home_screen.dart @@ -1,6 +1,7 @@ import 'package:dio/dio.dart'; import 'package:flutter/material.dart'; import 'package:flutter_riverpod/flutter_riverpod.dart'; +import 'package:go_router/go_router.dart'; import '../api/errors.dart'; import '../models/album.dart'; diff --git a/flutter_client/lib/models/admin_quarantine_item.dart b/flutter_client/lib/models/admin_quarantine_item.dart index db1aed39..a27599a7 100644 --- a/flutter_client/lib/models/admin_quarantine_item.dart +++ b/flutter_client/lib/models/admin_quarantine_item.dart @@ -55,9 +55,9 @@ class AdminQuarantineItem { final List reports; - /// One-line summary of the most-cited reason. Returns "" when - /// only one reason exists or " (+N more)" when there are - /// additional distinct reasons. + /// One-line summary of the most-cited reason. Returns just the top + /// reason when only one reason exists, or `top (+N more)` when there + /// are additional distinct reasons. String get topReasonSummary { if (reasonCounts.isEmpty) return ''; final entries = reasonCounts.entries.toList() diff --git a/flutter_client/lib/settings/settings_screen.dart b/flutter_client/lib/settings/settings_screen.dart index 02ce6553..9b2786b7 100644 --- a/flutter_client/lib/settings/settings_screen.dart +++ b/flutter_client/lib/settings/settings_screen.dart @@ -97,7 +97,7 @@ class _AdminSection extends ConsumerWidget { @override Widget build(BuildContext context, WidgetRef ref) { final fs = Theme.of(context).extension()!; - final profile = ref.watch(_profileProvider).valueOrNull; + final profile = ref.watch(_profileProvider).value; if (profile == null || !profile.isAdmin) return const SizedBox.shrink(); return Column( crossAxisAlignment: CrossAxisAlignment.stretch, diff --git a/flutter_client/lib/shared/widgets/main_app_bar_actions.dart b/flutter_client/lib/shared/widgets/main_app_bar_actions.dart index eedc72a4..e0eab4a8 100644 --- a/flutter_client/lib/shared/widgets/main_app_bar_actions.dart +++ b/flutter_client/lib/shared/widgets/main_app_bar_actions.dart @@ -17,7 +17,7 @@ class MainAppBarActions extends ConsumerWidget { @override Widget build(BuildContext context, WidgetRef ref) { final fs = Theme.of(context).extension()!; - final user = ref.watch(authControllerProvider).valueOrNull; + final user = ref.watch(authControllerProvider).value; final isAdmin = user?.isAdmin ?? false; return Row(