diff options
| author | Adam <[email protected]> | 2025-09-24 15:49:40 -0500 |
|---|---|---|
| committer | Adam <[email protected]> | 2025-09-24 15:49:40 -0500 |
| commit | 3b20bf6d4f744e63faa8b798ca911a93338dc4f3 (patch) | |
| tree | ac5970c9886ca3f4ac5249426e6c29e57e705528 | |
| parent | c3e52580b000d9f8e51a6768226d99e113164bbd (diff) | |
| download | opencode-3b20bf6d4f744e63faa8b798ca911a93338dc4f3.tar.gz opencode-3b20bf6d4f744e63faa8b798ca911a93338dc4f3.zip | |
fix(app): changes view
| -rw-r--r-- | packages/app/src/context/local.tsx | 5 | ||||
| -rw-r--r-- | packages/app/src/pages/index.tsx | 9 |
2 files changed, 9 insertions, 5 deletions
diff --git a/packages/app/src/context/local.tsx b/packages/app/src/context/local.tsx index 804bb0674..b512ef470 100644 --- a/packages/app/src/context/local.tsx +++ b/packages/app/src/context/local.tsx @@ -124,11 +124,12 @@ function init() { return store.node[store.active] }) const opened = createMemo(() => store.opened.map((x) => store.node[x])) - const changes = createMemo(() => new Set(sync.data.changes.map((f) => f.path))) + const changeset = createMemo(() => new Set(sync.data.changes.map((f) => f.path))) + const changes = createMemo(() => Array.from(changeset()).sort((a, b) => a.localeCompare(b))) const status = (path: string) => sync.data.changes.find((f) => f.path === path) const changed = (path: string) => { - const set = changes() + const set = changeset() if (set.has(path)) return true for (const p of set) { if (p.startsWith(path ? path + "/" : "")) return true diff --git a/packages/app/src/pages/index.tsx b/packages/app/src/pages/index.tsx index 8cb560d8d..6890522e8 100644 --- a/packages/app/src/pages/index.tsx +++ b/packages/app/src/pages/index.tsx @@ -259,9 +259,12 @@ export default function Page() { <FileTree path="" onFileClick={handleFileClick} /> </Tabs.Content> <Tabs.Content value="changes" class="grow min-h-0 py-2 bg-background"> - <div class="text-xs text-text-muted"> + <Show + when={local.file.changes().length} + fallback={<div class="px-2 text-xs text-text-muted">No changes yet</div>} + > <ul class=""> - <For each={[...local.file.changes()]}> + <For each={local.file.changes()}> {(path) => ( <li> <button @@ -278,7 +281,7 @@ export default function Page() { )} </For> </ul> - </div> + </Show> </Tabs.Content> </Tabs> </div> |
