UNPKG

@graphteon/juricode

Version:

We are forging the future with lines of digital steel

64 lines 2.3 kB
const extractBasicFormData = (formData) => { const provider = formData.get("llm-provider-input")?.toString(); const model = formData.get("llm-model-input")?.toString(); const LLM_MODEL = `${provider}/${model}`.toLowerCase(); const LLM_API_KEY = formData.get("llm-api-key-input")?.toString(); const AGENT = formData.get("agent")?.toString(); const LANGUAGE = formData.get("language")?.toString(); return { LLM_MODEL, LLM_API_KEY, AGENT, LANGUAGE, }; }; const extractAdvancedFormData = (formData) => { const keys = Array.from(formData.keys()); const isUsingAdvancedOptions = keys.includes("use-advanced-options"); let CUSTOM_LLM_MODEL; let LLM_BASE_URL; let CONFIRMATION_MODE = false; let SECURITY_ANALYZER; let ENABLE_DEFAULT_CONDENSER = true; if (isUsingAdvancedOptions) { CUSTOM_LLM_MODEL = formData.get("custom-model")?.toString(); LLM_BASE_URL = formData.get("base-url")?.toString(); CONFIRMATION_MODE = keys.includes("confirmation-mode"); if (CONFIRMATION_MODE) { SECURITY_ANALYZER = formData.get("security-analyzer")?.toString(); } ENABLE_DEFAULT_CONDENSER = keys.includes("enable-default-condenser"); } return { CUSTOM_LLM_MODEL, LLM_BASE_URL, CONFIRMATION_MODE, SECURITY_ANALYZER, ENABLE_DEFAULT_CONDENSER, }; }; export const parseMaxBudgetPerTask = (value) => { if (!value) { return null; } const parsedValue = parseFloat(value); return parsedValue && parsedValue >= 1 && Number.isFinite(parsedValue) ? parsedValue : null; }; export const extractSettings = (formData) => { const { LLM_MODEL, LLM_API_KEY, AGENT, LANGUAGE } = extractBasicFormData(formData); const { CUSTOM_LLM_MODEL, LLM_BASE_URL, CONFIRMATION_MODE, SECURITY_ANALYZER, ENABLE_DEFAULT_CONDENSER, } = extractAdvancedFormData(formData); return { LLM_MODEL: CUSTOM_LLM_MODEL || LLM_MODEL, LLM_API_KEY_SET: !!LLM_API_KEY, AGENT, LANGUAGE, LLM_BASE_URL, CONFIRMATION_MODE, SECURITY_ANALYZER, ENABLE_DEFAULT_CONDENSER, llm_api_key: LLM_API_KEY, }; }; //# sourceMappingURL=settings-utils.js.map