|
- import 'package:flutter/material.dart';
- import 'package:go_router/go_router.dart';
- import 'package:provider/provider.dart';
- import 'package:qadirneyriz/drawer_navigation_bar.dart';
- import 'package:qadirneyriz/models/meetings/meetings_model.dart';
- import 'package:qadirneyriz/screens/auth/login_screen.dart';
- import 'package:qadirneyriz/screens/auth/login_with_otp_screen.dart';
- import 'package:qadirneyriz/screens/auth/otp_screen.dart';
- import 'package:qadirneyriz/screens/home/screen.dart';
- import 'package:qadirneyriz/screens/meeting/screen.dart';
- import 'package:qadirneyriz/screens/meeting_edit/screen.dart';
- import 'package:qadirneyriz/screens/meeting_edit/state.dart';
- import 'package:qadirneyriz/screens/meeting_summary/screen.dart';
- import 'package:qadirneyriz/screens/meeting_summary/state.dart';
- import 'package:qadirneyriz/splash_screen.dart';
-
- final GoRouter router = GoRouter(
- initialLocation: '/route',
- routes: <GoRoute>[
- GoRoute(
- path: '/navigate/:tab',
- name: 'navigate',
- builder: (context, state) {
- return CustomDrawerNavigation(
- activeTab: int.parse(state.pathParameters["tab"]!),
- );
- },
- ),
- GoRoute(
- path: '/home',
- name: 'home',
- builder: (context, state) {
- return const HomeScreen();
- },
- ),
- GoRoute(
- path: '/route',
- builder: (BuildContext context, GoRouterState state) {
- return const SplashScreen();
- },
- routes: [
- GoRoute(
- path: 'login',
- name: 'login',
- builder: (context, state) {
- return const LoginScreen();
- },
- ),
- GoRoute(
- path: 'loginotp',
- name: 'loginotp',
- builder: (context, state) {
- return const LoginWithOtpScreen();
- },
- ),
- GoRoute(
- path: 'otp/:phonenumber',
- name: 'otp',
- builder: (context, state) {
- return OtpScreen(
- phoneNumber: state.pathParameters['phonenumber']!,
- );
- },
- ),
- ]),
- GoRoute(
- path: '/meetingedit/:id',
- name: 'meetingedit',
- builder: (context, state) {
- return ChangeNotifierProvider(
- child: MeetingEditScreen(
- id: int.parse(state.pathParameters['id']!),
- ),
- create: (context) => MeetingEditState(),
- );
- },
- ),
- GoRoute(
- path: '/meetinsammary',
- name: 'meetinsammary',
- builder: (context, state) {
- Datum meetingData = state.extra as Datum;
- return ChangeNotifierProvider(
- create: (context) => MeetingSummaryState(),
- child: MeetingSummaryScreen(
- meetingItem: meetingData,
- ),
- );
- },
- ),
- ],
- );
|