From a75df5ad8d343519532c0ce91dc86dab3f064265 Mon Sep 17 00:00:00 2001 From: Jaayden Halko Date: Thu, 17 Apr 2025 15:52:26 +0000 Subject: [PATCH] feat: add slider to dynamic parameters --- site/src/components/Checkbox/Checkbox.tsx | 6 ++--- .../DynamicParameter/DynamicParameter.tsx | 25 ++++++++++++++++++- 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/site/src/components/Checkbox/Checkbox.tsx b/site/src/components/Checkbox/Checkbox.tsx index 6bc1338955122..1278fb12ea899 100644 --- a/site/src/components/Checkbox/Checkbox.tsx +++ b/site/src/components/Checkbox/Checkbox.tsx @@ -18,7 +18,7 @@ export const Checkbox = React.forwardRef<
{(props.checked === true || props.defaultChecked === true) && ( - + )} {props.checked === "indeterminate" && ( - + )}
diff --git a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx index e1e79bdcd7a06..223c541bcfe9b 100644 --- a/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx +++ b/site/src/modules/workspaces/DynamicParameter/DynamicParameter.tsx @@ -22,6 +22,7 @@ import { SelectTrigger, SelectValue, } from "components/Select/Select"; +import { Slider } from "components/Slider/Slider"; import { Switch } from "components/Switch/Switch"; import { Tooltip, @@ -91,7 +92,7 @@ const ParameterLabel: FC = ({ parameter, isPreset }) => { )} -
+
{hasDescription && ( @@ -278,6 +284,23 @@ const ParameterField: FC = ({
); + + case "slider": + return ( + onChange(value.toString())} + min={parameter.validations[0]?.validation_min ?? 0} + max={parameter.validations[0]?.validation_max ?? 100} + disabled={disabled} + /> + ); + case "input": { const inputType = parameter.type === "number" ? "number" : "text"; const inputProps: Record = {};