This commit is contained in:
2023-08-28 15:37:23 +08:00
parent ba77b72d46
commit 2cffe62963
13 changed files with 886 additions and 8 deletions

22
lib/api/api_result.dart Normal file
View File

@@ -0,0 +1,22 @@
import 'package:json_annotation/json_annotation.dart';
part 'api_result.g.dart';
@JsonSerializable(genericArgumentFactories: true)
class ApiResult<T> {
const ApiResult({
required this.ok,
required this.status,
this.data,
this.error,
});
factory ApiResult.fromJson(
Map<String, dynamic> json, T Function(Object?) fromJsonT) =>
_$ApiResultFromJson(json, fromJsonT);
final bool ok;
final int status;
final T? data;
final String? error;
Map<String, dynamic> toJson(Object? Function(T) toJsonT) =>
_$ApiResultToJson(this, toJsonT);
}