import { NumberDecrementStepper, NumberIncrementStepper, NumberInput, NumberInputField, NumberInputProps, NumberInputStepper, } from '@chakra-ui/react'; import { useField, useFormikContext } from 'formik'; import React, { FC } from 'react'; import { BaseProps, FormControl } from '../form-control'; export type NumberInputControlProps = BaseProps & { numberInputProps?: NumberInputProps; showStepper?: boolean; children?: React.ReactNode; }; export const NumberInputControl: FC = React.forwardRef( ( props: NumberInputControlProps, ref: React.ForwardedRef ) => { const { name, label, showStepper = true, children, numberInputProps, ...rest } = props; const [field, { error, touched }] = useField(name); const { setFieldValue, isSubmitting } = useFormikContext(); const $setFieldValue = (name: string) => (value: any) => setFieldValue(name, value); return ( {showStepper && ( )} {children} ); } ); export default NumberInputControl;