[Feature] Replace go_router with auto_route

This commit is contained in:
PartyDonut 2024-10-05 16:29:51 +02:00
parent b31cc86ae8
commit 144c8faf70
42 changed files with 1181 additions and 980 deletions

View file

@ -1,22 +1,22 @@
import 'package:ficonsax/ficonsax.dart';
import 'package:fladder/util/localization_helper.dart';
import 'package:fladder/widgets/navigation_scaffold/components/settings_user_icon.dart';
import 'package:flutter/material.dart';
import 'package:auto_route/auto_route.dart';
import 'package:ficonsax/ficonsax.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
import 'package:fladder/models/item_base_model.dart';
import 'package:fladder/models/items/images_models.dart';
import 'package:fladder/models/media_playback_model.dart';
import 'package:fladder/providers/items/item_details_provider.dart';
import 'package:fladder/providers/video_player_provider.dart';
import 'package:fladder/routes/build_routes/home_routes.dart';
import 'package:fladder/routes/build_routes/route_builder.dart';
import 'package:fladder/routes/auto_router.gr.dart';
import 'package:fladder/theme.dart';
import 'package:fladder/util/adaptive_layout.dart';
import 'package:fladder/util/fladder_image.dart';
import 'package:fladder/util/localization_helper.dart';
import 'package:fladder/util/refresh_state.dart';
import 'package:fladder/widgets/navigation_scaffold/components/floating_player_bar.dart';
import 'package:fladder/widgets/navigation_scaffold/components/settings_user_icon.dart';
import 'package:fladder/widgets/shared/item_actions.dart';
import 'package:fladder/widgets/shared/modal_bottom_sheet.dart';
import 'package:fladder/widgets/shared/pull_to_refresh.dart';
@ -52,7 +52,7 @@ class _DetailScreenState extends ConsumerState<DetailScreen> {
currentWidget = response.detailScreenWidget;
});
} else {
context.routeGo(DashboardRoute());
context.router.navigate(const DashboardRoute());
}
}
}
@ -212,13 +212,7 @@ class _DetailScaffoldState extends ConsumerState<DetailScaffold> {
style: IconButton.styleFrom(
backgroundColor: backGroundColor,
),
onPressed: () {
if (context.canPop()) {
context.pop();
} else {
context.replace(DashboardRoute().route);
}
},
onPressed: () => context.router.maybePop(),
icon: Padding(
padding:
EdgeInsets.all(AdaptiveLayout.of(context).inputDevice == InputDevice.pointer ? 0 : 4),
@ -281,7 +275,7 @@ class _DetailScaffoldState extends ConsumerState<DetailScaffold> {
Tooltip(
message: context.localized.home,
child: IconButton(
onPressed: () => context.routeGo(DashboardRoute()),
onPressed: () => context.router.navigate(const DashboardRoute()),
icon: const Icon(IconsaxOutline.home),
),
),

View file

@ -1,13 +1,12 @@
import 'package:animations/animations.dart';
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:fladder/providers/user_provider.dart';
import 'package:fladder/routes/build_routes/route_builder.dart';
import 'package:fladder/routes/build_routes/settings_routes.dart';
import 'package:fladder/routes/auto_router.gr.dart';
import 'package:fladder/screens/search/search_screen.dart';
import 'package:fladder/util/string_extensions.dart';
import 'package:flutter/material.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:go_router/go_router.dart';
class FloatingSearchBar extends ConsumerStatefulWidget {
final List<Widget> trailing;
@ -58,9 +57,9 @@ class _FloatingSearchBarState extends ConsumerState<FloatingSearchBar> {
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
if (context.canPop())
if (context.router.canPop())
IconButton(
onPressed: () => context.pop(),
onPressed: () => context.router.maybePop(),
icon: const Icon(Icons.arrow_back),
),
const SizedBox(width: 8),
@ -77,7 +76,7 @@ class _FloatingSearchBarState extends ConsumerState<FloatingSearchBar> {
),
IconButton(
onPressed: () {
context.routeGo(SecuritySettingsRoute());
context.router.push(const SecuritySettingsRoute());
},
icon: ClipRRect(
borderRadius: BorderRadius.circular(200),

View file

@ -1,5 +1,5 @@
import 'package:auto_route/auto_route.dart';
import 'package:ficonsax/ficonsax.dart';
import 'package:fladder/routes/build_routes/route_builder.dart';
import 'package:fladder/util/list_padding.dart';
import 'package:fladder/util/localization_helper.dart';
import 'package:fladder/widgets/navigation_scaffold/components/settings_user_icon.dart';
@ -10,7 +10,7 @@ import 'package:flutter_riverpod/flutter_riverpod.dart';
class NestedSliverAppBar extends ConsumerWidget {
final BuildContext parent;
final String? searchTitle;
final CustomRoute? route;
final PageRouteInfo? route;
const NestedSliverAppBar({required this.parent, this.route, this.searchTitle, super.key});
@override
@ -49,7 +49,7 @@ class NestedSliverAppBar extends ConsumerWidget {
child: InkWell(
onTap: route != null
? () {
context.routePushOrGo(route!);
route?.push(context);
}
: null,
child: Padding(
@ -62,7 +62,8 @@ class NestedSliverAppBar extends ConsumerWidget {
const Icon(IconsaxOutline.search_normal),
const SizedBox(width: 16),
Transform.translate(
offset: const Offset(0, 2.5), child: Text(searchTitle ?? "${context.localized.search}...")),
offset: const Offset(0, 2.5),
child: Text(searchTitle ?? "${context.localized.search}...")),
],
),
),