core-utils
package @remirror/core-utils
function applyClonedTransaction()
Apply the steps of a cloned transaction to the original transaction tr
.
Signature:
export declare function applyClonedTransaction(props: ApplyClonedTransactionProps): void;
Parameters:
Parameter | Type | Description |
---|---|---|
props | ApplyClonedTransactionProps |
Returns:
void
function areSchemasCompatible()
Check that the nodes and marks present on schemaA
are also present on schemaB
.
Signature:
export declare function areSchemasCompatible(schemaA: EditorSchema, schemaB: EditorSchema): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
schemaA | EditorSchema | |
schemaB | EditorSchema |
Returns:
boolean
function areStatesEqual()
Check if two states are equal.
Signature:
export declare function areStatesEqual(stateA: EditorState, stateB: EditorState, options?: IsStateEqualOptions): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
stateA | EditorState | |
stateB | EditorState | |
options | IsStateEqualOptions | (Optional) |
Returns:
boolean
function atDocEnd()
Checks whether the cursor is at the end of the state.doc
Signature:
export declare function atDocEnd(state: EditorState): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
state | EditorState | the editor state |
Returns:
boolean
function atDocStart()
Checks whether the cursor is at the beginning of the state.doc
Signature:
export declare function atDocStart(state: EditorState): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
state | EditorState | the editor state |
Returns:
boolean
function canInsertNode()
Check if the specified type (NodeType) can be inserted at the current selection point.
Signature:
export declare function canInsertNode(state: EditorState, type: NodeType): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
state | EditorState | the editor state |
type | NodeType | the node type |
Returns:
boolean
function chainKeyBindingCommands()
Chains together keybindings, allowing for the same key binding to be used across multiple extensions without overriding behavior.
Signature:
export declare function chainKeyBindingCommands(...commands: KeyBindingCommandFunction[]): KeyBindingCommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
commands | KeyBindingCommandFunction[] |
Returns:
KeyBindingCommandFunction
Remarks:
When next
is called it hands over full control of the keybindings to the function that invokes it.
function cloneTransaction()
Creates a new transaction object from a given transaction. This is useful when applying changes to a transaction, that you may want to rollback.
function() applyUpdateIfValid(state: EditorState) {
const tr = cloneTransaction(state.tr);
tr.insertText('hello');
if (!checkValid(tr)) {
return;
}
applyClonedTransaction({ clone: tr, tr: state.tr });
}
The above example applies a transaction to the cloned transaction then checks to see if the changes are still valid and if they are applies the mutative changes to the original state transaction.
Signature:
export declare function cloneTransaction(tr: Transaction): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction | the prosemirror transaction |
Returns:
Transaction
function composeTransactionSteps()
Returns a new transaction by combining all steps of the passed transactions onto the previous state
Signature:
export declare function composeTransactionSteps(transactions: readonly Transaction[], oldState: EditorState): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
transactions | readonly Transaction[] | |
oldState | EditorState |
Returns:
Transaction
function containsAttributes()
Determines if a Node or Mark contains the given attributes in its attributes set
Signature:
export declare function containsAttributes(nodeOrMark: ProsemirrorNode | Mark, attrs: ProsemirrorAttributes): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
nodeOrMark | ProsemirrorNode | Mark | The Node or Mark to check |
attrs | ProsemirrorAttributes | The set of attributes it must contain |
Returns:
boolean
function containsNodesOfType()
Returns true
if a given node contains nodes of a given nodeType
.
Signature:
export declare function containsNodesOfType(props: ContainsProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | ContainsProps |
Returns:
boolean
Remarks:
if (containsNodesOfType({ node: state.doc, type: schema.nodes.listItem })) {
log('contained')
}
function convertPixelsToDomUnit()
Convert the received font size to a valid unit
Signature:
export declare function convertPixelsToDomUnit(size: string, to: DomSizeUnit, element?: Element | null): number;
Parameters:
Parameter | Type | Description |
---|---|---|
size | string | |
to | DomSizeUnit | |
element | Element | null | (Optional) |
Returns:
number
function createDocumentNode()
Creates a document node from the passed in content and schema.
This supports a primitive form of error handling. When an error occurs, the onError
handler will be called along with the error produced by the Schema and it is up to you as a developer to decide how to transform the invalid content into valid content.
Please note that the onError
is only called when the content is a JSON object. It is not called for a string
, the ProsemirrorNode
or the EditorState
. The reason for this is that the string
requires a stringHandler
which is defined by the developer and transforms the content. That is the point that error's should be handled. The editor state and the ProsemirrorNode
are similar. They need to be created by the developer and as a result, the errors should be handled at the point of creation rather than when the document is being applied to the editor.
Signature:
export declare function createDocumentNode(props: CreateDocumentNodeProps): ProsemirrorNode;
Parameters:
Parameter | Type | Description |
---|---|---|
props | CreateDocumentNodeProps |
Returns:
ProsemirrorNode
function endPositionOfParent()
Get the end position of the parent of the current resolve position
Signature:
export declare function endPositionOfParent($pos: ResolvedPos): number;
Parameters:
Parameter | Type | Description |
---|---|---|
$pos | ResolvedPos | the resolved ProseMirror position |
Returns:
number
function extractPixelSize()
Extract the pixel value from a dimension string or CSS function.
Supports the CSS functions min
, max
and clamp
even when nested.
Does not support percentage units or the calc
function.
Adapted from https://github.com/PacoteJS/pacote/blob/20cb1e3a999ed47a8d52b03b750290cf36b8e270/packages/pixels/src/index.ts
Signature:
export declare function extractPixelSize(size: string, element?: Element | null): number;
Parameters:
Parameter | Type | Description |
---|---|---|
size | string | |
element | Element | null | (Optional) |
Returns:
number
function findChildren()
Iterates over descendants of a given node
, returning child nodes predicate returns truthy for.
Signature:
export declare function findChildren(props: FindChildrenProps): NodeWithPosition[];
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindChildrenProps |
Returns:
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
const textNodes = findChildren({
node: state.doc,
predicate: child => child.isText,
descend: false
});
function findChildrenByAttribute()
Iterates over descendants of a given node
, returning child nodes predicate returns truthy for.
Signature:
export declare function findChildrenByAttribute(props: FindChildrenByAttrProps): NodeWithPosition[];
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindChildrenByAttrProps |
Returns:
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
The following will match any node with an id
of any value (as long as the attribute exists) and a colspan
of 2
.
const mergedCells = findChildrenByAttribute({
node: table,
attrs: { colspan: 2, id: (_, exists) => exists }
});
function findChildrenByMark()
Iterates over descendants of a given node
, returning child nodes that have a mark of a given markType.
Signature:
export declare function findChildrenByMark(paramter: FindChildrenByMarkProps): NodeWithPosition[];
Parameters:
Parameter | Type | Description |
---|---|---|
paramter | FindChildrenByMarkProps |
Returns:
Remarks:
It doesn't descend into a node
when descend argument is false
(defaults to true
).
const nodes = findChildrenByMark({ node: state.doc, type: schema.marks.strong });
function findChildrenByNode()
Iterates over descendants of a given node
, returning child nodes of a given nodeType.
Signature:
export declare function findChildrenByNode(props: FindChildrenByNodeProps): NodeWithPosition[];
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindChildrenByNodeProps |
Returns:
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
const cells = findChildrenByNode({ node: state.doc, type: state.schema.nodes.tableCell });
function findElementAtPosition()
Returns DOM reference of a node at a given position
.
Signature:
export declare function findElementAtPosition(position: number, view: EditorView): HTMLElement;
Parameters:
Parameter | Type | Description |
---|---|---|
position | number | the prosemirror position |
view | EditorView | the editor view |
Returns:
HTMLElement
Remarks:
If the node type is of type TEXT_NODE
it will return the reference of the parent node.
A simple use case
const element = findElementAtPosition($from.pos, view);
function findNodeAtPosition()
Finds the node at the resolved position.
Signature:
export declare function findNodeAtPosition($pos: ResolvedPos): FindProsemirrorNodeResult;
Parameters:
Parameter | Type | Description |
---|---|---|
$pos | ResolvedPos | the resolve position in the document |
Returns:
function findNodeAtSelection()
Finds the node at the passed selection.
Signature:
export declare function findNodeAtSelection(selection: Selection): FindProsemirrorNodeResult;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection |
Returns:
function findParentNode()
Iterates over parent nodes, returning the closest node and its start position that the predicate
returns truthy for. start
points to the start position of the node, pos
points directly before the node.
const predicate = node => node.type === schema.nodes.blockquote;
const parent = findParentNode({ predicate, selection });
Signature:
export declare function findParentNode(props: FindParentNodeProps): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindParentNodeProps |
Returns:
FindProsemirrorNodeResult | undefined
function findParentNodeOfType()
Iterates over parent nodes, returning closest node of a given nodeType
. start
points to the start position of the node, pos
points directly before the node.
```ts const parent = findParentNodeOfType({types: schema.nodes.paragraph, selection}); ```
Signature:
export declare function findParentNodeOfType(props: FindParentNodeOfTypeProps): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindParentNodeOfTypeProps |
Returns:
FindProsemirrorNodeResult | undefined
function findPositionOfNodeAfter()
Warning: This API is now obsolete.
This util is hard to use and not that useful
Returns the position of the node after the current position, selection or state.
const pos = findPositionOfNodeBefore(tr.selection);
Signature:
export declare function findPositionOfNodeAfter(value: Selection | ResolvedPos | EditorState): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
value | Selection | ResolvedPos | EditorState |
Returns:
FindProsemirrorNodeResult | undefined
function findPositionOfNodeBefore()
Warning: This API is now obsolete.
This util is hard to use and not that useful
Returns position of the previous node.
const pos = findPositionOfNodeBefore(tr.selection);
Signature:
export declare function findPositionOfNodeBefore(value: Selection | ResolvedPos | EditorState | Transaction): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
value | Selection | ResolvedPos | EditorState | Transaction |
Returns:
FindProsemirrorNodeResult | undefined
function findSelectedNodeOfType()
Returns a node of a given nodeType
if it is selected. start
points to the start position of the node, pos
points directly before the node.
const { extension, inlineExtension, bodiedExtension } = schema.nodes;
const selectedNode = findSelectedNodeOfType({
types: [extension, inlineExtension, bodiedExtension],
selection,
});
Signature:
export declare function findSelectedNodeOfType(props: FindSelectedNodeOfTypeProps): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
props | FindSelectedNodeOfTypeProps |
Returns:
FindProsemirrorNodeResult | undefined
function getActiveNode()
Get node of a provided type with the provided attributes if it exists as a parent. Returns positional data for the node that was found.
Signature:
export declare function getActiveNode(props: GetActiveAttrsProps): FindProsemirrorNodeResult | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
props | GetActiveAttrsProps |
Returns:
FindProsemirrorNodeResult | undefined
function getChangedNodeRanges()
Get all the changed node ranges for a provided transaction.
Signature:
export declare function getChangedNodeRanges(tr: Transaction, StepTypes?: Array<AnyConstructor<Step>>): NodeRange[];
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction | the transaction received with updates applied. |
StepTypes | Array<AnyConstructor<Step>> | (Optional) the valid Step Constructors. Set to an empty array to accept all Steps. |
Returns:
NodeRange[]
function getChangedNodes()
Get all the changed nodes from the provided transaction.
The following example will give us all the text nodes in the provided transaction.
import { getChangedNodes } from 'remirror/core';
const changedTextNodes = getChangeNodes(tr, { descend: true, predicate: (node) => node.isText });
Signature:
export declare function getChangedNodes(tr: Transaction, options?: GetChangedNodesOptions): NodeWithPosition[];
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction | |
options | GetChangedNodesOptions | (Optional) |
Returns:
function getChangedRanges()
Get all the ranges of changes for the provided transaction.
This can be used to gather specific parts of the document which require decorations to be recalculated or where nodes should be updated.
This is adapted from the answer [here](https://discuss.prosemirror.net/t/find-new-node-instances-and-track-them/96/7)
Signature:
export declare function getChangedRanges(tr: Transaction, StepTypes?: Array<AnyConstructor<Step>>): ChangedRange[];
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction | the transaction received with updates applied. |
StepTypes | Array<AnyConstructor<Step>> | (Optional) the valid Step Constructors. Set to an empty array to accept all Steps. |
Returns:
ChangedRange[]
function getCursor()
Retrieve the current position of the cursor
Signature:
export declare function getCursor(selection: Selection): ResolvedPos | null | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection | the editor selection |
Returns:
ResolvedPos | null | undefined
a resolved position only when the selection is a text selection
function getDefaultBlockNode()
Get the default block node from the schema.
Signature:
export declare function getDefaultBlockNode(schema: EditorSchema): NodeType;
Parameters:
Parameter | Type | Description |
---|---|---|
schema | EditorSchema |
Returns:
NodeType
function getDefaultDocNode()
Get the default doc
node for a given schema.
Signature:
export declare function getDefaultDocNode(schema: EditorSchema): ProsemirrorNode | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
schema | EditorSchema |
Returns:
ProsemirrorNode | undefined
function getDocRange()
Get the full range of the selectable content in the ProseMirror doc
.
Signature:
export declare function getDocRange(doc: ProsemirrorNode): FromToProps;
Parameters:
Parameter | Type | Description |
---|---|---|
doc | ProsemirrorNode |
Returns:
FromToProps
function getFontSize()
Signature:
export declare function getFontSize(element?: Element | null): string;
Parameters:
Parameter | Type | Description |
---|---|---|
element | Element | null | (Optional) |
Returns:
string
function getInvalidContent()
Get the invalid parameter which is passed to the onError
handler.
Signature:
export declare function getInvalidContent<Extra extends object>({ json, schema, ...extra }: GetInvalidContentProps<Extra>): GetInvalidContentReturn<Extra>;
Parameters:
Parameter | Type | Description |
---|---|---|
{ json, schema, ...extra } | GetInvalidContentProps<Extra> |
Returns:
GetInvalidContentReturn<Extra>
function getMarkAttributes()
Retrieve the attributes for a mark.
Signature:
export declare function getMarkAttributes(trState: EditorState | Transaction, type: MarkType): ProsemirrorAttributes | false;
Parameters:
Parameter | Type | Description |
---|---|---|
trState | EditorState | Transaction | the editor state or a transaction |
type | MarkType | the mark type |
Returns:
ProsemirrorAttributes | false
function getMarkRange()
Retrieve the start
and end
position of a mark. The $pos
value should be calculated via tr.doc.resolve(number)
.
Signature:
export declare function getMarkRange($pos: ResolvedPos, type: string | MarkType, $end?: ResolvedPos): GetMarkRange | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
$pos | ResolvedPos | the resolved ProseMirror position |
type | string | MarkType | the mark type |
$end | ResolvedPos | (Optional) the end position to search until. When this is provided the mark will be checked for all point up until the To find all marks within a selection use [[ |
Returns:
GetMarkRange | undefined
Remarks:
function getMarkRanges()
Get all the ranges which contain marks for the provided selection.
Signature:
export declare function getMarkRanges(selection: Selection, type: string | MarkType): GetMarkRange[];
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection | |
type | string | MarkType |
Returns:
function getMarkType()
Get the mark type from a potential string value.
Signature:
export declare function getMarkType(type: string | MarkType, schema: EditorSchema): MarkType;
Parameters:
Parameter | Type | Description |
---|---|---|
type | string | MarkType | |
schema | EditorSchema |
Returns:
MarkType
function getMatchString()
Get matching string from a list or single value
Signature:
export declare function getMatchString(match: string | string[], index?: number): string;
Parameters:
Parameter | Type | Description |
---|---|---|
match | string | string[] | the match(es) |
index | number | (Optional) the zero-index point from which to start |
Returns:
string
Remarks:
Get attrs can be called with a direct match string or array of string matches. This method should be used to retrieve the required string.
The index of the matched array used defaults to 0 but can be updated via the second parameter.
function getNodeType()
Get the node type from a potential string value.
Signature:
export declare function getNodeType(type: string | NodeType, schema: EditorSchema): NodeType;
Parameters:
Parameter | Type | Description |
---|---|---|
type | string | NodeType | |
schema | EditorSchema |
Returns:
NodeType
function getRemirrorJSON()
A wrapper around state.doc.toJSON
which returns the state as a RemirrorJSON
object.
Signature:
export declare function getRemirrorJSON(content: EditorState | ProsemirrorNode): RemirrorJSON;
Parameters:
Parameter | Type | Description |
---|---|---|
content | EditorState | ProsemirrorNode |
Returns:
RemirrorJSON
function getSelectedGroup()
Takes an empty selection and expands it out to the nearest group not matching the excluded characters.
Signature:
export declare function getSelectedGroup(state: EditorState | Transaction, exclude: RegExp): GetSelectedGroup | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
state | EditorState | Transaction | the editor state or a transaction |
exclude | RegExp | the regex pattern to exclude |
Returns:
GetSelectedGroup | undefined
false if not a text selection or if no expansion available
Remarks:
Can be used to find the nearest selected word. See getSelectedWord()
function getSelectedWord()
Retrieves the nearest space separated word from the current selection.
Signature:
export declare function getSelectedWord(state: EditorState | Transaction): GetSelectedGroup | undefined;
Parameters:
Parameter | Type | Description |
---|---|---|
state | EditorState | Transaction | the editor state or transaction. |
Returns:
GetSelectedGroup | undefined
Remarks:
This always expands outward so that given: The tw<start>o words<end>
The selection would become The <start>two words<end>
In other words it expands until it meets an invalid character.
function getShortcutSymbols()
Convert a keyboard shortcut into symbols which and keys.
Signature:
export declare function getShortcutSymbols(shortcut: string): KeyboardSymbol[];
Parameters:
Parameter | Type | Description |
---|---|---|
shortcut | string |
Returns:
KeyboardSymbol[]
function getStyle()
Get the styles for a given property of an element.
Signature:
export declare function getStyle(element: HTMLElement, property: KebabCase<StringKey<CSSStyleDeclaration>>): string;
Parameters:
Parameter | Type | Description |
---|---|---|
element | HTMLElement | |
property | KebabCase<StringKey<CSSStyleDeclaration>> |
Returns:
string
function getTextContentFromSlice()
Retrieves the text content from a slice
Signature:
export declare function getTextContentFromSlice(slice: Slice): string;
Parameters:
Parameter | Type | Description |
---|---|---|
slice | Slice | the prosemirror slice |
Returns:
string
Remarks:
A utility that's useful for pulling text content from a slice which is usually created via selection.content()
function getTextSelection()
Get the nearest valid selection to the provided selection parameter.
Signature:
export declare function getTextSelection(selection: PrimitiveSelection, doc: ProsemirrorNode): Selection;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | PrimitiveSelection | |
doc | ProsemirrorNode |
Returns:
Selection
function hasTransactionChanged()
Check to see if a transaction has changed either the document or the current selection.
Signature:
export declare function hasTransactionChanged(tr: Transaction): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction | the transaction to check |
Returns:
boolean
function htmlToProsemirrorNode()
Convert a HTML string into a ProseMirror node. This can be used for the stringHandler
property in your editor when you want to support html.
import { htmlToProsemirrorNode } from 'remirror';
import { Remirror, useManager } from '@remirror/react';
const Editor = () => {
const manager = useManager([]);
return (
<Remirror
stringHandler={htmlToProsemirrorNode}
initialContent='<p>A wise person once told me to relax</p>'
>
<div />
</Remirror>
);
}
Signature:
export declare function htmlToProsemirrorNode(props: FragmentStringHandlerOptions): Fragment;
Parameters:
Parameter | Type | Description |
---|---|---|
props | FragmentStringHandlerOptions |
Returns:
Fragment
function htmlToProsemirrorNode()
Signature:
export declare function htmlToProsemirrorNode(props: NodeStringHandlerOptions): ProsemirrorNode;
Parameters:
Parameter | Type | Description |
---|---|---|
props | NodeStringHandlerOptions |
Returns:
ProsemirrorNode
function isAllSelection()
Predicate checking whether the selection is an AllSelection
.
Signature:
export declare function isAllSelection(value: unknown): value is AllSelection;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is AllSelection
function isChrome()
Taken from https://stackoverflow.com/a/4900484
Check that the browser is chrome. Supports passing a minimum version to check that it is a greater than or equal to this version.
Signature:
export declare function isChrome(minVersion?: number): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
minVersion | number | (Optional) |
Returns:
boolean
function isDefaultBlockNode()
Check if the provided node is a default block node.
Signature:
export declare function isDefaultBlockNode(node: ProsemirrorNode): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode |
Returns:
boolean
function isDefaultDocNode()
Check whether the provided doc node has the same value as the default empty node for the document. Basically checks that the document is untouched.
This is useful for extensions like the placeholder which only should be shown when the document matches the default empty state.
Signature:
export declare function isDefaultDocNode(doc: ProsemirrorNode, options?: DefaultDocNodeOptions): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
doc | ProsemirrorNode | |
options | DefaultDocNodeOptions | (Optional) |
Returns:
boolean
function isDocNode()
Checks whether a Prosemirror node is the top level doc
node
Signature:
export declare function isDocNode(node: ProsemirrorNode | null | undefined, schema?: EditorSchema): node is ProsemirrorNode;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode | null | undefined | the prosemirror node |
schema | EditorSchema | (Optional) the prosemirror schema to check against |
Returns:
node is ProsemirrorNode
function isDocNodeEmpty()
Checks if a node looks like an empty document.
Signature:
export declare function isDocNodeEmpty(node: ProsemirrorNode): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode | the prosemirror node |
Returns:
boolean
function isDomNode()
Checks whether the passed value is a valid dom node
Signature:
export declare function isDomNode(domNode: unknown): domNode is Node;
Parameters:
Parameter | Type | Description |
---|---|---|
domNode | unknown | the dom node |
Returns:
domNode is Node
function isEditorSchema()
Checks to see if the passed value is an instance of the editor schema
Signature:
export declare function isEditorSchema(value: unknown): value is EditorSchema;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is EditorSchema
function isEditorState()
Checks to see if the passed value is a Prosemirror Editor State
Signature:
export declare function isEditorState(value: unknown): value is PMEditorState | Readonly<PMEditorState>;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is PMEditorState | Readonly<PMEditorState>
function isElementDomNode()
Checks for an element node like <p>
or <div>
.
Signature:
export declare function isElementDomNode(domNode: unknown): domNode is HTMLElement;
Parameters:
Parameter | Type | Description |
---|---|---|
domNode | unknown | the dom node |
Returns:
domNode is HTMLElement
function isEmptyBlockNode()
Checks if the current node is a block node and empty.
Signature:
export declare function isEmptyBlockNode(node: ProsemirrorNode | null | undefined): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode | null | undefined | the prosemirror node |
Returns:
boolean
function isEndOfTextBlock()
Checks that the selection is an empty text selection at the end of its parent node.
Signature:
export declare function isEndOfTextBlock(selection: Selection): selection is TextSelection;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection |
Returns:
selection is TextSelection
function isMarkActive()
Checks that a mark is active within the selected region, or the current selection point is within a region with the mark active. Used by extensions to implement their active methods.
Signature:
export declare function isMarkActive(props: IsMarkActiveProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | IsMarkActiveProps | see [[IsMarkActiveProps ]] for options |
Returns:
boolean
function isMarkType()
Check to see if the passed value is a MarkType.
Signature:
export declare function isMarkType(value: unknown): value is MarkType;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is MarkType
function isNodeActive()
Checks whether the node type passed in is active within the region. Used by extensions to implement the active
method.
To ignore attrs
just leave the attrs object empty or undefined.
Signature:
export declare function isNodeActive(props: GetActiveAttrsProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | GetActiveAttrsProps | see [[GetActiveAttrsProps ]] |
Returns:
boolean
function isNodeOfType()
Checks if the type a given node
has a given nodeType
.
Signature:
export declare function isNodeOfType(props: NodeEqualsTypeProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | NodeEqualsTypeProps |
Returns:
boolean
function isNodeSelection()
Predicate checking whether the selection is a NodeSelection
Signature:
export declare function isNodeSelection(value: unknown): value is NodeSelection;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is NodeSelection
function isNodeType()
Check to see if the passed value is a NodeType.
Signature:
export declare function isNodeType(value: unknown): value is NodeType;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is NodeType
function isProsemirrorFragment()
Checks to see if the passed value is a ProsemirrorNode
Signature:
export declare function isProsemirrorFragment(value: unknown): value is Fragment;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is Fragment
function isProsemirrorMark()
Checks to see if the passed value is a ProsemirrorMark
Signature:
export declare function isProsemirrorMark(value: unknown): value is Mark;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is Mark
function isProsemirrorNode()
Checks to see if the passed value is a ProsemirrorNode
Signature:
export declare function isProsemirrorNode(value: unknown): value is ProsemirrorNode;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is ProsemirrorNode
function isRemirrorJSON()
Checks whether the passed in JSON is a valid object node
Signature:
export declare function isRemirrorJSON(value: unknown): value is RemirrorJSON;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is RemirrorJSON
function isResolvedPos()
Predicate checking whether the value is a ResolvedPosition.
Signature:
export declare function isResolvedPos(value: unknown): value is PMResolvedPos;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is PMResolvedPos
function isSafari()
Taken from https://stackoverflow.com/a/4900484
Check that the browser is safari. Supports passing a minimum version to check that it is a greater than or equal to this version.
Signature:
export declare function isSafari(minVersion?: number): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
minVersion | number | (Optional) |
Returns:
boolean
function isSelection()
Predicate checking whether the value is a Selection
Signature:
export declare function isSelection(value: unknown): value is Selection;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is Selection
function isSelectionEmpty()
Checks whether the selection or state is currently empty.
Signature:
export declare function isSelectionEmpty(value: Transaction | EditorState | Selection): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
value | Transaction | EditorState | Selection | the transaction selection or state |
Returns:
boolean
function isStartOfDoc()
Returns true when the selection is a text selection at the start of the document.
Signature:
export declare function isStartOfDoc(selection: Selection): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection |
Returns:
boolean
function isStartOfTextBlock()
Checks that the selection is an empty text selection at the start of its parent node.
Signature:
export declare function isStartOfTextBlock(selection: Selection): selection is TextSelection;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection |
Returns:
selection is TextSelection
function isTextDomNode()
Checks for a text node.
Signature:
export declare function isTextDomNode(domNode: unknown): domNode is Text;
Parameters:
Parameter | Type | Description |
---|---|---|
domNode | unknown | the dom node |
Returns:
domNode is Text
function isTextSelection()
Predicate checking whether the selection is a TextSelection
.
Signature:
export declare function isTextSelection(value: unknown): value is TextSelection;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is TextSelection
function isTransaction()
Checks to see if the passed value is a Prosemirror Transaction
Signature:
export declare function isTransaction(value: unknown): value is PMTransaction;
Parameters:
Parameter | Type | Description |
---|---|---|
value | unknown | the value to check |
Returns:
value is PMTransaction
function joinStyles()
Take the style
string attribute and combine it with the provided style object.
Signature:
export declare function joinStyles(styleObject: object, initialStyles?: string): string;
Parameters:
Parameter | Type | Description |
---|---|---|
styleObject | object | |
initialStyles | string | (Optional) |
Returns:
string
function lift()
Lift the selected block, or the closest ancestor block of the selection that can be lifted, out of its parent node.
Signature:
export declare function lift({ tr, dispatch }: Pick<CommandFunctionProps, 'tr' | 'dispatch'>): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
{ tr, dispatch } | Pick<CommandFunctionProps, 'tr' | 'dispatch'> |
Returns:
boolean
function markEqualsType()
Checks if the type a given node
has a given nodeType
.
Signature:
export declare function markEqualsType(props: MarkEqualsTypeProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | MarkEqualsTypeProps |
Returns:
boolean
function markInputRule()
Creates an input rule based on the provided regex for the provided mark type.
Signature:
export declare function markInputRule(props: MarkInputRuleProps): SkippableInputRule;
Parameters:
Parameter | Type | Description |
---|---|---|
props | MarkInputRuleProps |
Returns:
function mergeDOMRects()
Merge two DOMRect objects into a one big DOMRect object that contains both two DOMRect objects.
Signature:
export declare function mergeDOMRects(rect1: DOMRect, rect2: DOMRect): DOMRect;
Parameters:
Parameter | Type | Description |
---|---|---|
rect1 | DOMRect | the first DOMRect |
rect2 | DOMRect | the second DOMRect |
Returns:
DOMRect
function mergeKeyBindings()
This merges an array of keybindings into one keybinding with the priority given to the items earlier in the array. index: 0
has priority over index: 1
which has priority over index: 2
and so on.
This is for use on remirror keybindings. See mergeProsemirrorKeyBindings
for transforming the methods into ProsemirrorCommandFunction
's.
Signature:
export declare function mergeKeyBindings(extensionKeymaps: KeyBindings[]): KeyBindings;
Parameters:
Parameter | Type | Description |
---|---|---|
extensionKeymaps | KeyBindings[] |
Returns:
KeyBindings
function mergeProsemirrorKeyBindings()
This merges an array of keybindings into one keybinding with the priority given to the items earlier in the array. index: 0
has priority over index: 1
which has priority over index: 2
and so on.
This supports the [[ProsemirrorCommandFunction]] type signature where the state
, dispatch
and view
are passed as separate arguments.
Signature:
export declare function mergeProsemirrorKeyBindings(extensionKeymaps: KeyBindings[]): ProsemirrorKeyBindings;
Parameters:
Parameter | Type | Description |
---|---|---|
extensionKeymaps | KeyBindings[] |
Returns:
ProsemirrorKeyBindings
function nodeInputRule()
Creates a node input rule based on the provided regex for the provided node type.
Input rules transform content as the user types based on whether a match is found with a sequence of characters.
Signature:
export declare function nodeInputRule(props: NodeInputRuleProps): SkippableInputRule;
Parameters:
Parameter | Type | Description |
---|---|---|
props | NodeInputRuleProps |
Returns:
function omitExtraAttributes()
Return attributes for a node excluding those that were provided as extra attributes.
Signature:
export declare function omitExtraAttributes<Output extends object = DOMCompatibleAttributes>(attrs: ProsemirrorAttributes, extra: ApplySchemaAttributes): Omit<Output, keyof Remirror.Attributes>;
Parameters:
Parameter | Type | Description |
---|---|---|
attrs | ProsemirrorAttributes | The source attributes |
extra | ApplySchemaAttributes | The extra attribute schema for this node |
Returns:
Omit<Output, keyof Remirror.Attributes>
function parseSizeUnit()
Parse the font size and font unit from the provided value. When the value type is unsupported it default to px
.
Signature:
export declare function parseSizeUnit(fontSize?: string | undefined | null): ParsedDomSize;
Parameters:
Parameter | Type | Description |
---|---|---|
fontSize | string | undefined | null | (Optional) |
Returns:
function plainInputRule()
Creates a plain rule based on the provided regex. You can see this being used in the @remirror/extension-emoji
when it is setup to use plain text.
Signature:
export declare function plainInputRule(props: PlainInputRuleProps): SkippableInputRule;
Parameters:
Parameter | Type | Description |
---|---|---|
props | PlainInputRuleProps |
Returns:
function preserveSelection()
Checks the selection for the current state and updates the active transaction to a selection that is consistent with the initial selection.
Signature:
export declare function preserveSelection(selection: Selection, tr: Transaction): void;
Parameters:
Parameter | Type | Description |
---|---|---|
selection | Selection | |
tr | Transaction | the transaction which has been updated and may have impacted the selection. |
Returns:
void
function prosemirrorNodeToDom()
Convert a node into its DOM representative
Signature:
export declare function prosemirrorNodeToDom(node: ProsemirrorNode, document?: Document): DocumentFragment | HTMLElement;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode | the node to extract html from. |
document | Document | (Optional) the document to use for the DOM |
Returns:
DocumentFragment | HTMLElement
function prosemirrorNodeToHtml()
Convert the provided node
to a html string.
Signature:
export declare function prosemirrorNodeToHtml(node: ProsemirrorNode, document?: Document): string;
Parameters:
Parameter | Type | Description |
---|---|---|
node | ProsemirrorNode | the node to extract html from. |
document | Document | (Optional) the document to use for the DOM |
import { EditorState, prosemirrorNodeToHtml } from 'remirror';
function convertStateToHtml(state: EditorState): string {
return prosemirrorNodeToHtml(state.doc);
}
|
Returns:
string
function rangeHasMark()
A wrapper for ProsemirrorNode.rangeHasMark that can also compare mark attributes (if supplied)
Signature:
export declare function rangeHasMark(props: RangeHasMarkProps): boolean;
Parameters:
Parameter | Type | Description |
---|---|---|
props | RangeHasMarkProps | see [[RangeHasMarkProps ]] for options |
Returns:
boolean
function removeMark()
Removes a mark from the current selection or provided range.
Signature:
export declare function removeMark(props: RemoveMarkProps): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
props | RemoveMarkProps | see [[RemoveMarkProps ]] for options |
Returns:
CommandFunction
function removeNodeAfter()
Warning: This API is now obsolete.
This util is hard to use and not that useful
Update the transaction to delete the node after the current selection.
dispatch(removeNodeBefore(state.tr));
Signature:
export declare function removeNodeAfter(tr: Transaction): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction |
Returns:
Transaction
function removeNodeAtPosition()
Performs a delete
transaction that removes a node at a given position with the given node
. position
should point at the position immediately before the node.
Signature:
export declare function removeNodeAtPosition({ pos, tr }: RemoveNodeAtPositionProps): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
{ pos, tr } | RemoveNodeAtPositionProps |
Returns:
Transaction
function removeNodeBefore()
Warning: This API is now obsolete.
This util is hard to use and not that useful
Updates the provided transaction to remove the node before.
dispatch(
removeNodeBefore(state.tr)
);
Signature:
export declare function removeNodeBefore(tr: Transaction): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
tr | Transaction |
Returns:
Transaction
function replaceNodeAtPosition()
Replaces the node at the provided position with the provided content.
Signature:
export declare function replaceNodeAtPosition({ pos, tr, content, }: ReplaceNodeAtPositionProps): Transaction;
Parameters:
Parameter | Type | Description |
---|---|---|
{ pos, tr, content, } | ReplaceNodeAtPositionProps |
Returns:
Transaction
function replaceText()
Replaces text with an optional appended string at the end.
Signature:
export declare function replaceText(props: ReplaceTextProps): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
props | ReplaceTextProps | see [[ReplaceTextProps ]] |
Returns:
CommandFunction
function schemaToJSON()
Converts a schema
to a JSON compatible object.
Signature:
export declare function schemaToJSON<Nodes extends string = string, Marks extends string = string>(schema: EditorSchema): SchemaJSON<Nodes, Marks>;
Parameters:
Parameter | Type | Description |
---|---|---|
schema | EditorSchema |
Returns:
SchemaJSON<Nodes, Marks>
function setBlockType()
Returns a command that tries to set the selected textblocks to the given node type with the given attributes.
Signature:
export declare function setBlockType(nodeType: string | NodeType, attrs?: ProsemirrorAttributes, selection?: PrimitiveSelection, preserveAttrs?: boolean): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
nodeType | string | NodeType | the name of the node or the [[NodeType ]]. |
attrs | ProsemirrorAttributes | (Optional) |
selection | PrimitiveSelection | (Optional) |
preserveAttrs | boolean | (Optional) |
Returns:
CommandFunction
function setStyle()
Set more styles to the given element.
Signature:
export declare function setStyle(target: HTMLElement, styles: Partial<CSSStyleDeclaration>): Partial<CSSStyleDeclaration>;
Parameters:
Parameter | Type | Description |
---|---|---|
target | HTMLElement | |
styles | Partial<CSSStyleDeclaration> |
Returns:
Partial<CSSStyleDeclaration>
function shouldUseDomEnvironment()
Checks which environment should be used. Returns true when we are in the dom environment.
Signature:
export declare function shouldUseDomEnvironment(): boolean;
Returns:
boolean
function startPositionOfParent()
Get the start position of the parent of the current resolve position
Signature:
export declare function startPositionOfParent($pos: ResolvedPos): number;
Parameters:
Parameter | Type | Description |
---|---|---|
$pos | ResolvedPos | the resolved ProseMirror position |
Returns:
number
function textBetween()
Find the different ranges of text between a provided range with support for traversing multiple nodes.
Signature:
export declare function textBetween(props: TextBetweenProps): TextBetween[];
Parameters:
Parameter | Type | Description |
---|---|---|
props | TextBetweenProps |
Returns:
TextBetween[]
function toggleBlockItem()
Toggle a block between the provided type and toggleType.
Signature:
export declare function toggleBlockItem(toggleProps: ToggleBlockItemProps): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
toggleProps | ToggleBlockItemProps | see [[ToggleBlockItemProps ]] for available options |
Returns:
CommandFunction
function toggleWrap()
Toggle between wrapping an inactive node with the provided node type, and lifting it up into it's parent.
Signature:
export declare function toggleWrap(nodeType: string | NodeType, attrs?: ProsemirrorAttributes, selection?: PrimitiveSelection): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
nodeType | string | NodeType | the node type to toggle |
attrs | ProsemirrorAttributes | (Optional) the attrs to use for the node |
selection | PrimitiveSelection | (Optional) |
Returns:
CommandFunction
function updateMark()
Update the selection with the provided MarkType.
Signature:
export declare function updateMark(props: UpdateMarkProps): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
props | UpdateMarkProps | see [[UpdateMarkProps ]] for options |
Returns:
CommandFunction
function wrapIn()
Wrap the selection or the provided text in a node of the given type with the given attributes.
Signature:
export declare function wrapIn(type: string | NodeType, attrs?: ProsemirrorAttributes, selection?: PrimitiveSelection): CommandFunction;
Parameters:
Parameter | Type | Description |
---|---|---|
type | string | NodeType | |
attrs | ProsemirrorAttributes | (Optional) |
selection | PrimitiveSelection | (Optional) |
Returns:
CommandFunction
variable DOM_SIZE_UNITS
Signature:
DOM_SIZE_UNITS: readonly ["px", "rem", "em", "in", "q", "mm", "cm", "pt", "pc", "vh", "vw", "vmin", "vmax"]
variable environment
A object with flags identifying the current environment.
Signature:
environment: {
readonly isBrowser: boolean;
readonly isJSDOM: boolean;
readonly isNode: boolean;
readonly isIos: boolean;
readonly isMac: boolean;
readonly isApple: boolean;
readonly isDevelopment: boolean;
readonly isTest: boolean;
readonly isProduction: boolean;
}
variable findBlockNodes
Returns block descendants of a given node
.
Signature:
findBlockNodes: (props: BaseFindProps) => NodeWithPosition[]
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
const blockNodes = findBlockNodes(node);
variable findInlineNodes
Returns inline nodes of a given node
.
Signature:
findInlineNodes: (props: BaseFindProps) => NodeWithPosition[]
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
const inlineNodes = findInlineNodes(node);
variable findTextNodes
Returns text nodes of a given node
.
Signature:
findTextNodes: (props: BaseFindProps) => NodeWithPosition[]
Remarks:
It doesn't descend into a node when descend argument is false
(defaults to true
).
const textNodes = findTextNodes({ node });
interface CreateDocumentNodeProps
Signature:
export interface CreateDocumentNodeProps extends SchemaProps, Partial<CustomDocumentProps>, StringHandlerProps
Extends: SchemaProps, Partial<CustomDocumentProps>, StringHandlerProps
(Some inherited members may not be shown because they are not represented in the documentation.)
property content
The content to render
Signature:
content: RemirrorContentType;
property onError
The error handler which is called when the JSON passed is invalid.
Signature:
onError?: InvalidContentHandler;
property selection
The selection that the user should have in the created node.
TODO add 'start' | 'end' | number
for a better developer experience.
Signature:
selection?: PrimitiveSelection;
property stringHandler
A function which transforms a string into a prosemirror node.
Signature:
stringHandler?: StringHandler;
Remarks:
Can be used to transform markdown / html or any other string format into a prosemirror node.
See [[fromHTML
]] for an example of how this could work.
interface CustomDocumentProps
Signature:
export interface CustomDocumentProps
property document
The root or custom document to use when referencing the dom.
This can be used to support SSR.
Signature:
document: Document;
interface DefaultDocNodeOptions
Signature:
export interface DefaultDocNodeOptions
property ignoreAttributes
When true will not check any of the attributes for any of the nodes.
Signature:
ignoreAttributes?: boolean;
property ignoreDocAttributes
Set this to true to only test whether the content is identical to the default and not the parent node.
Signature:
ignoreDocAttributes?: boolean;
interface FindProsemirrorNodeResult
Signature:
export interface FindProsemirrorNodeResult extends ProsemirrorNodeProps
Extends: ProsemirrorNodeProps
(Some inherited members may not be shown because they are not represented in the documentation.)
property depth
The depth the node. Equal to 0 if node is the root.
Signature:
depth: number;
property end
The end position of the node.
Signature:
end: number;
property pos
Points to position directly before the node.
Signature:
pos: number;
property start
The start position of the node.
Signature:
start: number;
interface FragmentStringHandlerOptions
Signature:
export interface FragmentStringHandlerOptions extends BaseStringHandlerOptions
Extends: BaseStringHandlerOptions
(Some inherited members may not be shown because they are not represented in the documentation.)
property fragment
When true will create a fragment from the provided string.
Signature:
fragment: true;
interface GetMarkRange
Signature:
export interface GetMarkRange extends FromToProps
Extends: FromToProps
(Some inherited members may not be shown because they are not represented in the documentation.)
property mark
The mark that was found within the active range.
Signature:
mark: Mark;
property text
The text contained by this mark.
Signature:
text: string;
interface InvalidContentBlock
A description of an invalid content block (representing a node or a mark).
Signature:
export interface InvalidContentBlock
property invalidParentMark
Whether this block has any invalid wrapping marks.
Signature:
invalidParentMark: boolean;
property invalidParentNode
Whether this block already has an invalid parent node. Invalid blocks are displayed from the deepest content outward. By checking whether a parent has already been identified as invalid you can choose to only transform the root invalid node.
Signature:
invalidParentNode: boolean;
property name
The name of the node or mark that is invalid.
Signature:
name: string;
property path
The json path to the invalid part of the RemirrorJSON
object.
Signature:
path: Array<string | number>;
property type
The type of content that is invalid.
Signature:
type: 'mark' | 'node';
interface InvalidContentHandlerProps
This interface is used when there is an attempt to add content to a schema
Signature:
export interface InvalidContentHandlerProps
property error
The error that was thrown.
Signature:
error: Error;
property invalidContent
The list of invalid nodes and marks.
Signature:
invalidContent: InvalidContentBlock[];
property json
The JSON representation of the content that caused the error.
Signature:
json: RemirrorJSON;
property transformers
Transformers can be used to apply certain strategies for dealing with invalid content.
Signature:
transformers: typeof transformers;
interface NodeStringHandlerOptions
Signature:
export interface NodeStringHandlerOptions extends BaseStringHandlerOptions
Extends: BaseStringHandlerOptions
(Some inherited members may not be shown because they are not represented in the documentation.)
property fragment
Signature:
fragment?: false;
interface NodeWithPosition
A node with it's start position.
Signature:
export interface NodeWithPosition extends ProsemirrorNodeProps, PosProps
Extends: ProsemirrorNodeProps, PosProps
(Some inherited members may not be shown because they are not represented in the documentation.)
interface RemoveMarkProps
Signature:
export interface RemoveMarkProps extends MakeNullable<MarkTypeProps, 'type'>
Extends: MakeNullable<MarkTypeProps, 'type'>
(Some inherited members may not be shown because they are not represented in the documentation.)
property expand
Whether to expand empty selections to the current mark range.
Signature:
expand?: boolean;
property range
Warning: This API is now obsolete.
use
selection
property instead.
Signature:
range?: FromToProps;
property selection
The selection to apply to the command.
Signature:
selection?: PrimitiveSelection;
interface ReplaceTextProps
Signature:
export interface ReplaceTextProps extends Partial<AttributesProps>
Extends: Partial<AttributesProps>
(Some inherited members may not be shown because they are not represented in the documentation.)
property appendText
The text to append.
Signature:
appendText?: string;
property content
Optional text content to include.
Signature:
content?: string;
property keepSelection
Whether to keep the original selection after the replacement.
Signature:
keepSelection?: boolean;
property range
Warning: This API is now obsolete.
- use
selection
instead.
Signature:
range?: FromToProps;
property selection
The selected part of the document to replace.
Signature:
selection?: PrimitiveSelection;
property type
The content type to be inserted in place of the range / selection.
Signature:
type?: NodeType | MarkType | string;
interface SchemaJSON
The ProseMirror Schema
as a JSON object.
Signature:
export interface SchemaJSON<Nodes extends string = string, Marks extends string = string>
property marks
The marks within the schema.
Signature:
marks: Record<Marks, MarkSpec>;
property nodes
The nodes of the schema.
Signature:
nodes: Record<Nodes, NodeSpec>;
interface ShouldSkipProps
Signature:
export interface ShouldSkipProps extends EditorStateProps, UpdateCaptureTextProps
Extends: EditorStateProps, UpdateCaptureTextProps
(Some inherited members may not be shown because they are not represented in the documentation.)
property ruleType
The type of input rule that has been activated
Signature:
ruleType: 'mark' | 'node' | 'plain';
interface StringHandler
A function that converts a string into a ProsemirrorNode
.
Signature:
export interface StringHandler
Signature:
(params: NodeStringHandlerOptions): ProsemirrorNode;
Signature:
(params: FragmentStringHandlerOptions): Fragment;
interface StringHandlerProps
Signature:
export interface StringHandlerProps
property stringHandler
A function which transforms a string into a prosemirror node.
Signature:
stringHandler?: StringHandler;
Remarks:
Can be used to transform markdown / html or any other string format into a prosemirror node.
See [[fromHTML
]] for an example of how this could work.
interface ToggleBlockItemProps
Signature:
export interface ToggleBlockItemProps extends NodeTypeProps, Partial<AttributesProps>
Extends: NodeTypeProps, Partial<AttributesProps>
(Some inherited members may not be shown because they are not represented in the documentation.)
property preserveAttrs
Whether to preserve the attrs when toggling a block item. This means that extra attributes that are shared between nodes will be maintained.
Signature:
preserveAttrs?: boolean;
property toggleType
The type to toggle back to. Usually this is the paragraph
node type.
Signature:
toggleType?: NodeType | string;
interface UpdateMarkProps
Signature:
export interface UpdateMarkProps extends Partial<RangeProps>, Partial<AttributesProps>
Extends: Partial<RangeProps>, Partial<AttributesProps>
(Some inherited members may not be shown because they are not represented in the documentation.)
property appendText
The text to append.
Signature:
appendText?: string;
property type
The type of the
Signature:
type: MarkType;
type DomSizeUnit
Signature:
export type DomSizeUnit = (typeof DOM_SIZE_UNITS)[number];
References: DOM_SIZE_UNITS
type InvalidContentHandler
The error handler function which should return a valid content type to prevent further errors.
Signature:
export type InvalidContentHandler = (props: InvalidContentHandlerProps) => RemirrorContentType;
References: InvalidContentHandlerProps
type NamedStringHandlers
This type is the combination of all the registered string handlers for the extension. This is used rather than the StringHandlers
in order to enforce the type signature of the handler method, which isn't possible with the interface.
Signature:
export type NamedStringHandlers = {
[K in keyof Remirror.StringHandlers]: StringHandler;
};
References: StringHandler
type ParsedDomSize
A tuple for the font size and unit.
Signature:
export type ParsedDomSize = [size: number, unit: DomSizeUnit];
References: DomSizeUnit
type ShouldSkipFunction
A function which is called to check whether an input rule should be skipped.
- When it returns false then it won't be skipped. - When it returns true then it will be skipped.
Signature:
export type ShouldSkipFunction = (props: ShouldSkipProps) => boolean;
References: ShouldSkipProps
type SkippableInputRule
An input rule which can have a shouldSkip
property that returns true when the input rule should be skipped.
Signature:
export type SkippableInputRule = ShouldSkip & InputRule;
type StringHandlerOptions
Signature:
export type StringHandlerOptions = NodeStringHandlerOptions | FragmentStringHandlerOptions;
References: NodeStringHandlerOptions, FragmentStringHandlerOptions