import { Popover } from '@headlessui/react' import { type NavigateFunction, useLocation } from 'react-router-dom' import { CustomIcon } from '@src/components/CustomIcon' import Tooltip from '@src/components/Tooltip' import { useAbsoluteFilePath } from '@src/hooks/useAbsoluteFilePath' import { useMenuListener } from '@src/hooks/useMenu' import { openExternalBrowserIfDesktop } from '@src/lib/openWindow' import { PATHS } from '@src/lib/paths' import { codeManager, kclManager } from '@src/lib/singletons' import type { WebContentSendPayload } from '@src/menu/channels' import { acceptOnboarding, catchOnboardingWarnError, } from '@src/routes/Onboarding/utils' import { onboardingStartPath } from '@src/lib/onboardingPaths' import { reportRejection } from '@src/lib/trap' import { isDesktop } from '@src/lib/isDesktop' const HelpMenuDivider = () => (
) export function HelpMenu({ navigate = () => {}, }: { navigate?: NavigateFunction }) { const location = useLocation() const filePath = useAbsoluteFilePath() const resetOnboardingWorkflow = () => { const props = { onboardingStatus: onboardingStartPath, navigate, codeManager, kclManager, } acceptOnboarding(props).catch((reason) => catchOnboardingWarnError(reason, props) ) } const cb = (data: WebContentSendPayload) => { if (data.menuLabel === 'Help.Replay onboarding tutorial') { resetOnboardingWorkflow() } } useMenuListener(cb) return (