Skip to content

PortableTextEditor

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

The main Portable Text Editor component.

new PortableTextEditor(props): PortableTextEditor

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

PortableTextEditorProps

PortableTextEditor

Component< PortableTextEditorProps<InternalEditor | undefined> >.constructor

change$: EditorChanges

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

An observable of all the editor changes.


context: unknown

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

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

Component.props


schemaTypes: PortableTextMemberSchemaTypes

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

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.2.7/node_modules/@types/react/index.d.ts:971

Component.state


static optional contextType: Context<any>

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


static optional propTypes: any

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

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:196

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.2.7/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.2.7/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<InternalEditor | undefined>>

any

void

Component.componentWillReceiveProps


componentWillUnmount(): void

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

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.2.7/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<InternalEditor | undefined>>

Readonly<S>

any

void

Component.componentWillUpdate


forceUpdate(callback?): void

Defined in: node_modules/.pnpm/@types+react@19.2.7/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.2.7/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<InternalEditor | undefined>>

Readonly<S>

any

Component.getSnapshotBeforeUpdate


render(): Element

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

Element

Component.render


setEditable(editable): void

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

EditableAPI

void


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

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

K extends never

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

() => void

void

Component.setState


optional shouldComponentUpdate(nextProps, nextState, nextContext): boolean

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

Readonly<S>

any

boolean

Component.shouldComponentUpdate


optional UNSAFE_componentWillMount(): void

Defined in: node_modules/.pnpm/@types+react@19.2.7/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.2.7/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<InternalEditor | undefined>>

any

void

Component.UNSAFE_componentWillReceiveProps


optional UNSAFE_componentWillUpdate(nextProps, nextState, nextContext): void

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

Readonly<S>

any

void

Component.UNSAFE_componentWillUpdate


static activeAnnotations(editor): PortableTextObject[]

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

PortableTextEditor

PortableTextObject[]


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

AddedAnnotationPaths | undefined


static blur(editor): void

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

PortableTextEditor

void


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

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

PortableTextEditor

EditorSelection

EditableAPIDeleteOptions

void


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

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

PortableTextEditor

Path

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


static findDOMNode(editor, element): Node | undefined

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

PortableTextEditor

PortableTextObject | PortableTextSpan | PortableTextTextBlock<PortableTextObject | PortableTextSpan>

Node | undefined


static focus(editor): void

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

PortableTextEditor

void


static focusBlock(editor): PortableTextBlock | undefined

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

PortableTextEditor

PortableTextBlock | undefined


static focusChild(editor): PortableTextChild | undefined

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

PortableTextEditor

PortableTextChild | undefined


static getFragment(editor): PortableTextBlock[] | undefined

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

PortableTextEditor

PortableTextBlock[] | undefined


static getSelection(editor): EditorSelection

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

PortableTextEditor

EditorSelection


static getValue(editor): PortableTextBlock[] | undefined

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

PortableTextEditor

PortableTextBlock[] | undefined


static hasBlockStyle(editor, blockStyle): boolean

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

PortableTextEditor

string

boolean


static hasListStyle(editor, listStyle): boolean

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

PortableTextEditor

string

boolean


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

Path | undefined


static insertBreak(editor): void

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

PortableTextEditor

void


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

Path | undefined


static isAnnotationActive(editor, annotationType): boolean

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

PortableTextEditor

string

boolean


static isCollapsedSelection(editor): boolean

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

PortableTextEditor

boolean


static isExpandedSelection(editor): boolean

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

PortableTextEditor

boolean


static isMarkActive(editor, mark): boolean

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

PortableTextEditor

string

boolean


static isObjectPath(_editor, path): boolean

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

PortableTextEditor

Path

boolean


static isSelectionsOverlapping(editor, selectionA, selectionB): boolean

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

PortableTextEditor

EditorSelection

EditorSelection

boolean


static isVoid(editor, element): boolean

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

PortableTextEditor

PortableTextObject | PortableTextSpan | PortableTextTextBlock<PortableTextObject | PortableTextSpan>

boolean


static marks(editor): string[]

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

PortableTextEditor

string[]


static redo(editor): void

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

PortableTextEditor

void


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

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

TSchemaType extends object

PortableTextEditor

TSchemaType

void


static select(editor, selection): void

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

PortableTextEditor

EditorSelection

void


static toggleBlockStyle(editor, blockStyle): void

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

PortableTextEditor

string

void


static toggleList(editor, listStyle): void

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

PortableTextEditor

string

void


static toggleMark(editor, mark): void

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

PortableTextEditor

string

void


static undo(editor): void

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

PortableTextEditor

void