UNPKG

vue-styleguidist

Version:
87 lines 2.91 kB
import _defineProperty from "@babel/runtime/helpers/defineProperty"; import "core-js/modules/es.string.small.js"; import React from 'react'; import PropTypes from 'prop-types'; import Logo from 'rsg-components/Logo'; import StyleguideFooter from 'rsg-components/StyleguideFooter'; import Styled from 'rsg-components/Styled'; import cx from 'classnames'; import Ribbon from 'rsg-components/Ribbon'; import Version from 'rsg-components/Version'; import consts from '../../../scripts/consts'; var styles = function styles(_ref) { var _content; var color = _ref.color, sidebarWidth = _ref.sidebarWidth, mq = _ref.mq, space = _ref.space, maxWidth = _ref.maxWidth; return { root: { minHeight: '100vh', backgroundColor: color.baseBackground }, hasSidebar: _defineProperty({ paddingLeft: sidebarWidth }, mq.small, { paddingLeft: 0 }), content: (_content = { maxWidth: maxWidth, padding: [[space[2], space[4]]], margin: [[0, 'auto']] }, _defineProperty(_content, mq.small, { padding: space[2] }), _defineProperty(_content, "display", 'block'), _content), sidebar: _defineProperty({ backgroundColor: color.sidebarBackground, border: [[color.border, 'solid']], borderWidth: [[0, 1, 0, 0]], position: 'fixed', top: 0, left: 0, bottom: 0, width: sidebarWidth, overflow: 'auto', '-webkit-overflow-scrolling': 'touch' }, mq.small, { position: 'static', width: 'auto', borderWidth: [[1, 0, 0, 0]], paddingBottom: space[0] }), logo: { padding: space[2], borderBottom: [[1, color.border, 'solid']] } }; }; export function StyleGuideRenderer(_ref2) { var classes = _ref2.classes, title = _ref2.title, version = _ref2.version, children = _ref2.children, toc = _ref2.toc, hasSidebar = _ref2.hasSidebar; return /*#__PURE__*/React.createElement("div", { className: cx(classes.root, hasSidebar && classes.hasSidebar) }, /*#__PURE__*/React.createElement("main", { className: classes.content }, children, /*#__PURE__*/React.createElement(StyleguideFooter, { homepageUrl: consts.HOMEPAGE })), hasSidebar && /*#__PURE__*/React.createElement("div", { className: classes.sidebar }, /*#__PURE__*/React.createElement("div", { className: classes.logo }, /*#__PURE__*/React.createElement(Logo, null, title), version && /*#__PURE__*/React.createElement(Version, null, version)), toc), /*#__PURE__*/React.createElement(Ribbon, null)); } StyleGuideRenderer.propTypes = { classes: PropTypes.object.isRequired, title: PropTypes.string.isRequired, version: PropTypes.string, homepageUrl: PropTypes.string.isRequired, children: PropTypes.node.isRequired, toc: PropTypes.node.isRequired, hasSidebar: PropTypes.bool }; export default Styled(styles)(StyleGuideRenderer);