
Remove/show favorites namespace if a task/list is the first to being marked as favorite Add special case to prevent marking an archived list as favorite Add marking a task as favorite on namespaces page Prevent toggling the favorite state for the favorites list Add method to toggle list favorite in the menu Add favorite icon to lists in menu Co-authored-by: kolaente <k@knt.li> Reviewed-on: https://kolaente.dev/vikunja/frontend/pulls/237
44 lines
879 B
JavaScript
44 lines
879 B
JavaScript
import AbstractModel from './abstractModel'
|
|
import TaskModel from './task'
|
|
import UserModel from './user'
|
|
|
|
export default class ListModel extends AbstractModel {
|
|
|
|
constructor(data) {
|
|
super(data)
|
|
|
|
if (this.hexColor !== '' && this.hexColor.substring(0, 1) !== '#') {
|
|
this.hexColor = '#' + this.hexColor
|
|
}
|
|
|
|
// Make all tasks to task models
|
|
this.tasks = this.tasks.map(t => {
|
|
return new TaskModel(t)
|
|
})
|
|
|
|
this.owner = new UserModel(this.owner)
|
|
|
|
this.created = new Date(this.created)
|
|
this.updated = new Date(this.updated)
|
|
}
|
|
|
|
// Default attributes that define the "empty" state.
|
|
defaults() {
|
|
return {
|
|
id: 0,
|
|
title: '',
|
|
description: '',
|
|
owner: UserModel,
|
|
tasks: [],
|
|
namespaceId: 0,
|
|
isArchived: false,
|
|
hexColor: '',
|
|
identifier: '',
|
|
backgroundInformation: null,
|
|
isFavorite: false,
|
|
|
|
created: null,
|
|
updated: null,
|
|
}
|
|
}
|
|
} |