From 6f651eeaebfafd5ea608b4fd4871e9251bc4365a Mon Sep 17 00:00:00 2001 From: Vadim Date: Mon, 28 Sep 2026 15:43:50 +0300 Subject: [PATCH] filter --- src/App.vue | 2 +- src/components/IssueFilter.vue | 10 +++++++- src/components/StatusFilter.vue | 40 +++++++++++++++++++++++++++++ src/views/HomeView.vue | 4 +-- src/views/Issues/IssuesListView.vue | 17 +++++++++++- 5 files changed, 68 insertions(+), 5 deletions(-) create mode 100644 src/components/StatusFilter.vue diff --git a/src/App.vue b/src/App.vue index 2e5b2d9..4410fb5 100644 --- a/src/App.vue +++ b/src/App.vue @@ -25,7 +25,7 @@ const { data } = useEventSource( console.log('Failed to connect EventSource after 3 retries') }, }, - autoConnect: true, + autoConnect: false, }, ) diff --git a/src/components/IssueFilter.vue b/src/components/IssueFilter.vue index abb3f6c..b05d930 100644 --- a/src/components/IssueFilter.vue +++ b/src/components/IssueFilter.vue @@ -2,16 +2,19 @@ import { computed } from 'vue' import AssigneeFilter from '@/components/AssigneeFilter.vue' import TextFilter from '@/components/TextFilter.vue' +import StatusFilter from '@/components/StatusFilter.vue' interface Props { text?: string | null assigneeId?: string | null + status?: string | null } const props = withDefaults(defineProps(), { text: null, assigneeId: null }) const emit = defineEmits<{ 'update:text': [value: string | null] 'update:assigneeId': [value: string | null] + 'update:status': [value: string | null] 'update:clear': [] }>() @@ -20,11 +23,16 @@ const selectedAssignees = computed(() => (props.assigneeId ? [props.assigneeId] function onAssigneeChanged(value: string[]) { emit('update:assigneeId', value.at(-1) ?? null) } + +function onStatusChanged(alias: string) { + emit('update:status', alias) +}