From 6af9993c4f128019d120891c9ee629b60ca67173 Mon Sep 17 00:00:00 2001 From: Vadim Date: Sun, 18 Oct 2026 19:36:21 +0300 Subject: [PATCH] multiple filter --- src/components/IssueFilter.vue | 14 ++--- src/components/StatusFilter.vue | 19 ++++-- src/views/Issues/IssuesListView.vue | 92 +++++++++++++++++------------ 3 files changed, 72 insertions(+), 53 deletions(-) diff --git a/src/components/IssueFilter.vue b/src/components/IssueFilter.vue index 1ea97a7..97bfd38 100644 --- a/src/components/IssueFilter.vue +++ b/src/components/IssueFilter.vue @@ -3,19 +3,18 @@ import { computed } from 'vue' import AssigneeFilter from '@/components/AssigneeFilter.vue' import TextFilter from '@/components/TextFilter.vue' import StatusFilter from '@/components/StatusFilter.vue' -import ProjectMenu from '@/components/ProjectMenu.vue' interface Props { text?: string | null assigneeId?: string | null - status?: string | null + status?: string[] } -const props = withDefaults(defineProps(), { text: null, assigneeId: null }) +const props = withDefaults(defineProps(), { text: null, assigneeId: null, status: () => [] }) const emit = defineEmits<{ 'update:text': [value: string | null] 'update:assigneeId': [value: string | null] - 'update:status': [value: string | null] + 'update:status': [value: string[]] 'update:clear': [] }>() @@ -25,14 +24,13 @@ function onAssigneeChanged(value: string[]) { emit('update:assigneeId', value.at(-1) ?? null) } -function onStatusChanged(alias: string) { - emit('update:status', alias) +function onStatusChanged(value: string[]) { + emit('update:status', value) }