index.tsx 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. import MenuList from '@mui/material/MenuList';
  2. import MenuItem from '@mui/material/MenuItem';
  3. import ListItemText from '@mui/material/ListItemText';
  4. import ListItemIcon from '@mui/material/ListItemIcon';
  5. import InsertDriveFileIcon from '@mui/icons-material/InsertDriveFile';
  6. import { makeStyles } from '@material-ui/core'
  7. import UploadFile from './UploadFile'
  8. const useStyles = makeStyles({
  9. list: {
  10. background: '#fdfdfd',
  11. },
  12. listIcon: {
  13. position: 'absolute',
  14. left:0
  15. },
  16. listText: {
  17. position: 'absolute',
  18. left:40
  19. },
  20. })
  21. interface IFilesMenu {
  22. setIsOpenMenu: any,
  23. setFile: any,
  24. setValue: any,
  25. setType: any
  26. }
  27. const FilesMenu = ({setIsOpenMenu,setFile,setValue,setType}:IFilesMenu) => {
  28. const classes = useStyles()
  29. const handleClose = (type:string) => {
  30. setType(type)
  31. setIsOpenMenu(false)
  32. }
  33. return (
  34. <MenuList className={classes.list}>
  35. <MenuItem onClick={() => handleClose('content')}>
  36. <UploadFile setFile={setFile} setValue={setValue} accept='image/*,video/*,audio/*'>
  37. <ListItemIcon className={classes.listIcon}>
  38. <InsertDriveFileIcon fontSize="medium" />
  39. </ListItemIcon>
  40. <ListItemText className={classes.listText}>Upload Image/Audio/Video</ListItemText>
  41. </UploadFile>
  42. </MenuItem>
  43. <MenuItem onClick={() => handleClose('application')}>
  44. <UploadFile setFile={setFile} setValue={setValue} accept='application/pdf,application/text'>
  45. <ListItemIcon className={classes.listIcon}>
  46. <InsertDriveFileIcon fontSize="medium" />
  47. </ListItemIcon>
  48. <ListItemText className={classes.listText}>Upload File</ListItemText>
  49. </UploadFile>
  50. </MenuItem>
  51. </MenuList>
  52. );
  53. }
  54. export default FilesMenu