prosekit/react
ProseKitProps
children?: ReactNode
editor: Editor
ReactMarkViewOptions
Options for defineReactMarkView.
as?: MarkViewDOMSpec
component: ReactMarkViewComponent
contentAs?: MarkViewDOMSpec
destroy?: () => void
ignoreMutation?: (mutation: ViewMutationRecord) => boolean | void
name: string
The name of the mark type.
ReactMarkViewProps
contentRef: MarkViewContentRef
mark: Mark
view: EditorView
ReactNodeViewOptions
Options for defineReactNodeView.
as?: NodeViewDOMSpec
component: ReactNodeViewComponent
contentAs?: NodeViewDOMSpec
deselectNode?: () => void
destroy?: () => void
ignoreMutation?: (mutation: ViewMutationRecord) => boolean | void
name: string
The name of the node type.
onUpdate?: () => void
selectNode?: () => void
setSelection?: (anchor: number, head: number, root: Document | ShadowRoot) => void
stopEvent?: (event: Event) => boolean
update?: (node: Node, decorations: readonly Decoration[], innerDecorations: DecorationSource) => boolean | void
ReactNodeViewProps
contentRef: NodeViewContentRef
decorations: readonly Decoration[]
getPos: () => undefined | number
innerDecorations: DecorationSource
node: Node
selected: boolean
setAttrs: (attrs: Attrs) => void
view: EditorView
UseExtensionOptions
editor?: Editor
The editor to add the extension to. If not provided, it will use the editor from the nearest
ProseKit
component.priority?: Priority
Optional priority to add the extension with.
ReactMarkViewComponent
Type: ComponentType<ReactMarkViewProps>
ReactNodeViewComponent
Type: ComponentType<ReactNodeViewProps>
ProseKit
The root component for a ProseKit editor.
Type: ComponentType<ProseKitProps>
defineReactMarkView
function defineReactMarkView(options: ReactMarkViewOptions): Extension
Defines a mark view using a React component.
defineReactNodeView
function defineReactNodeView(options: ReactNodeViewOptions): Extension
Defines a node view using a React component.
useDocChange
function useDocChange(handler: (doc: Node) => void, options?: UseExtensionOptions): void
Calls the given handler whenever the editor document changes.
useEditor
function useEditor<E extends Extension>(options?: { update?: boolean }): Editor<E>
Retrieves the editor instance from the nearest ProseKit component.
useExtension
function useExtension(extension: null | Extension, options?: UseExtensionOptions): void
Add an extension to the editor.
useKeymap
function useKeymap(keymap: Keymap, options?: UseExtensionOptions): void
useStateUpdate
function useStateUpdate(handler: (state: EditorState) => void, options?: UseExtensionOptions): void
Calls the given handler whenever the editor state changes.