Files
sf-app-platform/packages/navigation/lib/navigation_contract.dart
2025-12-03 13:42:14 +01:00

34 lines
571 B
Dart

import 'package:go_router/go_router.dart';
abstract class NavigationContract {
void setRouter(GoRouter goRouter);
void goTo(String path);
void pushTo(String path);
void goBack();
}
class Navigation implements NavigationContract {
late final GoRouter router;
@override
void setRouter(GoRouter goRouter) {
router = goRouter;
}
@override
void goTo(String path) {
router.go(path);
}
@override
void pushTo(String path) {
router.push(path);
}
@override
void goBack() {
if (router.canPop()) {
router.pop();
}
}
}