topics intermediate
This commit is contained in:
@@ -10,6 +10,7 @@ import 'package:lensai/features/chat_archive/presentation/screens/list.dart';
|
||||
import 'package:lensai/features/chat_archive/presentation/screens/search.dart';
|
||||
import 'package:lensai/features/search_browser/presentation/screens/browser.dart';
|
||||
import 'package:lensai/features/settings/presentation/screens/settings.dart';
|
||||
import 'package:lensai/features/topics/presentation/screens/topic_list.dart';
|
||||
|
||||
part 'routes.g.dart';
|
||||
|
||||
@@ -41,6 +42,10 @@ part 'routes.g.dart';
|
||||
),
|
||||
],
|
||||
),
|
||||
TypedGoRoute<TopicListRoute>(
|
||||
name: 'TopicsRoute',
|
||||
path: 'topics',
|
||||
),
|
||||
],
|
||||
)
|
||||
class KagiRoute extends GoRouteData {
|
||||
@@ -97,6 +102,13 @@ class BangSearchRoute extends GoRouteData {
|
||||
}
|
||||
}
|
||||
|
||||
class TopicListRoute extends GoRouteData {
|
||||
@override
|
||||
Widget build(BuildContext context, GoRouterState state) {
|
||||
return const TopicListScreen();
|
||||
}
|
||||
}
|
||||
|
||||
@TypedGoRoute<SettingsRoute>(
|
||||
name: 'SettingsRoute',
|
||||
path: '/settings',
|
||||
|
||||
@@ -46,6 +46,11 @@ RouteBase get $kagiRoute => GoRouteData.$route(
|
||||
),
|
||||
],
|
||||
),
|
||||
GoRouteData.$route(
|
||||
path: 'topics',
|
||||
name: 'TopicsRoute',
|
||||
factory: $TopicListRouteExtension._fromState,
|
||||
),
|
||||
],
|
||||
);
|
||||
|
||||
@@ -158,6 +163,23 @@ extension $BangSubCategoryRouteExtension on BangSubCategoryRoute {
|
||||
void replace(BuildContext context) => context.replace(location);
|
||||
}
|
||||
|
||||
extension $TopicListRouteExtension on TopicListRoute {
|
||||
static TopicListRoute _fromState(GoRouterState state) => TopicListRoute();
|
||||
|
||||
String get location => GoRouteData.$location(
|
||||
'/topics',
|
||||
);
|
||||
|
||||
void go(BuildContext context) => context.go(location);
|
||||
|
||||
Future<T?> push<T>(BuildContext context) => context.push<T>(location);
|
||||
|
||||
void pushReplacement(BuildContext context) =>
|
||||
context.pushReplacement(location);
|
||||
|
||||
void replace(BuildContext context) => context.replace(location);
|
||||
}
|
||||
|
||||
RouteBase get $settingsRoute => GoRouteData.$route(
|
||||
path: '/settings',
|
||||
name: 'SettingsRoute',
|
||||
|
||||
Reference in New Issue
Block a user