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 / post_bloc.dart
Last active June 4, 2019 05:21
[flutter_infinite_list] post bloc finished
import 'dart:async';
import 'dart:convert';
import 'package:meta/meta.dart';
import 'package:rxdart/rxdart.dart';
import 'package:http/http.dart' as http;
import 'package:bloc/bloc.dart';
import 'package:flutter_infinite_list/bloc/bloc.dart';
import 'package:flutter_infinite_list/models/models.dart';
@felangel
felangel / main.dart
Created December 27, 2018 08:46
[flutter_infinite_list] main main_function
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
@felangel
felangel / main.dart
Last active January 21, 2019 22:34
[flutter_infinite_list] home page
class HomePage extends StatefulWidget {
@override
_HomePageState createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
final _scrollController = ScrollController();
final PostBloc _postBloc = PostBloc(httpClient: http.Client());
final _scrollThreshold = 200.0;
@felangel
felangel / main.dart
Created December 27, 2018 09:01
[flutter_infinite_list] bottom loader
class BottomLoader extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Container(
alignment: Alignment.center,
child: Center(
child: SizedBox(
width: 33,
height: 33,
child: CircularProgressIndicator(
@felangel
felangel / main.dart
Created December 27, 2018 09:03
[flutter_infinite_list] post widget
class PostWidget extends StatelessWidget {
final Post post;
const PostWidget({Key key, @required this.post}) : super(key: key);
@override
Widget build(BuildContext context) {
return ListTile(
leading: Text(
post.id.toString(),
@felangel
felangel / simple_bloc_delegate.dart
Last active June 4, 2019 05:27
[flutter_infinite_list] SimpleBlocDelegate
import 'package:bloc/bloc.dart';
class SimpleBlocDelegate extends BlocDelegate {
@override
void onTransition(Bloc bloc, Transition transition) {
super.onTransition(bloc, transition);
print(transition);
}
}
@felangel
felangel / main.dart
Last active June 4, 2019 05:27
[flutter_infinite_list] use simple bloc delegate
void main() {
BlocSupervisor.delegate = SimpleBlocDelegate();
runApp(MyApp());
}
@felangel
felangel / bloc_provider.dart
Created January 6, 2019 05:29
[WIP] BlocProvider w/multiple Blocs
import 'package:flutter/material.dart';
import 'package:bloc/bloc.dart';
/// A Flutter widget which provides a bloc to its children via `BlocProvider.of(context)`.
/// It is used as a DI widget so that a single instance of a bloc can be provided
/// to multiple widgets within a subtree.
class BlocProvider extends StatefulWidget {
/// The Blocs which are to be made available throughout the subtree.
/// If multiple blocs are provided, the blocs will be inserted in the same order they are specified.
@felangel
felangel / person.dart
Created January 7, 2019 03:03
[intro_equatable] Person
class Person {
final String name;
final int age;
const Person({this.name, this.age});
}
@felangel
felangel / main.dart
Created January 7, 2019 03:04
[intro_equatable] Person Instantiation
void main() {
final Person bob = Person(name: "Bob", age: 40);
}