fix(kanban): do not set filter by default

This fixes a bug where, upon updating a bucket, it would set a default filter of done = false (which is the default filter for the list view), coming from the model.

Partially resolves https://community.vikunja.io/t/bugs-around-project-duplication-with-kanban-buckets/3433/3
This commit is contained in:
kolaente 2025-03-19 19:46:52 +01:00
parent 8da1102204
commit 060adac797
No known key found for this signature in database
GPG Key ID: F40E70337AB24C9B
3 changed files with 19 additions and 5 deletions

View File

@ -30,7 +30,7 @@ export interface IProjectView extends IAbstract {
projectId: IProject['id']
viewKind: ProjectViewKind
filter: IFilters
filter: IFilters|undefined
position: number
bucketConfigurationMode: ProjectViewBucketConfigurationMode

View File

@ -8,9 +8,9 @@ export default class ProjectViewModel extends AbstractModel<IProjectView> implem
viewKind: ProjectViewKind = 'list'
filter: IProjectView['filters'] = {
sort_by: ['done', 'id'],
order_by: ['asc', 'desc'],
filter: 'done = false',
sort_by: [],
order_by: [],
filter: '',
filter_include_nulls: true,
s: '',
}
@ -32,4 +32,18 @@ export default class ProjectViewModel extends AbstractModel<IProjectView> implem
this.bucketConfiguration = []
}
}
static createWithDefaultFilter(data: Partial<IProjectView> = {}): ProjectViewModel {
const defaultFilter: IProjectView['filters'] = {
sort_by: ['done', 'id'],
order_by: ['asc', 'desc'],
filter: 'done = false',
filter_include_nulls: true,
s: '',
}
const instance = new ProjectViewModel(data)
instance.filter = defaultFilter
return instance
}
}

View File

@ -38,7 +38,7 @@ watch(
const showCreateForm = ref(false)
const projectViewService = shallowReactive(new ProjectViewService())
const newView = ref<IProjectView>(new ProjectViewModel({}))
const newView = ref<IProjectView>(ProjectViewModel.createWithDefaultFilter())
const viewIdToDelete = ref<number | null>(null)
const showDeleteModal = ref(false)
const viewToEdit = ref<IProjectView | null>(null)