@riverpod
class CreateTodoUseCaseImpl extends _$CreateTodoUseCaseImpl
implements CreateTodoUseCase {
@override
Future<Todo> build(
String title,
String? description,
bool isCompleted,
DateTime dueDate,
) {
final TodosRepository repository =
ref.read(todosRepositoryImplProvider.notifier);
return repository.createTodo(
title: title,
description: description,
isCompleted: isCompleted,
dueDate: dueDate,
);
}
}
@riverpod
class GetTodoListUseCaseImpl extends _$GetTodoListUseCaseImpl implements GetTodoListUseCase {
@override
Future<List<Todo>> build() async {
final repository = ref.watch(todosRepositoryImplProvider);
return repository.valueOrNull ?? [];
}
}