import VisuallyHidden from '@reach/visually-hidden' import { observer } from 'mobx-react-lite' import { FunctionComponent, useCallback } from 'react' import Icon from '@/Components/Icon/Icon' import { NotesController } from '@/Controllers/NotesController' type Props = { className?: string notesController: NotesController onClickPreprocessing?: () => Promise } const PinNoteButton: FunctionComponent = ({ className = '', notesController, onClickPreprocessing }: Props) => { const notes = notesController.selectedNotes const pinned = notes.some((note) => note.pinned) const togglePinned = useCallback(async () => { if (onClickPreprocessing) { await onClickPreprocessing() } if (!pinned) { notesController.setPinSelectedNotes(true) } else { notesController.setPinSelectedNotes(false) } }, [onClickPreprocessing, pinned, notesController]) return ( ) } export default observer(PinNoteButton)