@krowdy-ui/views
Version:
React components that implement Google's Material Design.
115 lines (110 loc) • 3.79 kB
JavaScript
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);