Skip to content

PortableTextEditor

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:115

The main Portable Text Editor component.

Extends

Constructors

Constructor

new PortableTextEditor(props): PortableTextEditor

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:136

Parameters

props

PortableTextEditorProps

Returns

PortableTextEditor

Overrides

Component< PortableTextEditorProps<InternalEditor | undefined> >.constructor

Properties

change$

change$: EditorChanges

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:122

An observable of all the editor changes.


context

context: unknown

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:945

If using the new style context, re-declare this in your class to be the React.ContextType of your static contextType. Should be used with type annotation or static contextType.

Example

static contextType = MyContext
// For TS pre-3.7:
context!: React.ContextType<typeof MyContext>
// For TS 3.7 and above:
declare context: React.ContextType<typeof MyContext>

See

React Docs

Inherited from

Component.context


props

readonly props: Readonly<PortableTextEditorProps<undefined | InternalEditor>>

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:961

Inherited from

Component.props


schemaTypes

schemaTypes: PortableTextMemberSchemaTypes

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:126

A lookup table for all the relevant schema types for this portable text type.


state

state: Readonly<{ }>

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:962

Inherited from

Component.state


contextType?

static optional contextType: Context<any>

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:921

If set, this.context will be set at runtime to the current value of the given Context.

Example

type MyContext = number
const Ctx = React.createContext<MyContext>(0)
class Foo extends React.Component {
static contextType = Ctx
context!: React.ContextType<typeof Ctx>
render () {
return <>My context's value: {this.context}</>;
}
}

See

https://react.dev/reference/react/Component#static-contexttype

Inherited from

Component.contextType


displayName

static displayName: string = 'PortableTextEditor'

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:118


propTypes?

static optional propTypes: any

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:927

Ignored by React.

Inherited from

Component.propTypes

Methods

componentDidCatch()?

optional componentDidCatch(error, errorInfo): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1194

Catches exceptions generated in descendant components. Unhandled exceptions will cause the entire component tree to unmount.

Parameters

error

Error

errorInfo

ErrorInfo

Returns

void

Inherited from

Component.componentDidCatch


componentDidMount()?

optional componentDidMount(): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1173

Called immediately after a component is mounted. Setting state here will trigger re-rendering.

Returns

void

Inherited from

Component.componentDidMount


componentDidUpdate()

componentDidUpdate(prevProps): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:174

Called immediately after updating occurs. Not called for the initial render.

The snapshot is only present if getSnapshotBeforeUpdate is present and returns non-null.

Parameters

prevProps

PortableTextEditorProps

Returns

void

Overrides

Component.componentDidUpdate


componentWillMount()?

optional componentWillMount(): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1252

Called immediately before mounting occurs, and before Component.render. Avoid introducing any side-effects or subscriptions in this method.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Returns

void

See

Inherited from

Component.componentWillMount


componentWillReceiveProps()?

optional componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1283

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component.setState generally does not trigger this method.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

nextContext

any

Returns

void

See

Inherited from

Component.componentWillReceiveProps


componentWillUnmount()?

optional componentWillUnmount(): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1189

Called immediately before a component is destroyed. Perform any necessary cleanup in this method, such as cancelled network requests, or cleaning up any DOM elements created in componentDidMount.

Returns

void

Inherited from

Component.componentWillUnmount


componentWillUpdate()?

optional componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1315

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component.setState here.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

nextState

Readonly<{ }>

nextContext

any

Returns

void

See

Inherited from

Component.componentWillUpdate


forceUpdate()

forceUpdate(callback?): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:958

Parameters

callback?

() => void

Returns

void

Inherited from

Component.forceUpdate


getSnapshotBeforeUpdate()?

optional getSnapshotBeforeUpdate(prevProps, prevState): any

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1230

Runs before React applies the result of Component.render render to the document, and returns an object to be given to componentDidUpdate. Useful for saving things such as scroll position before Component.render render causes changes to it.

Note: the presence of this method prevents any of the deprecated lifecycle events from running.

Parameters

prevProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

prevState

Readonly<{ }>

Returns

any

Inherited from

Component.getSnapshotBeforeUpdate


render()

render(): Element

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:234

Returns

Element

Overrides

Component.render


setEditable()

setEditable(editable): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:227

Parameters

editable

EditableAPI

Returns

void


setState()

setState<K>(state, callback?): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:953

Type Parameters

K

K extends never

Parameters

state

null | { } | (prevState, props) => null | { } | Pick<{ }, K> | Pick<{ }, K>

callback?

() => void

Returns

void

Inherited from

Component.setState


shouldComponentUpdate()?

optional shouldComponentUpdate(nextProps, nextState, nextContext): boolean

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1184

Called to determine whether the change in props and state should trigger a re-render.

Component always returns true. PureComponent implements a shallow comparison on props and state and returns true if any props or states have changed.

If false is returned, Component.render, componentWillUpdate and componentDidUpdate will not be called.

Parameters

nextProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

nextState

Readonly<{ }>

nextContext

any

Returns

boolean

Inherited from

Component.shouldComponentUpdate


UNSAFE_componentWillMount()?

optional UNSAFE_componentWillMount(): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1267

Called immediately before mounting occurs, and before Component.render. Avoid introducing any side-effects or subscriptions in this method.

This method will not stop working in React 17.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Returns

void

See

Inherited from

Component.UNSAFE_componentWillMount


UNSAFE_componentWillReceiveProps()?

optional UNSAFE_componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1301

Called when the component may be receiving new props. React may call this even if props have not changed, so be sure to compare new and existing props if you only want to handle changes.

Calling Component.setState generally does not trigger this method.

This method will not stop working in React 17.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

nextContext

any

Returns

void

See

Inherited from

Component.UNSAFE_componentWillReceiveProps


UNSAFE_componentWillUpdate()?

optional UNSAFE_componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.0/node_modules/@types/react/index.d.ts:1331

Called immediately before rendering when new props or state is received. Not called for the initial render.

Note: You cannot call Component.setState here.

This method will not stop working in React 17.

Note: the presence of NewLifecycle.getSnapshotBeforeUpdate getSnapshotBeforeUpdate or StaticLifecycle.getDerivedStateFromProps getDerivedStateFromProps prevents this from being invoked.

Parameters

nextProps

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

nextState

Readonly<{ }>

nextContext

any

Returns

void

See

Inherited from

Component.UNSAFE_componentWillUpdate


activeAnnotations()

static activeAnnotations(editor): PortableTextObject[]

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:292

Parameters

editor

PortableTextEditor

Returns

PortableTextObject[]


addAnnotation()

static addAnnotation<TSchemaType>(editor, type, value?): undefined | AddedAnnotationPaths

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:332

Type Parameters

TSchemaType

TSchemaType extends object

Parameters

editor

PortableTextEditor

type

TSchemaType

value?

Returns

undefined | AddedAnnotationPaths


blur()

static blur(editor): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:350

Parameters

editor

PortableTextEditor

Returns

void


delete()

static delete(editor, selection, options?): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:355

Parameters

editor

PortableTextEditor

selection

EditorSelection

options?

EditableAPIDeleteOptions

Returns

void


findByPath()

static findByPath(editor, path): [undefined | PortableTextTextBlock<PortableTextObject | PortableTextSpan> | PortableTextObject | PortableTextSpan, undefined | Path]

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:368

Parameters

editor

PortableTextEditor

path

Path

Returns

[undefined | PortableTextTextBlock<PortableTextObject | PortableTextSpan> | PortableTextObject | PortableTextSpan, undefined | Path]


findDOMNode()

static findDOMNode(editor, element): undefined | Node

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:361

Parameters

editor

PortableTextEditor

element

PortableTextTextBlock<PortableTextObject | PortableTextSpan> | PortableTextObject | PortableTextSpan

Returns

undefined | Node


focus()

static focus(editor): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:383

Parameters

editor

PortableTextEditor

Returns

void


focusBlock()

static focusBlock(editor): undefined | PortableTextBlock

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:398

Parameters

editor

PortableTextEditor

Returns

undefined | PortableTextBlock


focusChild()

static focusChild(editor): undefined | PortableTextChild

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:412

Parameters

editor

PortableTextEditor

Returns

undefined | PortableTextChild


getFragment()

static getFragment(editor): undefined | PortableTextBlock[]

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:702

Parameters

editor

PortableTextEditor

Returns

undefined | PortableTextBlock[]


getSelection()

static getSelection(editor): EditorSelection

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:428

Parameters

editor

PortableTextEditor

Returns

EditorSelection


getValue()

static getValue(editor): undefined | PortableTextBlock[]

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:442

Parameters

editor

PortableTextEditor

Returns

undefined | PortableTextBlock[]


hasBlockStyle()

static hasBlockStyle(editor, blockStyle): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:456

Parameters

editor

PortableTextEditor

blockStyle

string

Returns

boolean


hasListStyle()

static hasListStyle(editor, listStyle): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:470

Parameters

editor

PortableTextEditor

listStyle

string

Returns

boolean


insertBlock()

static insertBlock<TSchemaType>(editor, type, value?): undefined | Path

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:559

Type Parameters

TSchemaType

TSchemaType extends object

Parameters

editor

PortableTextEditor

type

TSchemaType

value?

Returns

undefined | Path


insertBreak()

static insertBreak(editor): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:578

Parameters

editor

PortableTextEditor

Returns

void


insertChild()

static insertChild<TSchemaType>(editor, type, value?): undefined | Path

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:534

Type Parameters

TSchemaType

TSchemaType extends object

Parameters

editor

PortableTextEditor

type

TSchemaType

value?

Returns

undefined | Path


isAnnotationActive()

static isAnnotationActive(editor, annotationType): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:308

Parameters

editor

PortableTextEditor

annotationType

string

Returns

boolean


isCollapsedSelection()

static isCollapsedSelection(editor): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:484

Parameters

editor

PortableTextEditor

Returns

boolean


isExpandedSelection()

static isExpandedSelection(editor): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:497

Parameters

editor

PortableTextEditor

Returns

boolean


isMarkActive()

static isMarkActive(editor, mark): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:510

Parameters

editor

PortableTextEditor

mark

string

Returns

boolean


isObjectPath()

static isObjectPath(_editor, path): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:589

Parameters

_editor

PortableTextEditor

path

Path

Returns

boolean


isSelectionsOverlapping()

static isSelectionsOverlapping(editor, selectionA, selectionB): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:750

Parameters

editor

PortableTextEditor

selectionA

EditorSelection

selectionB

EditorSelection

Returns

boolean


isVoid()

static isVoid(editor, element): boolean

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:582

Parameters

editor

PortableTextEditor

element

PortableTextTextBlock<PortableTextObject | PortableTextSpan> | PortableTextObject | PortableTextSpan

Returns

boolean


marks()

static marks(editor): string[]

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:596

Parameters

editor

PortableTextEditor

Returns

string[]


redo()

static redo(editor): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:735

Parameters

editor

PortableTextEditor

Returns

void


removeAnnotation()

static removeAnnotation<TSchemaType>(editor, type): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:634

Type Parameters

TSchemaType

TSchemaType extends object

Parameters

editor

PortableTextEditor

type

TSchemaType

Returns

void


select()

static select(editor, selection): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:612

Parameters

editor

PortableTextEditor

selection

EditorSelection

Returns

void


toggleBlockStyle()

static toggleBlockStyle(editor, blockStyle): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:651

Parameters

editor

PortableTextEditor

blockStyle

string

Returns

void


toggleList()

static toggleList(editor, listStyle): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:671

Parameters

editor

PortableTextEditor

listStyle

string

Returns

void


toggleMark()

static toggleMark(editor, mark): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:687

Parameters

editor

PortableTextEditor

mark

string

Returns

void


undo()

static undo(editor): void

Defined in: packages/editor/src/editor/PortableTextEditor.tsx:719

Parameters

editor

PortableTextEditor

Returns

void