UNPKG

npm-upgrade-browser

Version:

browser UI for viewing changelogs and upgrading packages installed in your project

76 lines (59 loc) 2.23 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties")); var React = _interopRequireWildcard(require("react")); var _withStyles = _interopRequireDefault(require("@material-ui/core/styles/withStyles")); var _classnames = _interopRequireDefault(require("classnames")); var _lodash = require("lodash"); /** * * @prettier */ const styles = theme => ({ apply: theme.mixins.gutters(), bypass: negate(theme.mixins.gutters()) }); const GuttersContext = React.createContext(false); const Gutters = (_ref) => { let { classes, className: inputClassName, children, bypass, overlay } = _ref, props = (0, _objectWithoutProperties2.default)(_ref, ["classes", "className", "children", "bypass", "overlay"]); const inGutters = React.useContext(GuttersContext); const childHasGutters = !bypass; const className = (0, _classnames.default)(inputClassName, { [classes.bypass]: (bypass || overlay) && inGutters, [classes.apply]: overlay || !bypass && !inGutters }); const content = className || (0, _lodash.size)(props) ? React.createElement("div", (0, _extends2.default)({ className: className }, props), children) : children || React.createElement(React.Fragment, null); return inGutters !== childHasGutters ? React.createElement(GuttersContext.Provider, { value: childHasGutters }, content) : content; }; var _default = (0, _withStyles.default)(styles)(Gutters); exports.default = _default; function negate(style) { const { paddingLeft, paddingRight } = style; const result = {}; for (let key in style) { if (style[key] instanceof Object) result[key] = negate(style[key]); } if (paddingLeft != null) result.marginLeft = -paddingLeft; if (paddingRight != null) result.marginRight = -paddingRight; return result; }