agent-orchestrator/ui-electrobun/src/bun/handlers/provider-handlers.ts
Hibryda d4014a193d feat(electrobun): project wizard phases 1-5 (WIP)
- sanitize.ts: input sanitization (trim, control chars, path traversal)
- provider-scanner.ts: detect Claude/Codex/Ollama/Gemini availability
- model-fetcher.ts: live model lists from 4 provider APIs
- ModelConfigPanel.svelte: per-provider config (thinking, effort, sandbox, temperature)
- WizardStep1-3.svelte: split wizard into composable steps
- CustomDropdown/Checkbox/Radio: themed UI components
- provider-handlers.ts: provider.scan + provider.models RPC
- Wire providers into wizard step 3 (live detection + model lists)
- Replace native selects in 5 settings panels with CustomDropdown
2026-03-23 13:05:07 +01:00

30 lines
786 B
TypeScript

/**
* Provider RPC handlers — scanning + model fetching.
*/
import { scanAllProviders } from '../provider-scanner.ts';
import { fetchModelsForProvider } from '../model-fetcher.ts';
export function createProviderHandlers() {
return {
'provider.scan': async () => {
try {
const providers = await scanAllProviders();
return { providers };
} catch (err) {
console.error('[provider.scan]', err);
return { providers: [] };
}
},
'provider.models': async ({ provider }: { provider: string }) => {
try {
const models = await fetchModelsForProvider(provider);
return { models };
} catch (err) {
console.error('[provider.models]', err);
return { models: [] };
}
},
};
}