2022-10-18 14:26:35 +00:00
|
|
|
import AbstractService from '@/services/abstractService'
|
|
|
|
import TaskModel from '@/models/task'
|
|
|
|
|
|
|
|
import type {ITask} from '@/modelTypes/ITask'
|
|
|
|
|
|
|
|
// FIXME: unite with other filter params types
|
|
|
|
export interface GetAllTasksParams {
|
|
|
|
sort_by: ('start_date' | 'done' | 'id')[],
|
|
|
|
order_by: ('asc' | 'asc' | 'desc')[],
|
|
|
|
filter_by: 'start_date'[],
|
|
|
|
filter_comparator: ('greater_equals' | 'less_equals')[],
|
|
|
|
filter_value: [string, string] // [dateFrom, dateTo],
|
|
|
|
filter_concat: 'and',
|
|
|
|
filter_include_nulls: boolean,
|
|
|
|
}
|
|
|
|
|
2022-10-10 19:44:59 +00:00
|
|
|
export default class TaskCollectionService extends AbstractService<ITask> {
|
2019-12-03 18:09:12 +00:00
|
|
|
constructor() {
|
|
|
|
super({
|
2020-04-12 21:54:46 +00:00
|
|
|
getAll: '/lists/{listId}/tasks',
|
2019-12-03 18:09:12 +00:00
|
|
|
})
|
|
|
|
}
|
2020-02-08 13:16:06 +00:00
|
|
|
|
2019-12-03 18:09:12 +00:00
|
|
|
modelFactory(data) {
|
|
|
|
return new TaskModel(data)
|
|
|
|
}
|
|
|
|
}
|