@@ -8,7 +8,16 @@ import { RedExclamationCircleIcon } from '../status';
88import { FieldProps } from './field-types' ;
99import { getFieldId } from './field-utils' ;
1010
11- const NumberSpinnerField : React . FC < FieldProps > = ( { label, helpText, required, ...props } ) => {
11+ interface NumberSpinnerFieldProps extends FieldProps {
12+ setOutputAsIntegerFlag ?: boolean ;
13+ }
14+
15+ const NumberSpinnerField : React . FC < NumberSpinnerFieldProps > = ( {
16+ label,
17+ helpText,
18+ required,
19+ ...props
20+ } ) => {
1221 const [ field , { touched, error } ] = useField ( props . name ) ;
1322 const { setFieldValue, setFieldTouched } = useFormikContext < FormikValues > ( ) ;
1423 const fieldId = getFieldId ( props . name , 'number-spinner' ) ;
@@ -20,9 +29,14 @@ const NumberSpinnerField: React.FC<FieldProps> = ({ label, helpText, required, .
2029 const handleChange : React . ReactEventHandler < HTMLInputElement > = React . useCallback (
2130 ( event ) => {
2231 field . onChange ( event ) ;
23- setFieldValue ( props . name , event . currentTarget . value ) ;
32+ setFieldValue (
33+ props . name ,
34+ props ?. setOutputAsIntegerFlag
35+ ? _ . toInteger ( event . currentTarget . value )
36+ : event . currentTarget . value ,
37+ ) ;
2438 } ,
25- [ field , props . name , setFieldValue ] ,
39+ [ field , props . name , setFieldValue , props ?. setOutputAsIntegerFlag ] ,
2640 ) ;
2741
2842 return (
0 commit comments