This repository has been archived on 2024-02-08. You can view files and clone it, but cannot push or open issues or pull requests.
frontend/src/services/notification.ts

30 lines
681 B
TypeScript
Raw Normal View History

import AbstractService from '@/services/abstractService'
2022-09-06 09:36:01 +00:00
import NotificationModel from '@/models/notification'
import type {INotification} from '@/modelTypes/INotification'
2022-07-21 16:56:31 +00:00
export default class NotificationService extends AbstractService<INotification> {
constructor() {
super({
getAll: '/notifications',
update: '/notifications/{id}',
})
}
modelFactory(data) {
return new NotificationModel(data)
}
beforeUpdate(model) {
if (!model) {
return model
}
model.created = new Date(model.created).toISOString()
model.readAt = new Date(model.readAt).toISOString()
return model
}
async markAllRead() {
return this.post('/notifications', false)
}
}