diff options
| author | Adam <[email protected]> | 2026-02-26 15:23:20 -0600 |
|---|---|---|
| committer | Adam <[email protected]> | 2026-02-26 15:23:26 -0600 |
| commit | 7e6a007c351fa86a3a38973489b47d79ea32c877 (patch) | |
| tree | 545b34f6fb77eaf7928339c89525b310fc769783 /packages/app/src/components | |
| parent | 5745ee87ba9847e32c07fd364c52a6fad23bb55e (diff) | |
| download | opencode-7e6a007c351fa86a3a38973489b47d79ea32c877.tar.gz opencode-7e6a007c351fa86a3a38973489b47d79ea32c877.zip | |
feat(app): auto-accept all permissions mode
Diffstat (limited to 'packages/app/src/components')
| -rw-r--r-- | packages/app/src/components/prompt-input.tsx | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/packages/app/src/components/prompt-input.tsx b/packages/app/src/components/prompt-input.tsx index adfd592f8..9174133ac 100644 --- a/packages/app/src/components/prompt-input.tsx +++ b/packages/app/src/components/prompt-input.tsx @@ -1048,6 +1048,11 @@ export const PromptInput: Component<PromptInputProps> = (props) => { } const variants = createMemo(() => ["default", ...local.model.variant.list()]) + const accepting = createMemo(() => { + const id = params.id + if (!id) return false + return permission.isAutoAccepting(id, sdk.directory) + }) return ( <div class="relative size-full _max-h-[320px] flex flex-col gap-0"> @@ -1233,7 +1238,9 @@ export const PromptInput: Component<PromptInputProps> = (props) => { <TooltipKeybind placement="top" gutter={8} - title={language.t("command.permissions.autoaccept.enable")} + title={language.t( + accepting() ? "command.permissions.autoaccept.disable" : "command.permissions.autoaccept.enable", + )} keybind={command.keybind("permissions.autoaccept")} > <Button @@ -1242,20 +1249,20 @@ export const PromptInput: Component<PromptInputProps> = (props) => { onClick={() => permission.toggleAutoAccept(params.id!, sdk.directory)} classList={{ "_hidden group-hover/prompt-input:flex size-6 items-center justify-center": true, - "text-text-base": !permission.isAutoAccepting(params.id!, sdk.directory), - "hover:bg-surface-success-base": permission.isAutoAccepting(params.id!, sdk.directory), + "text-text-base": !accepting(), + "hover:bg-surface-success-base": accepting(), }} aria-label={ - permission.isAutoAccepting(params.id!, sdk.directory) + accepting() ? language.t("command.permissions.autoaccept.disable") : language.t("command.permissions.autoaccept.enable") } - aria-pressed={permission.isAutoAccepting(params.id!, sdk.directory)} + aria-pressed={accepting()} > <Icon name="chevron-double-right" size="small" - classList={{ "text-icon-success-base": permission.isAutoAccepting(params.id!, sdk.directory) }} + classList={{ "text-icon-success-base": accepting() }} /> </Button> </TooltipKeybind> |
