You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
driver-app/lib/root_page.dart

37 lines
1.1 KiB
Dart

import 'package:driverapp/pages/authentication/login_page.dart';
import 'package:driverapp/pages/dashboard/dashboard_screen.dart';
import 'package:driverapp/widgets/progress_indicator/app_circular_progress_Indeicator.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:provider/provider.dart';
import 'core/viewModels/authentication_view_model.dart';
class RootPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
AuthenticationViewModel authenticationViewModel = Provider.of(context);
APP_STATUS status = authenticationViewModel.status;
Widget buildRoot() {
switch (status) {
case APP_STATUS.UNAUTHENTICATED:
return LoginPage();
break;
case APP_STATUS.AUTHENTICATED:
return DashboardScreen();
break;
case APP_STATUS.LOADING:
return Center(child: AppCircularProgressIndicator());
break;
}
}
return AnimatedSwitcher(
duration: Duration(microseconds: 350),
child: Scaffold(
body: buildRoot(),
),
);
}
}