@shakacode/recompose
Version:
A React utility belt for function components and higher-order components
27 lines (26 loc) • 1.13 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
exports.__esModule = true;
exports["default"] = void 0;
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
var _react = require("react");
var _getDisplayName = _interopRequireDefault(require("./getDisplayName"));
var _excluded = ["children"];
var nest = function nest() {
for (var _len = arguments.length, Components = new Array(_len), _key = 0; _key < _len; _key++) {
Components[_key] = arguments[_key];
}
var Nest = function Nest(_ref) {
var children = _ref.children,
props = (0, _objectWithoutPropertiesLoose2["default"])(_ref, _excluded);
return Components.reduceRight(function (child, C) {
return /*#__PURE__*/(0, _react.createElement)(C, props, child);
}, children);
};
if (process.env.NODE_ENV !== 'production') {
var displayNames = Components.map(_getDisplayName["default"]);
Nest.displayName = "nest(" + displayNames.join(', ') + ")";
}
return Nest;
};
var _default = exports["default"] = nest;