Skip to content
GitHub

prosekit/svelte

editor: Editor

Options for defineSvelteMarkView.

as?: MarkViewDOMSpec

component: SvelteMarkViewComponent

contentAs?: MarkViewDOMSpec

destroy?: () => void

ignoreMutation?: (mutation: ViewMutationRecord) => boolean | void

name: string

The name of the mark type.

contentRef: (element: null | HTMLElement) => void

mark: Writable<Mark>

view: EditorView

Options for defineSvelteNodeView.

as?: NodeViewDOMSpec

component: SvelteNodeViewComponent

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: ProseMirrorNode, decorations: readonly Decoration[], innerDecorations: DecorationSource) => boolean | void

contentRef: (element: null | HTMLElement) => void

decorations: Writable<readonly Decoration[]>

getPos: () => undefined | number

innerDecorations: Writable<DecorationSource>

node: Writable<ProseMirrorNode>

selected: Writable<boolean>

setAttrs: (attrs: Attrs) => void

view: EditorView

editor?: Editor<any>

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.

Type: Component<SvelteMarkViewProps>

Type: Component<SvelteNodeViewProps>

The root component for a ProseKit editor.

Type: typeof SvelteComponent

function defineSvelteMarkView(options: SvelteMarkViewOptions): Extension

Defines a mark view using a Svelte component.

function defineSvelteNodeView(options: SvelteNodeViewOptions): Extension

Defines a node view using a Svelte component.

function useDocChange(handler: (doc: ProseMirrorNode) => void, options?: UseExtensionOptions): void

Calls the given handler whenever the editor document changes.

function useEditor<E extends Extension<ExtensionTyping<any, any, any>>>(options?: { update?: boolean }): Readable<Editor<E>>

Retrieves the editor instance from the nearest ProseKit component.

function useExtension<T extends Extension<ExtensionTyping<any, any, any>>>(extension: Readable<null | T>, options?: UseExtensionOptions): void

Add an extension to the editor.

function useKeymap(keymapStore: Readable<Keymap>, options?: UseExtensionOptions): void
function useStateUpdate(handler: (state: EditorState) => void, options?: UseExtensionOptions): void

Calls the given handler whenever the editor state changes.