interface EmojiPickerPopupProps

Passed to EmojiPickerPopup by TextEditor, which keeps the refs to detect outside presses, focus the search and step the keyboard into the grid.

Properties

floatRef: Ref<HTMLDivElement>
searchRef: Ref<HTMLInputElement>
viewportRef: Ref<HTMLDivElement>

Focused by TextEditor to hand the arrow keys to frimousse.

style: CSSProperties

From useAnchoredFloat, or hidden until it has placed the picker.

inline: boolean

Set for a :query typed in the textarea. The search field then only mirrors query and can't take focus.

query: string
onQueryChange: (query: string) => void
onSelect: (emoji: string) => void
onClose: () => void
onKeyDownCapture: (e: KeyboardEvent<HTMLDivElement>) => void

Runs before frimousse sees the key, so it can take Escape and Enter.

Usage

import { type EmojiPickerPopupProps } from "src/components/editor/EmojiPickerPopup.tsx";