@@ -2,6 +2,7 @@ import 'package:dio/dio.dart';
22
33import 'responses/response.dart' ;
44
5+ /// Extension for [List]
56extension ListX on List <dynamic > {
67 /// Checks every item is type of T.
78 bool check <T >() => every ((item) => item is T );
@@ -11,7 +12,9 @@ extension ListX on List<dynamic> {
1112 List <T >? castChecked <T >() => check <T >() ? List <T >.from (this ) : null ;
1213}
1314
15+ /// Extension for [RequestOptions]
1416extension RequestOptionsX on RequestOptions {
17+ /// Converts [RequestOptions] to [Options]
1518 Options toOptions () {
1619 return Options (
1720 method: method,
@@ -34,7 +37,9 @@ extension RequestOptionsX on RequestOptions {
3437 }
3538}
3639
40+ /// Extension for [Dio]
3741extension DioX on Dio {
42+ /// Restarts the http request
3843 Future <Response <T >> restart <T >(Response <T > originalResponse) {
3944 final requestOptions = originalResponse.requestOptions;
4045 return request (
@@ -49,20 +54,25 @@ extension DioX on Dio {
4954 }
5055}
5156
57+ /// Extension for [Future]
5258extension FutureTioResponseX <R , E > on Future <TioResponse <R , E >> {
59+ /// Maps response
5360 Future <K > map <K >({
5461 required K Function (TioSuccess <R , E > success) success,
5562 required K Function (TioFailure <R , E > failure) failure,
5663 }) =>
5764 then ((response) => response.map (success: success, failure: failure));
5865
66+ /// Similar to [map] but passes [R] result or [E] error values to callbacks
5967 Future <K > when < K > ({
6068 required K Function (R result) success,
6169 required K Function (E error) failure,
6270 }) =>
6371 then ((response) => response.when (success: success, failure: failure));
6472
73+ /// Returns result of the response
6574 Future <R > unwrap () => then ((response) => response.requireResult);
6675
76+ /// Returns result of the response or null if response is failure
6777 Future <R ?> maybeUnwrap () => then ((response) => response.maybeResult);
6878}
0 commit comments