mui-rhf-integration
Version:
React Hook Form integration for MUI with strict TypeScript handling based on form context.
91 lines (90 loc) • 1.92 kB
JavaScript
import { jsx as u } from "react/jsx-runtime";
import { DatePicker as s, DateTimePicker as h, TimePicker as m } from "@mui/x-date-pickers";
import { useController as f } from "react-hook-form";
const g = ({
control: n,
name: i,
rules: a,
textFieldProps: o,
...l
}) => {
const { field: e, fieldState: t } = f({ control: n, name: i, rules: a });
let r = e.value;
return r === void 0 && (r = null), /* @__PURE__ */ u(
s,
{
...l,
onChange: e.onChange,
value: r,
inputRef: e.ref,
slotProps: {
...l.slotProps,
textField: {
...o,
error: !!t.error,
onBlur: e.onBlur,
helperText: t.error?.message ?? o?.helperText
}
}
}
);
}, v = ({
control: n,
name: i,
rules: a,
textFieldProps: o,
...l
}) => {
const { field: e, fieldState: t } = f({ control: n, name: i, rules: a });
let r = e.value;
return r === void 0 && (r = null), /* @__PURE__ */ u(
h,
{
...l,
onChange: e.onChange,
value: r,
inputRef: e.ref,
slotProps: {
...l.slotProps,
textField: {
...o,
error: !!t.error,
onBlur: e.onBlur,
helperText: t.error?.message ?? o?.helperText
}
}
}
);
}, B = ({
control: n,
name: i,
rules: a,
textFieldProps: o,
...l
}) => {
const { field: e, fieldState: t } = f({ control: n, name: i, rules: a });
let r = e.value;
return r === void 0 && (r = null), /* @__PURE__ */ u(
m,
{
...l,
onChange: e.onChange,
value: r,
inputRef: e.ref,
slotProps: {
...l.slotProps,
textField: {
...o,
error: !!t.error,
onBlur: e.onBlur,
helperText: t.error?.message ?? o?.helperText
}
}
}
);
};
export {
g as RhfDatePicker,
v as RhfDateTimePicker,
B as RhfTimePicker
};