Skip to content
QuireKit
Plugin docs
Alpha · evolving API
Block product extensionsView Markdown ↗

BlockRichContent

Host services and the insertion contract shared by columns, templates, web cards and resources: per-file size limit, file storage and web metadata resolution. Without storage, files are kept as data URLs in the document.

Host services and the insertion contract shared by columns, templates, web cards and resources: per-file size limit, file storage and web metadata resolution. Without storage, files are kept as data URLs in the document.

@quirekit/block-editor · AGPL-3.0-only

Editor compatibility

Layer:Block product integration

EditorStatusAssembly and boundaries
ClassicUnsupportedThis entry targets continuous-flow Block, not the paginated Classic product. Use the corresponding shared or Word capability with Classic assembly.
BlockSupportedcreateBlockEditorPreset — The default createBlockEditor preset installs this capability. Configure the corresponding preset child; graphic editing uses the preset's workspace ports, while persistence and assets remain host-owned. Avoid duplicate extensions.

“Supported” means the product assembly above exists; interaction, host services and file formats retain their own conditions. See status and integration rules. Licensing is shown separately.

Installation

sh

Install in Editor extensions. The host supplies a view, container and persistence; see Quick start.

ts

Use compatible versions available from your distribution source. This site uses the Alpha workspace. License labels come from package metadata; see support and licensing.

Integration by editor

These snippets use an existing host element named element. The host owns container sizing and persistence; call instance.destroy() on teardown. Avoid duplicating preset capabilities and supply required host ports before installation.

Block · Supported

The default createBlockEditor preset installs this capability. Configure the corresponding preset child; graphic editing uses the preset's workspace ports, while persistence and assets remain host-owned. Avoid duplicate extensions.

createBlockEditorPreset
ts

Configuration

These are extension-level defaults. Presets can override them; they are distinct from current document attributes. See configuration.

maxFileSize

Maximum bytes per local file; default 4 MiB.

Type:number

Default:4 * 1024 * 1024

storeFile

Stores a file, honoring cancellation; must return a persistent source.

Type:(file: File, signal: AbortSignal, progress: (percent: number) => void): Promise<BlockResource>

Default:undefined

resolveWebCard

Resolves card metadata; browser cross-origin scraping is not implicit.

Type:(url: string, signal: AbortSignal): Promise<{ title?: string; description?: string; icon?: string; cover?: string; }>

Default:undefined

Commands and runtime

These commands are supplied directly by this extension. Availability depends on the installed schema, selection and protection policy; query editor.can() first.

CommandParameter signature
applyBlockRichContentapplyBlockRichContent(request: RichContentRequest, content: readonly QuireJSONContent[])

These are parameter signatures. See commands and controls to connect UI while retaining one transaction/history authority.

Next steps

Return to all plugins, or read configuration to distinguish options, attributes and commands.

See extension development for custom capabilities and Build a product for complete hosting.

QuireKitQuireKit · Core, plugins and Classic docs