Plugins

Covers Engine Plugin SDK 2.0.0 · Interface Plugin SDK 0.2.0

MarkdownRenderer

Shared host Markdown renderer. The host owns React, TipTap, and ProseMirror.

Import

import { MarkdownRenderer } from "@dartwic/interface-sdk/markdown";

Declaration

export const MarkdownRenderer: HostComponent<MarkdownRendererProps>;

MarkdownRendererProps

Content, editing controls, chips, collaboration, and callbacks for the host Markdown renderer.

export interface MarkdownRendererProps {
    [name: string]: unknown;
    value: string;
    mode?: MarkdownMode;
    editable?: boolean;
    lightweight?: boolean;
    chips?: MarkdownChipDefinition[];
    getChannelDropActions?: (context: MarkdownChannelDropContext) => MarkdownDropAction[];
    editorRef?: {current: MarkdownRendererHandle | null};
    defaultOrigin?: string;
    commandEnabled?: boolean;
    lineNumberMode?: MarkdownLineNumberMode;
    showToolbar?: boolean;
    showToc?: boolean;
    showGutter?: boolean;
    tocOpen?: boolean;
    closeTocOnHeadingClick?: boolean;
    onTocOpenChange?: (open: boolean) => void;
    onModeChange?: (mode: MarkdownMode) => void;
    onCommandEnabledChange?: (enabled: boolean) => void;
    onLineNumberModeChange?: (mode: MarkdownLineNumberMode) => void;
    onMarkdownChange?: (markdown: string) => void;
    onTransactionBatch?: HostEventHandler;
    onPresenceChange?: (selection: MarkdownSelection) => void;
    onViewCursorPresenceChange?: (position: {x: number; y: number} | null) => void;
    onUndoRedoStateChange?: HostEventHandler;
    onFocusChange?: (focused: boolean) => void;
    onSelectedTokenChange?: (tokenId: string | null) => void;
    remoteParticipants?: Record<string, MarkdownRemoteParticipant>;
    className?: string;
    titleText?: string;
}
PropTypeRequirementDescription
[nameunknownRequired
valuestringRequired
modeMarkdownModeOptional
editablebooleanOptional
lightweightbooleanOptional
chipsMarkdownChipDefinition[]Optional
getChannelDropActions(context: MarkdownChannelDropContext) => MarkdownDropAction[]Optional
editorRef{current: MarkdownRendererHandle | null}Optional
defaultOriginstringOptional
commandEnabledbooleanOptional
lineNumberModeMarkdownLineNumberModeOptional
showToolbarbooleanOptional
showTocbooleanOptional
showGutterbooleanOptional
tocOpenbooleanOptional
closeTocOnHeadingClickbooleanOptional
onTocOpenChange(open: boolean) => voidOptional
onModeChange(mode: MarkdownMode) => voidOptional
onCommandEnabledChange(enabled: boolean) => voidOptional
onLineNumberModeChange(mode: MarkdownLineNumberMode) => voidOptional
onMarkdownChange(markdown: string) => voidOptional
onTransactionBatchHostEventHandlerOptional
onPresenceChange(selection: MarkdownSelection) => voidOptional
onViewCursorPresenceChange(position: {x: number; y: number} | null) => voidOptional
onUndoRedoStateChangeHostEventHandlerOptional
onFocusChange(focused: boolean) => voidOptional
onSelectedTokenChange(tokenId: string | null) => voidOptional
remoteParticipantsRecord<string, MarkdownRemoteParticipant>Optional
classNamestringOptional
titleTextstringOptional