From 988f713b03b0ea25cb5efa6e7949cfc5290bc21e Mon Sep 17 00:00:00 2001 From: deep1401 <gandhi0869@gmail.com> Date: Mon, 10 Feb 2025 10:47:24 -0800 Subject: [PATCH] Fix default enum issues in a plugin form --- .../components/Experiment/DynamicPluginForm.tsx | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/renderer/components/Experiment/DynamicPluginForm.tsx b/src/renderer/components/Experiment/DynamicPluginForm.tsx index a57d8cd0..3c60a8ad 100644 --- a/src/renderer/components/Experiment/DynamicPluginForm.tsx +++ b/src/renderer/components/Experiment/DynamicPluginForm.tsx @@ -458,16 +458,18 @@ export default function DynamicPluginForm({ parsedData.parameters && key in parsedData.parameters ) { + if (parsedData.parameters[key].enum) { + // Set the enum array such that config[key] is the first element + const enumArray = parsedData.parameters[key].enum; + let index = enumArray.indexOf(config[key]); + if (index > 0) { + enumArray.unshift(enumArray.splice(index, 1)[0]); + } + parsedData.parameters[key].enum = enumArray; parsedData.parameters[key].default = config[key]; } + } }); - // if (parsedData.type === 'generator' || parsedData.type === 'evaluator') { - // Object.keys(parsedData.parameters).forEach((key) => { - // if (!(key in config)) { - // delete parsedData.parameters[key]; - // } - // }); - // } // Delete all keys in parsedData.parameters that start with tflabcustomui_ Object.keys(parsedData.parameters).forEach((key) => { if (key.startsWith('tflabcustomui_')) { @@ -483,6 +485,7 @@ export default function DynamicPluginForm({ }, [plugin, experimentInfo, config, data]); const schema = useMemo(() => getSchema(configData), [configData]); + console.log("SCHEMA", schema); /* Below we wait for "configData" to be sure that defaults are set before rendering if we don't do this, then the form is rendered twice and Select elements will not honour the second settings for default Value */ -- GitLab