diff --git a/frontend/src/components/GenericComponent.tsx b/frontend/src/components/GenericComponent.tsx index 49f5543..67e442e 100644 --- a/frontend/src/components/GenericComponent.tsx +++ b/frontend/src/components/GenericComponent.tsx @@ -48,6 +48,13 @@ const createDisplayNameFromAccessPath = (fullAccessPath: string): string => { return getPathFromPathParts(displayNameParts); }; +function changeCallback( + value: SerializedObject, + callback: (ack: unknown) => void = () => {}, +) { + updateValue(value, callback); +} + export const GenericComponent = React.memo( ({ attribute, isInstantUpdate, addNotification }: GenericComponentProps) => { const { full_access_path: fullAccessPath } = attribute; @@ -65,13 +72,6 @@ export const GenericComponent = React.memo( } } - function changeCallback( - value: SerializedObject, - callback: (ack: unknown) => void = () => {}, - ) { - updateValue(value, callback); - } - if (attribute.type === "bool") { return ( { + let numberMagnitude = 0; + let numberUnit: string | undefined = undefined; + const numberReadOnly = numberDict.readonly; + + if (numberDict.type === "int" || numberDict.type === "float") { + numberMagnitude = numberDict.value; + } else if (numberDict.type === "Quantity") { + numberMagnitude = numberDict.value.magnitude; + numberUnit = numberDict.value.unit; + } + + return [numberMagnitude, numberReadOnly, numberUnit]; +}; + export const SliderComponent = React.memo((props: SliderComponentProps) => { const renderCount = useRenderCount(); const [open, setOpen] = useState(false); @@ -117,23 +134,6 @@ export const SliderComponent = React.memo((props: SliderComponentProps) => { changeCallback(serializedObject); }; - const deconstructNumberDict = ( - numberDict: NumberObject, - ): [number, boolean, string | undefined] => { - let numberMagnitude = 0; - let numberUnit: string | undefined = undefined; - const numberReadOnly = numberDict.readonly; - - if (numberDict.type === "int" || numberDict.type === "float") { - numberMagnitude = numberDict.value; - } else if (numberDict.type === "Quantity") { - numberMagnitude = numberDict.value.magnitude; - numberUnit = numberDict.value.unit; - } - - return [numberMagnitude, numberReadOnly, numberUnit]; - }; - const [valueMagnitude, valueReadOnly, valueUnit] = deconstructNumberDict(value); const [minMagnitude, minReadOnly] = deconstructNumberDict(min); const [maxMagnitude, maxReadOnly] = deconstructNumberDict(max);