WordNumbering
Maintains Word numbering definitions and level references on flat paragraphs rather than nested list wrappers.
Maintains Word numbering definitions and level references on flat paragraphs rather than nested list wrappers.
@quirekit/classic-numbering-model · AGPL-3.0-only
Editor compatibility
Layer:Shared document capability
| Editor | Status | Assembly and boundaries |
|---|---|---|
| Classic | Supported | createClassicWordPreset — Use createClassicWordPreset for Word models, layout and product integration. Controls, flags, host services and file support follow this page. Full comment, revision and content-control authoring UI additionally requires Pro. |
| Block | Requires integration | createBlockNumberingExtensions — Use createBlockNumberingExtensions for canonical numbering, continuous-flow markers and Block list controls. Installing WordNumbering alone does not complete Block integration. |
“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
pnpm add @quirekit/classic-numbering-model@alpha
Start a Word product with the Word preset. This export supports independent Core or custom presets; assemble companion nodes, commands and layout, without duplicate names.
import { WordNumbering } from '@quirekit/classic-numbering-model'
const numbering = WordNumbering.configure({ types: ['paragraph', 'heading'] })
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 createClassicWordPreset for Word models, layout and product integration. Controls, flags, host services and file support follow this page. Full comment, revision and content-control authoring UI additionally requires Pro.
createClassicWordPresetimport { createClassicEditor } from '@quirekit/classic-editor'
import '@quirekit/classic-editor/styles.css'
import { createClassicWordDefaultDocument, createClassicWordPreset } from '@quirekit/classic-docx'
import '@quirekit/classic-docx/styles.css'
const instance = createClassicEditor({
element,
preset: createClassicWordPreset(),
document: createClassicWordDefaultDocument(),
})Block · Requires integration
Use createBlockNumberingExtensions for canonical numbering, continuous-flow markers and Block list controls. Installing WordNumbering alone does not complete Block integration.
createBlockNumberingExtensionsimport { createBlockEditor } from '@quirekit/block-editor'
import '@quirekit/block-editor/styles.css'
import { createBlockNumberingExtensions } from '@quirekit/block-numbering'
const instance = createBlockEditor({
element,
extensions: [...createBlockNumberingExtensions()],
content: { type: 'doc', content: [{ type: 'paragraph' }] },
})Configuration
These are extension-level defaults. Presets can override them; they are distinct from current document attributes. See configuration.
types
Paragraph-like node names that receive flat numbering references.
Type:readonly string[]
Default:Object.freeze([ "paragraph", "heading" ])
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.
| Command | Parameter signature |
|---|---|
updateWordNumberingDefinition | updateWordNumberingDefinition(options: UpdateWordNumberingDefinitionOptions) |
mergeWordNumberingRegistry | mergeWordNumberingRegistry(options: MergeWordNumberingRegistryOptions) |
applyWordNumberingPreset | applyWordNumberingPreset(options: ApplyWordNumberingPresetOptions) |
applyWordNumberingTemplate | applyWordNumberingTemplate(options: ApplyWordNumberingTemplateOptions) |
toggleWordOrderedList | toggleWordOrderedList(options?: ToggleWordOrderedListOptions | undefined) |
toggleWordBulletList | toggleWordBulletList() |
toggleWordTaskList | toggleWordTaskList(options?: ToggleWordTaskListOptions | undefined) |
clearWordList | clearWordList() |
clearWordListAtPosition | clearWordListAtPosition(options: WordNumberingAtPositionOptions) |
increaseWordListLevel | increaseWordListLevel() |
decreaseWordListLevel | decreaseWordListLevel() |
toggleWordTaskChecked | toggleWordTaskChecked() |
setWordTaskChecked | setWordTaskChecked(options: SetWordTaskCheckedOptions) |
toggleWordTaskAtPosition | toggleWordTaskAtPosition(options: ToggleWordTaskAtPositionOptions) |
restartWordNumbering | restartWordNumbering(options: RestartWordNumberingOptions) |
continueWordNumbering | continueWordNumbering() |
restartWordNumberingAtPosition | restartWordNumberingAtPosition(options: RestartWordNumberingAtPositionOptions) |
continueWordNumberingAtPosition | continueWordNumberingAtPosition(options: WordNumberingAtPositionOptions) |
These are parameter signatures. See commands and controls to connect UI while retaining one transaction/history authority.
For DOCX import/export and tracked changes, use the same-named extension from the commercial @quirekit/classic-numbering package; it includes everything in this one.
Other public exports
WordNumbering·@quirekit/classic-numbering
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.