UNPKG

formik-material-ui-pickers

Version:

![](https://github.com/stackworx/formik-material-ui/workflows/Build%20formik-material-ui-pickers/badge.svg)[![license](https://badgen.now.sh/badge/license/MIT)](./LICENSE)

25 lines (22 loc) 1.87 kB
import { __rest, __assign } from './_virtual/_tslib.js'; import * as React from 'react'; import { KeyboardDatePicker as KeyboardDatePicker$1 } from '@material-ui/pickers'; import { getIn } from 'formik'; import { createErrorHandler } from './errorHandler.js'; function fieldToKeyboardDatePicker(_a) { var disabled = _a.disabled, _b = _a.field; _b.onChange; var fieldOnBlur = _b.onBlur, field = __rest(_b, ["onChange", "onBlur"]), _c = _a.form, isSubmitting = _c.isSubmitting, touched = _c.touched, errors = _c.errors, setFieldValue = _c.setFieldValue, setFieldError = _c.setFieldError, onChange = _a.onChange, onBlur = _a.onBlur, onError = _a.onError, props = __rest(_a, ["disabled", "field", "form", "onChange", "onBlur", "onError"]); var fieldError = getIn(errors, field.name); var showError = getIn(touched, field.name) && !!fieldError; return __assign(__assign({ error: showError, helperText: showError ? fieldError : props.helperText, disabled: disabled !== null && disabled !== void 0 ? disabled : isSubmitting, onChange: onChange !== null && onChange !== void 0 ? onChange : function (date) { setFieldValue(field.name, date); }, onBlur: onBlur !== null && onBlur !== void 0 ? onBlur : function (e) { fieldOnBlur(e !== null && e !== void 0 ? e : field.name); }, onError: onError !== null && onError !== void 0 ? onError : createErrorHandler(fieldError, field.name, setFieldError) }, field), props); } function KeyboardDatePicker(_a) { var children = _a.children, props = __rest(_a, ["children"]); return (React.createElement(KeyboardDatePicker$1, __assign({}, fieldToKeyboardDatePicker(props)), children)); } KeyboardDatePicker.displayName = 'FormikMaterialUIKeyboardDatePicker'; export { KeyboardDatePicker, fieldToKeyboardDatePicker }; //# sourceMappingURL=KeyboardDatePicker.js.map