@tiptap-pro/extension-convert-kit changelog
Changelog for @tiptap-pro/extension-convert-kit
0.4.0
Minor Changes
-
Improve
OrderedListNumberingand multi-editor stylesheet handling:- Add a
toggleOrderedListWithFormatcommand that starts an ordered list and applies a numbering format in one call — the one-call equivalent oftoggleOrderedListfollowed bysetOrderedListNumberingFormat, and the natural action for a "pick a format to start a numbered list" toolbar button. When the selection is already inside an ordered list, it toggles the list off, mirroringtoggleOrderedList. orderedListNumberingnow accepts an options object:defaultFormat(the format new ordered lists start with) andformats(the same definitions passed toExportDocx.configure({ numberingFormats }), from which the editor-preview CSS is generated and injected automatically). The injected stylesheet is keyed by its content, so editors configured with different formats each get their own correct stylesheet instead of the first one winning.- Enforce the outermost-only numbering invariant for content that bypasses
parseHTML— JSON, collaborative sync, and programmatic edits — by clearing stalenumberingFormatattributes from nested ordered lists. - Reference-count injected stylesheets (generic resets, contextual spacing, numbering preview) so the stylesheet shared by several editors is removed only when the last of them is destroyed, instead of when the first one unmounts.
generateNumberingFormatCssnow emitswidth: 100%on each list item. Without it, the grid list item collapses to zero width in a shrink-to-fit context — e.g. when a paginating editor (extension-pages) splits a list across a page boundary — squeezing the item's text into a sliver in the page gutter.generateNumberingFormatCssnow maps localebaseStylevalues (e.g.hebrew1,japaneseCounting,koreanDigital,chineseCounting,thaiNumbers,ideographDigital) onto the matching CSS Counter Styles Level 3 predefined styles, so those lists render their native glyph in the editor instead of falling back to decimal. Styles a browser doesn't support fall back to decimal on their own, and formats with no faithful CSS equivalent (e.g.ordinal,cardinalText,chicago) keep the decimal fallback.
- Add a
0.3.0
Minor Changes
-
Add editor-side ordered-list numbering support to ConvertKit, pairing with the
numberingFormatsoption already available on@tiptap-pro/extension-export-docx.@tiptap-pro/extension-convert-kitnow ships everything the editor side needs for custom DOCX numbering:OrderedListNumbering— a Tiptap extension that adds anumberingFormatattribute to the outermost<ol>, asetOrderedListNumberingFormat(id)command, and aneditor.storage.orderedListNumbering.activeNumberingFormatvalue that tracks the format at the current selection (handy for highlighting a toolbar). Registered automatically byConvertKit(opt in viaorderedListNumbering: true).generateNumberingFormatCss(formats, options?)andGenerateNumberingFormatCssOptions— a typed, dependency-free CSS generator for in-editor preview of numbering formats. The preview honoursstartAtand marker font sizes given as docx measure strings, matching the exported.docx.NumberingFormatDefinition,NumberingLevelDefinition,NumberingBaseStyle,NumberingMarkerFont— the types you write your registry against. Structurally compatible withExportDocx.configure({ numberingFormats }), so one array drives both editor preview and DOCX export.
0.2.0
Minor Changes
- Bundle
UndoRedo(from@tiptap/extensions) intoConvertKit. Undo/redo now works out of the box without an additional import, matching the parity ofStarterKit-based setups. Disable withConvertKit.configure({ undoRedo: false })if you provide your own history implementation.
0.1.1
Patch Changes
- Licensing
0.1.0
Minor Changes
-
Initial release of ConvertKit — a single-import Tiptap extension bundle for rendering DOCX-imported content
Custom DOCX Extensions:
- Paragraph and Heading with spacing (
spacingBefore,spacingAfter,lineHeight),fontSize(from DOCX paragraph mark for spacer paragraphs), indentation (indent,hangingIndent), andcontextualSpacingattributes - Image with crop attributes (
cropTop,cropBottom,cropLeft,cropRight) - Table with left indentation,
cellMinWidth: 1for narrow DOCX spacer columns, and collapsed borders - TableRow with
heightandheightRule(exact/atLeast) - TableCell and TableHeader with
background,verticalAlign, per-side border attributes (width, style, color), and a.cell-contentwrapper div for height constraints - TableRow exposes height as a
--tr-heightCSS custom property for child cells
CSS Resets:
- Injects browser style resets on editor creation to normalize table rendering:
line-height: 1on cells and rows,vertical-align: topon cells,white-space: normalon cell paragraphs, and zero default margins/padding — ensuring DOCX spacing values delivered as inline styles render accurately - Enforces exact row heights (
heightRule: "exact") by constraining the.cell-contentwrapper div to the row's height withoverflow: hidden— CSSheight/max-heightdo not apply todisplay: table-cellelements, so the block-level wrapper is required
Table rendering fixes:
- Table extension accepts a new
widthattribute (parses/renderswidth: Npx; max-width: 100%) so DOCX-declaredw:tblWvalues render accurately without overflowing the page container when the author drew the table wider than the content area - Table extension now clamps negative
indentvalues to0at render time while preserving the raw value in attrs — negativew:tblIndvalues from DOCX (which rely on Word's paper gutter) no longer push tables past the page container's left edge; the original value is kept for export round-trip - TableRow extension
heightrendering now branches onheightRule:exactrows keep their hard-clipping behaviour viaheight+--tr-height; other rows (atLeastor unset) render asmin-heightso narrower columns can grow the row instead of clipping content
Bundled OSS Extensions:
- Includes 30+ standard Tiptap extensions (Document, Text, Bold, Italic, Underline, Strike, Code, Link, BulletList, OrderedList, ListItem, HardBreak, HorizontalRule, CodeBlock, TextStyleKit, TextAlign, Highlight, Superscript, Subscript, Dropcursor, Gapcursor, PageBreak) — all individually configurable or disableable via
ConvertKit.configure()
- Paragraph and Heading with spacing (