Skip to main content

prosemirror-paste-rules

package prosemirror-paste-rules

function isInCode()

Check whether the current selection is completely contained within a code block or mark.

Signature:

export declare function isInCode(selection: Selection, { contained }?: IsInCodeOptions): boolean;

Parameters:

ParameterTypeDescription
selectionSelection
{ contained }IsInCodeOptions(Optional)

Returns:

boolean

function pasteRules()

Create the paste plugin handler.

Signature:

export declare function pasteRules(pasteRules: PasteRule[]): Plugin;

Parameters:

ParameterTypeDescription
pasteRulesPasteRule[]

Returns:

Plugin

interface FileDropHandlerProps

Signature:

export interface FileDropHandlerProps 

property event

Signature:

event: DragEvent;

property files

All the matching files

Signature:

files: File[];

property pos

Signature:

pos: number;

property type

Signature:

type: 'drop';

property view

Signature:

view: EditorView;

interface FilePasteHandlerProps

Signature:

export interface FilePasteHandlerProps 

property event

Signature:

event: ClipboardEvent;

property files

All the matching files

Signature:

files: File[];

property selection

Signature:

selection: Selection;

property type

Signature:

type: 'paste';

property view

Signature:

view: EditorView;

interface FilePasteRule

For handling pasting files and also file drops.

Signature:

export interface FilePasteRule extends BasePasteRule 

Extends: BasePasteRule

(Some inherited members may not be shown because they are not represented in the documentation.)

property fileHandler

Return false to defer to the next image handler.

The file

Signature:

fileHandler: (props: FileHandlerProps) => boolean;

property ignoredNodes

The names of nodes for which this paste rule can be ignored. This means that if content is within any of the nodes provided the transformation will be ignored.

Signature:

ignoredNodes?: string[];

property regexp

A regex test for the file type.

Signature:

regexp?: RegExp;

property type

Signature:

type: 'file';

interface IsInCodeOptions

Signature:

export interface IsInCodeOptions 

property contained

When this is set to true ensure the selection is fully contained within a code block. This means that selections that span multiple characters must all be within a code region for it to return true.

Signature:

contained?: boolean;

interface MarkPasteRule

For adding marks to text when a paste rule is activated.

Signature:

export interface MarkPasteRule extends BaseContentPasteRule 

Extends: BaseContentPasteRule

(Some inherited members may not be shown because they are not represented in the documentation.)

property markType

The prosemirror mark type instance.

Signature:

markType: MarkType;

property replaceSelection

Set to true to replace the selection. When the regex matches for the selected text.

Can be a function which receives the text that will be replaced.

Signature:

replaceSelection?: boolean | ((replacedText: string) => boolean);

property transformMatch

A function that transforms the match into the desired text value.

Return an empty string to delete all content.

Return false to invalidate the match.

Signature:

transformMatch?: (match: RegExpExecArray) => string | null | undefined | false;

property type

The type of rule.

Signature:

type: 'mark';

interface NodePasteRule

Signature:

export interface NodePasteRule extends BaseContentPasteRule 

Extends: BaseContentPasteRule

(Some inherited members may not be shown because they are not represented in the documentation.)

property getContent

A function that transforms the match into the content to use when creating a node.

Pass () => {} to remove the matched text.

If this function is undefined, then the text node that is cut from the match will be used as the content.

Signature:

getContent?: (match: RegExpExecArray) => Fragment | ProsemirrorNode | ProsemirrorNode[] | undefined | void;

property nodeType

The node type to create.

Signature:

nodeType: NodeType;

property type

The type of rule.

Signature:

type: 'node';

interface TextPasteRule

For handling simpler text updates.

Signature:

export interface TextPasteRule extends BaseRegexPasteRule 

Extends: BaseRegexPasteRule

(Some inherited members may not be shown because they are not represented in the documentation.)

property transformMatch

A function that transforms the match into the desired text value.

Return an empty string to delete all content.

Return false to invalidate the match.

Signature:

transformMatch?: (match: RegExpExecArray) => string | null | undefined | false;

property type

The type of rule.

Signature:

type: 'text';

type FileHandlerProps

Signature:

export declare type FileHandlerProps = FilePasteHandlerProps | FileDropHandlerProps;

References: FilePasteHandlerProps, FileDropHandlerProps

type PasteRule

Signature:

export declare type PasteRule = FilePasteRule | TextPasteRule | NodePasteRule | MarkPasteRule;

References: FilePasteRule, TextPasteRule, NodePasteRule, MarkPasteRule