npm-upgrade-browser
Version:
browser UI for viewing changelogs and upgrading packages installed in your project
76 lines (59 loc) • 2.23 kB
JavaScript
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;
}
;