summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/pages
diff options
context:
space:
mode:
authorDavid Hill <[email protected]>2026-01-27 14:42:52 +0000
committerDavid Hill <[email protected]>2026-01-27 20:13:52 +0000
commit82068955f7dae6f1837cb7d56e71ed42407fd54b (patch)
tree0e662420f2a08d62aeb2dae0785b687dfd8b6522 /packages/app/src/pages
parentdf8b23db9ed6b06d126c69de157fe997dacacb05 (diff)
downloadopencode-82068955f7dae6f1837cb7d56e71ed42407fd54b.tar.gz
opencode-82068955f7dae6f1837cb7d56e71ed42407fd54b.zip
feat(app): color filetree change dots by diff kind
Diffstat (limited to 'packages/app/src/pages')
-rw-r--r--packages/app/src/pages/session.tsx12
1 files changed, 12 insertions, 0 deletions
diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx
index 04f34b2a9..d16719d84 100644
--- a/packages/app/src/pages/session.tsx
+++ b/packages/app/src/pages/session.tsx
@@ -479,6 +479,16 @@ export default function Page() {
scrollToMessage(msgs[targetIndex], "auto")
}
+ const kinds = createMemo(() => {
+ const out = new Map<string, "add" | "del" | "mix">()
+ for (const diff of diffs()) {
+ const add = diff.additions > 0
+ const del = diff.deletions > 0
+ const kind = add && del ? "mix" : add ? "add" : del ? "del" : "mix"
+ out.set(diff.file, kind)
+ }
+ return out
+ })
const emptyDiffFiles: string[] = []
const diffFiles = createMemo(() => diffs().map((d) => d.file), emptyDiffFiles, { equals: same })
const diffsReady = createMemo(() => {
@@ -2652,6 +2662,7 @@ export default function Page() {
<FileTree
path=""
allowed={diffFiles()}
+ kinds={kinds()}
draggable={false}
tooltip={false}
onFileClick={(node) => focusReviewDiff(node.path)}
@@ -2669,6 +2680,7 @@ export default function Page() {
<FileTree
path=""
modified={diffFiles()}
+ kinds={kinds()}
tooltip={false}
onFileClick={(node) => openTab(file.tab(node.path))}
/>