import { IconButton, Menu, MenuButton, MenuGroup, MenuItem, MenuList, Portal, useDisclosure, useGlobalMenuClose, } from '@invoke-ai/ui-library'; import AboutModal from 'features/system/components/AboutModal/AboutModal'; import HotkeysModal from 'features/system/components/HotkeysModal/HotkeysModal'; import { useFeatureStatus } from 'features/system/hooks/useFeatureStatus'; import { discordLink, githubLink } from 'features/system/store/constants'; import { memo } from 'react'; import { useTranslation } from 'react-i18next'; import { PiBugBeetleBold, PiGearSixFill, PiInfoBold, PiKeyboardBold, PiShareNetworkFill, PiToggleRightFill, PiUsersBold, } from 'react-icons/pi'; import { RiDiscordFill, RiGithubFill } from 'react-icons/ri'; import SettingsModal from './SettingsModal'; import { SettingsUpsellMenuItem } from './SettingsUpsellMenuItem'; const SettingsMenu = () => { const { t } = useTranslation(); const { isOpen, onOpen, onClose } = useDisclosure(); useGlobalMenuClose(onClose); const isBugLinkEnabled = useFeatureStatus('bugLink'); const isDiscordLinkEnabled = useFeatureStatus('discordLink'); const isGithubLinkEnabled = useFeatureStatus('githubLink'); return ( } boxSize={8} /> {isGithubLinkEnabled && ( }> {t('common.githubLabel')} )} {isBugLinkEnabled && ( }> {t('common.reportBugLabel')} )} {isDiscordLinkEnabled && ( }> {t('common.discordLabel')} )} }> {t('common.hotkeysLabel')} }> {t('common.settingsLabel')} }> {t('accessibility.about')} ); }; export default memo(SettingsMenu);