mapData<R> method
Transform data type on success.
final res = await api.get<String>(endpoint: '/count')
.mapData((s) => int.parse(s));
Implementation
Future<ApiResponse<R>> mapData<R>(R Function(T data) transform) async {
final res = await this;
if (res.isSuccess && res.data != null) {
return ApiResponse<R>.success(
data: transform(res.data as T),
message: res.message,
statusCode: res.statusCode,
raw: res.raw,
requestId: res.requestId,
responseTime: res.responseTime,
);
}
return ApiResponse<R>.failure(
message: res.message,
statusCode: res.statusCode,
errors: res.errors,
requestId: res.requestId,
responseTime: res.responseTime,
);
}