UNPKG

test-crud

Version:

es una prueba acerca de como publicar un package name

65 lines (58 loc) 1.68 kB
import React, { useEffect } from 'react' import { useFormikContext } from 'formik' import DatePicker from '../inputs/datePicker' import DateTimePicker from '../inputs/dateTimePicker' // 🔥 Importamos el nuevo DateTimePicker function AppDatePicker({ name, label, onSelect, inputProps, optional = false, includeTime = false, ...rest }) { const { setFieldValue, setFieldTouched, errors, touched, values } = useFormikContext() useEffect(() => { if (values && !values[name] && !optional) { setFieldValue(name, new Date()) } }, []) useEffect(() => { if (values[name]) setFieldTouched(name) }, [values[name]]) const handleDateSelection = (date) => { setFieldValue(name, typeof date === 'object' ? date : undefined) onSelect && onSelect(date) } return ( <div> {includeTime ? ( <DateTimePicker name={name} label={label} value={(values && values[name]) || null} touched={touched[name]} error={touched[name] && errors[name]} errorMessage={touched[name] && errors[name] ? errors[name] : ''} onSelect={handleDateSelection} inputProps={inputProps} {...rest} /> ) : ( <DatePicker name={name} label={label} value={(values && values[name]) || null} touched={touched[name]} error={touched[name] && errors[name]} errorMessage={touched[name] && errors[name] ? errors[name] : ''} onSelect={handleDateSelection} inputProps={inputProps} {...rest} /> )} </div> ) } export default AppDatePicker