diff --git a/src/lib/components/chat/Controls/Valves.svelte b/src/lib/components/chat/Controls/Valves.svelte
index 880b55b298..898df9f4ee 100644
--- a/src/lib/components/chat/Controls/Valves.svelte
+++ b/src/lib/components/chat/Controls/Valves.svelte
@@ -62,6 +62,9 @@
// Convert array to string
for (const property in valvesSpec.properties) {
if (valvesSpec.properties[property]?.type === 'array') {
+ if (valvesSpec.properties[property]?.input?.type === 'multiselect') {
+ continue;
+ }
valves[property] = (valves[property] ?? []).join(',');
}
}
@@ -75,6 +78,9 @@
// Convert string to array
for (const property in valvesSpec.properties) {
if (valvesSpec.properties[property]?.type === 'array') {
+ if (valvesSpec.properties[property]?.input?.type === 'multiselect') {
+ continue;
+ }
valves[property] = (valves[property] ?? '').split(',').map((v) => v.trim());
}
}
diff --git a/src/lib/components/common/MultiSelect.svelte b/src/lib/components/common/MultiSelect.svelte
new file mode 100644
index 0000000000..e81199d821
--- /dev/null
+++ b/src/lib/components/common/MultiSelect.svelte
@@ -0,0 +1,153 @@
+
+
+