opencode/packages/storybook/.storybook/mocks/app/context/server-sync.ts
usrnk1 f7d5a1cbc7
feat(desktop): align provider onboarding dialogs (#36733)
Co-authored-by: Brendan Allan <git@brendonovich.dev>
2026-07-17 16:54:20 +08:00

33 lines
796 B
TypeScript

import type { ProviderAuthMethod } from "@opencode-ai/sdk/v2/client"
const data = {
provider: {
all: new Map(),
connected: [],
default: {},
},
provider_auth: {} as Record<string, ProviderAuthMethod[]>,
config: { disabled_providers: [] as string[] },
}
export function mockProviderAuth(provider: string, methods: ProviderAuthMethod[]) {
const previous = data.provider_auth[provider]
data.provider_auth[provider] = methods
return () => {
if (previous) {
data.provider_auth[provider] = previous
return
}
delete data.provider_auth[provider]
}
}
export function useServerSync() {
return () => ({
data,
set(key: "provider_auth", value: typeof data.provider_auth) {
data[key] = value
},
updateConfig: async () => {},
})
}