Skip to content

PortableTextEditor

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

The main Portable Text Editor component.

new PortableTextEditor(props): PortableTextEditor

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

PortableTextEditorProps

PortableTextEditor

Component< PortableTextEditorProps<InternalEditor | undefined> >.constructor

change$: EditorChanges

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

An observable of all the editor changes.


context: unknown

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:946

If using React 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.

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>

React Docs

Component.context


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

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:970

Component.props


schemaTypes: PortableTextMemberSchemaTypes

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

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


state: Readonly<S>

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:971

Component.state


static optional contextType: Context<any>

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:922

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

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}</>;
}
}

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

Component.contextType


static displayName: string = 'PortableTextEditor'

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


static optional propTypes: any

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:928

Ignored by React.

Component.propTypes

optional componentDidCatch(error, errorInfo): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1210

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

Error

ErrorInfo

void

Component.componentDidCatch


componentDidMount(): void

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

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

void

Component.componentDidMount


componentDidUpdate(prevProps): void

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

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

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

PortableTextEditorProps

void

Component.componentDidUpdate


optional componentWillMount(): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1268

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.

void

Component.componentWillMount


optional componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1299

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.

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

any

void

Component.componentWillReceiveProps


componentWillUnmount(): void

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

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.

void

Component.componentWillUnmount


optional componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/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.

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

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

Readonly<S>

any

void

Component.componentWillUpdate


forceUpdate(callback?): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:967

() => void

void

Component.forceUpdate


optional getSnapshotBeforeUpdate(prevProps, prevState): any

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1246

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.

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

Readonly<S>

any

Component.getSnapshotBeforeUpdate


render(): Element

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

Element

Component.render


setEditable(editable): void

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

EditableAPI

void


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

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

K extends never

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

() => void

void

Component.setState


optional shouldComponentUpdate(nextProps, nextState, nextContext): boolean

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1200

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.

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

Readonly<S>

any

boolean

Component.shouldComponentUpdate


optional UNSAFE_componentWillMount(): void

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

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.

void

Component.UNSAFE_componentWillMount


optional UNSAFE_componentWillReceiveProps(nextProps, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1317

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.

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

any

void

Component.UNSAFE_componentWillReceiveProps


optional UNSAFE_componentWillUpdate(nextProps, nextState, nextContext): void

Defined in: node_modules/.pnpm/@types+react@19.1.11/node_modules/@types/react/index.d.ts:1347

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.

Readonly<PortableTextEditorProps<undefined | InternalEditor>>

Readonly<S>

any

void

Component.UNSAFE_componentWillUpdate


static activeAnnotations(editor): PortableTextObject[]

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

PortableTextEditor

PortableTextObject[]


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

undefined | AddedAnnotationPaths


static blur(editor): void

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

PortableTextEditor

void


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

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

PortableTextEditor

EditorSelection

EditableAPIDeleteOptions

void


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

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

PortableTextEditor

Path

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


static findDOMNode(editor, element): undefined | Node

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

PortableTextEditor

PortableTextSpan | PortableTextObject | PortableTextTextBlock<PortableTextSpan | PortableTextObject>

undefined | Node


static focus(editor): void

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

PortableTextEditor

void


static focusBlock(editor): undefined | PortableTextBlock

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

PortableTextEditor

undefined | PortableTextBlock


static focusChild(editor): undefined | PortableTextChild

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

PortableTextEditor

undefined | PortableTextChild


static getFragment(editor): undefined | PortableTextBlock[]

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

PortableTextEditor

undefined | PortableTextBlock[]


static getSelection(editor): EditorSelection

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

PortableTextEditor

EditorSelection


static getValue(editor): undefined | PortableTextBlock[]

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

PortableTextEditor

undefined | PortableTextBlock[]


static hasBlockStyle(editor, blockStyle): boolean

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

PortableTextEditor

string

boolean


static hasListStyle(editor, listStyle): boolean

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

PortableTextEditor

string

boolean


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

undefined | Path


static insertBreak(editor): void

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

PortableTextEditor

void


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

undefined | Path


static isAnnotationActive(editor, annotationType): boolean

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

PortableTextEditor

string

boolean


static isCollapsedSelection(editor): boolean

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

PortableTextEditor

boolean


static isExpandedSelection(editor): boolean

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

PortableTextEditor

boolean


static isMarkActive(editor, mark): boolean

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

PortableTextEditor

string

boolean


static isObjectPath(_editor, path): boolean

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

PortableTextEditor

Path

boolean


static isSelectionsOverlapping(editor, selectionA, selectionB): boolean

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

PortableTextEditor

EditorSelection

EditorSelection

boolean


static isVoid(editor, element): boolean

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

PortableTextEditor

PortableTextSpan | PortableTextObject | PortableTextTextBlock<PortableTextSpan | PortableTextObject>

boolean


static marks(editor): string[]

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

PortableTextEditor

string[]


static redo(editor): void

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

PortableTextEditor

void


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

void


static select(editor, selection): void

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

PortableTextEditor

EditorSelection

void


static toggleBlockStyle(editor, blockStyle): void

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

PortableTextEditor

string

void


static toggleList(editor, listStyle): void

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

PortableTextEditor

string

void


static toggleMark(editor, mark): void

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

PortableTextEditor

string

void


static undo(editor): void

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

PortableTextEditor

void