summaryrefslogtreecommitdiffstats
path: root/front/odiparpack/app/components/Quote/Quote.js
diff options
context:
space:
mode:
Diffstat (limited to 'front/odiparpack/app/components/Quote/Quote.js')
-rw-r--r--front/odiparpack/app/components/Quote/Quote.js81
1 files changed, 81 insertions, 0 deletions
diff --git a/front/odiparpack/app/components/Quote/Quote.js b/front/odiparpack/app/components/Quote/Quote.js
new file mode 100644
index 0000000..21665d5
--- /dev/null
+++ b/front/odiparpack/app/components/Quote/Quote.js
@@ -0,0 +1,81 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import { withStyles } from '@material-ui/core/styles';
+import classNames from 'classnames';
+import { blueGrey } from '@material-ui/core/colors';
+import { Typography } from '@material-ui/core';
+
+const styles = ({
+ quoteWrap: {
+ padding: '0 25',
+ margin: 10,
+ position: 'relative',
+ '&:before': {
+ color: blueGrey[100],
+ fontSize: '4em',
+ lineHeight: '.1em',
+ marginRight: '.25em',
+ verticalAlign: '-.4em'
+ }
+ },
+ quoteLeft: {
+ extend: 'quoteWrap',
+ textAlign: 'left',
+ borderLeft: '5px solid' + blueGrey[50],
+ paddingLeft: 25,
+ '&:before': {
+ content: 'open-quote',
+ }
+ },
+ quoteRight: {
+ extend: 'quoteWrap',
+ textAlign: 'right',
+ borderRight: '5px solid' + blueGrey[50],
+ paddingRight: 25,
+ '&:before': {
+ content: 'close-quote',
+ }
+ },
+ quoteBody: {
+ minHeight: 100,
+ marginBottom: 20
+ }
+});
+
+
+class Quote extends React.Component {
+ render() {
+ const {
+ align,
+ content,
+ footnote,
+ classes
+ } = this.props;
+ return (
+ <div
+ className={
+ classNames(
+ classes.quoteWrap,
+ align === 'right' ? classes.quoteRight : classes.quoteLeft
+ )
+ }
+ >
+ <Typography variant="subtitle1" className={classes.quoteBody} gutterBottom>
+ {content}
+ </Typography>
+ <Typography variant="caption">
+ {footnote}
+ </Typography>
+ </div>
+ );
+ }
+}
+
+Quote.propTypes = {
+ align: PropTypes.string.isRequired,
+ content: PropTypes.string.isRequired,
+ footnote: PropTypes.string.isRequired,
+ classes: PropTypes.object.isRequired,
+};
+
+export default withStyles(styles)(Quote);