@yamada-ui/react
Version:
React UI components of the Yamada, by the Yamada, for the Yamada built with React and Emotion
58 lines (56 loc) • 2.08 kB
JavaScript
import { utils_exports } from "../../utils/index.js";
import { EnvironmentProvider } from "../../core/system/environment-provider.js";
import { SystemProvider } from "../../core/system/system-provider.js";
import { ThemeProvider } from "../../core/system/theme-provider.js";
import { ColorModeProvider } from "../../core/system/color-mode-provider.js";
import { config } from "../../theme/config.js";
import { theme } from "../../theme/index.js";
import { LoadingProvider } from "../../components/loading/loading-provider.js";
import { I18nProvider } from "../i18n-provider/i18n-provider.js";
import { NoticeProvider } from "../../components/notice/notice-provider.js";
import { jsx } from "react/jsx-runtime";
//#region src/providers/ui-provider/ui-provider.tsx
/**
* The global provider that must be added to make all Yamada UI components work correctly.
*/
const UIProvider = ({ children, colorMode, colorModeStorageKey, config: config$1 = config, cookie, dir, intl, locale, storage, theme: theme$1 = theme, themeSchemeStorageKey }) => {
return /* @__PURE__ */ jsx(EnvironmentProvider, { children: /* @__PURE__ */ jsx(I18nProvider, {
dir,
intl,
locale,
children: /* @__PURE__ */ jsx(SystemProvider, {
config: config$1,
theme: theme$1,
children: /* @__PURE__ */ jsx(ThemeProvider, {
config: config$1,
cookie,
storage,
storageKey: themeSchemeStorageKey,
theme: theme$1,
children: /* @__PURE__ */ jsx(ColorModeProvider, {
colorMode,
config: config$1,
cookie,
storage,
storageKey: colorModeStorageKey,
children: /* @__PURE__ */ jsx(LoadingProvider, {
...config$1.loading,
children: /* @__PURE__ */ jsx(NoticeProvider, {
...config$1.notice,
children
})
})
})
})
})
}) });
};
const extendTheme = (theme$1) => {
return (0, utils_exports.merge)(theme, theme$1);
};
const extendConfig = (config$1) => {
return (0, utils_exports.merge)(config, config$1);
};
//#endregion
export { UIProvider, extendConfig, extendTheme };
//# sourceMappingURL=ui-provider.js.map