import React, { useState } from 'react' import { Button, IconButton, Menu, MenuItem, Tooltip } from '@mui/material' import { MoreVert, Save, SaveAs, Difference, Edit } from '@mui/icons-material' type FileMenuProps = { showDiff: boolean setShowDiff: React.Dispatch> prevFileContent: string currentFileContent: string selectedFilePath: string setOpenFilePathInputModal: React.Dispatch> saveFile: () => void } const FileMenu = ({ showDiff, setShowDiff, prevFileContent, currentFileContent, selectedFilePath, setOpenFilePathInputModal, saveFile }: FileMenuProps) => { const [anchorEl, setAnchorEl] = useState< (EventTarget & HTMLButtonElement) | null >(null) const handleMenu = ( event?: React.MouseEvent ) => { if (event) setAnchorEl(event.currentTarget) else setAnchorEl(null) } const handleDiffBtnClick = () => { setAnchorEl(null) setShowDiff(!showDiff) } const handleSaveAsBtnClick = () => { setAnchorEl(null) setOpenFilePathInputModal(true) } const handleSaveBtnClick = () => { setAnchorEl(null) saveFile() } return ( <> handleMenu()} > ) } export default FileMenu