Files
overleaf-cep/services/web/frontend/js/features/ide-react/components/rail/rail-help-dropdown.tsx
T
Rebeka Dekany 1ee87a823d Unify component wrappers and OL-prefix dropdown components (#35152)
* Rename dropdown primitives to OL-prefixed components

* Migrate all consumers to OL-prefixed dropdown components

* Migrate subscription dropdown shells to OL components

* Update pdf-preview story to OL-prefixed dropdown components

* Migrate navbar and spelling dropdowns to OL components

* Move dropdown primitives to ol/ol-dropdown-menu, remove BS5 import aliases

* Rename dropdown prop types to OL-prefixed, clean up BS5 import aliases

* Widen OLDropdownItem/Toggle/Menu props to include AriaAttributes and data-*

GitOrigin-RevId: 0babce46867849b3f176bac8cf1652dc76fd34da
2026-09-17 11:23:43 +00:00

49 lines
1.4 KiB
TypeScript

import getMeta from '@/utils/meta'
import { useTranslation } from 'react-i18next'
import { useRailContext } from '@/features/ide-react/context/rail-context'
import { useCallback } from 'react'
import {
OLDropdownDivider,
OLDropdownItem,
OLDropdownMenu,
} from '@/shared/components/ol/ol-dropdown-menu'
export default function RailHelpDropdown() {
const showSupport = getMeta('ol-showSupport')
const showDocumentation = getMeta('ol-wikiEnabled')
const { t } = useTranslation()
const { setActiveModal } = useRailContext()
const openKeyboardShortcutsModal = useCallback(() => {
setActiveModal('keyboard-shortcuts')
}, [setActiveModal])
const openContactUsModal = useCallback(() => {
setActiveModal('contact-us')
}, [setActiveModal])
return (
<OLDropdownMenu>
<OLDropdownItem onClick={openKeyboardShortcutsModal}>
{t('keyboard_shortcuts')}
</OLDropdownItem>
{showDocumentation && (
<OLDropdownItem
href="/learn"
role="menuitem"
target="_blank"
rel="noopener noreferrer"
>
{t('documentation')}
</OLDropdownItem>
)}
{showSupport && (
<>
<OLDropdownDivider />
<OLDropdownItem onClick={openContactUsModal}>
{t('contact_us')}
</OLDropdownItem>
</>
)}
</OLDropdownMenu>
)
}