Skip to content

Commit

Permalink
fix-251:otp verification
Browse files Browse the repository at this point in the history
  • Loading branch information
himanshu goyal committed Jan 30, 2025
1 parent 4089640 commit 2b3c04a
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 9 deletions.
1 change: 1 addition & 0 deletions lib/config/graphql_config.dart
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ class GraphQLConfig {
await _getToken();
final AuthLink authLink = AuthLink(getToken: () async => '$token');
final Link finalAuthLink = authLink.concat(httpLink);
print("link: $finalAuthLink");
return GraphQLClient(
cache: GraphQLCache(partialDataPolicy: PartialDataCachePolicy.accept),
link: finalAuthLink,
Expand Down
10 changes: 6 additions & 4 deletions lib/core/queries/auth.dart
Original file line number Diff line number Diff line change
Expand Up @@ -32,18 +32,20 @@ class AuthQueries {
''';
}

String sendVerficationCode() {
String sendVerficationCode(String? email) {
return '''
mutation{
sendVerificationCode
sendVerificationCode(email: "$email")
}
''';
}

String completeVerificationCode() {
String completeVerificationCode(String? userId) {
return '''
mutation{
completeVerification{
completeVerification(
userId: "$userId"
){
_id
email
name
Expand Down
12 changes: 7 additions & 5 deletions lib/data/datasource/remote/remote_auth_api.dart
Original file line number Diff line number Diff line change
Expand Up @@ -202,9 +202,11 @@ class RemoteAuthApi {
if (!isConnected) {
return DataFailed('Beacon is trying to connect with internet...');
}

final QueryResult result = await _authClient.mutate(
MutationOptions(document: gql(_authQueries.sendVerficationCode())));
final UserModel? user = await localApi.fetchUser();
final QueryResult result = await _authClient.mutate(MutationOptions(
document: gql(_authQueries.sendVerficationCode(
user!.email,
))));

if (result.data != null && result.isConcrete) {
return DataSuccess(result.data!['sendVerificationCode'] as String);
Expand All @@ -218,11 +220,11 @@ class RemoteAuthApi {
if (!isConnected) {
return DataFailed('Beacon is trying to connect with internet...');
}

final UserModel? user = await localApi.fetchUser();
var authClient = await graphqlConfig.authClient();

final QueryResult result = await authClient.mutate(MutationOptions(
document: gql(_authQueries.completeVerificationCode())));
document: gql(_authQueries.completeVerificationCode(user!.id))));

if (result.data != null && result.isConcrete) {
var user = UserModel.fromJson(result.data!['completeVerification']);
Expand Down

0 comments on commit 2b3c04a

Please sign in to comment.