diff --git a/src/components/Home/Chat/Chat.js b/src/components/Home/Chat/Chat.js index b47a257..d311092 100644 --- a/src/components/Home/Chat/Chat.js +++ b/src/components/Home/Chat/Chat.js @@ -10,6 +10,11 @@ import { useSelector } from 'react-redux' import { selectActiveConversation } from '../../../state/actions/conversations' import FileDialog from './FileDialog' +export const fileTypes = { + image: 'image', + video: 'video', +} + const useStyles = makeStyles({ root: { flex: 1, @@ -48,6 +53,7 @@ const Chat = () => { id: msgId, text, ...(file ? { file: 'pending' } : {}), + ...(file ? { fileType: Object.keys(fileTypes).find(type => file.type.includes(type)) } : {}), from: currentUser.uid, date: new Date(), }) diff --git a/src/components/Home/Chat/Messages.js b/src/components/Home/Chat/Messages.js index 1b64ef5..b8acc8b 100644 --- a/src/components/Home/Chat/Messages.js +++ b/src/components/Home/Chat/Messages.js @@ -18,6 +18,7 @@ import Drawer from '@material-ui/core/Drawer' import Fab from '@material-ui/core/Fab' import CloseIcon from '@material-ui/icons/Close' import EmojiText from './EmujiText' +import { fileTypes } from './Chat' const useStyles = makeStyles({ root: { @@ -128,6 +129,10 @@ const useStyles = makeStyles({ flex: 'initial', flexDirection: 'row', }, + video: { + width: '100%', + height: ' auto', + }, }) const Messages = ({ isDragOn }, listRef) => { @@ -241,7 +246,8 @@ const Messages = ({ isDragOn }, listRef) => { { messages.map((message) => ( - + @@ -249,9 +255,22 @@ const Messages = ({ isDragOn }, listRef) => { message.file && ( message.file !== 'pending' ? (
- + { + message.fileType && ( + message.fileType === fileTypes.image ? ( + + ) : message.fileType === fileTypes.video ? ( + + ) :

none

+ ) + }
) : )