From 40bd79f1ca75fae8e12f35509200d327adae2d0e Mon Sep 17 00:00:00 2001 From: Muhsin Keloth Date: Thu, 8 Aug 2024 13:44:08 +0530 Subject: [PATCH] feat: Add issue status in linear issue search item (#9598) --- .../components/ui/Dropdown/DropdownList.vue | 2 ++ .../ui/Dropdown/DropdownListItemButton.vue | 14 ++++++++++++++ .../widgets/conversation/linear/LinkIssue.vue | 2 ++ lib/linear/queries.rb | 4 ++++ 4 files changed, 22 insertions(+) diff --git a/app/javascript/dashboard/components/ui/Dropdown/DropdownList.vue b/app/javascript/dashboard/components/ui/Dropdown/DropdownList.vue index c03346a49..ce6f8868c 100644 --- a/app/javascript/dashboard/components/ui/Dropdown/DropdownList.vue +++ b/app/javascript/dashboard/components/ui/Dropdown/DropdownList.vue @@ -101,6 +101,8 @@ const shouldShowEmptyState = computed(() => { :key="item.id" :is-active="isFilterActive(item.id)" :button-text="item.name" + :icon="item.icon" + :icon-color="item.iconColor" @click="$emit('click', item)" /> diff --git a/app/javascript/dashboard/components/ui/Dropdown/DropdownListItemButton.vue b/app/javascript/dashboard/components/ui/Dropdown/DropdownListItemButton.vue index 9cabd5117..af7a197a3 100644 --- a/app/javascript/dashboard/components/ui/Dropdown/DropdownListItemButton.vue +++ b/app/javascript/dashboard/components/ui/Dropdown/DropdownListItemButton.vue @@ -8,6 +8,14 @@ defineProps({ type: Boolean, default: false, }, + icon: { + type: String, + default: '', + }, + iconColor: { + type: String, + default: '', + }, }); @@ -20,6 +28,12 @@ defineProps({ @focus="$emit('focus')" >
+ diff --git a/app/javascript/dashboard/components/widgets/conversation/linear/LinkIssue.vue b/app/javascript/dashboard/components/widgets/conversation/linear/LinkIssue.vue index 87386f681..c2fb15b21 100644 --- a/app/javascript/dashboard/components/widgets/conversation/linear/LinkIssue.vue +++ b/app/javascript/dashboard/components/widgets/conversation/linear/LinkIssue.vue @@ -62,6 +62,8 @@ const onSearch = async value => { issues.value = response.data.map(issue => ({ id: issue.id, name: `${issue.identifier} ${issue.title}`, + icon: 'status', + iconColor: issue.state.color, })); } catch (error) { const errorMessage = parseLinearAPIErrorResponse( diff --git a/lib/linear/queries.rb b/lib/linear/queries.rb index 78b2108f9..54daaf30c 100644 --- a/lib/linear/queries.rb +++ b/lib/linear/queries.rb @@ -54,6 +54,10 @@ module Linear::Queries title description identifier + state { + name + color + } } } }