summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAlex Yaroshuk <[email protected]>2026-01-28 07:26:15 +0800
committerGitHub <[email protected]>2026-01-27 17:26:15 -0600
commit15ffd3cba1d3bd7d4d84c6911623a9c1d19e6647 (patch)
tree27f85ab00bfbea7576caaf57c64e7c49592aafad
parentdf7f9ae3f41a70eac865451942c1410f6c4281d8 (diff)
downloadopencode-15ffd3cba1d3bd7d4d84c6911623a9c1d19e6647.tar.gz
opencode-15ffd3cba1d3bd7d4d84c6911623a9c1d19e6647.zip
feat(app): add 'connect provider' button to the manage models dialog (#10887)
-rw-r--r--packages/app/src/components/dialog-manage-models.tsx19
1 files changed, 18 insertions, 1 deletions
diff --git a/packages/app/src/components/dialog-manage-models.tsx b/packages/app/src/components/dialog-manage-models.tsx
index 1ecefa2cb..9ee48736c 100644
--- a/packages/app/src/components/dialog-manage-models.tsx
+++ b/packages/app/src/components/dialog-manage-models.tsx
@@ -1,16 +1,33 @@
import { Dialog } from "@opencode-ai/ui/dialog"
import { List } from "@opencode-ai/ui/list"
import { Switch } from "@opencode-ai/ui/switch"
+import { Button } from "@opencode-ai/ui/button"
import type { Component } from "solid-js"
import { useLocal } from "@/context/local"
import { popularProviders } from "@/hooks/use-providers"
import { useLanguage } from "@/context/language"
+import { useDialog } from "@opencode-ai/ui/context/dialog"
+import { DialogSelectProvider } from "./dialog-select-provider"
export const DialogManageModels: Component = () => {
const local = useLocal()
const language = useLanguage()
+ const dialog = useDialog()
+
+ const handleConnectProvider = () => {
+ dialog.show(() => <DialogSelectProvider />)
+ }
+
return (
- <Dialog title={language.t("dialog.model.manage")} description={language.t("dialog.model.manage.description")}>
+ <Dialog
+ title={language.t("dialog.model.manage")}
+ description={language.t("dialog.model.manage.description")}
+ action={
+ <Button class="h-7 -my-1 text-14-medium" icon="plus-small" tabIndex={-1} onClick={handleConnectProvider}>
+ {language.t("command.provider.connect")}
+ </Button>
+ }
+ >
<List
search={{ placeholder: language.t("dialog.model.search.placeholder"), autofocus: true }}
emptyMessage={language.t("dialog.model.empty")}