sharyn
Version:
Combines all the other packages under one.
44 lines (35 loc) • 1.49 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/extends"));
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/objectWithoutProperties"));
var _react = _interopRequireDefault(require("react"));
var _reactRouter = require("react-router");
var _propTypes = _interopRequireDefault(require("prop-types"));
/* eslint-disable import/no-extraneous-dependencies */
var Switch = function Switch(_ref) {
var routesAndCmps = _ref.routesAndCmps;
return _react.default.createElement(_reactRouter.Switch, null, routesAndCmps.map(function (_ref2) {
var route = _ref2.route,
Component = _ref2.component;
var path = route.path,
exact = route.exact,
rest = (0, _objectWithoutProperties2.default)(route, ["path", "exact"]);
return _react.default.createElement(_reactRouter.Route, {
key: path || 'not-found-key',
path: path,
exact: exact,
render: function render(props) {
return _react.default.createElement(Component, (0, _extends2.default)({}, props, rest));
}
});
}));
};
Switch.propTypes = {
routesAndCmps: _propTypes.default.arrayOf(_propTypes.default.object.isRequired).isRequired
};
var _default = Switch;
exports.default = _default;