feat : profile with logic
This commit is contained in:
@@ -1,31 +1,31 @@
|
||||
enum Status { initial, loading, success, error, empty }
|
||||
enum ResourceStatus { initial, loading, success, error, empty }
|
||||
|
||||
class Resource<T> {
|
||||
final Status status;
|
||||
final ResourceStatus status;
|
||||
final T? data;
|
||||
final String? message;
|
||||
|
||||
const Resource._({required this.status, this.data, this.message});
|
||||
|
||||
const Resource.initial() : this._(status: Status.initial);
|
||||
const Resource.initial() : this._(status: ResourceStatus.initial);
|
||||
|
||||
const Resource.loading() : this._(status: Status.loading);
|
||||
const Resource.loading() : this._(status: ResourceStatus.loading);
|
||||
|
||||
const Resource.success(T data) : this._(status: Status.success, data: data);
|
||||
const Resource.success(T data) : this._(status: ResourceStatus.success, data: data);
|
||||
|
||||
const Resource.error(String message) : this._(status: Status.error, message: message);
|
||||
const Resource.error(String message) : this._(status: ResourceStatus.error, message: message);
|
||||
|
||||
const Resource.empty() : this._(status: Status.empty);
|
||||
const Resource.empty() : this._(status: ResourceStatus.empty);
|
||||
|
||||
bool get isInitial => status == Status.initial;
|
||||
bool get isInitial => status == ResourceStatus.initial;
|
||||
|
||||
bool get isLoading => status == Status.loading;
|
||||
bool get isLoading => status == ResourceStatus.loading;
|
||||
|
||||
bool get isSuccess => status == Status.success;
|
||||
bool get isSuccess => status == ResourceStatus.success;
|
||||
|
||||
bool get isError => status == Status.error;
|
||||
bool get isError => status == ResourceStatus.error;
|
||||
|
||||
bool get isEmpty => status == Status.empty;
|
||||
bool get isEmpty => status == ResourceStatus.empty;
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
|
||||
Reference in New Issue
Block a user