git-touch-android-ios-app/lib/providers/user.dart

64 lines
1.2 KiB
Dart
Raw Normal View History

2019-01-23 15:55:16 +01:00
import 'dart:async';
import 'package:flutter/widgets.dart';
2019-01-23 15:55:16 +01:00
import 'package:rxdart/subjects.dart';
import 'package:rxdart/rxdart.dart';
2019-01-31 07:37:25 +01:00
import '../utils/utils.dart';
2019-01-23 15:55:16 +01:00
2019-02-07 07:35:19 +01:00
// Future queryUser(String login) async {
// var data = await query('''
// {
// user(login: "$login") {
// name
// avatarUrl
// bio
// email
// repositories {
// totalCount
// }
// starredRepositories {
// totalCount
// }
// followers {
// totalCount
// }
// following {
// totalCount
// }
// }
// }
// ''');
// return data['user'];
// }
2019-01-23 15:55:16 +01:00
class UserBloc {
Map<String, dynamic> _userDict = {};
final _user = BehaviorSubject(seedValue: null);
fetchUser(String login) async {
2019-02-07 07:35:19 +01:00
// var user = await queryUser(login);
// _userDict[login] = user;
// return user;
2019-01-23 15:55:16 +01:00
}
UserBloc() {}
}
class UserProvider extends InheritedWidget {
final UserBloc bloc;
UserProvider({
Key key,
Widget child,
@required UserBloc bloc,
}) : bloc = bloc,
super(key: key, child: child);
@override
bool updateShouldNotify(InheritedWidget oldWidget) => true;
static UserBloc of(BuildContext context) =>
(context.inheritFromWidgetOfExactType(UserProvider) as UserProvider).bloc;
}