diff --git a/packages/ui/src/components/sections/providers/ProvidersPage.tsx b/packages/ui/src/components/sections/providers/ProvidersPage.tsx index 3a4935dd..44f228ae 100644 --- a/packages/ui/src/components/sections/providers/ProvidersPage.tsx +++ b/packages/ui/src/components/sections/providers/ProvidersPage.tsx @@ -19,8 +19,10 @@ import { import { toast } from '@/components/ui'; import { Icon } from "@/components/icon/Icon"; import type { IconName } from "@/components/icon/icons"; +import { reloadOpenCodeConfiguration } from '@/stores/useAgentsStore'; import { noteDeferredRestartFromPayload, recordDeferredOpenCodeRestart } from '@/lib/opencode/deferredRestart'; import { cn } from '@/lib/utils'; +import { copyTextToClipboard } from '@/lib/clipboard'; import type { ModelMetadata } from '@/types'; import { getCurrentIntlLocale, useI18n } from '@/lib/i18n'; import { runtimeFetch } from '@/lib/runtime-fetch'; @@ -164,6 +166,8 @@ export const ProvidersPage: React.FC = () => { const [authMethodsByProvider, setAuthMethodsByProvider] = React.useState>({}); const [authLoading, setAuthLoading] = React.useState(false); const [apiKeyInputs, setApiKeyInputs] = React.useState>({}); + const [oauthCodes, setOauthCodes] = React.useState>({}); + const [pendingOAuth, setPendingOAuth] = React.useState<{ providerId: string; methodIndex: number } | null>(null); const [authBusyKey, setAuthBusyKey] = React.useState(null); const [modelQuery, setModelQuery] = React.useState(''); const [availableProviders, setAvailableProviders] = React.useState([]); @@ -577,7 +581,6 @@ export const ProvidersPage: React.FC = () => { } console.error('Failed to copy device code:', result.error); toast.error(t('settings.providers.page.toast.deviceCodeCopyFailed')); ->>>>>>> e7ca14b2b (fix(providers): refresh credentials after auth save) }; const handleDisconnectProvider = async (providerId: string) => {