UNPKG

sharyn

Version:

Combines all the other packages under one.

99 lines (74 loc) 3.59 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _map = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/map")); var _objectSpread2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectSpread")); var _react = _interopRequireDefault(require("react")); var _createGenerateClassName = _interopRequireDefault(require("@material-ui/core/styles/createGenerateClassName")); var _MuiThemeProvider = _interopRequireDefault(require("@material-ui/core/styles/MuiThemeProvider")); var _jss = _interopRequireDefault(require("jss")); var _jssPresetDefault = _interopRequireDefault(require("jss-preset-default")); var _reactHotLoader = require("react-hot-loader"); var _JssProvider = _interopRequireDefault(require("react-jss/lib/JssProvider")); var _reactRedux = require("react-redux"); var _BrowserRouter = _interopRequireDefault(require("react-router-dom/BrowserRouter")); var _StaticRouter = _interopRequireDefault(require("react-router-dom/StaticRouter")); var _nest = _interopRequireDefault(require("recompose/nest")); var _withProps = _interopRequireDefault(require("recompose/withProps")); var _spread = _interopRequireDefault(require("@sharyn/util/spread")); var _spreadIf = _interopRequireDefault(require("@sharyn/util/spread-if")); var _GlobalStylesProvider = _interopRequireDefault(require("./GlobalStylesProvider")); var _propTypes = _interopRequireDefault(require("prop-types")); /* eslint-disable import/no-extraneous-dependencies */ // flow-disable-next-line // flow-disable-next-line // flow-disable-next-line var defaultJss = _jss.default.setup((0, _jssPresetDefault.default)()); var Providers = function Providers(_ref) { var children = _ref.children, App = _ref.App, theme = _ref.theme, globalStyles = _ref.globalStyles, store = _ref.store, isSsr = _ref.isSsr, url = _ref.url, _ref$jss = _ref.jss, jss = _ref$jss === void 0 ? defaultJss : _ref$jss, routerContext = _ref.routerContext, sheetsRegistry = _ref.sheetsRegistry; var NestedProviders = (0, _nest.default)(isSsr ? (0, _withProps.default)((0, _spread.default)({ location: url, context: routerContext }))(_StaticRouter.default) : _BrowserRouter.default, (0, _withProps.default)((0, _objectSpread2.default)({ jss: jss, generateClassName: (0, _createGenerateClassName.default)() }, (0, _spread.default)({ registry: sheetsRegistry })))(_JssProvider.default), (0, _withProps.default)({ store: store })(_reactRedux.Provider), (0, _withProps.default)((0, _objectSpread2.default)({ theme: theme }, (0, _spreadIf.default)(isSsr, { sheetsManager: new _map.default() })))(_MuiThemeProvider.default), (0, _withProps.default)({ globalStyles: globalStyles })(_GlobalStylesProvider.default)); return _react.default.createElement(NestedProviders, null, App ? _react.default.createElement(App, null) : children); }; Providers.propTypes = { children: _propTypes.default.any, App: _propTypes.default.func, store: _propTypes.default.object.isRequired, theme: _propTypes.default.object.isRequired, globalStyles: _propTypes.default.any, jss: _propTypes.default.object, isSsr: _propTypes.default.bool, url: _propTypes.default.string, routerContext: _propTypes.default.object, sheetsRegistry: _propTypes.default.object }; var _default = (0, _reactHotLoader.hot)(module)(Providers); exports.default = _default;