@cerberus-design/react
Version:
The Cerberus Design React component library.
31 lines (26 loc) • 889 B
JavaScript
'use client';
;
Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
const jsxRuntime = require('react/jsx-runtime');
const React = require('react');
const useTheme = require('../hooks/useTheme.cjs');
const ThemeContext = React.createContext(
null
);
function ThemeProvider(props) {
const state = useTheme.useTheme(props.defaultTheme, props.defaultColorMode, {
cache: props.cache,
updateMode: props.updateMode,
updateTheme: props.updateTheme
});
return /* @__PURE__ */ jsxRuntime.jsx(ThemeContext.Provider, { value: state, children: props.children });
}
function useThemeContext() {
const context = React.useContext(ThemeContext);
if (!context) {
throw new Error("useThemeContext must be used within a ThemeProvider");
}
return context;
}
exports.ThemeProvider = ThemeProvider;
exports.useThemeContext = useThemeContext;