UNPKG

@krowdy-ui/views

Version:

React components that implement Google's Material Design.

115 lines (110 loc) 3.79 kB
import _extends from "@babel/runtime/helpers/esm/extends"; import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties"; var _excluded = ["classes", "active", "title", "children", "action", "leftActionFooter", "rightActionFooter", "subtitle", "subHeader", "scroll", "shadow"]; import React from 'react'; import clsx from 'clsx'; import PropTypes from 'prop-types'; import { Card, CardHeader, Typography, CardContent, CardActions, Dot, withStyles } from '@krowdy-ui/core'; export var styles = function styles(theme) { return { actions: { alignItems: 'center', borderTop: "solid 1px ".concat(theme.palette.grey[300]), display: 'flex', height: 56, justifyContent: 'space-between', width: '100%' }, containerTitle: { alignItems: 'center', display: 'flex' }, content: { padding: theme.spacing(1.5), width: 296 }, header: { padding: theme.spacing(1.5) }, root: {}, scroll: { height: 344, overflow: 'auto' }, subheaderContent: { alignItems: 'center', display: 'flex', padding: theme.spacing(0, 1.5), paddingTop: theme.spacing(1.5) }, subtitle: { color: theme.palette.grey[600], fontSize: 14, marginLeft: theme.spacing(2.5) }, title: { color: theme.palette.secondary[400], fontSize: 14, fontWeight: 'bold', marginLeft: theme.spacing(1) } }; }; var _ref = /*#__PURE__*/React.createElement("div", null); var _ref2 = /*#__PURE__*/React.createElement("div", null); var RankingGroup = function RankingGroup(props) { var classes = props.classes, active = props.active, title = props.title, children = props.children, action = props.action, _props$leftActionFoot = props.leftActionFooter, leftActionFooter = _props$leftActionFoot === void 0 ? _ref : _props$leftActionFoot, _props$rightActionFoo = props.rightActionFooter, rightActionFooter = _props$rightActionFoo === void 0 ? _ref2 : _props$rightActionFoo, subtitle = props.subtitle, subHeader = props.subHeader, scroll = props.scroll, shadow = props.shadow, rest = _objectWithoutProperties(props, _excluded); return /*#__PURE__*/React.createElement(Card, _extends({ className: classes.root, elevation: 3 }, rest), /*#__PURE__*/React.createElement(CardHeader, { action: action, className: classes.header, shadow: shadow, title: /*#__PURE__*/React.createElement("div", { className: classes.containerTitle }, !shadow && /*#__PURE__*/React.createElement(Dot, { color: active ? 'success' : 'default' }), /*#__PURE__*/React.createElement(Typography, { className: classes.title }, title), subtitle && /*#__PURE__*/React.createElement(Typography, { className: classes.subtitle, variant: "body2" }, subtitle)) }), subHeader && /*#__PURE__*/React.createElement(CardContent, { className: classes.subheaderContent }, subHeader), /*#__PURE__*/React.createElement(CardContent, { className: clsx(classes.content, scroll && classes.scroll) }, children), /*#__PURE__*/React.createElement(CardActions, { className: classes.actions }, leftActionFooter, rightActionFooter)); }; process.env.NODE_ENV !== "production" ? RankingGroup.propTypes = { action: PropTypes.node, active: PropTypes.bool, children: PropTypes.node, classes: PropTypes.object, leftActionFooter: PropTypes.node, rightActionFooter: PropTypes.node, scroll: PropTypes.bool, shadow: PropTypes.bool, subHeader: PropTypes.node, subtitle: PropTypes.string, title: PropTypes.string } : void 0; export default withStyles(styles, { name: 'RankingGroup' })(RankingGroup);