'use client'; import * as React from 'react'; import type { DropdownMenuProps } from '@radix-ui/react-dropdown-menu'; import { insertInlineEquation } from '@platejs/math'; import { InfoIcon, KeyboardIcon, MoreHorizontalIcon, RadicalIcon, SubscriptIcon, SuperscriptIcon, } from 'lucide-react'; import { KEYS } from 'platejs'; import { useEditorRef } from 'platejs/react'; import { DropdownMenu, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'; import { ToolbarButton } from './toolbar'; export function MoreToolbarButton(props: DropdownMenuProps) { const editor = useEditorRef(); const [open, setOpen] = React.useState(false); return ( { editor.tf.toggleMark(KEYS.kbd); editor.tf.collapse({ edge: 'end' }); editor.tf.focus(); }} > Keyboard input { editor.tf.toggleMark(KEYS.sup, { remove: KEYS.sub, }); editor.tf.focus(); }} > Superscript {/* (⌘+,) */} { editor.tf.toggleMark(KEYS.sub, { remove: KEYS.sup, }); editor.tf.focus(); }} > Subscript {/* (⌘+.) */} { insertInlineEquation(editor); editor.tf.focus(); }} > Equation { editor.tf.insertNodes( editor.api.create.block({ type: KEYS.callout }), { select: true } ); editor.tf.focus(); }} > Callout ); }