summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJay V <[email protected]>2025-06-27 13:25:15 -0400
committerJay V <[email protected]>2025-06-27 13:25:15 -0400
commit391c837b37de57cb182cbfadda143299b02e4472 (patch)
tree5d79c9ab600f1e797dbe6c04369fb3ac35178e48
parent5773d9d1a3fc32eb857c245a23cde51e7a6b7690 (diff)
downloadopencode-391c837b37de57cb182cbfadda143299b02e4472.tar.gz
opencode-391c837b37de57cb182cbfadda143299b02e4472.zip
docs: share page write tool bug
-rw-r--r--packages/web/src/components/Share.tsx14
-rw-r--r--packages/web/src/types/lang-map.d.ts27
2 files changed, 34 insertions, 7 deletions
diff --git a/packages/web/src/components/Share.tsx b/packages/web/src/components/Share.tsx
index a61852d9b..0e58312cd 100644
--- a/packages/web/src/components/Share.tsx
+++ b/packages/web/src/components/Share.tsx
@@ -84,7 +84,7 @@ function scrollToAnchor(id: string) {
el.scrollIntoView({ behavior: "smooth" })
}
-function stripWorkingDirectory(filePath: string, workingDir?: string) {
+function stripWorkingDirectory(filePath?: string, workingDir?: string) {
if (filePath === undefined || workingDir === undefined) return filePath
const prefix = workingDir.endsWith("/") ? workingDir : workingDir + "/"
@@ -1228,9 +1228,9 @@ export default function Share(props: {
const path = createMemo(() =>
toolData()?.args.path !== data().rootDir
? stripWorkingDirectory(
- toolData()?.args.path,
- data().rootDir,
- )
+ toolData()?.args.path,
+ data().rootDir,
+ )
: toolData()?.args.path,
)
@@ -1391,7 +1391,7 @@ export default function Share(props: {
{(_part) => {
const filePath = createMemo(() =>
stripWorkingDirectory(
- toolData()?.args.filePath,
+ toolData()?.args?.filePath,
data().rootDir,
),
)
@@ -1430,7 +1430,7 @@ export default function Share(props: {
<div data-part-tool-result>
<ErrorPart>
{formatErrorString(
- toolData()?.result,
+ toolData()?.result
)}
</ErrorPart>
</div>
@@ -1449,7 +1449,7 @@ export default function Share(props: {
<div data-part-tool-code>
<CodeBlock
lang={getShikiLang(filePath())}
- code={args.content}
+ code={toolData()?.args?.content}
/>
</div>
</Show>
diff --git a/packages/web/src/types/lang-map.d.ts b/packages/web/src/types/lang-map.d.ts
index e69de29bb..b21d2a005 100644
--- a/packages/web/src/types/lang-map.d.ts
+++ b/packages/web/src/types/lang-map.d.ts
@@ -0,0 +1,27 @@
+declare module "lang-map" {
+ /** Returned by calling `map()` */
+ export interface MapReturn {
+ /** All extensions keyed by language name */
+ extensions: Record<string, string[]>;
+ /** All languages keyed by file-extension */
+ languages: Record<string, string[]>;
+ }
+
+ /**
+ * Calling `map()` gives you the raw lookup tables:
+ *
+ * ```js
+ * const { extensions, languages } = map();
+ * ```
+ */
+ function map(): MapReturn;
+
+ /** Static method: get extensions for a given language */
+ namespace map {
+ function extensions(language: string): string[];
+ /** Static method: get languages for a given extension */
+ function languages(extension: string): string[];
+ }
+
+ export = map;
+}