diff --git a/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-file-tree.tsx b/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-file-tree.tsx
index 2d4fbf6025..f95a06ec0a 100644
--- a/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-file-tree.tsx
+++ b/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-file-tree.tsx
@@ -82,12 +82,12 @@ export function DiffViewerFileTree(props: DiffViewerFileTreeProps) {
Math.max(1, props.width - FILE_TREE_HORIZONTAL_PADDING - prefix().length - status().length),
)
return (
-
-
+
+
{prefix()}
@@ -108,7 +108,11 @@ export function DiffViewerFileTree(props: DiffViewerFileTreeProps) {
{name()}
-
+
{status()}
diff --git a/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-ui.tsx b/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-ui.tsx
index f56e8aaead..f106bd7e22 100644
--- a/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-ui.tsx
+++ b/packages/opencode/src/cli/cmd/tui/feature-plugins/system/diff-viewer-ui.tsx
@@ -33,12 +33,13 @@ export function Panel(props: Omit & { bo
const { theme } = useTheme()
const [local, boxProps] = splitProps(props, ["border"])
const border = local.border ?? "start"
- const borderProps = border === "none"
- ? {}
- : {
- border: panelBorderSides(group?.axis ?? "y", border),
- borderColor: theme.border,
- }
+ const borderProps =
+ border === "none"
+ ? {}
+ : {
+ border: panelBorderSides(group?.axis ?? "y", border),
+ borderColor: theme.border,
+ }
return (
{
test("moves collapsed chain selection to first visible child", () => {
const rows = flattenFileTree(
- buildFileTree([
- { file: "packages/opencode/src/cli/app.ts" },
- { file: "packages/opencode/src/server/server.ts" },
- ]),
+ buildFileTree([{ file: "packages/opencode/src/cli/app.ts" }, { file: "packages/opencode/src/server/server.ts" }]),
)
const packages = rows.find((row) => row.kind === "directory" && row.name === "packages/opencode/src")!
const cli = rows.find((row) => row.kind === "directory" && row.name === "cli")!
@@ -205,10 +202,7 @@ describe("diff viewer file tree utilities", () => {
test("moves file and collapsed directory selection to visible parent", () => {
const rows = flattenFileTree(
- buildFileTree([
- { file: "packages/opencode/src/cli/app.ts" },
- { file: "packages/opencode/src/server/server.ts" },
- ]),
+ buildFileTree([{ file: "packages/opencode/src/cli/app.ts" }, { file: "packages/opencode/src/server/server.ts" }]),
)
const root = rows.find((row) => row.kind === "directory" && row.name === "packages/opencode/src")!
const cli = rows.find((row) => row.kind === "directory" && row.name === "cli")!
diff --git a/packages/opencode/test/cli/tui/diff-viewer-file-tree.test.tsx b/packages/opencode/test/cli/tui/diff-viewer-file-tree.test.tsx
index 0edf2edf3e..4e86a74053 100644
--- a/packages/opencode/test/cli/tui/diff-viewer-file-tree.test.tsx
+++ b/packages/opencode/test/cli/tui/diff-viewer-file-tree.test.tsx
@@ -28,8 +28,8 @@ const theme = {
describe("DiffViewerFileTree", () => {
test("renders sorted hierarchical file rows", async () => {
const app = await testRender(
- () => withTheme(
- () => (
+ () =>
+ withTheme(() => (
{
theme={theme}
focused={true}
/>
- ),
- ),
+ )),
{ width: 40, height: 20 },
)
@@ -67,11 +66,15 @@ describe("DiffViewerFileTree", () => {
})
test("keeps loading and error quiet while rendering an empty settled state", async () => {
- const loading = await renderFrame(() => )
+ const loading = await renderFrame(() => (
+
+ ))
const failed = await renderFrame(() => (
))
- const empty = await renderFrame(() => )
+ const empty = await renderFrame(() => (
+
+ ))
expect(loading).not.toContain("Loading diff...")
expect(loading).not.toContain("No files")
@@ -86,11 +89,21 @@ describe("DiffViewerFileTree", () => {
const focused = visibleLines(
await renderFrame(() => (
-
+
)),
)
const unfocused = visibleLines(
- await renderFrame(() => ),
+ await renderFrame(() => (
+
+ )),
)
expect(focused).toContain("▾ src/config")
@@ -109,7 +122,14 @@ describe("DiffViewerFileTree", () => {
expect(
visibleLines(
await renderFrame(() => (
-
+
)),
),
).toEqual(["▸ src/config"])