frontend/src/services/label.js
konrad 4a413e7f3c Make all api fields snake_case (#105)
Change all snake/camelCase mix and match to camelCase everywhere

Fix conversion to not interfer with service interceptors

Add dynamic conversion between camelCase and snake_case to services

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/frontend#105
2020-04-12 21:54:46 +00:00

35 lines
713 B
JavaScript

import AbstractService from './abstractService'
import LabelModel from '../models/label'
import {formatISO} from 'date-fns'
export default class LabelService extends AbstractService {
constructor() {
super({
create: '/labels',
getAll: '/labels',
get: '/labels/{id}',
update: '/labels/{id}',
delete: '/labels/{id}',
})
}
processModel(model) {
model.created = formatISO(model.created)
model.updated = formatISO(model.updated)
return model
}
modelFactory(data) {
return new LabelModel(data)
}
beforeUpdate(label) {
label.hexColor = label.hexColor.substring(1, 7)
return label
}
beforeCreate(label) {
label.hexColor = label.hexColor.substring(1, 7)
return label
}
}