flutter_firebase_extra 0.1.0
flutter_firebase_extra: ^0.1.0 copied to clipboard
Manage authentication with firebase in an extremely simple way
example/lib/main.dart
import 'package:flutter/material.dart';
import 'package:flutter_firebase_extra/auth/email_login_screen.dart';
import 'package:provider/provider.dart';
import 'package:flutter_firebase_extra/auth/auth_screen.dart';
import 'package:flutter_firebase_extra/auth/states/auth_state.dart';
import 'package:flutter_firebase_extra/auth/login_screen.dart';
void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return ChangeNotifierProvider<AuthState>(
child: MaterialApp(
home: ParentPage(),
),
create: (_) => AuthState(),
);
}
}
class ParentPage extends StatelessWidget{
@override
Widget build(BuildContext context) {
return AuthManagerWidget(
loginScreen: LoginScreen(
backgroundColor: Colors.purple,
expandedWidget: Center(child: Container(height: 200, width: 300, color: Colors.red,),),
emailLogin: (context){
return EmailLoginScreen(
appBar: AppBar(
title: Text("MyApp Login"),
),
mainColor: Colors.blue,
privacyUrl: "https://www.myprivacyurl.com",
termsUrl: "https://mytermsurl.com",
);
},
),
mainScreen: Builder(
builder: (BuildContext context){
AuthState authState = Provider.of(context);
return Scaffold(
backgroundColor: Colors.blue,
body: Center(
child: RaisedButton(
onPressed: (){
authState.signOut();
},
child: Text('Sign out'),
),
),
);
},
),
);
}
}