polysignal_hackaton / backend /src /preferences /preferences.store.js
Cifo_Administrador
Cambios en UI, opcion de cambiar de proveedor de IA
737a6e6
Raw
History Blame Contribute Delete
800 Bytes
const defaults = {
mode: 'auto', // 'auto' | 'external' | 'local' | 'custom'
provider: 'deepseek', // for external: 'deepseek' | 'openrouter' | 'huggingface'
apiKey: '',
endpoint: 'http://localhost:11434',
model: 'qwen3:8b',
};
let _prefs = { ...defaults };
export function getPrefs() {
return { ..._prefs };
}
export function setPrefs(updates) {
const allowed = ['mode', 'provider', 'apiKey', 'endpoint', 'model'];
for (const key of allowed) {
if (key in updates && updates[key] != null) {
_prefs[key] = String(updates[key]);
}
}
if (!['auto', 'external', 'local', 'custom'].includes(_prefs.mode)) _prefs.mode = 'auto';
if (!['deepseek', 'openrouter', 'huggingface'].includes(_prefs.provider)) _prefs.provider = 'deepseek';
return { ..._prefs };
}