Skip to content

Commit 6185cdf

Browse files
Merge pull request #325 from Silfalion/master
2 parents 377230d + c4e2523 commit 6185cdf

File tree

3 files changed

+16
-10
lines changed

3 files changed

+16
-10
lines changed

templates/flutter/lib/services/service.dart.twig

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -59,12 +59,7 @@ class {{ service.name | caseUcfirst }} extends Service {
5959
query: query.join('&')
6060
);
6161

62-
if(kIsWeb) {
63-
redirect(url.toString());
64-
return Future.value();
65-
}else{
66-
return client.webAuth(url);
67-
}
62+
return client.webAuth(url);
6863

6964
{% elseif method.type == 'location' %}
7065
params.keys.forEach((key) {if (params[key] is int || params[key] is double) {

templates/flutter/lib/src/client_browser.dart.twig

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import 'dart:html' as html;
2+
import 'package:flutter_web_auth/flutter_web_auth.dart';
23
import 'package:http/http.dart' as http;
34
import 'package:http/browser_client.dart';
45
import 'client_mixin.dart';
@@ -137,6 +138,16 @@ class ClientBrowser extends ClientBase with ClientMixin {
137138

138139
@override
139140
Future webAuth(Uri url) {
140-
throw UnimplementedError();
141-
}
141+
return FlutterWebAuth.authenticate(
142+
url: url.toString(),
143+
callbackUrlScheme: "appwrite-callback-" + config['project']!,
144+
).then((value) async {
145+
Uri url = Uri.parse(value);
146+
final key = url.queryParameters['key'];
147+
final secret = url.queryParameters['secret'];
148+
if (key == null || secret == null) {
149+
throw AppwriteException(
150+
"Invalid OAuth2 Response. Key and Secret not available.", 500);
151+
}
152+
}); }
142153
}

templates/flutter/pubspec.yaml.twig

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,10 @@ dependencies:
1212
sdk: flutter
1313
cookie_jar: ^3.0.1
1414
device_info_plus: ^3.1.1
15-
flutter_web_auth: ^0.3.1
15+
flutter_web_auth: ^0.4.0
1616
http: ^0.13.4
1717
package_info_plus: ^1.3.0
18-
path_provider: ^2.0.7
18+
path_provider: ^2.0.8
1919
web_socket_channel: ^2.1.0
2020
2121
dev_dependencies:

0 commit comments

Comments
 (0)