import {useState} from 'react' import {Divider, IconButton, Menu} from 'react-native-paper' import ConfirmDialog from './ConfirmDialog' import useDark from './use-dark' export default function ListMenu({ onEdit, onCopy, onClear, onDelete, onSelect, ids, }: { onEdit: () => void onCopy: () => void onClear: () => void onDelete: () => void onSelect: () => void ids?: number[] }) { const [showMenu, setShowMenu] = useState(false) const [showRemove, setShowRemove] = useState(false) const dark = useDark() const edit = () => { setShowMenu(false) onEdit() } const copy = () => { setShowMenu(false) onCopy() } const clear = () => { setShowMenu(false) onClear() } const remove = () => { setShowMenu(false) setShowRemove(false) onDelete() } const select = () => { onSelect() } return ( setShowMenu(false)} anchor={ setShowMenu(true)} icon="more-vert" /> }> setShowRemove(true)} title="Delete" /> setShowMenu(false)}> {ids?.length === 0 ? ( <>This irreversibly deletes records from the app. Are you sure? ) : ( <>This will delete {ids?.length} record(s). Are you sure? )} ) }