Hello, before anything I would like to thank you for your work, but I have a couple of doubts ...
Is it necessary to create a client for each request to be made?
import 'package:json_annotation/json_annotation.dart';
part 'base_response.g.dart';
@JsonSerializable(
genericArgumentFactories: true, fieldRename: FieldRename.snake)
class BaseResponse<T> {
late bool status;
late T? payload;
BaseResponse();
@override
factory BaseResponse.fromJson(
Map<String, dynamic> json,
T Function(Object? json) fromJsonT,
) =>
_$BaseResponseFromJson(json, fromJsonT);
Map<String, dynamic> toJson(Object Function(T value) toJsonT) =>
_$BaseResponseToJson(this, toJsonT);
}
And I need to parse, for example user response on login...
Future<Result<BaseResponse, NetworkError>> login(UserModel user) async {
return NetworkExecuter.execute<BaseResponse, BaseResponse<UserModel>>(
route: const UserClient.login(), responseType: BaseResponse(),);
}
abstract class BaseNetworkModel<T> {
T fromJson(Map<String, dynamic> json);
}