summaryrefslogtreecommitdiffhomepage
path: root/packages/app/src/pages
diff options
context:
space:
mode:
authorAlex Yaroshuk <[email protected]>2026-02-01 23:40:33 +0800
committerGitHub <[email protected]>2026-02-01 09:40:33 -0600
commit23c803707d2ee1ac71bbb9420272c45139947382 (patch)
treebf448912d6c0d1e16f9ce2396a731e052c527fe8 /packages/app/src/pages
parentb51005ec4af0dc99e4cdbfb42055581bee584fa4 (diff)
downloadopencode-23c803707d2ee1ac71bbb9420272c45139947382.tar.gz
opencode-23c803707d2ee1ac71bbb9420272c45139947382.zip
fix(app): binary file handling in file view (#11312)
Diffstat (limited to 'packages/app/src/pages')
-rw-r--r--packages/app/src/pages/session.tsx14
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/app/src/pages/session.tsx b/packages/app/src/pages/session.tsx
index b346fa692..d3e74072a 100644
--- a/packages/app/src/pages/session.tsx
+++ b/packages/app/src/pages/session.tsx
@@ -2342,6 +2342,7 @@ export default function Page() {
const c = state()?.content
return c?.mimeType === "image/svg+xml"
})
+ const isBinary = createMemo(() => state()?.content?.type === "binary")
const svgContent = createMemo(() => {
if (!isSvg()) return
const c = state()?.content
@@ -2794,6 +2795,19 @@ export default function Page() {
</Show>
</div>
</Match>
+ <Match when={state()?.loaded && isBinary()}>
+ <div class="h-full px-6 pb-42 flex flex-col items-center justify-center text-center gap-6">
+ <Mark class="w-14 opacity-10" />
+ <div class="flex flex-col gap-2 max-w-md">
+ <div class="text-14-semibold text-text-strong truncate">
+ {path()?.split("/").pop()}
+ </div>
+ <div class="text-14-regular text-text-weak">
+ {language.t("session.files.binaryContent")}
+ </div>
+ </div>
+ </div>
+ </Match>
<Match when={state()?.loaded}>{renderCode(contents(), "pb-40")}</Match>
<Match when={state()?.loading}>
<div class="px-6 py-4 text-text-weak">{language.t("common.loading")}...</div>