import { WebApplication } from '@/Application/WebApplication' import { UIFeature, GetDarkThemeFeature } from '@standardnotes/snjs' import { TOGGLE_DARK_MODE_COMMAND } from '@standardnotes/ui-services' import { classNames } from '@standardnotes/utils' import { useEffect, useRef, useState } from 'react' import { useCommandService } from '../CommandProvider' import Icon from '../Icon/Icon' import Popover from '../Popover/Popover' import QuickSettingsMenu from '../QuickSettingsMenu/QuickSettingsMenu' import StyledTooltip from '../StyledTooltip/StyledTooltip' import RoundIconButton from '../Button/RoundIconButton' type Props = { application: WebApplication isMobileNavigation?: boolean } const QuickSettingsButton = ({ application, isMobileNavigation = false }: Props) => { const buttonRef = useRef(null) const commandService = useCommandService() const [isOpen, setIsOpen] = useState(false) const toggleMenu = () => setIsOpen(!isOpen) useEffect(() => { return commandService.addCommandHandler({ command: TOGGLE_DARK_MODE_COMMAND, category: 'General', description: 'Toggle dark mode', onKeyDown: () => { void application.componentManager.toggleTheme(new UIFeature(GetDarkThemeFeature())) }, }) }, [application, commandService]) return ( <> {isMobileNavigation ? ( ) : ( )} ) } export default QuickSettingsButton