Browse Source

Fix for #7229 Fix/project sidebar folder name (#7232)

AJ Ka 1 month ago
parent
commit
faa848cfb1

+ 1 - 5
packages/app/src/components/dialog-edit-project.tsx

@@ -7,15 +7,11 @@ import { createMemo, createSignal, For, Show } from "solid-js"
 import { createStore } from "solid-js/store"
 import { useGlobalSDK } from "@/context/global-sdk"
 import { type LocalProject, getAvatarColors } from "@/context/layout"
+import { getFilename } from "@opencode-ai/util/path"
 import { Avatar } from "@opencode-ai/ui/avatar"
 
 const AVATAR_COLOR_KEYS = ["pink", "mint", "orange", "purple", "cyan", "lime"] as const
 
-function getFilename(input: string) {
-  const parts = input.split("/")
-  return parts[parts.length - 1] || input
-}
-
 export function DialogEditProject(props: { project: LocalProject }) {
   const dialog = useDialog()
   const globalSDK = useGlobalSDK()

+ 1 - 1
packages/app/src/pages/layout.tsx

@@ -875,7 +875,7 @@ export default function Layout(props: ParentProps) {
             </Collapsible>
           </Match>
           <Match when={true}>
-            <Tooltip placement="right" value={props.project.worktree}>
+            <Tooltip placement="right" value={getFilename(props.project.worktree)}>
               <ProjectVisual project={props.project} />
             </Tooltip>
           </Match>

+ 2 - 2
packages/util/src/path.ts

@@ -1,7 +1,7 @@
 export function getFilename(path: string | undefined) {
   if (!path) return ""
-  const trimmed = path.replace(/[\/]+$/, "")
-  const parts = trimmed.split("/")
+  const trimmed = path.replace(/[\/\\]+$/, "")
+  const parts = trimmed.split(/[\/\\]/)
   return parts[parts.length - 1] ?? ""
 }