Merge branch 'feat/nullsafety-stream-chat' of git://github.com/felangel/stream-chat-flutter into felangel-feat/nullsafety-stream-chat
This commit is contained in:
@@ -352,7 +352,7 @@ class Channel {
|
||||
state?.addMessage(response.message);
|
||||
return response;
|
||||
} catch (error) {
|
||||
if (error is DioError && error.type != DioErrorType.RESPONSE) {
|
||||
if (error is DioError && error.type != DioErrorType.response) {
|
||||
state?.retryQueue?.add([message]);
|
||||
}
|
||||
rethrow;
|
||||
@@ -405,7 +405,7 @@ class Channel {
|
||||
));
|
||||
return response;
|
||||
} catch (error) {
|
||||
if (error is DioError && error.type != DioErrorType.RESPONSE) {
|
||||
if (error is DioError && error.type != DioErrorType.response) {
|
||||
state?.retryQueue?.add([message]);
|
||||
}
|
||||
rethrow;
|
||||
@@ -446,7 +446,7 @@ class Channel {
|
||||
|
||||
return response;
|
||||
} catch (error) {
|
||||
if (error is DioError && error.type != DioErrorType.RESPONSE) {
|
||||
if (error is DioError && error.type != DioErrorType.response) {
|
||||
state?.retryQueue?.add([message]);
|
||||
}
|
||||
rethrow;
|
||||
|
||||
@@ -74,7 +74,7 @@ class RetryQueue {
|
||||
} catch (error) {
|
||||
ApiError apiError;
|
||||
if (error is DioError) {
|
||||
if (error.type == DioErrorType.RESPONSE) {
|
||||
if (error.type == DioErrorType.response) {
|
||||
_messageQueue.remove(message);
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -252,7 +252,7 @@ class StreamChatClient {
|
||||
this.httpClient.options.connectTimeout = connectTimeout.inMilliseconds;
|
||||
this.httpClient.interceptors.add(
|
||||
InterceptorsWrapper(
|
||||
onRequest: (options) async {
|
||||
onRequest: (options, handler) async {
|
||||
options.queryParameters.addAll(_commonQueryParams);
|
||||
options.headers.addAll(_httpHeaders);
|
||||
|
||||
@@ -280,15 +280,17 @@ class StreamChatClient {
|
||||
data: $stringData
|
||||
|
||||
''');
|
||||
|
||||
return options;
|
||||
handler.next(options);
|
||||
},
|
||||
onError: _tokenExpiredInterceptor,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Future<void> _tokenExpiredInterceptor(DioError err) async {
|
||||
Future<void> _tokenExpiredInterceptor(
|
||||
DioError err,
|
||||
ErrorInterceptorHandler handler,
|
||||
) async {
|
||||
final apiError = ApiError(
|
||||
err.response?.data,
|
||||
err.response?.statusCode,
|
||||
@@ -312,17 +314,35 @@ class StreamChatClient {
|
||||
await connectUser(User(id: userId), newToken);
|
||||
|
||||
try {
|
||||
return await httpClient.request(
|
||||
err.request.path,
|
||||
cancelToken: err.request.cancelToken,
|
||||
data: err.request.data,
|
||||
onReceiveProgress: err.request.onReceiveProgress,
|
||||
onSendProgress: err.request.onSendProgress,
|
||||
queryParameters: err.request.queryParameters,
|
||||
options: err.request,
|
||||
handler.resolve(
|
||||
await httpClient.request(
|
||||
err.requestOptions.path,
|
||||
cancelToken: err.requestOptions.cancelToken,
|
||||
data: err.requestOptions.data,
|
||||
onReceiveProgress: err.requestOptions.onReceiveProgress,
|
||||
onSendProgress: err.requestOptions.onSendProgress,
|
||||
queryParameters: err.requestOptions.queryParameters,
|
||||
options: Options(
|
||||
method: err.requestOptions.method,
|
||||
sendTimeout: err.requestOptions.sendTimeout,
|
||||
receiveTimeout: err.requestOptions.receiveTimeout,
|
||||
extra: err.requestOptions.extra,
|
||||
headers: err.requestOptions.headers,
|
||||
responseType: err.requestOptions.responseType,
|
||||
contentType: err.requestOptions.contentType,
|
||||
validateStatus: err.requestOptions.validateStatus,
|
||||
receiveDataWhenStatusError:
|
||||
err.requestOptions.receiveDataWhenStatusError,
|
||||
followRedirects: err.requestOptions.followRedirects,
|
||||
maxRedirects: err.requestOptions.maxRedirects,
|
||||
requestEncoder: err.requestOptions.requestEncoder,
|
||||
responseDecoder: err.requestOptions.responseDecoder,
|
||||
listFormat: err.requestOptions.listFormat,
|
||||
),
|
||||
),
|
||||
);
|
||||
} catch (err) {
|
||||
return err;
|
||||
handler.reject(err);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -784,7 +804,7 @@ class StreamChatClient {
|
||||
}
|
||||
|
||||
Object _parseError(DioError error) {
|
||||
if (error.type == DioErrorType.RESPONSE) {
|
||||
if (error.type == DioErrorType.response) {
|
||||
final apiError =
|
||||
ApiError(error.response?.data, error.response?.statusCode);
|
||||
logger.severe('apiError: ${apiError.toString()}');
|
||||
@@ -931,7 +951,7 @@ class StreamChatClient {
|
||||
_connectCompleter = Completer();
|
||||
|
||||
_anonymous = true;
|
||||
final uuid = Uuid();
|
||||
const uuid = Uuid();
|
||||
state.user = OwnUser(id: uuid.v4());
|
||||
|
||||
return connect().then((event) {
|
||||
|
||||
@@ -35,7 +35,7 @@ class Attachment {
|
||||
this.extraData,
|
||||
this.file,
|
||||
UploadState uploadState,
|
||||
}) : id = id ?? Uuid().v4(),
|
||||
}) : id = id ?? const Uuid().v4(),
|
||||
title = title ?? file?.name,
|
||||
localUri = file?.path != null ? Uri.parse(file.path) : null {
|
||||
this.uploadState = uploadState ??
|
||||
|
||||
@@ -73,7 +73,7 @@ class Message {
|
||||
this.deletedAt,
|
||||
this.status = MessageSendingStatus.sent,
|
||||
this.skipPush,
|
||||
}) : id = id ?? Uuid().v4(),
|
||||
}) : id = id ?? const Uuid().v4(),
|
||||
pinExpires = pinExpires?.toUtc();
|
||||
|
||||
/// Create a new instance from a json
|
||||
|
||||
Reference in New Issue
Block a user