UNPKG

react-demo-page

Version:

Build a demo page for your react component with ease

97 lines (80 loc) 3.16 kB
"use strict"; exports.__esModule = true; exports["default"] = void 0; var _propTypes = _interopRequireDefault(require("prop-types")); var _react = _interopRequireDefault(require("react")); var _reactRouterDom = require("react-router-dom"); var _Demo = _interopRequireDefault(require("../Demo")); var _Html = _interopRequireDefault(require("../Html")); var _this = void 0, _jsxFileName = "/Users/cedricdelpoux/Development/perso/react-demo-page/src/components/Routes/index.js"; function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; } var Routes = function Routes(_ref) { var color = _ref.color, routes = _ref.routes; return /*#__PURE__*/_react["default"].createElement("div", { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 8, columnNumber: 3 } }, routes.map(function (route, index) { var component = route.component, demo = route.demo, html = route.html, routeProps = _objectWithoutPropertiesLoose(route, ["component", "demo", "html"]); var RenderComp; if (html) { RenderComp = /*#__PURE__*/_react["default"].createElement(_Html["default"], { color: color, html: html, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 14, columnNumber: 22 } }); } if (demo && demo.component) { RenderComp = /*#__PURE__*/_react["default"].createElement(_Demo["default"], _extends({}, demo, { color: color, __self: _this, __source: { fileName: _jsxFileName, lineNumber: 18, columnNumber: 22 } })); } if (component) { RenderComp = component; } return RenderComp && /*#__PURE__*/_react["default"].createElement(_reactRouterDom.Route, _extends({ key: index, render: function render() { return RenderComp; } }, routeProps, { __self: _this, __source: { fileName: _jsxFileName, lineNumber: 27, columnNumber: 9 } })); })); }; Routes.propTypes = process.env.NODE_ENV !== "production" ? { color: _propTypes["default"].string.isRequired, routes: _propTypes["default"].arrayOf(_propTypes["default"].shape({ label: _propTypes["default"].string.isRequired, path: _propTypes["default"].string.isRequired })).isRequired } : {}; var _default = Routes; exports["default"] = _default; module.exports = exports.default;