Skip to content

TextBlock

TextBlock = object

Defined in: packages/editor/src/renderers/renderer.types.ts:226

A text block registration. The text block _type is 'block'.

defineTextBlock opts the text block into the new render pipeline. The consumer’s render callback owns the outer wrapper entirely: the engine emits data-pt-* attributes only - no pt-* CSS classes, no legacy data-block-* attributes - and the block-level renderStyle / renderListItem / renderBlock props on <PortableTextEditable> do not compose under this registration.

Span-level render props - renderDecorator, renderAnnotation, renderPlaceholder, and range decorations - keep working. They fire on the spans inside children regardless of which text block outer wrapper renders them.

Consumers who want the legacy block-level composition keep using renderStyle / renderListItem / renderBlock props and do not register defineTextBlock.

The kind field is injected by defineTextBlock and discriminates text blocks from containers and leaves at runtime.

kind: "text"

Defined in: packages/editor/src/renderers/renderer.types.ts:227


render: TextBlockRender

Defined in: packages/editor/src/renderers/renderer.types.ts:229


type: "block"

Defined in: packages/editor/src/renderers/renderer.types.ts:228