From 6d9aa07fe6e0421018df9e750869747f01da0f83 Mon Sep 17 00:00:00 2001 From: RitvikSardana Date: Sat, 28 Sep 2024 03:52:42 +0530 Subject: [PATCH] fix: show sidebar options according to the route --- desk/src/components/layouts/Sidebar.vue | 57 +++++++++++++++++++++---- 1 file changed, 48 insertions(+), 9 deletions(-) diff --git a/desk/src/components/layouts/Sidebar.vue b/desk/src/components/layouts/Sidebar.vue index b8b6a689b..a0b4ec1cf 100644 --- a/desk/src/components/layouts/Sidebar.vue +++ b/desk/src/components/layouts/Sidebar.vue @@ -8,6 +8,7 @@ > - +
- +
[ +const isCustomerPortal = computed(() => + CUSTOMER_PORTAL_ROUTES.includes(route.name) +); + +const agentPortalSidebarOptions = computed(() => [ { label: "Tickets", icon: LucideTicket, @@ -144,10 +150,34 @@ const menuOptions = computed(() => [ }, ]); -function isActiveTab(to: string) { - return route.name === to; -} -const profileSettings = [ +const customperPortalSidebarOptions = computed(() => [ + { + label: "Tickets", + icon: LucideTicket, + to: "TicketsCustomer", + }, + { + label: "Knowledge base", + icon: LucideBookOpen, + to: "KBHome", + }, +]); + +const menuOptions = computed(() => { + return isCustomerPortal.value + ? customperPortalSidebarOptions.value + : agentPortalSidebarOptions.value; +}); + +const customerPortalDropdown = computed(() => [ + { + label: "Log out", + icon: "log-out", + onClick: () => authStore.logout(), + }, +]); + +const agentPortalDropdown = computed(() => [ { component: markRaw(Apps), }, @@ -173,14 +203,23 @@ const profileSettings = [ label: "Settings", icon: "settings", onClick: () => (showSettingsModal.value = true), - condition: () => authStore.isAdmin, }, { label: "Log out", icon: "log-out", onClick: () => authStore.logout(), }, -]; +]); + +const profileSettings = computed(() => { + return isCustomerPortal.value + ? customerPortalDropdown.value + : agentPortalDropdown.value; +}); + +function isActiveTab(to: string) { + return route.name === to; +} function openCommandPalette() { window.dispatchEvent(