1
0

feat: rename list to project everywhere

fix: project table view

fix: e2e tests

fix: typo in readme

fix: list view route

fix: don't wait until background is loaded for list to show

fix: rename component imports

fix: lint

fix: parse task text

fix: use list card grid

fix: use correct class names

fix: i18n keys

fix: load project

fix: task overview

fix: list view spacing

fix: find project

fix: setLoading when updating a project

fix: loading saved filter

fix: project store loading

fix: color picker import

fix: cypress tests

feat: migrate old list settings

chore: add const for project settings

fix: wrong projecten rename from lists

chore: rename unused variable

fix: editor list

fix: shortcut list class name

fix: pagination list class name

fix: notifications list class name

fix: list view variable name

chore: clarify comment

fix: i18n keys

fix: router imports

fix: comment

chore: remove debugging leftover

fix: remove duplicate variables

fix: change comment

fix: list view variable name

fix: list view css class name

fix: list item property name

fix: name update tasks function correctly

fix: update comment

fix: project create route

fix: list view class names

fix: list view component name

fix: result list class name

fix: animation class list name

fix: change debug log

fix: revert a few navigation changes

fix: use @ for imports of all views

fix: rename link share list class

fix: remove unused css class

fix: dynamically import project components again
This commit is contained in:
kolaente
2022-11-13 22:04:57 +01:00
committed by Gitea
parent b9d3b5c756
commit befa6f27bb
133 changed files with 1873 additions and 1881 deletions

View File

@ -9,7 +9,7 @@ import type {IUser} from '@/modelTypes/IUser'
export default class BucketModel extends AbstractModel<IBucket> implements IBucket {
id = 0
title = ''
listId = ''
projectId = ''
limit = 0
tasks: ITask[] = []
isDoneBucket = false

View File

@ -16,7 +16,7 @@ export default class LabelModel extends AbstractModel<ILabel> implements ILabel
hexColor = DEFAULT_LABEL_BACKGROUND_COLOR
description = ''
createdBy: IUser
listId = 0
projectId = 0
textColor = ''
created: Date = null

View File

@ -11,7 +11,7 @@ export default class LinkShareModel extends AbstractModel<ILinkShare> implements
right: Right = RIGHTS.READ
sharedBy: IUser = UserModel
sharingType = 0 // FIXME: use correct numbers
listId = 0
projectId = 0
name: ''
password: ''
created: Date = null

View File

@ -1,11 +1,11 @@
import AbstractModel from './abstractModel'
import ListModel from './list'
import ProjectModel from './project'
import UserModel from './user'
import SubscriptionModel from '@/models/subscription'
import type {INamespace} from '@/modelTypes/INamespace'
import type {IUser} from '@/modelTypes/IUser'
import type {IList} from '@/modelTypes/IList'
import type {IProject} from '@/modelTypes/IProject'
import type {ISubscription} from '@/modelTypes/ISubscription'
export default class NamespaceModel extends AbstractModel<INamespace> implements INamespace {
@ -13,7 +13,7 @@ export default class NamespaceModel extends AbstractModel<INamespace> implements
title = ''
description = ''
owner: IUser = UserModel
lists: IList[] = []
projects: IProject[] = []
isArchived = false
hexColor = ''
subscription: ISubscription = null
@ -29,8 +29,8 @@ export default class NamespaceModel extends AbstractModel<INamespace> implements
this.hexColor = '#' + this.hexColor
}
this.lists = this.lists.map(l => {
return new ListModel(l)
this.projects = this.projects.map(l => {
return new ProjectModel(l)
})
this.owner = new UserModel(this.owner)

View File

@ -3,7 +3,7 @@ import {parseDateOrNull} from '@/helpers/parseDateOrNull'
import UserModel, {getDisplayName} from '@/models/user'
import TaskModel from '@/models/task'
import TaskCommentModel from '@/models/taskComment'
import ListModel from '@/models/list'
import ProjectModel from '@/models/project'
import TeamModel from '@/models/team'
import {NOTIFICATION_NAMES, type INotification} from '@/modelTypes/INotification'
@ -43,10 +43,10 @@ export default class NotificationModel extends AbstractModel<INotification> impl
task: new TaskModel(this.notification.task),
}
break
case NOTIFICATION_NAMES.LIST_CREATED:
case NOTIFICATION_NAMES.PROJECT_CREATED:
this.notification = {
doer: new UserModel(this.notification.doer),
list: new ListModel(this.notification.list),
project: new ProjectModel(this.notification.project),
}
break
case NOTIFICATION_NAMES.TEAM_MEMBER_ADDED:
@ -78,8 +78,8 @@ export default class NotificationModel extends AbstractModel<INotification> impl
return `assigned ${who} to ${this.notification.task.getTextIdentifier()}`
case NOTIFICATION_NAMES.TASK_DELETED:
return `deleted ${this.notification.task.getTextIdentifier()}`
case NOTIFICATION_NAMES.LIST_CREATED:
return `created ${this.notification.list.title}`
case NOTIFICATION_NAMES.PROJECT_CREATED:
return `created ${this.notification.project.title}`
case NOTIFICATION_NAMES.TEAM_MEMBER_ADDED:
who = `${getDisplayName(this.notification.member)}`

View File

@ -3,13 +3,13 @@ import TaskModel from '@/models/task'
import UserModel from '@/models/user'
import SubscriptionModel from '@/models/subscription'
import type {IList} from '@/modelTypes/IList'
import type {IProject} from '@/modelTypes/IProject'
import type {IUser} from '@/modelTypes/IUser'
import type {ITask} from '@/modelTypes/ITask'
import type {INamespace} from '@/modelTypes/INamespace'
import type {ISubscription} from '@/modelTypes/ISubscription'
export default class ListModel extends AbstractModel<IList> implements IList {
export default class ProjectModel extends AbstractModel<IProject> implements IProject {
id = 0
title = ''
description = ''
@ -28,7 +28,7 @@ export default class ListModel extends AbstractModel<IList> implements IList {
created: Date = null
updated: Date = null
constructor(data: Partial<IList> = {}) {
constructor(data: Partial<IProject> = {}) {
super()
this.assignData(data)

View File

@ -1,19 +1,19 @@
import AbstractModel from './abstractModel'
import ListModel from './list'
import ProjectModel from './project'
import type {IListDuplicate} from '@/modelTypes/IListDuplicate'
import type {IProjectDuplicate} from '@/modelTypes/IProjectDuplicate'
import type {INamespace} from '@/modelTypes/INamespace'
import type {IList} from '@/modelTypes/IList'
import type {IProject} from '@/modelTypes/IProject'
export default class ListDuplicateModel extends AbstractModel<IListDuplicate> implements IListDuplicate {
listId = 0
export default class ProjectDuplicateModel extends AbstractModel<IProjectDuplicate> implements IProjectDuplicate {
projectId = 0
namespaceId: INamespace['id'] = 0
list: IList = ListModel
project: IProject = ProjectModel
constructor(data : Partial<IListDuplicate>) {
constructor(data : Partial<IProjectDuplicate>) {
super()
this.assignData(data)
this.list = new ListModel(this.list)
this.project = new ProjectModel(this.project)
}
}

View File

@ -5,7 +5,7 @@ import type {ITask} from '@/modelTypes/ITask'
import type {ILabel} from '@/modelTypes/ILabel'
import type {IUser} from '@/modelTypes/IUser'
import type {IAttachment} from '@/modelTypes/IAttachment'
import type {IList} from '@/modelTypes/IList'
import type {IProject} from '@/modelTypes/IProject'
import type {ISubscription} from '@/modelTypes/ISubscription'
import type {IBucket} from '@/modelTypes/IBucket'
@ -93,7 +93,7 @@ export default class TaskModel extends AbstractModel<ITask> implements ITask {
created: Date = null
updated: Date = null
listId: IList['id'] = 0
projectId: IProject['id'] = 0
bucketId: IBucket['id'] = 0
constructor(data: Partial<ITask> = {}) {
@ -142,7 +142,7 @@ export default class TaskModel extends AbstractModel<ITask> implements ITask {
// Make all attachments to attachment models
this.attachments = this.attachments.map(a => new AttachmentModel(a))
// Set the task identifier to empty if the list does not have one
// Set the task identifier to empty if the project does not have one
if (this.identifier === `-${this.index}`) {
this.identifier = ''
}
@ -155,7 +155,7 @@ export default class TaskModel extends AbstractModel<ITask> implements ITask {
this.created = new Date(this.created)
this.updated = new Date(this.updated)
this.listId = Number(this.listId)
this.projectId = Number(this.projectId)
}
getTextIdentifier() {

View File

@ -1,11 +1,11 @@
import UserModel from './user'
import type {ITeamMember} from '@/modelTypes/ITeamMember'
import type {IList} from '@/modelTypes/IList'
import type {IProject} from '@/modelTypes/IProject'
export default class TeamMemberModel extends UserModel implements ITeamMember {
admin = false
teamId: IList['id'] = 0
teamId: IProject['id'] = 0
constructor(data: Partial<ITeamMember>) {
super(data)

View File

@ -1,12 +1,12 @@
import TeamShareBaseModel from './teamShareBase'
import type {ITeamList} from '@/modelTypes/ITeamList'
import type {IList} from '@/modelTypes/IList'
import type {ITeamProject} from '@/modelTypes/ITeamProject'
import type {IProject} from '@/modelTypes/IProject'
export default class TeamListModel extends TeamShareBaseModel implements ITeamList {
listId: IList['id'] = 0
export default class TeamProjectModel extends TeamShareBaseModel implements ITeamProject {
projectId: IProject['id'] = 0
constructor(data: Partial<ITeamList>) {
constructor(data: Partial<ITeamProject>) {
super(data)
this.assignData(data)
}

View File

@ -6,7 +6,7 @@ import type {ITeam} from '@/modelTypes/ITeam'
/**
* This class is a base class for common team sharing model.
* It is extended in a way so it can be used for namespaces as well for lists.
* It is extended in a way so it can be used for namespaces as well for projects.
*/
export default class TeamShareBaseModel extends AbstractModel<ITeamShareBase> implements ITeamShareBase {
teamId: ITeam['id'] = 0

View File

@ -1,13 +1,13 @@
import UserShareBaseModel from './userShareBase'
import type {IUserList} from '@/modelTypes/IUserList'
import type {IList} from '@/modelTypes/IList'
import type {IUserProject} from '@/modelTypes/IUserProject'
import type {IProject} from '@/modelTypes/IProject'
// This class extends the user share model with a 'rights' parameter which is used in sharing
export default class UserListModel extends UserShareBaseModel implements IUserList {
listId: IList['id'] = 0
export default class UserProjectModel extends UserShareBaseModel implements IUserProject {
projectId: IProject['id'] = 0
constructor(data: Partial<IUserList>) {
constructor(data: Partial<IUserProject>) {
super(data)
this.assignData(data)
}

View File

@ -10,7 +10,7 @@ export default class UserSettingsModel extends AbstractModel<IUserSettings> impl
discoverableByEmail = false
overdueTasksRemindersEnabled = true
overdueTasksRemindersTime = undefined
defaultListId = undefined
defaultProjectId = undefined
weekStart = 0 as IUserSettings['weekStart']
timezone = ''
language = getCurrentLanguage()