@@ -10,7 +10,6 @@ import 'package:vikunja_app/global.dart';
10
10
11
11
import '../main.dart' ;
12
12
13
-
14
13
class Client {
15
14
GlobalKey <ScaffoldMessengerState >? global_scaffold_key;
16
15
final JsonDecoder _decoder = new JsonDecoder ();
@@ -26,8 +25,6 @@ class Client {
26
25
27
26
String ? post_body;
28
27
29
-
30
-
31
28
bool operator == (dynamic otherClient) {
32
29
return otherClient._token == _token;
33
30
}
@@ -40,15 +37,14 @@ class Client {
40
37
void reload_ignore_certs (bool ? val) {
41
38
ignoreCertificates = val ?? false ;
42
39
HttpOverrides .global = new IgnoreCertHttpOverrides (ignoreCertificates);
43
- if (global_scaffold_key == null || global_scaffold_key ! .currentContext == null ) return ;
44
- VikunjaGlobal
45
- .of (global_scaffold_key! .currentContext! )
40
+ if (global_scaffold_key == null ||
41
+ global_scaffold_key ! .currentContext == null ) return ;
42
+ VikunjaGlobal .of (global_scaffold_key! .currentContext! )
46
43
.settingsManager
47
44
.setIgnoreCertificates (ignoreCertificates);
48
45
}
49
46
50
- get _headers =>
51
- {
47
+ get _headers => {
52
48
'Authorization' : _token != '' ? 'Bearer $_token ' : '' ,
53
49
'Content-Type' : 'application/json' ,
54
50
'User-Agent' : 'Vikunja Mobile App'
@@ -60,20 +56,15 @@ class Client {
60
56
int get hashCode => _token.hashCode;
61
57
62
58
void configure ({String ? token, String ? base , bool ? authenticated}) {
63
- if (token != null )
64
- _token = token;
59
+ if (token != null ) _token = token;
65
60
if (base != null ) {
66
61
base = base .replaceAll (" " , "" );
67
- if (base .endsWith ("/" ))
68
- base = base .substring (0 ,base .length- 1 );
62
+ if (base .endsWith ("/" )) base = base .substring (0 , base .length - 1 );
69
63
_base = base .endsWith ('/api/v1' ) ? base : '$base /api/v1' ;
70
64
}
71
- if (authenticated != null )
72
- this .authenticated = authenticated;
73
-
65
+ if (authenticated != null ) this .authenticated = authenticated;
74
66
}
75
67
76
-
77
68
void reset () {
78
69
_token = _base = '' ;
79
70
authenticated = false ;
@@ -85,54 +76,61 @@ class Client {
85
76
// why are we doing it like this? because Uri doesnt have setters. wtf.
86
77
87
78
uri = Uri (
88
- scheme: uri.scheme,
79
+ scheme: uri.scheme,
89
80
userInfo: uri.userInfo,
90
81
host: uri.host,
91
82
port: uri.port,
92
83
path: uri.path,
93
84
//queryParameters: {...uri.queryParameters, ...?queryParameters},
94
85
queryParameters: queryParameters,
95
- fragment: uri.fragment
96
- );
86
+ fragment: uri.fragment);
97
87
98
- return http.get (uri, headers: _headers)
99
- .then (_handleResponse).onError ((error, stackTrace) =>
100
- _handleError (error, stackTrace));
88
+ return http
89
+ .get (uri, headers: _headers)
90
+ .then (_handleResponse)
91
+ .onError ((error, stackTrace) => _handleError (error, stackTrace));
101
92
}
102
93
103
94
Future <Response ?> delete (String url) {
104
- return http.delete (
105
- '${this .base }$url ' .toUri ()! ,
106
- headers: _headers,
107
- ).then (_handleResponse).onError ((error, stackTrace) =>
108
- _handleError (error, stackTrace));
95
+ return http
96
+ .delete (
97
+ '${this .base }$url ' .toUri ()! ,
98
+ headers: _headers,
99
+ )
100
+ .then (_handleResponse)
101
+ .onError ((error, stackTrace) => _handleError (error, stackTrace));
109
102
}
110
103
111
104
Future <Response ?> post (String url, {dynamic body}) {
112
- return http.post (
113
- '${this .base }$url ' .toUri ()! ,
114
- headers: _headers,
115
- body: _encoder.convert (body),
116
- )
117
- .then (_handleResponse).onError ((error, stackTrace) =>
118
- _handleError (error, stackTrace));
105
+ return http
106
+ .post (
107
+ '${this .base }$url ' .toUri ()! ,
108
+ headers: _headers,
109
+ body: _encoder.convert (body),
110
+ )
111
+ .then (_handleResponse)
112
+ .onError ((error, stackTrace) => _handleError (error, stackTrace));
119
113
}
120
114
121
115
Future <Response ?> put (String url, {dynamic body}) {
122
- return http.put (
123
- '${this .base }$url ' .toUri ()! ,
124
- headers: _headers,
125
- body: _encoder.convert (body),
126
- )
127
- .then (_handleResponse).onError ((error, stackTrace) =>
128
- _handleError (error, stackTrace));
116
+ return http
117
+ .put (
118
+ '${this .base }$url ' .toUri ()! ,
119
+ headers: _headers,
120
+ body: _encoder.convert (body),
121
+ )
122
+ .then (_handleResponse)
123
+ .onError ((error, stackTrace) => _handleError (error, stackTrace));
129
124
}
130
125
131
126
Response ? _handleError (Object ? e, StackTrace ? st) {
132
- if (global_scaffold_key == null ) return null ;
127
+ if (global_scaffold_key == null ) return null ;
133
128
SnackBar snackBar = SnackBar (
134
129
content: Text ("Error on request: " + e.toString ()),
135
- action: SnackBarAction (label: "Clear" , onPressed: () => global_scaffold_key! .currentState? .clearSnackBars ()),);
130
+ action: SnackBarAction (
131
+ label: "Clear" ,
132
+ onPressed: () => global_scaffold_key! .currentState? .clearSnackBars ()),
133
+ );
136
134
global_scaffold_key! .currentState? .showSnackBar (snackBar);
137
135
return null ;
138
136
}
@@ -145,39 +143,38 @@ class Client {
145
143
return map;
146
144
}
147
145
148
-
149
146
Error ? _handleResponseErrors (http.Response response) {
150
- if (response.statusCode < 200 ||
151
- response.statusCode >= 400 ) {
147
+ if (response.statusCode < 200 || response.statusCode >= 400 ) {
152
148
Map <String , dynamic > error;
153
149
error = _decoder.convert (response.body);
154
150
155
-
156
151
final SnackBar snackBar = SnackBar (
157
- content: Text (
158
- "Error code " + response.statusCode.toString () + " received." ),
159
- action: globalNavigatorKey.currentContext == null ? null : SnackBarAction (
160
- label: ("Details" ),
161
- onPressed: () {
162
- showDialog (
163
- context: globalNavigatorKey.currentContext! ,
164
- builder: (BuildContext context) =>
165
- AlertDialog (
166
- title: Text ("Error ${response .statusCode }" ),
167
- content: Column (
168
- crossAxisAlignment: CrossAxisAlignment .start,
169
- mainAxisSize: MainAxisSize .min,
170
- children: [
171
- Text ("Message: ${error ["message" ]}" , textAlign: TextAlign .start,),
172
- Text ("Url: ${response .request !.url .toString ()}" ),
173
- ],
174
- )
175
- )
176
- );
177
- },
178
- ),
152
+ content:
153
+ Text ("Error code " + response.statusCode.toString () + " received." ),
154
+ action: globalNavigatorKey.currentContext == null
155
+ ? null
156
+ : SnackBarAction (
157
+ label: ("Details" ),
158
+ onPressed: () {
159
+ showDialog (
160
+ context: globalNavigatorKey.currentContext! ,
161
+ builder: (BuildContext context) => AlertDialog (
162
+ title: Text ("Error ${response .statusCode }" ),
163
+ content: Column (
164
+ crossAxisAlignment: CrossAxisAlignment .start,
165
+ mainAxisSize: MainAxisSize .min,
166
+ children: [
167
+ Text (
168
+ "Message: ${error ["message" ]}" ,
169
+ textAlign: TextAlign .start,
170
+ ),
171
+ Text ("Url: ${response .request !.url .toString ()}" ),
172
+ ],
173
+ )));
174
+ },
175
+ ),
179
176
);
180
- if (global_scaffold_key != null && showSnackBar)
177
+ if (global_scaffold_key != null && showSnackBar)
181
178
global_scaffold_key! .currentState? .showSnackBar (snackBar);
182
179
else
183
180
print ("error on request: ${error ["message" ]}" );
0 commit comments