import { useCallback } from 'react'; import { FormBuilderProp } from 'Form/Form'; import { useFormikContext } from 'formik'; export default function useFormValue< TForm extends object, TPropKey extends keyof TForm >(formBuilder: FormBuilderProp, fieldName: TPropKey) { const { values, setFieldValue } = useFormikContext(); const setValue = useCallback( (value: TForm[TPropKey]) => setFieldValue(fieldName as string, value), [fieldName, setFieldValue] ); return [values[fieldName], setValue] as const; }