in frontend/frontend-flutter/lib/main.dart [96:189]
Widget build(BuildContext context) {
return MultiBlocProvider(
providers: [
BlocProvider(
create: (context) => LoadQuestionCubit(),
),
BlocProvider(
create: (context) => FirstQuestionCubit(),
),
BlocProvider(
create: (context) => UpdatePopularQuestionsCubit(),
),
BlocProvider(
create: (context) => UpdateStepperCubit(),
),
BlocProvider(
create: (context) => NewSuggestionCubit(),
),
BlocProvider(
create: (context) => DisplayStepperCubit(),
),
BlocProvider(
create: (context) => UpdateExpertModeCubit(),
),
],
child: MaterialApp(
debugShowCheckedModeBanner: false,
//navigatorKey: navigatorKey,
title: 'Open data QnA',
theme: ThemeData(
appBarTheme: AppBarTheme(
backgroundColor: Colors.white,
),
checkboxTheme: CheckboxThemeData(
fillColor: WidgetStateProperty.resolveWith((states) {
if (!states.contains(WidgetState.selected)) {
return Colors.white;
}
return Colors.green;
}), checkColor: WidgetStateProperty.resolveWith((states) {
if (states.contains(WidgetState.selected)) {
return Colors.red;
}
return null;
}))),
onGenerateRoute: (settings) {
print('Main: ttmd : build() : onGenerateRoute : START');
if (settings.name == '/landingPage' &&
!TextToDocParameter.isAuthenticated) {
print(
'Main: ttmd : build() : onGenerateRoute : attempting to access /landingPage without authentication');
return MaterialPageRoute(
//builder: (context) => LoginScreen(),
builder: (context) => Disclaimer(auth),
);
} else if (settings.name == '/pdfViewer' &&
!TextToDocParameter.isAuthenticated) {
print(
'Main: ttmd : build() : onGenerateRoute : attempting to access /pdfViewer without authentication');
return MaterialPageRoute(
//builder: (context) => LoginScreen(),
builder: (context) => Disclaimer(auth),
);
} else if (settings.name == '/settings' &&
!TextToDocParameter.isAuthenticated) {
print(
'Main: ttmd : build() : onGenerateRoute : attempting to access /settings without authentication');
return MaterialPageRoute(
//builder: (context) => LoginScreen(),
builder: (context) => Disclaimer(auth),
);
} else {
print(
'Main: ttmd : build() : onGenerateRoute : attempting to access ${settings.name!} with proper authentication');
if (settings.name == '/pdfViewer') {
final args = settings.arguments as Map;
return MaterialPageRoute(
builder: (context) {
return PdfViewer(bytes: args["bytes"]);
},
);
} else {
return MaterialPageRoute(
builder: myRoutes[settings.name!]!,
);
}
} // Let the default routing handle other routes
},
initialRoute: '/',
home: Disclaimer(auth),
),
);
}