taskStatus<T> method
Returns the latest status for id, or an idle status when absent.
Implementation
LxStatus<T> taskStatus<T>(String id) {
final status = tasks[id]?.status;
if (status == null) return LxIdle<T>();
final lastValue = status.lastValue as T?;
return switch (status) {
LxIdle() => LxIdle<T>(lastValue),
LxWaiting() => LxWaiting<T>(lastValue),
LxSuccess(:final value) => LxSuccess<T>(value as T),
LxError(:final error, :final stackTrace) =>
LxError<T>(error, stackTrace, lastValue),
};
}