import React, { useState } from 'react'; import Button from '@material-ui/core/Button'; import TextField from '@material-ui/core/TextField'; import Dialog from '@material-ui/core/Dialog'; import DialogActions from '@material-ui/core/DialogActions'; import DialogContent from '@material-ui/core/DialogContent'; import DialogContentText from '@material-ui/core/DialogContentText'; import DialogTitle from '@material-ui/core/DialogTitle'; import get from 'axios'; interface PropTypes { isOpen: boolean; setIsOpen: (value: boolean) => void; callback: (url: string) => void; } const UploadImage: React.FC = ({ setIsOpen, isOpen, callback }) => { const [url, setUrl] = useState(''); const [isError, setIsError] = useState(false); const handleClose = () => { setIsOpen(false); }; const handleSubmit = () => { get(url).then(res => { if (res.headers['content-type'] === 'image/jpeg') { callback(url || ''); setIsOpen(false); setIsError(false); } else { // console.warn(res); TODO: handle error if response status is ok but not an image setIsError(true); } }).catch(() => { // console.warn(err); TODO: handle error if resposne status is not ok setIsError(true); }); }; const handleChange = (event:React.ChangeEvent) => { setUrl(event.target.value); }; return (
Upload an Image Unfortunetly we do not support uploading images yet. Please provide a valid URL to your image.
); }; export default UploadImage;