42 lines
1.4 KiB
Dart
Raw Normal View History

2021-07-13 13:14:49 +08:00
import 'package:dartz/dartz.dart';
import 'package:flowy_sdk/dispatch/dispatch.dart';
2021-12-05 14:04:25 +08:00
import 'package:flowy_sdk/protobuf/flowy-user-infra/protobuf.dart' show SignInRequest, SignUpRequest, UserProfile;
import 'package:flowy_sdk/protobuf/flowy-user/errors.pb.dart';
2021-07-13 13:14:49 +08:00
class AuthRepository {
2021-11-08 19:19:02 +08:00
Future<Either<UserProfile, UserError>> signIn({required String? email, required String? password}) {
2021-07-13 13:14:49 +08:00
//
final request = SignInRequest.create()
..email = email ?? ''
..password = password ?? '';
return UserEventSignIn(request).send();
}
2021-11-08 23:15:29 +08:00
Future<Either<UserProfile, UserError>> signUp(
2021-11-08 19:19:02 +08:00
{required String? name, required String? password, required String? email}) {
2021-07-13 13:14:49 +08:00
final request = SignUpRequest.create()
..email = email ?? ''
..name = name ?? ''
..password = password ?? '';
2021-11-08 23:15:29 +08:00
return UserEventSignUp(request).send();
// return UserEventSignUp(request).send().then((result) {
// return result.fold((userProfile) async {
// return await WorkspaceEventCreateDefaultWorkspace().send().then((result) {
// return result.fold((workspaceIdentifier) {
// return left(Tuple2(userProfile, workspaceIdentifier.workspaceId));
// }, (error) {
// throw UnimplementedError;
// });
// });
// }, (error) => right(error));
// });
2021-07-13 13:14:49 +08:00
}
Future<Either<Unit, UserError>> signOut() {
return UserEventSignOut().send();
}
2021-07-13 13:14:49 +08:00
}