@nish1896/rhf-mui-components
Version:
A suite of 20+ production-ready react-hook-form components built with material-ui. Fully typed, tree-shakable, and optimized for enterprise-grade forms.
36 lines (35 loc) • 1.11 kB
JavaScript
import { DefaultRHFMuiConfig } from "./DefaultConfig.js";
import { createContext, useMemo } from "react";
import { jsx } from "react/jsx-runtime";
//#region src/config/ConfigProvider.tsx
const RHFMuiConfigContext = createContext(DefaultRHFMuiConfig);
const ConfigProvider = ({ children, defaultFormHelperTextSx, defaultFormControlLabelSx, defaultFormLabelSx, dateAdapter, allLabelsAboveFields }) => {
const defaultSetting = useMemo(() => ({
defaultFormLabelSx: {
...DefaultRHFMuiConfig.defaultFormLabelSx,
...defaultFormLabelSx
},
defaultFormControlLabelSx: {
...DefaultRHFMuiConfig.defaultFormControlLabelSx,
...defaultFormControlLabelSx
},
defaultFormHelperTextSx: {
...DefaultRHFMuiConfig.defaultFormHelperTextSx,
...defaultFormHelperTextSx
},
dateAdapter,
allLabelsAboveFields
}), [
defaultFormHelperTextSx,
defaultFormControlLabelSx,
defaultFormLabelSx,
dateAdapter,
allLabelsAboveFields
]);
return /* @__PURE__ */ jsx(RHFMuiConfigContext.Provider, {
value: defaultSetting,
children
});
};
//#endregion
export { ConfigProvider, RHFMuiConfigContext };