@usejunior/docx-core 0.7.1 → 0.8.0

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.
@@ -11,6 +11,40 @@
11
11
  * - addFormatChange: Add <w:rPrChange> for formatting differences
12
12
  */
13
13
  import type { ComparisonUnitAtom } from '../../core-types.js';
14
+ /**
15
+ * Error thrown when the original and revised documents have different table/container
16
+ * topology, making container-aware inplace insertion impossible.
17
+ * Caught by the adaptive pass loop to trigger rebuild fallback.
18
+ */
19
+ export declare class ContainerResolutionError extends Error {
20
+ constructor(message: string);
21
+ }
22
+ /** A single step in a structural path from a paragraph up to w:body. */
23
+ interface ContainerPathStep {
24
+ tag: string;
25
+ index: number;
26
+ }
27
+ /**
28
+ * Compute the structural path from a paragraph to the document body.
29
+ * Walks `parentNode` from the paragraph, recording {tag, index} for each
30
+ * structural container (w:tc, w:tr, w:tbl). Stops at w:body.
31
+ * Returns innermost-first order.
32
+ *
33
+ * Uses original-tree nodes — safe because only the revised tree is mutated.
34
+ */
35
+ export declare function getContainerPath(paragraph: Element): ContainerPathStep[];
36
+ /**
37
+ * Resolve a container path in the revised tree.
38
+ * Walks the path in reverse (outermost → innermost) from `body`.
39
+ * Returns the deepest container (typically w:tc), or null on mismatch.
40
+ */
41
+ export declare function resolveContainerInRevised(path: ContainerPathStep[], body: Element): Element | null;
42
+ /**
43
+ * Validate that the revised tree has compatible topology at the given path.
44
+ * Checks row count and cell count match at the target position.
45
+ * Returns false if there's a structural mismatch (row/cell additions, gridSpan divergence).
46
+ */
47
+ export declare function validateContainerTopology(path: ContainerPathStep[], body: Element): boolean;
14
48
  /**
15
49
  * Options for in-place modification.
16
50
  */
@@ -106,7 +140,7 @@ export declare function insertMoveFromRun(atom: ComparisonUnitAtom, moveName: st
106
140
  * @param state - Revision ID state
107
141
  * @returns The inserted paragraph, or null if insertion failed
108
142
  */
109
- export declare function insertDeletedParagraph(deletedAtom: ComparisonUnitAtom, insertAfterParagraph: Element | null, targetBody: Element, author: string, dateStr: string, state: RevisionIdState): Element | null;
143
+ export declare function insertDeletedParagraph(deletedAtom: ComparisonUnitAtom, insertAfterParagraph: Element | null, targetContainer: Element, author: string, dateStr: string, state: RevisionIdState): Element | null;
110
144
  /**
111
145
  * Wrap a run element with <w:moveFrom> for moved-from content.
112
146
  *
@@ -1 +1 @@
1
- {"version":3,"file":"inPlaceModifier.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/inPlaceModifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inPlaceModifier.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/inPlaceModifier.ts"],"names":[],"mappings":"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"}
@@ -44,6 +44,131 @@ function attachSourceElementPointers(atoms) {
44
44
  atom.sourceParagraphElement = findAncestorByTag(atom, 'w:p');
45
45
  }
46
46
  }
47
+ // ---------------------------------------------------------------------------
48
+ // Container-aware insertion helpers (issue #65)
49
+ // ---------------------------------------------------------------------------
50
+ /**
51
+ * Error thrown when the original and revised documents have different table/container
52
+ * topology, making container-aware inplace insertion impossible.
53
+ * Caught by the adaptive pass loop to trigger rebuild fallback.
54
+ */
55
+ export class ContainerResolutionError extends Error {
56
+ constructor(message) {
57
+ super(message);
58
+ this.name = 'ContainerResolutionError';
59
+ }
60
+ }
61
+ /**
62
+ * Compute the structural path from a paragraph to the document body.
63
+ * Walks `parentNode` from the paragraph, recording {tag, index} for each
64
+ * structural container (w:tc, w:tr, w:tbl). Stops at w:body.
65
+ * Returns innermost-first order.
66
+ *
67
+ * Uses original-tree nodes — safe because only the revised tree is mutated.
68
+ */
69
+ export function getContainerPath(paragraph) {
70
+ const path = [];
71
+ let current = paragraph.parentNode;
72
+ while (current && current.tagName) {
73
+ const el = current;
74
+ if (el.tagName === 'w:body')
75
+ break;
76
+ if (el.tagName === 'w:tc' || el.tagName === 'w:tr' || el.tagName === 'w:tbl') {
77
+ const parent = el.parentNode;
78
+ if (parent) {
79
+ let index = 0;
80
+ let sibling = el.previousSibling;
81
+ while (sibling) {
82
+ if (sibling.nodeType === 1 && sibling.tagName === el.tagName) {
83
+ index++;
84
+ }
85
+ sibling = sibling.previousSibling;
86
+ }
87
+ path.push({ tag: el.tagName, index });
88
+ }
89
+ }
90
+ current = el.parentNode;
91
+ }
92
+ return path;
93
+ }
94
+ /**
95
+ * Resolve a container path in the revised tree.
96
+ * Walks the path in reverse (outermost → innermost) from `body`.
97
+ * Returns the deepest container (typically w:tc), or null on mismatch.
98
+ */
99
+ export function resolveContainerInRevised(path, body) {
100
+ if (path.length === 0)
101
+ return null;
102
+ let current = body;
103
+ // Walk outermost to innermost (path is innermost-first, so reverse)
104
+ for (let i = path.length - 1; i >= 0; i--) {
105
+ const step = path[i];
106
+ const children = childElements(current).filter(c => c.tagName === step.tag);
107
+ const child = children[step.index];
108
+ if (!child)
109
+ return null; // Structural mismatch
110
+ current = child;
111
+ }
112
+ return current;
113
+ }
114
+ /**
115
+ * Validate that the revised tree has compatible topology at the given path.
116
+ * Checks row count and cell count match at the target position.
117
+ * Returns false if there's a structural mismatch (row/cell additions, gridSpan divergence).
118
+ */
119
+ export function validateContainerTopology(path, body) {
120
+ if (path.length === 0)
121
+ return true; // Body-level, always valid
122
+ let current = body;
123
+ for (let i = path.length - 1; i >= 0; i--) {
124
+ const step = path[i];
125
+ const children = childElements(current).filter(c => c.tagName === step.tag);
126
+ if (step.index >= children.length)
127
+ return false;
128
+ current = children[step.index];
129
+ }
130
+ return true;
131
+ }
132
+ /**
133
+ * Find the correct container and insertion anchor for a deleted/moved-source atom.
134
+ *
135
+ * For body-level atoms, returns ctx.body with the global lastProcessedParagraph anchor.
136
+ * For table-cell atoms, maps from the original tree container to the revised tree container
137
+ * by structural position, and uses the per-container anchor from lastParaByContainer.
138
+ *
139
+ * Returns null if container resolution fails (topology mismatch) — caller must throw
140
+ * ContainerResolutionError to trigger rebuild fallback.
141
+ */
142
+ function findTargetContainerForAtom(atom, ctx) {
143
+ // 1. Check if atom was in a table cell (original tree ancestors)
144
+ const sourceTc = findAncestorByTag(atom, 'w:tc');
145
+ if (!sourceTc) {
146
+ // Body-level paragraph — use global anchor (current behavior, correct)
147
+ return { container: ctx.body, insertAfter: ctx.lastProcessedParagraph };
148
+ }
149
+ // 2. Compute structural path from original tree
150
+ const sourcePara = atom.sourceParagraphElement;
151
+ if (!sourcePara) {
152
+ return null; // Can't resolve → force rebuild
153
+ }
154
+ const path = getContainerPath(sourcePara);
155
+ if (path.length === 0) {
156
+ // Paragraph has a w:tc ancestor but path is empty — shouldn't happen
157
+ return null;
158
+ }
159
+ // 3. Validate topology match before resolving
160
+ if (!validateContainerTopology(path, ctx.body)) {
161
+ return null; // Structural mismatch → force rebuild
162
+ }
163
+ // 4. Resolve container in revised tree
164
+ const revisedContainer = resolveContainerInRevised(path, ctx.body);
165
+ if (!revisedContainer) {
166
+ return null; // Resolution failed → force rebuild
167
+ }
168
+ // 5. Find container-local insertion anchor
169
+ const anchor = ctx.lastParaByContainer.get(revisedContainer) ?? null;
170
+ return { container: revisedContainer, insertAfter: anchor };
171
+ }
47
172
  /**
48
173
  * Determine whether an atom is "whitespace-only" for paragraph-level classification.
49
174
  *
@@ -752,7 +877,7 @@ export function insertMoveFromRun(atom, moveName, insertAfterRun, targetParagrap
752
877
  * @param state - Revision ID state
753
878
  * @returns The inserted paragraph, or null if insertion failed
754
879
  */
755
- export function insertDeletedParagraph(deletedAtom, insertAfterParagraph, targetBody, author, dateStr, state) {
880
+ export function insertDeletedParagraph(deletedAtom, insertAfterParagraph, targetContainer, author, dateStr, state) {
756
881
  // Get the source paragraph from the deleted atom
757
882
  const sourceParagraph = deletedAtom.sourceParagraphElement;
758
883
  if (!sourceParagraph) {
@@ -765,12 +890,20 @@ export function insertDeletedParagraph(deletedAtom, insertAfterParagraph, target
765
890
  for (const run of runs) {
766
891
  wrapAsDeleted(run, author, dateStr, state);
767
892
  }
768
- // Insert at correct position
893
+ // Insert at correct position, preserving w:tcPr as first child when target is a table cell
769
894
  if (insertAfterParagraph) {
770
895
  insertAfterElement(insertAfterParagraph, clonedParagraph);
771
896
  }
772
897
  else {
773
- targetBody.insertBefore(clonedParagraph, targetBody.firstChild);
898
+ const tcPr = targetContainer.tagName === 'w:tc'
899
+ ? findChildByTagName(targetContainer, 'w:tcPr')
900
+ : null;
901
+ if (tcPr) {
902
+ insertAfterElement(tcPr, clonedParagraph);
903
+ }
904
+ else {
905
+ targetContainer.insertBefore(clonedParagraph, targetContainer.firstChild);
906
+ }
774
907
  }
775
908
  return clonedParagraph;
776
909
  }
@@ -1393,7 +1526,12 @@ function handleDeleted(atom, ctx) {
1393
1526
  };
1394
1527
  // Handle empty deleted paragraphs specially
1395
1528
  if (atom.isEmptyParagraph && atom.sourceParagraphElement) {
1396
- const createdPara = insertDeletedParagraph(atom, ctx.lastProcessedParagraph, ctx.body, ctx.author, ctx.dateStr, ctx.state);
1529
+ // Container-aware insertion (issue #65)
1530
+ const emptyTarget = findTargetContainerForAtom(atom, ctx);
1531
+ if (!emptyTarget) {
1532
+ throw new ContainerResolutionError('Container topology mismatch for empty deleted paragraph');
1533
+ }
1534
+ const createdPara = insertDeletedParagraph(atom, emptyTarget.insertAfter, emptyTarget.container, ctx.author, ctx.dateStr, ctx.state);
1397
1535
  if (createdPara && atom.paragraphIndex !== undefined) {
1398
1536
  ctx.createdParagraphs.set(atom.paragraphIndex, createdPara);
1399
1537
  }
@@ -1449,11 +1587,24 @@ function handleDeleted(atom, ctx) {
1449
1587
  const clonedPPr = srcPPr.cloneNode(true);
1450
1588
  newPara.appendChild(clonedPPr);
1451
1589
  }
1452
- if (ctx.lastProcessedParagraph) {
1453
- insertAfterElement(ctx.lastProcessedParagraph, newPara);
1590
+ // Container-aware insertion (issue #65)
1591
+ const delTarget = findTargetContainerForAtom(atom, ctx);
1592
+ if (!delTarget) {
1593
+ throw new ContainerResolutionError('Container topology mismatch for deleted paragraph');
1594
+ }
1595
+ if (delTarget.insertAfter) {
1596
+ insertAfterElement(delTarget.insertAfter, newPara);
1454
1597
  }
1455
1598
  else {
1456
- ctx.body.insertBefore(newPara, ctx.body.firstChild);
1599
+ const propsEl = delTarget.container.tagName === 'w:tc'
1600
+ ? findChildByTagName(delTarget.container, 'w:tcPr')
1601
+ : null;
1602
+ if (propsEl) {
1603
+ insertAfterElement(propsEl, newPara);
1604
+ }
1605
+ else {
1606
+ delTarget.container.insertBefore(newPara, delTarget.container.firstChild);
1607
+ }
1457
1608
  }
1458
1609
  ctx.createdParagraphs.set(unifiedPara, newPara);
1459
1610
  const leadingTail = insertLeadingMarkers(newPara, leadingMarkers);
@@ -1552,11 +1703,24 @@ function handleMovedSource(atom, ctx) {
1552
1703
  const clonedPPr = srcPPr.cloneNode(true);
1553
1704
  newPara.appendChild(clonedPPr);
1554
1705
  }
1555
- if (ctx.lastProcessedParagraph) {
1556
- insertAfterElement(ctx.lastProcessedParagraph, newPara);
1706
+ // Container-aware insertion (issue #65)
1707
+ const moveTarget = findTargetContainerForAtom(atom, ctx);
1708
+ if (!moveTarget) {
1709
+ throw new ContainerResolutionError('Container topology mismatch for moved-from paragraph');
1710
+ }
1711
+ if (moveTarget.insertAfter) {
1712
+ insertAfterElement(moveTarget.insertAfter, newPara);
1557
1713
  }
1558
1714
  else {
1559
- ctx.body.insertBefore(newPara, ctx.body.firstChild);
1715
+ const propsEl = moveTarget.container.tagName === 'w:tc'
1716
+ ? findChildByTagName(moveTarget.container, 'w:tcPr')
1717
+ : null;
1718
+ if (propsEl) {
1719
+ insertAfterElement(propsEl, newPara);
1720
+ }
1721
+ else {
1722
+ moveTarget.container.insertBefore(newPara, moveTarget.container.firstChild);
1723
+ }
1560
1724
  }
1561
1725
  ctx.createdParagraphs.set(unifiedPara, newPara);
1562
1726
  const leadingTail = insertLeadingMarkers(newPara, leadingMarkers);
@@ -1791,6 +1955,7 @@ function processAtoms(mergedAtoms, _originalAtoms, revisedAtoms, author, dateStr
1791
1955
  createdParagraphs: new Map(),
1792
1956
  createdParagraphLastRun: new Map(),
1793
1957
  createdParagraphTrailingBookmarks: new Map(),
1958
+ lastParaByContainer: new Map(),
1794
1959
  };
1795
1960
  }
1796
1961
  // Build map from unified paragraph index to revised paragraph element.
@@ -1839,6 +2004,7 @@ function processAtoms(mergedAtoms, _originalAtoms, revisedAtoms, author, dateStr
1839
2004
  createdParagraphs: new Map(),
1840
2005
  createdParagraphLastRun: new Map(),
1841
2006
  createdParagraphTrailingBookmarks: new Map(),
2007
+ lastParaByContainer: new Map(),
1842
2008
  };
1843
2009
  // Reorder atoms so consecutive deletions precede consecutive insertions.
1844
2010
  // This produces grouped tracked changes (all <w:del> then all <w:ins>)
@@ -1856,6 +2022,13 @@ function processAtoms(mergedAtoms, _originalAtoms, revisedAtoms, author, dateStr
1856
2022
  }
1857
2023
  if (result.newLastParagraph !== undefined) {
1858
2024
  ctx.lastProcessedParagraph = result.newLastParagraph;
2025
+ // Track per-container anchor for container-aware insertion (issue #65)
2026
+ if (result.newLastParagraph) {
2027
+ const container = result.newLastParagraph.parentNode;
2028
+ if (container) {
2029
+ ctx.lastParaByContainer.set(container, result.newLastParagraph);
2030
+ }
2031
+ }
1859
2032
  }
1860
2033
  if (result.newLastParagraphIndex !== undefined) {
1861
2034
  ctx.lastParagraphIndex = result.newLastParagraphIndex;
@@ -1 +1 @@
1
- {"version":3,"file":"inPlaceModifier.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/inPlaceModifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inPlaceModifier.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/inPlaceModifier.ts"],"names":[],"mappings":"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"}