import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:injector/injector.dart'; import 'package:prosappco/blocs/authentication_bloc/authentication_bloc.dart'; import 'package:prosappco/blocs/sign_up_bloc/sign_up_bloc.dart'; import 'package:prosappco/blocs/sing_in_bloc/sign_in_bloc.dart'; import 'package:prosappco/screens/authentication/sign_in_screen.dart'; import 'package:prosappco/screens/authentication/sign_up_screen.dart'; class SignScreen extends StatefulWidget { final int initialIndex; const SignScreen({super.key, required this.initialIndex}); @override State createState() => _SignScreenState(); } class _SignScreenState extends State with TickerProviderStateMixin { late TabController tabController; @override void initState() { super.initState(); tabController = TabController( initialIndex: widget.initialIndex, length: 2, vsync: this, ); } @override Widget build(BuildContext context) { double width = MediaQuery.of(context).size.width; return BlocListener( listener: (context, state) { if (state.status == AuthenticationStatus.authenticated) { Navigator.pop(context); } }, child: Scaffold( backgroundColor: Theme.of(context).colorScheme.tertiary, body: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Padding( padding: const EdgeInsets.symmetric(vertical: 20), child: Center( child: Image( width: width * 0.7, image: const AssetImage('images/logo_prosapp.png'), ), ), ), Expanded( child: Container( decoration: const BoxDecoration( color: Colors.white, borderRadius: BorderRadius.only( topLeft: Radius.circular(60), topRight: Radius.circular(60), ), ), child: Padding( padding: const EdgeInsets.symmetric( horizontal: 30, vertical: 15), child: SingleChildScrollView( child: SizedBox( height: MediaQuery.of(context).size.height - 200, child: TabBarView( controller: tabController, children: [ BlocProvider( create: (context) => Injector.appInstance.get(), child: SignInScreen(), ), BlocProvider( create: (context) => Injector.appInstance.get(), child: SignUpScreen(), ), ], ), ), ), ), ), ) ], ), ) // Scaffold( // // appBar: AppBar( // // backgroundColor: Theme.of(context).colorScheme.tertiary, // // ), // body: Column( // children: [ // // Text('${context.read().state}'), // Container( // color: Theme.of(context).colorScheme.tertiary, // child: Column( // children: [ // Container( // color: Theme.of(context).colorScheme.tertiary, // padding: const EdgeInsets.only(bottom: 20.0), // child: Center( // child: Image( // width: width * 0.7, // image: const AssetImage('images/logo_prosapp.png'), // ), // ), // ), // ], // ), // ), // Expanded( // child: SingleChildScrollView( // child: SizedBox( // height: MediaQuery.of(context).size.height, // child: Column( // children: [ // Expanded( // child: TabBarView(controller: tabController, children: [ // BlocProvider( // create: (context) => // Injector.appInstance.get(), // child: SignInScreen(), // ), // BlocProvider( // create: (context) => // Injector.appInstance.get(), // child: SignUpScreen(), // ), // ]), // ) // ], // ), // ), // ), // ), // ], // ), // ), ); } }