import { DropdownHeader } from '@/shared/components/dropdown/dropdown-menu'
import { ToolbarButtonMenu } from './button-menu'
import { emitToolbarEvent } from '../../extensions/toolbar/utils/analytics'
import MaterialIcon from '../../../../shared/components/material-icon'
import { useTranslation } from 'react-i18next'
import { useCodeMirrorViewContext } from '../codemirror-context'
import { useEditorContext } from '@/shared/context/editor-context'
import {
wrapInDisplayMath,
wrapInInlineMath,
} from '../../extensions/toolbar/commands'
import { memo } from 'react'
import OLListGroupItem from '@/shared/components/ol/ol-list-group-item'
import sparkleWhite from '@/shared/svgs/sparkle-small-white.svg'
import sparkle from '@/shared/svgs/ai-sparkle-text.svg'
import getMeta from '@/utils/meta'
export const MathDropdown = memo(function MathDropdown() {
const { t } = useTranslation()
const view = useCodeMirrorViewContext()
const { writefullInstance } = useEditorContext()
const showAiFeaturesDisabled = getMeta('ol-showAiFeaturesDisabled')
const renderAIButton = writefullInstance || showAiFeaturesDisabled
return (
}
>
{renderAIButton && (
<>
{t('toolbar_insert_math_lowercase')}
{
writefullInstance?.openEquationGenerator()
}}
>
{t('generate_from_text_or_image')}
>
)}
{
emitToolbarEvent(view, 'toolbar-inline-math')
event.preventDefault()
wrapInInlineMath(view)
view.focus()
}}
>
{t('inline')}
{
emitToolbarEvent(view, 'toolbar-display-math')
event.preventDefault()
wrapInDisplayMath(view)
view.focus()
}}
>
{t('display')}
)
})