2019-03-02 10:25:10 +00:00
|
|
|
import AbstractService from './abstractService'
|
|
|
|
import ListModel from '../models/list'
|
|
|
|
import TaskService from './task'
|
2020-03-02 20:55:22 +00:00
|
|
|
import {formatISO} from 'date-fns'
|
2019-03-02 10:25:10 +00:00
|
|
|
|
|
|
|
export default class ListService extends AbstractService {
|
|
|
|
constructor() {
|
|
|
|
super({
|
2020-04-17 10:19:53 +00:00
|
|
|
create: '/namespaces/{namespaceId}/lists',
|
2019-03-02 10:25:10 +00:00
|
|
|
get: '/lists/{id}',
|
|
|
|
update: '/lists/{id}',
|
|
|
|
delete: '/lists/{id}',
|
|
|
|
})
|
|
|
|
}
|
2020-02-08 13:16:06 +00:00
|
|
|
|
|
|
|
processModel(model) {
|
2020-03-02 20:55:22 +00:00
|
|
|
model.created = formatISO(model.created)
|
|
|
|
model.updated = formatISO(model.updated)
|
2020-02-08 13:16:06 +00:00
|
|
|
return model
|
|
|
|
}
|
|
|
|
|
2019-03-02 10:25:10 +00:00
|
|
|
modelFactory(data) {
|
|
|
|
return new ListModel(data)
|
|
|
|
}
|
|
|
|
|
|
|
|
beforeUpdate(model) {
|
|
|
|
let taskService = new TaskService()
|
|
|
|
model.tasks = model.tasks.map(task => {
|
|
|
|
return taskService.beforeUpdate(task)
|
|
|
|
})
|
2020-04-12 21:54:46 +00:00
|
|
|
model.hexColor = model.hexColor.substring(1, 7)
|
2019-03-02 10:25:10 +00:00
|
|
|
return model
|
|
|
|
}
|
2020-03-25 21:27:29 +00:00
|
|
|
|
|
|
|
beforeCreate(list) {
|
2020-04-12 21:54:46 +00:00
|
|
|
list.hexColor = list.hexColor.substring(1, 7)
|
2020-03-25 21:27:29 +00:00
|
|
|
return list
|
|
|
|
}
|
2019-03-02 10:25:10 +00:00
|
|
|
}
|