zod-form-kit
Version:
UI-agnostic form generation library based on Zod schemas with extensible adapter pattern
12 lines (11 loc) • 912 B
JavaScript
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
export function DateField({ name, label, value, onChange, error, required, className = '' }) {
const formatDateForInput = (date) => {
return date ? date.toISOString().split('T')[0] : '';
};
const handleChange = (e) => {
const dateValue = e.target.value ? new Date(e.target.value) : new Date();
onChange(dateValue);
};
return (_jsxs("div", { className: `field date-field ${className}`, children: [_jsxs("label", { htmlFor: name, className: "field-label", children: [label, required && _jsx("span", { className: "required", children: "*" })] }), _jsx("input", { id: name, name: name, type: "date", value: formatDateForInput(value), onChange: handleChange, className: `field-input ${error ? 'error' : ''}`, required: required }), error && _jsx("span", { className: "field-error", children: error })] }));
}