summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/pages/layout
diff options
context:
space:
mode:
authorBrendan Allan <[email protected]>2026-04-22 17:09:00 +0800
committerAiden Cline <[email protected]>2026-04-23 00:25:37 -0400
commitd884ab73d5516d301a740b2bdea174f6b485d6dc (patch)
tree948ff240c9ffb99919d8c3be1c7c48d8091f4da1 /packages/app/src/pages/layout
parent71d196d3cd06d0efef7a319f43955c7cefc36e09 (diff)
downloadopencode-d884ab73d5516d301a740b2bdea174f6b485d6dc.tar.gz
opencode-d884ab73d5516d301a740b2bdea174f6b485d6dc.zip
fix: consolidate project avatar source logic (#23819)
Diffstat (limited to 'packages/app/src/pages/layout')
-rw-r--r--packages/app/src/pages/layout/sidebar-items.tsx16
1 files changed, 9 insertions, 7 deletions
diff --git a/packages/app/src/pages/layout/sidebar-items.tsx b/packages/app/src/pages/layout/sidebar-items.tsx
index 88d50db3e..5170311a7 100644
--- a/packages/app/src/pages/layout/sidebar-items.tsx
+++ b/packages/app/src/pages/layout/sidebar-items.tsx
@@ -19,6 +19,14 @@ import { childSessionOnPath, hasProjectPermissions } from "./helpers"
const OPENCODE_PROJECT_ID = "4b0ea68d7af9a6031a7ffda7ad66e0cb83315750"
+export function getProjectAvatarSource(id?: string, icon?: { color?: string; url?: string; override?: string }) {
+ return id === OPENCODE_PROJECT_ID
+ ? "https://opencode.ai/favicon.svg"
+ : icon?.color
+ ? undefined
+ : icon?.override || icon?.url
+}
+
export const ProjectIcon = (props: { project: LocalProject; class?: string; notify?: boolean }): JSX.Element => {
const globalSync = useGlobalSync()
const notification = useNotification()
@@ -42,13 +50,7 @@ export const ProjectIcon = (props: { project: LocalProject; class?: string; noti
<div class="size-full rounded overflow-clip">
<Avatar
fallback={name()}
- src={
- props.project.id === OPENCODE_PROJECT_ID
- ? "https://opencode.ai/favicon.svg"
- : props.project.icon?.color
- ? undefined
- : props.project.icon?.override || props.project.icon?.url
- }
+ src={getProjectAvatarSource(props.project.id, props.project.icon)}
{...getAvatarColors(props.project.icon?.color)}
class="size-full rounded"
classList={{ "badge-mask": notify() }}