editor-left-menu.tsx 926 B

123456789101112131415161718192021222324252627282930
  1. import DownloadMenu from './download-menu'
  2. import ActionsMenu from './actions-menu'
  3. import HelpMenu from './help-menu'
  4. import { useLayoutContext } from '../../../shared/context/layout-context'
  5. import classNames from 'classnames'
  6. import SyncMenu from './sync-menu'
  7. import SettingsMenu from './settings-menu'
  8. export default function EditorLeftMenu() {
  9. const { leftMenuShown, setLeftMenuShown } = useLayoutContext()
  10. return (
  11. <>
  12. <aside
  13. id="left-menu"
  14. className={classNames('full-size', { shown: leftMenuShown })}
  15. >
  16. <DownloadMenu />
  17. <ActionsMenu />
  18. <SyncMenu />
  19. <SettingsMenu />
  20. <HelpMenu />
  21. </aside>
  22. {leftMenuShown ? (
  23. // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
  24. <div id="left-menu-mask" onClick={() => setLeftMenuShown(false)} />
  25. ) : null}
  26. </>
  27. )
  28. }