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

ClassicEditorSearch

Adds Classic product controls for Search, retaining its public options. Do not add it again when ClassicEditorKit already installs it.

Adds Classic product controls for Search, retaining its public options. Do not add it again when ClassicEditorKit already installs it.

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

Editor compatibility

Layer:Classic product integration

EditorStatusAssembly and boundaries
ClassicSupportedclassicEditorPreset — Use the product-neutral classicEditorPreset without duplicating installed capabilities. The Word preset replaces paragraphs, headings and container lists; do not stack generic structures onto that model.
BlockUnsupportedBlock does not consume Classic product contributions, plugins or paginated assembly. Use shared capabilities and Block adapters instead of copying this entry's Classic configuration.

“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

Use the Classic kit. Individual adapters support custom assembly or replacement without duplicate names.

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.

Classic · Supported

Use the product-neutral classicEditorPreset without duplicating installed capabilities. The Word preset replaces paragraphs, headings and container lists; do not stack generic structures onto that model.

classicEditorPreset
ts

Configuration

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

highlight

Highlight colors.

Type:SearchHighlightStyle

Default:{ match: "rgba(255, 196, 0, 0.35)", active: "transparent", activeOutline: "#e8710a" }

resolveScope

Resolves ordered searchable intervals.

Type:((state: EditorState) => readonly SearchScopeSegment[]) | undefined

Default:undefined

resolveExcludedScope

Resolves intervals deliberately left out of the scope, used only to count matches the user cannot reach so the UI can say so.

Type:((state: EditorState) => readonly SearchScopeSegment[]) | undefined

Default:undefined

checkReplaceable

Decides whether a match may be replaced.

Type:((state: EditorState, match: SearchMatch) => SearchReplaceVerdict) | undefined

Default:undefined

reveal

Applies host-specific presentation for a newly active match.

Type:((tr: Transaction, match: SearchMatch) => void) | undefined

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
setSearchQuerysetSearchQuery(text: string, queryOptions?: Partial<SearchOptions> | undefined, limit?: SearchRange | undefined)
clearSearchclearSearch()
findNextfindNext()
findPreviousfindPrevious()
selectSearchMatchselectSearchMatch(index: number)
replaceSearchMatchreplaceSearchMatch(text: string)
replaceAllSearchMatchesreplaceAllSearchMatches(text: string)

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.

Continue with Classic quick start and configuration/lifetime. See product plugin development for your own UI and services.

QuireKitQuireKit · Core, plugins and Classic docs