24 lines
586 B
Dart
24 lines
586 B
Dart
import 'package:base_project/data/response/status.dart';
|
|
|
|
class ApiResponse<T> {
|
|
Status? status;
|
|
T? data;
|
|
String? message;
|
|
|
|
ApiResponse(this.status, this.data, this.message);
|
|
|
|
// Named constructor for loading state
|
|
ApiResponse.loading() : status = Status.LOADING;
|
|
|
|
// Named constructor for completed state
|
|
ApiResponse.success(this.data) : status = Status.SUCCESS;
|
|
|
|
// Named constructor for error state
|
|
ApiResponse.error(this.message) : status = Status.ERROR;
|
|
|
|
@override
|
|
String toString() {
|
|
return "Status: $status \n Message: $message \n Data: $data";
|
|
}
|
|
}
|