@superdoc/cli 0.36.1-next.2 → 0.36.1-next.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
1
  [diffend] Oversized file quarantined before diffing.
2
2
  name: package/dist/index.js
3
- size: 37219587 bytes
4
- sha256: 689a31818db5d81974d84947266a6ac190348c246bd21c1821fa44eb395c4984
3
+ size: 38892495 bytes
4
+ sha256: 365cdc167694e785da5de183cfa5a10a46078e94bc9ea60c6fa6feeeba00d3c7
@@ -44,7 +44,7 @@ ACTIONS (superdoc_perform_action with flat args)
44
44
  - append_list: items (string array), kind:"ordered"|"bullet". headingText/headingLevel only if asked for a heading above. placement:{at:"after"|"before",selector:{...}} builds the list at that block instead of document end — when the list belongs inside a section, ALWAYS pass placement. The receipt's placement-honored check is the truth.
45
45
  - add_list_items: entries:[{text, level?}] (level relative to the anchor: 0 = same level, 1 = nested sub-item) — or items:[…] plain strings at the list level. Locate the list by anchorText (text inside one of its items) or listOrdinal (1-based). THE way to ADD items into an EXISTING list — reuses its numbering + markers, matches the anchor item's font/size/bold/colour automatically (receipt.formattingMatched — do NOT re-format after adding unless asked), joins imported list-looking paragraphs in place, and is tracked-safe. NOT append_list (which starts a brand-new list).
46
46
  - convert_list: kind:"ordered"|"bullet", with listOrdinal or anchorText for real lists, OR fromMarker+toMarker (rendered clause numbers from inspect, e.g. "2.1.", "2.3.") for NUMBERED-CLAUSE ranges — including heading-styled clauses, OR fromText+toText (exact text inside the FIRST and LAST of consecutive plain paragraphs) to convert existing paragraphs into a list IN PLACE. Sub-clauses in range included automatically. THE way to convert numbering<->bullets AND the way to make existing paragraphs a list; never rewrite text to fake it, never recreate-the-content-then-delete-the-originals (two chances to lose text — convert_list fromText/toText is one lossless call).
47
- - split_list: anchorText (text inside the item that should START the second list), restartNumbering? (default true). Splits ONE list into two at that item — the new list restarts at 1, nested sub-items stay with their parent. THE way to "split the list starting at item N into a new list with reset numbering"; never fake it with convert_list/attach_numbering. Direct edit (not tracked).
47
+ - split_list: anchorText (text inside the item that should START the second list), restartNumbering? (default true). Splits ONE list into two at that item — the new list restarts at 1, nested sub-items stay with their parent. THE way to "split the list starting at item N into a new list with reset numbering"; never fake it with convert_list/attach_numbering. changeMode:"tracked" records the change for review.
48
48
  - undo_changes: untilMarker (rendered marker from the original state, e.g. "2.1.") or steps (1-25). Deterministic revert — steps history back until the marker reappears; the receipt proves it. NEVER use steps > 1 blindly: prefer untilMarker, and after ANY undo verify (superdoc_inspect) that content you meant to KEEP still exists — if you overshot, redo_changes {steps:N} steps forward again to recover it.
49
49
  - redo_changes: steps (1-25, default 1). Steps history FORWARD to re-apply edits a prior undo removed — THE recovery for an undo overshoot. Only reaches the forward branch until a NEW edit is made.
50
50
  - attach_numbering: anchorText (text of the block) or nodeId, likeMarker (rendered marker of a sibling clause, e.g. "10."). Makes an EXISTING block a numbered clause at the same scheme/level — "make this the section 11 heading" in a clause-numbered document is exactly this (it will render as the next number).
@@ -59,21 +59,21 @@ ACTIONS (superdoc_perform_action with flat args)
59
59
  - resolve_comments: anchorText? (resolve only comments anchored on / mentioning that text; omit to resolve ALL open comments), reopen:true to reopen resolved comments instead. THE way to "resolve the comment(s)" / "mark comments resolved".
60
60
  - accept_tracked_changes / reject_tracked_changes: id:"change-id" or id:["id1","id2"] for one atomic set, OR optional author:"Full Name" / changeType:"insert"|"delete"|"replacement"|"format" to filter. Do not combine id with author/changeType. "Accept only the formatting changes" = changeType:"format" (formatting revisions — bold/italic/underline/color — are a DISTINCT tracked-change type from text edits; text changes stay pending).
61
61
  - format_text: bold/italic/underline/strike:true, highlight:"yellow", color (named or hex), fontSize — applied to EVERY occurrence of targetText (or targetTexts:["…","…"] for several phrases in one call; or selector for a whole block). caseSensitive:true for exact case. changeMode:"tracked" produces format-type tracked changes. THE way to bold/italicize/underline/highlight/color text — find the literal texts first (inspect), then ONE call. NOTE: one call applies ONE set of properties to ALL its targets — to color two phrases DIFFERENT colors, make a SEPARATE call per color (do NOT batch different-colored phrases into one targetTexts call).
62
- - apply_style: selector (the block to restyle), then ONE of styleId ("Heading2"), headingLevel (1-6), or likeText (text inside the block whose style AND effective look to copy). "Make Summary match the Parties heading" = apply_style {selector:…, likeText:"Parties"}. THE way to restyle an existing block — never delete-and-recreate it.
62
+ - apply_style: selector (the block to restyle), then ONE of styleId ("Heading2"), headingLevel (1-6), or likeText (text inside the block whose style AND effective look to copy). "Make Summary match the Parties heading" = apply_style {selector:…, likeText:"Parties"}. THE way to restyle an existing block — never delete-and-recreate it. changeMode:"tracked" records the change for review.
63
63
  - normalize_body_font_size: fontSize:N.
64
64
  - set_font_family: fontFamily ("Arial", "Times New Roman"). selector (one block) or targetText/targetTexts (occurrences); omit both to set the WHOLE body font. changeMode:"tracked" if asked. THE way to change the typeface ("change the font to X").
65
65
  - apply_letter_spacing: selector, letterSpacing (points).
66
66
  - format_paragraph: selector, alignment:"left"|"center"|"right"|"justify". changeMode:"tracked" records the former alignment as a tracked change. THE way to set paragraph alignment.
67
- - set_paragraph_spacing: selector, lineSpacing (multiplier, e.g. 1.5 or 2), spaceBefore/spaceAfter (points). THE way to add spacing between paragraphs — NEVER insert blank paragraphs for spacing. Direct edit (not tracked).
68
- - insert_page_break: selector (the block that should START on a new page). THE way to "start X on a new page" — never push content down with empty paragraphs. Direct edit (not tracked).
69
- - add_hyperlink: text (exact existing text to link), url, optional tooltip. Makes existing text a clickable hyperlink. Direct edit (not tracked).
67
+ - set_paragraph_spacing: selector, lineSpacing (multiplier, e.g. 1.5 or 2), spaceBefore/spaceAfter (points). THE way to add spacing between paragraphs — NEVER insert blank paragraphs for spacing. changeMode:"tracked" records the change for review.
68
+ - insert_page_break: selector (the block that should START on a new page). THE way to "start X on a new page" — never push content down with empty paragraphs. changeMode:"tracked" records the change for review.
69
+ - add_hyperlink: text (exact existing text to link), url, optional tooltip. Makes existing text a clickable hyperlink. changeMode:"tracked" records the change for review.
70
70
  - fill_placeholders: values:[...] and/or fields:[{label?,value}]. changeMode:"tracked" if asked.
71
- - move_range: fromText (text in the FIRST block of the range), toText? (text in the LAST block — omit to auto-extend across the whole VISUAL SECTION: from fromText up to the next heading-like/ALL-CAPS/bold title), then exactly ONE destination: afterText OR beforeText (text in the block to land after/before). Direct-only today: changeMode:"tracked" fails with no mutation because block-range deletion cannot be tracked. Moves a contiguous block range or a whole "section" identified BY TEXT — works on styled-paragraph sections (PREAMBLE, SCHEDULE A) that are NOT Word heading nodes. afterText on a heading-like block lands the range after that block's WHOLE section. Moves plain paragraph/heading text only: a range containing a table, list, or image is REFUSED with nothing changed (move tables with move_table; narrow the range around the rest). Use move_text for tracked text-span moves.
71
+ - move_range: fromText (text in the FIRST block of the range), toText? (text in the LAST block — omit to auto-extend across the whole VISUAL SECTION: from fromText up to the next heading-like/ALL-CAPS/bold title), then exactly ONE destination: afterText OR beforeText (text inside the block to land after/before). changeMode:"tracked" records both the inserted copies and source deletion for review. Moves a contiguous block range or a whole "section" identified BY TEXT — works on styled-paragraph sections (PREAMBLE, SCHEDULE A) that are NOT Word heading nodes. afterText on a heading-like block lands the range after that block's WHOLE section. Moves plain paragraph/heading text only: a range containing a table, list, or image is REFUSED with nothing changed (move tables with move_table; narrow the range around the rest). Use move_text for text-span moves.
72
72
  - insert_toc: title (optional), placement (defaults to document_start).
73
73
  - move_text: text (the exact span/clause to relocate), afterText (destination — REQUIRED for a direct move). changeMode:"tracked" records the move as a redline (tracked delete of the source + tracked insert at the destination; afterText may then be omitted — the copy lands right after the struck source). For a text SPAN; whole sections = move_range, tables = move_table.
74
- - move_table: tableOrdinal? (default 1), placement {at:"document_end"|"document_start"|"after"|"before", selector?}. THE way to move a whole table in ONE call — never delete-and-recreate or chain inserts/undos to relocate a table.
74
+ - move_table: tableOrdinal? (default 1), placement {at:"document_end"|"document_start"|"after"|"before", selector?}. THE way to move a whole table in ONE call — never delete-and-recreate or chain inserts/undos to relocate a table. changeMode:"tracked" records the move for review.
75
75
  - delete_table: tableOrdinal? (default 1), changeMode?. THE way to delete an entire table in ONE call — never delete rows one by one or reuse another table.
76
- - style_table: tableOrdinal? (default 1), accentColor? (header fill hex). ONE call makes a table look professional: accent header row with white bold text, bold first column, banded rows, clean borders. Use after create_table or on any existing table.
76
+ - style_table: tableOrdinal? (default 1), accentColor? (header fill hex). ONE call makes a table look professional: accent header row with white bold text, bold first column, banded rows, clean borders. Use after create_table or on any existing table. changeMode:"tracked" records the formatting for review.
77
77
  - insert_table_row: tableOrdinal (1-based), rowIndex (0-based; omit to append), position:"above"|"below", optional cellTexts. dryRun:true for preview.
78
78
  - insert_table_column: tableOrdinal, columnIndex (0-based; omit to append right), position:"left"|"right", optional headerText.
79
79
  - delete_table_row / delete_table_column: rowIndex or columnIndex required, tableOrdinal optional.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@superdoc/cli",
3
- "version": "0.36.1-next.2",
3
+ "version": "0.36.1-next.3",
4
4
  "description": "Command-line interface for SuperDoc: inspect, convert, and edit .docx files from a terminal or a script.",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0",
@@ -29,15 +29,15 @@
29
29
  "fast-glob": "^3.3.3",
30
30
  "happy-dom": "^20.3.4",
31
31
  "ws": "^8.18.0",
32
- "superdoc": "2.16.1-next.2",
32
+ "superdoc": "2.16.1-next.3",
33
33
  "y-websocket": "^3.0.0",
34
34
  "yjs": "13.6.31"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@hocuspocus/server": "^2.13.6",
38
- "@superdoc/sdk": "2.13.1-next.2",
38
+ "@superdoc/sdk": "2.13.1-next.3",
39
39
  "@superdoc/document-api": "0.1.0-alpha.0",
40
- "@superdoc/docx-engine": "0.15.1-next.1",
40
+ "@superdoc/docx-engine": "0.15.1-next.2",
41
41
  "@types/bun": "^1.3.8",
42
42
  "@types/node": "22.19.2",
43
43
  "@types/ws": "^8.5.13",
@@ -51,11 +51,11 @@
51
51
  "access": "public"
52
52
  },
53
53
  "optionalDependencies": {
54
- "@superdoc/cli-darwin-arm64": "0.36.1-next.2",
55
- "@superdoc/cli-darwin-x64": "0.36.1-next.2",
56
- "@superdoc/cli-linux-x64": "0.36.1-next.2",
57
- "@superdoc/cli-linux-arm64": "0.36.1-next.2",
58
- "@superdoc/cli-windows-x64": "0.36.1-next.2"
54
+ "@superdoc/cli-darwin-arm64": "0.36.1-next.3",
55
+ "@superdoc/cli-darwin-x64": "0.36.1-next.3",
56
+ "@superdoc/cli-linux-x64": "0.36.1-next.3",
57
+ "@superdoc/cli-linux-arm64": "0.36.1-next.3",
58
+ "@superdoc/cli-windows-x64": "0.36.1-next.3"
59
59
  },
60
60
  "scripts": {
61
61
  "predev": "node scripts/ensure-superdoc-build.js",