Skip to content

Instantly share code, notes, and snippets.

View felangel's full-sized avatar
coding

Felix Angelov felangel

coding
View GitHub Profile
@felangel
felangel / pubspec.yaml
Last active January 21, 2019 22:41
[flutter_login] pubspec
name: flutter_login
description: A new Flutter project.
version: 1.0.0+1
environment:
sdk: ">=2.0.0-dev.68.0 <3.0.0"
dependencies:
flutter:
sdk: flutter
@felangel
felangel / authentication_state.dart
Last active October 19, 2019 02:49
[flutter_login] Authentication State
import 'package:equatable/equatable.dart';
abstract class AuthenticationState extends Equatable {
@override
List<Object> get props => [];
}
class AuthenticationUninitialized extends AuthenticationState {}
class AuthenticationAuthenticated extends AuthenticationState {}
@felangel
felangel / authentication_event.dart
Last active January 21, 2019 22:43
[flutter_login] Authentication Events
import 'package:meta/meta.dart';
import 'package:equatable/equatable.dart';
abstract class AuthenticationEvent extends Equatable {
AuthenticationEvent([List props = const []]) : super(props);
}
class AppStarted extends AuthenticationEvent {
@override
String toString() => 'AppStarted';
@felangel
felangel / authentication_bloc.dart
Last active June 28, 2019 23:39
[flutter_login] Authentication Bloc
import 'dart:async';
import 'package:meta/meta.dart';
import 'package:bloc/bloc.dart';
import 'package:user_repository/user_repository.dart';
import 'package:flutter_login/authentication/authentication.dart';
class AuthenticationBloc
extends Bloc<AuthenticationEvent, AuthenticationState> {
@felangel
felangel / splash_page.dart
Created October 24, 2018 05:58
[flutter_login] Splash Page
import 'package:flutter/material.dart';
class SplashPage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: Text('Splash Screen'),
),
);
@felangel
felangel / home_page.dart
Last active November 5, 2020 11:52
[flutter_login] Home Page
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_login/authentication/authentication.dart';
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
final AuthenticationBloc authenticationBloc =
@felangel
felangel / login_state.dart
Last active October 19, 2019 02:51
[flutter_login] Login State
import 'package:meta/meta.dart';
import 'package:equatable/equatable.dart';
abstract class LoginState extends Equatable {
const LoginState();
@override
List<Object> get props => [];
}
@felangel
felangel / login_event.dart
Last active October 19, 2019 02:50
[flutter_login] Login Event
import 'package:meta/meta.dart';
import 'package:equatable/equatable.dart';
abstract class LoginEvent extends Equatable {
const LoginEvent();
}
class LoginButtonPressed extends LoginEvent {
final String username;
final String password;
@felangel
felangel / login_bloc.dart
Last active January 21, 2019 23:14
[flutter_login] Login Bloc
import 'dart:async';
import 'package:meta/meta.dart';
import 'package:bloc/bloc.dart';
import 'package:user_repository/user_repository.dart';
import 'package:flutter_login/authentication/authentication.dart';
import 'package:flutter_login/login/login.dart';
class LoginBloc extends Bloc<LoginEvent, LoginState> {
@felangel
felangel / login_page.dart
Last active January 21, 2019 22:50
[flutter_login] Login Page
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:user_repository/user_repository.dart';
import 'package:flutter_login/authentication/authentication.dart';
import 'package:flutter_login/login/login.dart';
class LoginPage extends StatefulWidget {
final UserRepository userRepository;