apollo-form
Version:
Form state manager
29 lines (28 loc) • 793 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
function getFieldProps(field) {
const error = Boolean(!field.focused && field.touched && field.error);
return {
value: field.value,
error,
helperText: error ? field.error : undefined,
onChange: (e) => {
if (e.target.type === 'checkbox') {
field.setFieldValue(e.target.checked);
}
else {
field.setFieldValue(e.target.value);
}
return e;
},
onFocus: (e) => {
field.setFieldFocused();
return e;
},
onBlur: (e) => {
field.setFieldTouched(true);
return e;
},
};
}
exports.default = getFieldProps;