32 lines
850 B
Dart
32 lines
850 B
Dart
import '../api/projects_api.dart';
|
|
import '../models/project.dart';
|
|
|
|
class ProjectsRepository {
|
|
final ProjectsApi _api;
|
|
const ProjectsRepository(this._api);
|
|
|
|
Future<List<Project>> getAll({
|
|
String? status,
|
|
String sort = 'updated_at',
|
|
String order = 'desc',
|
|
}) =>
|
|
_api.getAll(status: status, sort: sort, order: order);
|
|
Future<Project> getOne(int id) => _api.getOne(id);
|
|
Future<Project> create({
|
|
required String title,
|
|
String? description,
|
|
String? goal,
|
|
String? color,
|
|
String status = 'active',
|
|
}) =>
|
|
_api.create(
|
|
title: title,
|
|
description: description,
|
|
goal: goal,
|
|
color: color,
|
|
status: status);
|
|
Future<Project> update(int id, Map<String, dynamic> fields) =>
|
|
_api.update(id, fields);
|
|
Future<void> delete(int id) => _api.delete(id);
|
|
}
|