diff --git a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/command-items.tsx b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/command-items.tsx index d5c81dcf55..7b845995ac 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/command-items.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/command-items.tsx @@ -51,12 +51,14 @@ export const MemoizedWorkflowItem = memo( onSelect, color, name, + folderPath, isCurrent, }: { value: string onSelect: () => void color: string name: string + folderPath?: string isCurrent?: boolean }) { return ( @@ -73,6 +75,11 @@ export const MemoizedWorkflowItem = memo( {name} {isCurrent && ' (current)'} + {folderPath && ( + + {folderPath} + + )} ) }, @@ -80,6 +87,7 @@ export const MemoizedWorkflowItem = memo( prev.value === next.value && prev.color === next.color && prev.name === next.name && + prev.folderPath === next.folderPath && prev.isCurrent === next.isCurrent ) diff --git a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/search-groups.tsx b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/search-groups.tsx index d8bebbbcb9..4fd1ceaf9c 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/search-groups.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/components/search-groups.tsx @@ -163,10 +163,11 @@ export const WorkflowsGroup = memo(function WorkflowsGroup({ {items.map((workflow) => ( onSelect(workflow)} color={workflow.color} name={workflow.name} + folderPath={workflow.folderPath} isCurrent={workflow.isCurrent} /> ))} diff --git a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/utils.ts b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/utils.ts index ec646f1d03..538d90c1a9 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/utils.ts +++ b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/components/search-modal/utils.ts @@ -11,6 +11,7 @@ export interface WorkflowItem { name: string href: string color: string + folderPath?: string isCurrent?: boolean } diff --git a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/sidebar.tsx b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/sidebar.tsx index aec38cbc1b..5f628c8cfa 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/sidebar.tsx +++ b/apps/sim/app/workspace/[workspaceId]/w/components/sidebar/sidebar.tsx @@ -40,7 +40,7 @@ import { useSession } from '@/lib/auth/auth-client' import { SIM_RESOURCES_DRAG_TYPE } from '@/lib/copilot/resource-types' import { cn } from '@/lib/core/utils/cn' import { isMacPlatform } from '@/lib/core/utils/platform' -import { buildFolderTree } from '@/lib/folders/tree' +import { buildFolderTree, getFolderPath } from '@/lib/folders/tree' import { captureEvent } from '@/lib/posthog/client' import { START_NAV_TOUR_EVENT, @@ -613,14 +613,22 @@ export const Sidebar = memo(function Sidebar() { const searchModalWorkflows = useMemo( () => - regularWorkflows.map((workflow) => ({ - id: workflow.id, - name: workflow.name, - href: `/workspace/${workspaceId}/w/${workflow.id}`, - color: workflow.color, - isCurrent: workflow.id === workflowId, - })), - [regularWorkflows, workspaceId, workflowId] + regularWorkflows.map((workflow) => { + const folderPath = workflow.folderId + ? getFolderPath(folderMap, workflow.folderId) + .map((folder) => folder.name) + .join(' / ') + : '' + return { + id: workflow.id, + name: workflow.name, + href: `/workspace/${workspaceId}/w/${workflow.id}`, + color: workflow.color, + folderPath: folderPath || undefined, + isCurrent: workflow.id === workflowId, + } + }), + [regularWorkflows, folderMap, workspaceId, workflowId] ) const searchModalWorkspaces = useMemo(