import React, {useState} from 'react'; export default function ValidatingInputNumberField({ id, label, value = 0, constraints = {}, validatorFn = (value) => { return {valid: true, value}; }, disabled = false, onChange = _ => { } }) { const [error, setError] = useState(null); const handleValueChange = (e) => { const value = e.target.value; const validation = validatorFn(value); if (!validation.valid) { setError(validation.message); } else { setError(null); } onChange(validation.value); }; return ( <> {!!error && {error}} ); }