summaryrefslogtreecommitdiffhomepage
path: root/packages/ui/src/components/basic-tool.tsx
diff options
context:
space:
mode:
authorDaniel Polito <[email protected]>2026-01-13 15:28:08 -0300
committerGitHub <[email protected]>2026-01-13 12:28:08 -0600
commit3600bd27f481c461734e517a40e01cd4e899e10f (patch)
treee8d1a426a81ff04a4dfc2fb88ab925e4977bd936 /packages/ui/src/components/basic-tool.tsx
parent92089bb295ffc62e681baf5c93336e97a052b26e (diff)
downloadopencode-3600bd27f481c461734e517a40e01cd4e899e10f.tar.gz
opencode-3600bd27f481c461734e517a40e01cd4e899e10f.zip
feat(desktop): Ask Question Tool Support (#8232)
Diffstat (limited to 'packages/ui/src/components/basic-tool.tsx')
-rw-r--r--packages/ui/src/components/basic-tool.tsx10
1 files changed, 8 insertions, 2 deletions
diff --git a/packages/ui/src/components/basic-tool.tsx b/packages/ui/src/components/basic-tool.tsx
index 15b5d4867..725a7d0d6 100644
--- a/packages/ui/src/components/basic-tool.tsx
+++ b/packages/ui/src/components/basic-tool.tsx
@@ -25,6 +25,7 @@ export interface BasicToolProps {
hideDetails?: boolean
defaultOpen?: boolean
forceOpen?: boolean
+ locked?: boolean
onSubtitleClick?: () => void
}
@@ -35,8 +36,13 @@ export function BasicTool(props: BasicToolProps) {
if (props.forceOpen) setOpen(true)
})
+ const handleOpenChange = (value: boolean) => {
+ if (props.locked && !value) return
+ setOpen(value)
+ }
+
return (
- <Collapsible open={open()} onOpenChange={setOpen}>
+ <Collapsible open={open()} onOpenChange={handleOpenChange}>
<Collapsible.Trigger>
<div data-component="tool-trigger">
<div data-slot="basic-tool-tool-trigger-content">
@@ -95,7 +101,7 @@ export function BasicTool(props: BasicToolProps) {
</Switch>
</div>
</div>
- <Show when={props.children && !props.hideDetails}>
+ <Show when={props.children && !props.hideDetails && !props.locked}>
<Collapsible.Arrow />
</Show>
</div>