@chakra-xui/system
Version:
Chakra xui system primitives
66 lines (49 loc) • 2.76 kB
JavaScript
;
exports.__esModule = true;
exports.useTheme = useTheme;
exports.GlobalStyle = exports.useStyles = exports.StylesProvider = exports.ThemeProvider = void 0;
var _colorMode = require("@chakra-xui/color-mode");
var _styledSystem = require("@chakra-xui/styled-system");
var _utils = require("@chakra-xui/utils");
var _react = require("@emotion/react");
exports.ThemeProvider = _react.ThemeProvider;
var React = _interopRequireWildcard(require("react"));
function _getRequireWildcardCache() { if (typeof WeakMap !== "function") return null; var cache = new WeakMap(); _getRequireWildcardCache = function _getRequireWildcardCache() { return cache; }; return cache; }
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
function useTheme() {
var theme = React.useContext(_react.ThemeContext);
if (!theme) {
throw Error("useTheme: `theme` is undefined. Seems you forgot to wrap your app in `<ChakraProvider />`");
}
return theme;
}
var _createContext = (0, _utils.createContext)({
name: "StylesContext",
errorMessage: "useStyles: `styles` is undefined. Seems you forgot to wrap the components in `<StylesProvider />` "
}),
StylesProvider = _createContext[0],
useStyles = _createContext[1];
exports.useStyles = useStyles;
exports.StylesProvider = StylesProvider;
/**
* Applies styles defined in `theme.styles.global` globally
* using emotion's `Global` component
*/
var GlobalStyle = function GlobalStyle() {
var _useColorMode = (0, _colorMode.useColorMode)(),
colorMode = _useColorMode.colorMode;
return /*#__PURE__*/React.createElement(_react.Global, {
styles: function styles(theme) {
var styleObjectOrFn = (0, _utils.memoizedGet)(theme, "styles.global");
var globalStyles = (0, _utils.runIfFn)(styleObjectOrFn, {
theme: theme,
colorMode: colorMode
});
if (!globalStyles) return undefined;
var styles = (0, _styledSystem.css)(globalStyles)(theme);
return styles;
}
});
};
exports.GlobalStyle = GlobalStyle;
//# sourceMappingURL=providers.js.map