From e13e630cd6e4fc0b1ff92098a28a770794c7bb9a Mon Sep 17 00:00:00 2001
From: gabrhr <73925454+gabrhr@users.noreply.github.com>
Date: Wed, 20 Apr 2022 10:19:29 -0500
Subject: =?UTF-8?q?A=C3=B1adir=20plantilla?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Base para front
---
.../app/components/SocialMedia/Comment.js | 135 +++++++++++++
.../odiparpack/app/components/SocialMedia/Cover.js | 103 ++++++++++
.../app/components/SocialMedia/SideSection.js | 209 +++++++++++++++++++++
.../app/components/SocialMedia/Timeline.js | 177 +++++++++++++++++
.../app/components/SocialMedia/WritePost.js | 169 +++++++++++++++++
.../app/components/SocialMedia/jss/cover-jss.js | 55 ++++++
.../components/SocialMedia/jss/socialMedia-jss.js | 89 +++++++++
.../app/components/SocialMedia/jss/timeline-jss.js | 95 ++++++++++
.../components/SocialMedia/jss/writePost-jss.js | 73 +++++++
9 files changed, 1105 insertions(+)
create mode 100644 front/odiparpack/app/components/SocialMedia/Comment.js
create mode 100644 front/odiparpack/app/components/SocialMedia/Cover.js
create mode 100644 front/odiparpack/app/components/SocialMedia/SideSection.js
create mode 100644 front/odiparpack/app/components/SocialMedia/Timeline.js
create mode 100644 front/odiparpack/app/components/SocialMedia/WritePost.js
create mode 100644 front/odiparpack/app/components/SocialMedia/jss/cover-jss.js
create mode 100644 front/odiparpack/app/components/SocialMedia/jss/socialMedia-jss.js
create mode 100644 front/odiparpack/app/components/SocialMedia/jss/timeline-jss.js
create mode 100644 front/odiparpack/app/components/SocialMedia/jss/writePost-jss.js
(limited to 'front/odiparpack/app/components/SocialMedia')
diff --git a/front/odiparpack/app/components/SocialMedia/Comment.js b/front/odiparpack/app/components/SocialMedia/Comment.js
new file mode 100644
index 0000000..9ead6e7
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/Comment.js
@@ -0,0 +1,135 @@
+import React, { Fragment } from 'react';
+import PropTypes from 'prop-types';
+import classNames from 'classnames';
+import Type from 'ba-styles/Typography.scss';
+import { withStyles } from '@material-ui/core/styles';
+import Send from '@material-ui/icons/Send';
+import CommentIcon from '@material-ui/icons/Comment';
+import CloseIcon from '@material-ui/icons/Close';
+import dummy from 'ba-api/dummyContents';
+import {
+ Typography,
+ List,
+ ListItem,
+ Avatar,
+ Input,
+ Dialog,
+ DialogActions,
+ DialogContent,
+ DialogTitle,
+ IconButton,
+ Fab,
+ Slide,
+ Divider,
+ withMobileDialog,
+} from '@material-ui/core';
+import styles from './jss/socialMedia-jss';
+
+const Transition = React.forwardRef(function Transition(props, ref) { // eslint-disable-line
+ return ;
+});
+
+class Comment extends React.Component {
+ state = {
+ comment: ''
+ };
+
+ handleChange = event => {
+ this.setState({ comment: event.target.value });
+ };
+
+ handleSubmit = comment => {
+ this.props.submitComment(comment);
+ this.setState({ comment: '' });
+ }
+
+ render() {
+ const {
+ open,
+ handleClose,
+ classes,
+ dataComment,
+ fullScreen
+ } = this.props;
+ const { comment } = this.state;
+ const getItem = dataArray => dataArray.map(data => (
+
+
+
+
+
+
+ {data.get('from')}
+ {data.get('date')}
+
+
+
{data.get('message')}
+
+
+
+
+ ));
+
+ return (
+
+
+
+ );
+ }
+}
+
+Comment.propTypes = {
+ open: PropTypes.bool.isRequired,
+ handleClose: PropTypes.func.isRequired,
+ submitComment: PropTypes.func.isRequired,
+ classes: PropTypes.object.isRequired,
+ dataComment: PropTypes.object,
+ fullScreen: PropTypes.bool.isRequired,
+};
+
+Comment.defaultProps = {
+ dataComment: undefined
+};
+
+const CommentResponsive = withMobileDialog()(Comment);
+export default withStyles(styles)(CommentResponsive);
diff --git a/front/odiparpack/app/components/SocialMedia/Cover.js b/front/odiparpack/app/components/SocialMedia/Cover.js
new file mode 100644
index 0000000..4823f13
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/Cover.js
@@ -0,0 +1,103 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import VerifiedUser from '@material-ui/icons/VerifiedUser';
+import Info from '@material-ui/icons/Info';
+import MoreVertIcon from '@material-ui/icons/MoreVert';
+import { withStyles } from '@material-ui/core/styles';
+import { Avatar, Typography, Menu, MenuItem, Button, IconButton } from '@material-ui/core';
+import styles from './jss/cover-jss';
+
+
+const optionsOpt = [
+ 'Edit Profile',
+ 'Change Cover',
+ 'Option 1',
+ 'Option 2',
+ 'Option 3',
+];
+
+const ITEM_HEIGHT = 48;
+
+class Cover extends React.Component {
+ state = {
+ anchorElOpt: null,
+ };
+
+ handleClickOpt = event => {
+ this.setState({ anchorElOpt: event.currentTarget });
+ };
+
+ handleCloseOpt = () => {
+ this.setState({ anchorElOpt: null });
+ };
+
+ render() {
+ const {
+ classes,
+ avatar,
+ name,
+ desc,
+ coverImg,
+ } = this.props;
+ const { anchorElOpt } = this.state;
+ return (
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {name}
+
+
+
+ {desc}
+
+
+
+
+ );
+ }
+}
+
+Cover.propTypes = {
+ classes: PropTypes.object.isRequired,
+ avatar: PropTypes.string.isRequired,
+ name: PropTypes.string.isRequired,
+ desc: PropTypes.string.isRequired,
+ coverImg: PropTypes.string.isRequired,
+};
+
+export default withStyles(styles)(Cover);
diff --git a/front/odiparpack/app/components/SocialMedia/SideSection.js b/front/odiparpack/app/components/SocialMedia/SideSection.js
new file mode 100644
index 0000000..1fe8d9c
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/SideSection.js
@@ -0,0 +1,209 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import classNames from 'classnames';
+import { withStyles } from '@material-ui/core/styles';
+import KeyboardArrowLeft from '@material-ui/icons/KeyboardArrowLeft';
+import KeyboardArrowRight from '@material-ui/icons/KeyboardArrowRight';
+import SwipeableViews from 'react-swipeable-views';
+import imgApi from 'ba-api/images';
+import avatarApi from 'ba-api/avatars';
+import {
+ Grid,
+ Typography,
+ MobileStepper,
+ Paper,
+ Avatar,
+ Button,
+ Divider,
+ List,
+ ListItem,
+ ListItemText,
+} from '@material-ui/core';
+import PapperBlock from '../PapperBlock/PapperBlock';
+import NewsCard from '../CardPaper/NewsCard';
+import ProfileCard from '../CardPaper/ProfileCard';
+import styles from './jss/socialMedia-jss';
+
+
+const slideData = [
+ {
+ label: 'How to be happy :)',
+ imgPath: imgApi[49],
+ },
+ {
+ label: '1. Work with something that you like, likeā¦',
+ imgPath: imgApi[17],
+ },
+ {
+ label: '2. Keep your friends close to you and hangout with them',
+ imgPath: imgApi[34],
+ },
+ {
+ label: '3. Travel everytime that you have a chance',
+ imgPath: imgApi[10],
+ },
+ {
+ label: '4. And contribute to Material-UI :D',
+ imgPath: imgApi[40]
+ },
+];
+
+class SideSection extends React.Component {
+ state = {
+ activeStepSwipe: 0,
+ };
+
+ handleNextSwipe = () => {
+ this.setState(prevState => ({
+ activeStepSwipe: prevState.activeStepSwipe + 1,
+ }));
+ };
+
+ handleBackSwipe = () => {
+ this.setState(prevState => ({
+ activeStepSwipe: prevState.activeStepSwipe - 1,
+ }));
+ };
+
+ handleStepChangeSwipe = activeStepSwipe => {
+ this.setState({ activeStepSwipe });
+ };
+
+ render() {
+ const { classes, theme } = this.props;
+ const { activeStepSwipe } = this.state;
+
+ const maxStepsSwipe = slideData.length;
+ return (
+
+ {/* Profile */}
+
+
+ {/* ----------------------------------------------------------------------*/}
+ {/* News Or Ads Block */}
+
+
+ {slideData.map((slide, index) => (
+
+
+
+ {slide.label}
+
+
+
+ ))}
+
+
+ Next
+ {theme.direction === 'rtl' ? : }
+
+ )}
+ backButton={(
+
+ )}
+ />
+
+ {/* ----------------------------------------------------------------------*/}
+ {/* People */}
+
+
+
+ H
+
+
+
+
+ J
+
+
+
+
+ V
+
+
+
+
+ H
+
+
+
+
+
+
+
+
+
+ {/* ----------------------------------------------------------------------*/}
+ {/* Trending */}
+
+
+
+ #Lorem ipsum dolor
+
+
+
+ #Aliquam venenatis
+
+
+
+ #Nam sollicitudin
+
+
+
+ #Cras convallis
+
+
+
+ #Aenean sit amet
+
+
+
+ #Quisque
+
+
+
+ #Lorem ipusm dolor
+
+
+
+
+
+ );
+ }
+}
+
+SideSection.propTypes = {
+ classes: PropTypes.object.isRequired,
+ theme: PropTypes.object.isRequired,
+};
+
+export default withStyles(styles, { withTheme: true })(SideSection);
diff --git a/front/odiparpack/app/components/SocialMedia/Timeline.js b/front/odiparpack/app/components/SocialMedia/Timeline.js
new file mode 100644
index 0000000..e46826b
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/Timeline.js
@@ -0,0 +1,177 @@
+import React, { Fragment } from 'react';
+import PropTypes from 'prop-types';
+import { withStyles } from '@material-ui/core/styles';
+import FavoriteIcon from '@material-ui/icons/Favorite';
+import ShareIcon from '@material-ui/icons/Share';
+import CommentIcon from '@material-ui/icons/Comment';
+import MoreVertIcon from '@material-ui/icons/MoreVert';
+import {
+ Typography,
+ Card,
+ Menu,
+ MenuItem,
+ CardHeader,
+ CardMedia,
+ CardContent,
+ CardActions,
+ IconButton,
+ Icon,
+ Avatar,
+ Tooltip,
+} from '@material-ui/core';
+import Comment from './Comment';
+import styles from './jss/timeline-jss';
+
+
+const optionsOpt = [
+ 'Option 1',
+ 'Option 2',
+ 'Option 3',
+];
+
+const ITEM_HEIGHT = 48;
+
+class Timeline extends React.Component {
+ state = {
+ anchorElOpt: null,
+ openComment: false,
+ };
+
+ handleClickOpt = event => {
+ this.setState({ anchorElOpt: event.currentTarget });
+ };
+
+ handleCloseOpt = () => {
+ this.setState({ anchorElOpt: null });
+ };
+
+ handleOpenComment = (data) => {
+ this.props.fetchComment(data);
+ this.setState({ openComment: true });
+ };
+
+ handleCloseComment = () => {
+ this.setState({ openComment: false });
+ };
+
+ render() {
+ const {
+ classes,
+ dataTimeline,
+ onlike,
+ commentIndex,
+ submitComment,
+ } = this.props;
+ const { anchorElOpt, openComment } = this.state;
+ const getItem = dataArray => dataArray.map(data => (
+
+
+
+
+ {data.get('icon')}
+
+
+
+
+
+ }
+ action={(
+
+
+
+ )}
+ title={data.get('name')}
+ subheader={data.get('date')}
+ />
+ { data.get('image') !== ''
+ && (
+
+ )
+ }
+
+
+ {data.get('content')}
+
+
+
+ onlike(data)}>
+
+
+
+
+
+
+
+ {data.get('comments') !== undefined ? data.get('comments').size : 0}
+
+ this.handleOpenComment(data)}>
+
+
+
+
+
+
+ ));
+ return (
+
+
+
+
+ {getItem(dataTimeline)}
+
+
+ );
+ }
+}
+
+Timeline.propTypes = {
+ classes: PropTypes.object.isRequired,
+ onlike: PropTypes.func,
+ dataTimeline: PropTypes.object.isRequired,
+ fetchComment: PropTypes.func,
+ submitComment: PropTypes.func,
+ commentIndex: PropTypes.number,
+};
+
+Timeline.defaultProps = {
+ onlike: () => (false),
+ fetchComment: () => {},
+ submitComment: () => {},
+ commentIndex: 0,
+};
+
+export default withStyles(styles)(Timeline);
diff --git a/front/odiparpack/app/components/SocialMedia/WritePost.js b/front/odiparpack/app/components/SocialMedia/WritePost.js
new file mode 100644
index 0000000..3452aea
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/WritePost.js
@@ -0,0 +1,169 @@
+import React from 'react';
+import PropTypes from 'prop-types';
+import classNames from 'classnames';
+import Dropzone from 'react-dropzone';
+import { withStyles } from '@material-ui/core/styles';
+import PhotoCamera from '@material-ui/icons/PhotoCamera';
+import Send from '@material-ui/icons/Send';
+import ActionDelete from '@material-ui/icons/Delete';
+import dummy from 'ba-api/dummyContents';
+import { IconButton, Fab, MenuItem, FormControl, Avatar, Paper, Select, Tooltip } from '@material-ui/core';
+import styles from './jss/writePost-jss';
+
+
+function isImage(file) {
+ const fileName = file.name || file.path;
+ const suffix = fileName.substr(fileName.indexOf('.') + 1).toLowerCase();
+ if (suffix === 'jpg' || suffix === 'jpeg' || suffix === 'bmp' || suffix === 'png') {
+ return true;
+ }
+ return false;
+}
+
+class WritePost extends React.Component {
+ constructor(props) {
+ super(props);
+ this.state = {
+ privacy: 'public',
+ files: [],
+ message: ''
+ };
+ this.onDrop = this.onDrop.bind(this);
+ }
+
+ onDrop(filesVal) {
+ const { files } = this.state;
+ let oldFiles = files;
+ const filesLimit = 2;
+ oldFiles = oldFiles.concat(filesVal);
+ if (oldFiles.length > filesLimit) {
+ console.log('Cannot upload more than ' + filesLimit + ' items.');
+ } else {
+ this.setState({ files: filesVal });
+ }
+ }
+
+ handleRemove(file, fileIndex) {
+ const thisFiles = this.state.files;
+ // This is to prevent memory leaks.
+ window.URL.revokeObjectURL(file.preview);
+
+ thisFiles.splice(fileIndex, 1);
+ this.setState({ files: thisFiles });
+ }
+
+ handleChange = event => {
+ this.setState({ privacy: event.target.value });
+ };
+
+ handleWrite = event => {
+ this.setState({ message: event.target.value });
+ };
+
+ handlePost = (message, files, privacy) => {
+ // Submit Post to reducer
+ this.props.submitPost(message, files, privacy);
+ // Reset all fields
+ this.setState({
+ privacy: 'public',
+ files: [],
+ message: ''
+ });
+ }
+
+ render() {
+ const { classes } = this.props;
+ let dropzoneRef;
+ const { privacy, files, message } = this.state;
+ const acceptedFiles = ['image/jpeg', 'image/png', 'image/bmp'];
+ const fileSizeLimit = 3000000;
+ const deleteBtn = (file, index) => (
+
+
this.handleRemove(file, index)}>
+
+
+
+ );
+ const previews = filesArray => filesArray.map((file, index) => {
+ const path = URL.createObjectURL(file) || '/pic' + file.path;
+ if (isImage(file)) {
+ return (
+
+

+ {deleteBtn(file, index)}
+
+ );
+ }
+ return false;
+ });
+ return (
+
+
+
+
+ { dropzoneRef = node; }}
+ >
+ {({ getRootProps, getInputProps }) => (
+
+
+
+ )}
+
+
+ {previews(files)}
+
+
+
+ {
+ dropzoneRef.open();
+ }}
+ >
+
+
+
+
+
+
+
+
+
+ this.handlePost(message, files, privacy)} size="small" color="secondary" aria-label="send" className={classes.sendBtn}>
+
+
+
+
+
+
+ );
+ }
+}
+
+WritePost.propTypes = {
+ classes: PropTypes.object.isRequired,
+ submitPost: PropTypes.func.isRequired
+};
+
+export default withStyles(styles)(WritePost);
diff --git a/front/odiparpack/app/components/SocialMedia/jss/cover-jss.js b/front/odiparpack/app/components/SocialMedia/jss/cover-jss.js
new file mode 100644
index 0000000..695512d
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/jss/cover-jss.js
@@ -0,0 +1,55 @@
+import { fade } from '@material-ui/core/styles/colorManipulator';
+const styles = theme => ({
+ root: {
+ flexGrow: 1,
+ },
+ cover: {
+ '& $name, & $subheading': {
+ color: theme.palette.common.white
+ },
+ position: 'relative',
+ width: '100%',
+ overflow: 'hidden',
+ height: 360,
+ backgroundColor: theme.palette.primary.main,
+ display: 'flex',
+ justifyContent: 'center',
+ alignItems: 'flex-end',
+ borderRadius: 2,
+ backgroundSize: 'cover',
+ textAlign: 'center',
+ boxShadow: theme.shadows[7]
+ },
+ content: {
+ background: fade(theme.palette.secondary.main, 0.3),
+ height: '100%',
+ width: '100%',
+ padding: `70px ${theme.spacing(3)}px 30px`
+ },
+ name: {},
+ subheading: {},
+ avatar: {
+ margin: '0 auto',
+ width: 120,
+ height: 120,
+ border: '3px solid rgba(255, 255, 255, .5)'
+ },
+ opt: {
+ position: 'absolute',
+ top: 10,
+ right: 10,
+ '& button': {
+ color: theme.palette.common.white
+ }
+ },
+ verified: {
+ margin: theme.spacing(1),
+ top: 10,
+ position: 'relative'
+ },
+ button: {
+ marginTop: theme.spacing(1)
+ }
+});
+
+export default styles;
diff --git a/front/odiparpack/app/components/SocialMedia/jss/socialMedia-jss.js b/front/odiparpack/app/components/SocialMedia/jss/socialMedia-jss.js
new file mode 100644
index 0000000..03f5726
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/jss/socialMedia-jss.js
@@ -0,0 +1,89 @@
+import { deepOrange, deepPurple, pink, green } from '@material-ui/core/colors';
+
+const styles = theme => ({
+ mobileStepper: {
+ margin: `0 auto ${theme.spacing(4)}px`,
+ textAlign: 'center'
+ },
+ avatar: {
+ marginRight: 15,
+ },
+ orangeAvatar: {
+ backgroundColor: deepOrange[500],
+ },
+ purpleAvatar: {
+ backgroundColor: deepPurple[500],
+ },
+ pinkAvatar: {
+ backgroundColor: pink[500],
+ },
+ greenAvatar: {
+ backgroundColor: green[500],
+ },
+ divider: {
+ margin: `${theme.spacing(2)}px 0`,
+ background: 'none'
+ },
+ link: {
+ color: theme.palette.primary.main
+ },
+ noPadding: {
+ padding: '5px',
+ marginLeft: -10
+ },
+ sliderWrap: {
+ height: 310,
+ overflow: 'hidden'
+ },
+ title: {
+ whiteSpace: 'nowrap',
+ textOverflow: 'ellipsis',
+ overflow: 'hidden',
+ fontSize: 18
+ },
+ profileList: {},
+ trendingList: {
+ '& li': {
+ display: 'block'
+ }
+ },
+ input: {},
+ commentContent: {
+ padding: 10
+ },
+ commentText: {
+ marginTop: 5
+ },
+ buttonClose: {
+ position: 'absolute',
+ top: 20,
+ right: 20
+ },
+ avatarMini: {
+ width: 30,
+ height: 30,
+ },
+ commentAction: {
+ background: theme.palette.grey[100],
+ margin: 0,
+ },
+ commentForm: {
+ display: 'flex',
+ alignItems: 'center',
+ [theme.breakpoints.up('md')]: {
+ minWidth: 600,
+ },
+ width: '100%',
+ padding: '15px 20px',
+ margin: 0,
+ '& $input': {
+ flex: 1,
+ margin: '0 10px'
+ }
+ },
+ commentHead: {
+ display: 'flex'
+ }
+});
+
+export default styles;
diff --git a/front/odiparpack/app/components/SocialMedia/jss/timeline-jss.js b/front/odiparpack/app/components/SocialMedia/jss/timeline-jss.js
new file mode 100644
index 0000000..dcdb018
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/jss/timeline-jss.js
@@ -0,0 +1,95 @@
+import { pink } from '@material-ui/core/colors';
+const styles = theme => ({
+ card: {
+ display: 'flex',
+ justifyContent: 'space-between'
+ },
+ content: {
+ flex: '1 0 auto',
+ },
+ cover: {
+ width: 150,
+ height: 150,
+ },
+ avatar: {
+ width: 40,
+ height: 40
+ },
+ cardSocmed: {
+ [theme.breakpoints.up('md')]: {
+ marginLeft: 90,
+ minWidth: 400,
+ },
+ marginBottom: theme.spacing(3),
+ position: 'relative',
+ },
+ media: {
+ height: 0,
+ paddingTop: '56.25%', // 16:9
+ },
+ actions: {
+ display: 'flex',
+ },
+ expandOpen: {
+ transform: 'rotate(180deg)',
+ },
+ iconBullet: {},
+ icon: {},
+ timeline: {
+ position: 'relative',
+ '&:before': {
+ left: 39,
+ content: '""',
+ top: 40,
+ height: '101%',
+ border: `1px solid ${theme.palette.grey[300]}`,
+ position: 'absolute',
+ [theme.breakpoints.down('sm')]: {
+ display: 'none'
+ },
+ },
+ '& li': {
+ position: 'relative',
+ display: 'block'
+ },
+ '& time': {
+ top: 70,
+ left: 20,
+ position: 'absolute',
+ textAlign: 'center',
+ background: theme.palette.common.white,
+ boxShadow: theme.shadows[3],
+ padding: '4px 40px 4px 15px',
+ borderLeft: `3px solid ${theme.palette.secondary.main}`
+ },
+ '& $iconBullet': {
+ position: 'absolute',
+ borderRadius: '50%',
+ top: 20,
+ width: 40,
+ height: 40,
+ background: theme.palette.secondary.main,
+ boxShadow: theme.shadows[5],
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'center',
+ left: 20,
+ '& $icon': {
+ color: theme.palette.common.white,
+ },
+ [theme.breakpoints.down('sm')]: {
+ display: 'none'
+ },
+ },
+ },
+ rightIcon: {
+ marginLeft: 'auto',
+ display: 'flex',
+ alignItems: 'center'
+ },
+ liked: {
+ color: pink[500]
+ }
+});
+
+export default styles;
diff --git a/front/odiparpack/app/components/SocialMedia/jss/writePost-jss.js b/front/odiparpack/app/components/SocialMedia/jss/writePost-jss.js
new file mode 100644
index 0000000..cd18422
--- /dev/null
+++ b/front/odiparpack/app/components/SocialMedia/jss/writePost-jss.js
@@ -0,0 +1,73 @@
+const styles = theme => ({
+ statusWrap: {
+ marginBottom: theme.spacing(3),
+ '& > div': {
+ overflow: 'hidden'
+ },
+ '& textarea': {
+ border: 'none',
+ padding: '20px 20px 20px 50px',
+ outline: 'none',
+ width: '100%',
+ resize: 'none',
+ overflow: 'hidden',
+ height: 50,
+ transition: theme.transitions.create(['height'], {
+ easing: theme.transitions.easing.sharp,
+ duration: theme.transitions.duration.leavingScreen,
+ }),
+ '&:focus': {
+ height: 100,
+ overflow: 'auto',
+ }
+ }
+ },
+ avatarMini: {
+ width: 30,
+ height: 30,
+ position: 'absolute',
+ top: 40,
+ left: 10
+ },
+ control: {
+ padding: '10px 20px 0',
+ display: 'flex'
+ },
+ privacy: {
+ flex: 1,
+ display: 'flex',
+ alignItems: 'center',
+ justifyContent: 'flex-end',
+ textAlign: 'right',
+ },
+ button: {
+ margin: theme.spacing(0.5)
+ },
+ sendBtn: {
+ position: 'relative',
+ top: 5
+ },
+ formControl: {
+ margin: '0 20px',
+ width: 150,
+ paddingLeft: 10,
+ textAlign: 'left',
+ '&:before, &:after': {
+ borderBottom: 'none'
+ }
+ },
+ hiddenDropzone: {
+ display: 'none'
+ },
+ preview: {
+ position: 'relative',
+ '& figure': {
+ textAlign: 'center'
+ }
+ },
+ removeBtn: {
+ opacity: 1
+ }
+});
+
+export default styles;
--
cgit v1.2.3