@usejunior/docx-core 0.19.1 → 0.20.1

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.
Files changed (113) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/core-types.d.ts +1 -139
  3. package/dist/core-types.d.ts.map +1 -1
  4. package/dist/core-types.js +1 -3
  5. package/dist/core-types.js.map +1 -1
  6. package/dist/index.d.ts +3 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +11 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/integration/generation-probes.d.ts +36 -2
  11. package/dist/integration/generation-probes.d.ts.map +1 -1
  12. package/dist/integration/generation-probes.js +137 -15
  13. package/dist/integration/generation-probes.js.map +1 -1
  14. package/dist/integration/libreoffice-oracle.js +1 -1
  15. package/dist/integration/synthetic-docx-fixture.d.ts.map +1 -1
  16. package/dist/integration/synthetic-docx-fixture.js +8 -0
  17. package/dist/integration/synthetic-docx-fixture.js.map +1 -1
  18. package/dist/primitives/accept_ai_edits.js +14 -2
  19. package/dist/primitives/accept_ai_edits.js.map +1 -1
  20. package/dist/primitives/accept_changes.d.ts +7 -0
  21. package/dist/primitives/accept_changes.d.ts.map +1 -1
  22. package/dist/primitives/accept_changes.js +92 -4
  23. package/dist/primitives/accept_changes.js.map +1 -1
  24. package/dist/primitives/bookmarks.d.ts +1 -0
  25. package/dist/primitives/bookmarks.d.ts.map +1 -1
  26. package/dist/primitives/bookmarks.js +1 -1
  27. package/dist/primitives/bookmarks.js.map +1 -1
  28. package/dist/primitives/comments.d.ts +31 -4
  29. package/dist/primitives/comments.d.ts.map +1 -1
  30. package/dist/primitives/comments.js +111 -12
  31. package/dist/primitives/comments.js.map +1 -1
  32. package/dist/primitives/document.d.ts +47 -1
  33. package/dist/primitives/document.d.ts.map +1 -1
  34. package/dist/primitives/document.js +198 -13
  35. package/dist/primitives/document.js.map +1 -1
  36. package/dist/primitives/document_view-headings.d.ts +3 -1
  37. package/dist/primitives/document_view-headings.d.ts.map +1 -1
  38. package/dist/primitives/document_view-headings.js +5 -5
  39. package/dist/primitives/document_view-headings.js.map +1 -1
  40. package/dist/primitives/document_view.d.ts +2 -0
  41. package/dist/primitives/document_view.d.ts.map +1 -1
  42. package/dist/primitives/document_view.js +18 -4
  43. package/dist/primitives/document_view.js.map +1 -1
  44. package/dist/primitives/field_evaluation.d.ts +70 -0
  45. package/dist/primitives/field_evaluation.d.ts.map +1 -0
  46. package/dist/primitives/field_evaluation.js +462 -0
  47. package/dist/primitives/field_evaluation.js.map +1 -0
  48. package/dist/primitives/footnotes.d.ts +17 -3
  49. package/dist/primitives/footnotes.d.ts.map +1 -1
  50. package/dist/primitives/footnotes.js +64 -17
  51. package/dist/primitives/footnotes.js.map +1 -1
  52. package/dist/primitives/index.d.ts +6 -1
  53. package/dist/primitives/index.d.ts.map +1 -1
  54. package/dist/primitives/index.js +6 -1
  55. package/dist/primitives/index.js.map +1 -1
  56. package/dist/primitives/merge_runs.d.ts +3 -1
  57. package/dist/primitives/merge_runs.d.ts.map +1 -1
  58. package/dist/primitives/merge_runs.js +12 -2
  59. package/dist/primitives/merge_runs.js.map +1 -1
  60. package/dist/primitives/namespaces.d.ts +10 -2
  61. package/dist/primitives/namespaces.d.ts.map +1 -1
  62. package/dist/primitives/namespaces.js +11 -2
  63. package/dist/primitives/namespaces.js.map +1 -1
  64. package/dist/primitives/note_conversion.d.ts +11 -0
  65. package/dist/primitives/note_conversion.d.ts.map +1 -0
  66. package/dist/primitives/note_conversion.js +12 -0
  67. package/dist/primitives/note_conversion.js.map +1 -0
  68. package/dist/primitives/paragraph_numbering.d.ts +40 -0
  69. package/dist/primitives/paragraph_numbering.d.ts.map +1 -0
  70. package/dist/primitives/paragraph_numbering.js +198 -0
  71. package/dist/primitives/paragraph_numbering.js.map +1 -0
  72. package/dist/primitives/reject_changes.d.ts +7 -0
  73. package/dist/primitives/reject_changes.d.ts.map +1 -1
  74. package/dist/primitives/reject_changes.js +133 -10
  75. package/dist/primitives/reject_changes.js.map +1 -1
  76. package/dist/primitives/sectPrAudit.d.ts.map +1 -1
  77. package/dist/primitives/sectPrAudit.js +10 -1
  78. package/dist/primitives/sectPrAudit.js.map +1 -1
  79. package/dist/primitives/sections.d.ts +134 -0
  80. package/dist/primitives/sections.d.ts.map +1 -0
  81. package/dist/primitives/sections.js +644 -0
  82. package/dist/primitives/sections.js.map +1 -0
  83. package/dist/primitives/styles.d.ts +60 -0
  84. package/dist/primitives/styles.d.ts.map +1 -1
  85. package/dist/primitives/styles.js +206 -25
  86. package/dist/primitives/styles.js.map +1 -1
  87. package/dist/primitives/symbol_run_content.d.ts +42 -0
  88. package/dist/primitives/symbol_run_content.d.ts.map +1 -0
  89. package/dist/primitives/symbol_run_content.js +79 -0
  90. package/dist/primitives/symbol_run_content.js.map +1 -0
  91. package/dist/primitives/text.d.ts +29 -0
  92. package/dist/primitives/text.d.ts.map +1 -1
  93. package/dist/primitives/text.js +354 -44
  94. package/dist/primitives/text.js.map +1 -1
  95. package/dist/primitives/track-changes-emitter.d.ts +9 -0
  96. package/dist/primitives/track-changes-emitter.d.ts.map +1 -1
  97. package/dist/primitives/track-changes-emitter.js +39 -1
  98. package/dist/primitives/track-changes-emitter.js.map +1 -1
  99. package/dist/primitives/validate_document.d.ts.map +1 -1
  100. package/dist/primitives/validate_document.js +22 -1
  101. package/dist/primitives/validate_document.js.map +1 -1
  102. package/dist/shared/docx/DocxArchive.d.ts.map +1 -1
  103. package/dist/shared/docx/DocxArchive.js +7 -0
  104. package/dist/shared/docx/DocxArchive.js.map +1 -1
  105. package/dist/shared/field-semantics.d.ts +26 -0
  106. package/dist/shared/field-semantics.d.ts.map +1 -0
  107. package/dist/shared/field-semantics.js +232 -0
  108. package/dist/shared/field-semantics.js.map +1 -0
  109. package/dist/shared/field-structure.d.ts +7 -1
  110. package/dist/shared/field-structure.d.ts.map +1 -1
  111. package/dist/shared/field-structure.js +25 -8
  112. package/dist/shared/field-structure.js.map +1 -1
  113. package/package.json +3 -3
@@ -0,0 +1,11 @@
1
+ import { type ConvertCommentsToFootnotesOptions, type ConvertCommentsToFootnotesReport } from './document.js';
2
+ export type ConvertCommentsToFootnotesResult = {
3
+ buffer: Buffer;
4
+ report: ConvertCommentsToFootnotesReport;
5
+ };
6
+ /**
7
+ * Convert comments on an isolated in-memory document and return a new DOCX.
8
+ * The caller's source buffer and file remain unchanged when preflight fails.
9
+ */
10
+ export declare function convertCommentsToFootnotes(source: Buffer, options?: ConvertCommentsToFootnotesOptions): Promise<ConvertCommentsToFootnotesResult>;
11
+ //# sourceMappingURL=note_conversion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"note_conversion.d.ts","sourceRoot":"","sources":["../../src/primitives/note_conversion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,iCAAiC,EAAE,KAAK,gCAAgC,EAAE,MAAM,eAAe,CAAC;AAE5H,MAAM,MAAM,gCAAgC,GAAG;IAC7C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,gCAAgC,CAAC;CAC1C,CAAC;AAEF;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,iCAAsC,GAC9C,OAAO,CAAC,gCAAgC,CAAC,CAK3C"}
@@ -0,0 +1,12 @@
1
+ import { DocxDocument } from './document.js';
2
+ /**
3
+ * Convert comments on an isolated in-memory document and return a new DOCX.
4
+ * The caller's source buffer and file remain unchanged when preflight fails.
5
+ */
6
+ export async function convertCommentsToFootnotes(source, options = {}) {
7
+ const document = await DocxDocument.load(source);
8
+ const report = await document.convertCommentsToFootnotes(options);
9
+ const { buffer } = await document.toBuffer({ cleanBookmarks: true, preserveOriginalBookmarks: true });
10
+ return { buffer, report };
11
+ }
12
+ //# sourceMappingURL=note_conversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"note_conversion.js","sourceRoot":"","sources":["../../src/primitives/note_conversion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAiF,MAAM,eAAe,CAAC;AAO5H;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,MAAc,EACd,UAA6C,EAAE;IAE/C,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;IAClE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,yBAAyB,EAAE,IAAI,EAAE,CAAC,CAAC;IACtG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,40 @@
1
+ import { type RevisionContext } from './track-changes-emitter.js';
2
+ export type DirectParagraphNumbering = {
3
+ numId: string;
4
+ ilvl: number;
5
+ };
6
+ export type ParagraphNumberingMutation = {
7
+ paragraphId: string;
8
+ numbering: DirectParagraphNumbering | null;
9
+ };
10
+ export type ParagraphNumberingMutationResult = {
11
+ paragraphId: string;
12
+ changed: boolean;
13
+ previous: DirectParagraphNumbering | null;
14
+ current: DirectParagraphNumbering | null;
15
+ warning?: string;
16
+ };
17
+ export type ParagraphNumberingMutationErrorCode = 'PARAGRAPH_NOT_FOUND' | 'INCOMPLETE_NUMBERING' | 'NUMBERING_PART_MISSING' | 'NUMBERING_INSTANCE_NOT_FOUND' | 'ABSTRACT_NUMBERING_NOT_FOUND' | 'NUMBERING_LEVEL_NOT_FOUND' | 'INVALID_NUMBERING_REFERENCE';
18
+ export declare class ParagraphNumberingMutationError extends Error {
19
+ readonly code: ParagraphNumberingMutationErrorCode;
20
+ constructor(code: ParagraphNumberingMutationErrorCode, message: string);
21
+ }
22
+ /**
23
+ * Read only the paragraph's direct `w:numPr`; style-inherited numbering is not
24
+ * considered.
25
+ *
26
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.1.19
27
+ * @see #653
28
+ */
29
+ export declare function getDirectParagraphNumbering(doc: Document, paragraphId: string): DirectParagraphNumbering | null;
30
+ /**
31
+ * Mutate one paragraph's direct list reference while preserving the numbering
32
+ * definitions and unrelated paragraph properties.
33
+ *
34
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.1.19
35
+ * @conformance ECMA-376 edition 5, Part 1 § 17.9.18
36
+ * @conformance ECMA-376 edition 5, Part 1 § 17.9.3
37
+ * @see #653
38
+ */
39
+ export declare function setDirectParagraphNumbering(documentDoc: Document, numberingDoc: Document | null, mutation: ParagraphNumberingMutation, ctx?: RevisionContext): ParagraphNumberingMutationResult;
40
+ //# sourceMappingURL=paragraph_numbering.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paragraph_numbering.d.ts","sourceRoot":"","sources":["../../src/primitives/paragraph_numbering.ts"],"names":[],"mappings":"AAIA,OAAO,EAEL,KAAK,eAAe,EACrB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,wBAAwB,GAAG;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,wBAAwB,GAAG,IAAI,CAAC;CAC5C,CAAC;AAEF,MAAM,MAAM,gCAAgC,GAAG;IAC7C,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAC1C,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAC3C,qBAAqB,GACrB,sBAAsB,GACtB,wBAAwB,GACxB,8BAA8B,GAC9B,8BAA8B,GAC9B,2BAA2B,GAC3B,6BAA6B,CAAC;AAElC,qBAAa,+BAAgC,SAAQ,KAAK;aAEtC,IAAI,EAAE,mCAAmC;gBAAzC,IAAI,EAAE,mCAAmC,EACzD,OAAO,EAAE,MAAM;CAKlB;AAkCD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,QAAQ,EACb,WAAW,EAAE,MAAM,GAClB,wBAAwB,GAAG,IAAI,CAgBjC;AA4FD;;;;;;;;GAQG;AACH,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,QAAQ,EACrB,YAAY,EAAE,QAAQ,GAAG,IAAI,EAC7B,QAAQ,EAAE,0BAA0B,EACpC,GAAG,CAAC,EAAE,eAAe,GACpB,gCAAgC,CA6ElC"}
@@ -0,0 +1,198 @@
1
+ import { findParagraphByBookmarkId } from './bookmarks.js';
2
+ import { getDirectChildrenByName } from './dom-helpers.js';
3
+ import { OOXML, W } from './namespaces.js';
4
+ import { parseNumberingXml } from './numbering.js';
5
+ import { buildPPrChangeElement, } from './track-changes-emitter.js';
6
+ export class ParagraphNumberingMutationError extends Error {
7
+ code;
8
+ constructor(code, message) {
9
+ super(message);
10
+ this.code = code;
11
+ this.name = 'ParagraphNumberingMutationError';
12
+ }
13
+ }
14
+ function getWAttr(el, localName) {
15
+ return el.getAttributeNS(OOXML.W_NS, localName)
16
+ || el.getAttribute(`w:${localName}`)
17
+ || el.getAttribute(localName)
18
+ || null;
19
+ }
20
+ function parseDirectNumberingFromParagraph(paragraph) {
21
+ const pPr = getDirectChildrenByName(paragraph, W.pPr)[0] ?? null;
22
+ const numPr = pPr ? getDirectChildrenByName(pPr, W.numPr)[0] ?? null : null;
23
+ if (!numPr)
24
+ return { value: null, complete: true };
25
+ const numIdEl = getDirectChildrenByName(numPr, W.numId)[0] ?? null;
26
+ const ilvlEl = getDirectChildrenByName(numPr, W.ilvl)[0] ?? null;
27
+ const numId = numIdEl ? getWAttr(numIdEl, W.val) : null;
28
+ const ilvlText = ilvlEl ? getWAttr(ilvlEl, W.val) : null;
29
+ const ilvl = ilvlText !== null ? Number(ilvlText) : Number.NaN;
30
+ if (numId === null
31
+ || !/^[1-9]\d*$/.test(numId)
32
+ || !Number.isSafeInteger(ilvl)
33
+ || ilvl < 0) {
34
+ return { value: null, complete: false };
35
+ }
36
+ return { value: { numId, ilvl }, complete: true };
37
+ }
38
+ /**
39
+ * Read only the paragraph's direct `w:numPr`; style-inherited numbering is not
40
+ * considered.
41
+ *
42
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.1.19
43
+ * @see #653
44
+ */
45
+ export function getDirectParagraphNumbering(doc, paragraphId) {
46
+ const paragraph = findParagraphByBookmarkId(doc, paragraphId);
47
+ if (!paragraph) {
48
+ throw new ParagraphNumberingMutationError('PARAGRAPH_NOT_FOUND', `Paragraph '${paragraphId}' was not found.`);
49
+ }
50
+ const parsed = parseDirectNumberingFromParagraph(paragraph);
51
+ if (!parsed.complete) {
52
+ throw new ParagraphNumberingMutationError('INCOMPLETE_NUMBERING', `Paragraph '${paragraphId}' has an incomplete or invalid direct w:numPr.`);
53
+ }
54
+ return parsed.value;
55
+ }
56
+ function validateRequestedNumbering(numberingDoc, requested) {
57
+ if (!/^[1-9]\d*$/.test(requested.numId)
58
+ || !Number.isSafeInteger(requested.ilvl)
59
+ || requested.ilvl < 0) {
60
+ throw new ParagraphNumberingMutationError('INVALID_NUMBERING_REFERENCE', 'numId must be a positive decimal string and ilvl must be a non-negative safe integer.');
61
+ }
62
+ if (!numberingDoc) {
63
+ throw new ParagraphNumberingMutationError('NUMBERING_PART_MISSING', 'The document has no word/numbering.xml part.');
64
+ }
65
+ const model = parseNumberingXml(numberingDoc);
66
+ const instance = model.nums.get(requested.numId);
67
+ if (!instance) {
68
+ throw new ParagraphNumberingMutationError('NUMBERING_INSTANCE_NOT_FOUND', `Numbering instance '${requested.numId}' was not found in word/numbering.xml.`);
69
+ }
70
+ const abstract = model.abstractNums.get(instance.abstractNumId);
71
+ if (!abstract) {
72
+ throw new ParagraphNumberingMutationError('ABSTRACT_NUMBERING_NOT_FOUND', `Numbering instance '${requested.numId}' references missing abstract numbering '${instance.abstractNumId}'.`);
73
+ }
74
+ if (!abstract.levels.has(requested.ilvl)) {
75
+ throw new ParagraphNumberingMutationError('NUMBERING_LEVEL_NOT_FOUND', `Numbering instance '${requested.numId}' has no level ${requested.ilvl}.`);
76
+ }
77
+ }
78
+ function ensureParagraphProperties(paragraph) {
79
+ const existing = getDirectChildrenByName(paragraph, W.pPr)[0];
80
+ if (existing)
81
+ return existing;
82
+ const pPr = paragraph.ownerDocument.createElementNS(OOXML.W_NS, `w:${W.pPr}`);
83
+ paragraph.insertBefore(pPr, paragraph.firstChild);
84
+ return pPr;
85
+ }
86
+ function insertNumPrInSchemaOrder(pPr, numPr) {
87
+ const successors = new Set([
88
+ 'suppressLineNumbers',
89
+ 'pBdr',
90
+ 'shd',
91
+ 'tabs',
92
+ 'suppressAutoHyphens',
93
+ 'kinsoku',
94
+ 'wordWrap',
95
+ 'overflowPunct',
96
+ 'topLinePunct',
97
+ 'autoSpaceDE',
98
+ 'autoSpaceDN',
99
+ 'bidi',
100
+ 'adjustRightInd',
101
+ 'snapToGrid',
102
+ W.spacing,
103
+ W.ind,
104
+ 'contextualSpacing',
105
+ 'mirrorIndents',
106
+ 'suppressOverlap',
107
+ W.jc,
108
+ 'textDirection',
109
+ 'textAlignment',
110
+ 'textboxTightWrap',
111
+ 'outlineLvl',
112
+ 'divId',
113
+ 'cnfStyle',
114
+ W.rPr,
115
+ W.sectPr,
116
+ 'pPrChange',
117
+ ]);
118
+ const successor = Array.from(pPr.children)
119
+ .find((child) => successors.has(child.localName));
120
+ if (successor)
121
+ pPr.insertBefore(numPr, successor);
122
+ else
123
+ pPr.appendChild(numPr);
124
+ }
125
+ /**
126
+ * Mutate one paragraph's direct list reference while preserving the numbering
127
+ * definitions and unrelated paragraph properties.
128
+ *
129
+ * @conformance ECMA-376 edition 5, Part 1 § 17.3.1.19
130
+ * @conformance ECMA-376 edition 5, Part 1 § 17.9.18
131
+ * @conformance ECMA-376 edition 5, Part 1 § 17.9.3
132
+ * @see #653
133
+ */
134
+ export function setDirectParagraphNumbering(documentDoc, numberingDoc, mutation, ctx) {
135
+ const paragraph = findParagraphByBookmarkId(documentDoc, mutation.paragraphId);
136
+ if (!paragraph) {
137
+ throw new ParagraphNumberingMutationError('PARAGRAPH_NOT_FOUND', `Paragraph '${mutation.paragraphId}' was not found.`);
138
+ }
139
+ if (mutation.numbering) {
140
+ validateRequestedNumbering(numberingDoc, mutation.numbering);
141
+ }
142
+ const parsedPrevious = parseDirectNumberingFromParagraph(paragraph);
143
+ const existingPPr = getDirectChildrenByName(paragraph, W.pPr)[0] ?? null;
144
+ const existingNumPrs = existingPPr
145
+ ? getDirectChildrenByName(existingPPr, W.numPr)
146
+ : [];
147
+ if (!mutation.numbering && existingNumPrs.length === 0) {
148
+ return {
149
+ paragraphId: mutation.paragraphId,
150
+ changed: false,
151
+ previous: null,
152
+ current: null,
153
+ warning: 'The paragraph has no direct w:numPr; style-inherited numbering was not changed.',
154
+ };
155
+ }
156
+ if (mutation.numbering
157
+ && parsedPrevious.complete
158
+ && parsedPrevious.value?.numId === mutation.numbering.numId
159
+ && parsedPrevious.value.ilvl === mutation.numbering.ilvl
160
+ && existingNumPrs.length === 1) {
161
+ return {
162
+ paragraphId: mutation.paragraphId,
163
+ changed: false,
164
+ previous: parsedPrevious.value,
165
+ current: parsedPrevious.value,
166
+ };
167
+ }
168
+ const oldPPr = existingPPr ? existingPPr.cloneNode(true) : null;
169
+ const pPr = mutation.numbering
170
+ ? ensureParagraphProperties(paragraph)
171
+ : existingPPr;
172
+ for (const stale of getDirectChildrenByName(pPr, W.numPr)) {
173
+ pPr.removeChild(stale);
174
+ }
175
+ if (mutation.numbering) {
176
+ const numPr = documentDoc.createElementNS(OOXML.W_NS, `w:${W.numPr}`);
177
+ const ilvl = documentDoc.createElementNS(OOXML.W_NS, `w:${W.ilvl}`);
178
+ ilvl.setAttributeNS(OOXML.W_NS, `w:${W.val}`, String(mutation.numbering.ilvl));
179
+ const numId = documentDoc.createElementNS(OOXML.W_NS, `w:${W.numId}`);
180
+ numId.setAttributeNS(OOXML.W_NS, `w:${W.val}`, mutation.numbering.numId);
181
+ numPr.appendChild(ilvl);
182
+ numPr.appendChild(numId);
183
+ insertNumPrInSchemaOrder(pPr, numPr);
184
+ }
185
+ if (ctx) {
186
+ for (const stale of getDirectChildrenByName(pPr, 'pPrChange')) {
187
+ pPr.removeChild(stale);
188
+ }
189
+ pPr.appendChild(buildPPrChangeElement(oldPPr, ctx));
190
+ }
191
+ return {
192
+ paragraphId: mutation.paragraphId,
193
+ changed: true,
194
+ previous: parsedPrevious.complete ? parsedPrevious.value : null,
195
+ current: mutation.numbering,
196
+ };
197
+ }
198
+ //# sourceMappingURL=paragraph_numbering.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paragraph_numbering.js","sourceRoot":"","sources":["../../src/primitives/paragraph_numbering.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EACL,qBAAqB,GAEtB,MAAM,4BAA4B,CAAC;AA6BpC,MAAM,OAAO,+BAAgC,SAAQ,KAAK;IAEtC;IADlB,YACkB,IAAyC,EACzD,OAAe;QAEf,KAAK,CAAC,OAAO,CAAC,CAAC;QAHC,SAAI,GAAJ,IAAI,CAAqC;QAIzD,IAAI,CAAC,IAAI,GAAG,iCAAiC,CAAC;IAChD,CAAC;CACF;AAED,SAAS,QAAQ,CAAC,EAAW,EAAE,SAAiB;IAC9C,OAAO,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC;WAC1C,EAAE,CAAC,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC;WACjC,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;WAC1B,IAAI,CAAC;AACZ,CAAC;AAED,SAAS,iCAAiC,CACxC,SAAkB;IAElB,MAAM,GAAG,GAAG,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,uBAAuB,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEnD,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACnE,MAAM,MAAM,GAAG,uBAAuB,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACjE,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,MAAM,IAAI,GAAG,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;IAE/D,IACE,KAAK,KAAK,IAAI;WACX,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;WACzB,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC;WAC3B,IAAI,GAAG,CAAC,EACX,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC1C,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAAa,EACb,WAAmB;IAEnB,MAAM,SAAS,GAAG,yBAAyB,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,cAAc,WAAW,kBAAkB,CAC5C,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,iCAAiC,CAAC,SAAS,CAAC,CAAC;IAC5D,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,+BAA+B,CACvC,sBAAsB,EACtB,cAAc,WAAW,gDAAgD,CAC1E,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED,SAAS,0BAA0B,CACjC,YAA6B,EAC7B,SAAmC;IAEnC,IACE,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;WAChC,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC;WACrC,SAAS,CAAC,IAAI,GAAG,CAAC,EACrB,CAAC;QACD,MAAM,IAAI,+BAA+B,CACvC,6BAA6B,EAC7B,uFAAuF,CACxF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,IAAI,+BAA+B,CACvC,wBAAwB,EACxB,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,+BAA+B,CACvC,8BAA8B,EAC9B,uBAAuB,SAAS,CAAC,KAAK,wCAAwC,CAC/E,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,+BAA+B,CACvC,8BAA8B,EAC9B,uBAAuB,SAAS,CAAC,KAAK,4CAA4C,QAAQ,CAAC,aAAa,IAAI,CAC7G,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,+BAA+B,CACvC,2BAA2B,EAC3B,uBAAuB,SAAS,CAAC,KAAK,kBAAkB,SAAS,CAAC,IAAI,GAAG,CAC1E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,yBAAyB,CAAC,SAAkB;IACnD,MAAM,QAAQ,GAAG,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9D,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,GAAG,GAAG,SAAS,CAAC,aAAc,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;IAClD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,wBAAwB,CAAC,GAAY,EAAE,KAAc;IAC5D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;QACzB,qBAAqB;QACrB,MAAM;QACN,KAAK;QACL,MAAM;QACN,qBAAqB;QACrB,SAAS;QACT,UAAU;QACV,eAAe;QACf,cAAc;QACd,aAAa;QACb,aAAa;QACb,MAAM;QACN,gBAAgB;QAChB,YAAY;QACZ,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,GAAG;QACL,mBAAmB;QACnB,eAAe;QACf,iBAAiB;QACjB,CAAC,CAAC,EAAE;QACJ,eAAe;QACf,eAAe;QACf,kBAAkB;QAClB,YAAY;QACZ,OAAO;QACP,UAAU;QACV,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,MAAM;QACR,WAAW;KACZ,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;SACvC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAE,KAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IACjE,IAAI,SAAS;QAAE,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;;QAC7C,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,2BAA2B,CACzC,WAAqB,EACrB,YAA6B,EAC7B,QAAoC,EACpC,GAAqB;IAErB,MAAM,SAAS,GAAG,yBAAyB,CAAC,WAAW,EAAE,QAAQ,CAAC,WAAW,CAAC,CAAC;IAC/E,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,+BAA+B,CACvC,qBAAqB,EACrB,cAAc,QAAQ,CAAC,WAAW,kBAAkB,CACrD,CAAC;IACJ,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvB,0BAA0B,CAAC,YAAY,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,cAAc,GAAG,iCAAiC,CAAC,SAAS,CAAC,CAAC;IACpE,MAAM,WAAW,GAAG,uBAAuB,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;IACzE,MAAM,cAAc,GAAG,WAAW;QAChC,CAAC,CAAC,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC;QAC/C,CAAC,CAAC,EAAE,CAAC;IAEP,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvD,OAAO;YACL,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,IAAI;YACd,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,iFAAiF;SAC3F,CAAC;IACJ,CAAC;IAED,IACE,QAAQ,CAAC,SAAS;WACf,cAAc,CAAC,QAAQ;WACvB,cAAc,CAAC,KAAK,EAAE,KAAK,KAAK,QAAQ,CAAC,SAAS,CAAC,KAAK;WACxD,cAAc,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,SAAS,CAAC,IAAI;WACrD,cAAc,CAAC,MAAM,KAAK,CAAC,EAC9B,CAAC;QACD,OAAO;YACL,WAAW,EAAE,QAAQ,CAAC,WAAW;YACjC,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,cAAc,CAAC,KAAK;YAC9B,OAAO,EAAE,cAAc,CAAC,KAAK;SAC9B,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAY,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,MAAM,GAAG,GAAG,QAAQ,CAAC,SAAS;QAC5B,CAAC,CAAC,yBAAyB,CAAC,SAAS,CAAC;QACtC,CAAC,CAAC,WAAY,CAAC;IAEjB,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1D,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/E,MAAM,KAAK,GAAG,WAAW,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACtE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACzE,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACxB,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzB,wBAAwB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,GAAG,EAAE,CAAC;QACR,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,GAAG,EAAE,WAAW,CAAC,EAAE,CAAC;YAC9D,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACzB,CAAC;QACD,GAAG,CAAC,WAAW,CAAC,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;IACtD,CAAC;IAED,OAAO;QACL,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,OAAO,EAAE,IAAI;QACb,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;QAC/D,OAAO,EAAE,QAAQ,CAAC,SAAS;KAC5B,CAAC;AACJ,CAAC"}
@@ -23,6 +23,13 @@ export type RejectChangesResult = {
23
23
  deletionsRestored: number;
24
24
  movesReverted: number;
25
25
  propertyChangesReverted: number;
26
+ /**
27
+ * Row-level revision markers left in place because this engine cannot resolve
28
+ * them. A non-zero count means the output still holds tracked-change markup
29
+ * and does not match what a word processor would project. Reported separately
30
+ * from the resolved counters: a preserved marker is not a reverted change.
31
+ */
32
+ unresolvedRowRevisions: number;
26
33
  };
27
34
  /**
28
35
  * Reject all tracked changes in the document body or story root, restoring
@@ -1 +1 @@
1
- {"version":3,"file":"reject_changes.d.ts","sourceRoot":"","sources":["../../src/primitives/reject_changes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAsB1D,MAAM,MAAM,mBAAmB,GAAG;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,MAAM,CAAC;CACjC,CAAC;AAgUF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,QAAQ,EACb,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GACjC,mBAAmB,CAuKrB"}
1
+ {"version":3,"file":"reject_changes.d.ts","sourceRoot":"","sources":["../../src/primitives/reject_changes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAsB1D,MAAM,MAAM,mBAAmB,GAAG;IAChC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,MAAM,CAAC;IAChC;;;;;OAKG;IACH,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC;AA4WF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,QAAQ,EACb,IAAI,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GACjC,mBAAmB,CA6PrB"}
@@ -51,10 +51,34 @@ function getDepth(node) {
51
51
  function collectByLocalName(container, localName) {
52
52
  return Array.from(container.getElementsByTagNameNS(W_NS, localName));
53
53
  }
54
- function removeAllByLocalName(container, localName, filter = ACCEPT_ALL) {
54
+ /**
55
+ * True iff this element is a row-level revision marker — a `w:ins`/`w:del`
56
+ * whose direct parent is `w:trPr`.
57
+ *
58
+ * These describe the ROW rather than wrapping a span of content:
59
+ * `w:tr > w:trPr > w:ins` marks the row itself as inserted and
60
+ * `w:tr > w:trPr > w:del` marks it as deleted. A sweep that matches on local
61
+ * name alone cannot tell them apart from the content wrappers, and removing one
62
+ * strips the `w:id`/`w:author`/`w:date` evidence while leaving the `w:tr` it
63
+ * described in the document.
64
+ *
65
+ * @see https://github.com/UseJunior/safe-docx/issues/845
66
+ */
67
+ function isRowPropertyRevisionMarker(el) {
68
+ const parent = el.parentNode;
69
+ return parent !== null && isW(parent, 'trPr');
70
+ }
71
+ /** Row-level markers the filter selects, which this engine cannot resolve. */
72
+ function countUnresolvedRowRevisions(container, localName, filter) {
73
+ return collectByLocalName(container, localName).filter(filter).filter(isRowPropertyRevisionMarker)
74
+ .length;
75
+ }
76
+ function removeAllByLocalName(container, localName, filter = ACCEPT_ALL, exclude) {
55
77
  const elements = collectByLocalName(container, localName).filter(filter);
56
78
  let count = 0;
57
79
  for (const el of elements) {
80
+ if (exclude?.(el))
81
+ continue;
58
82
  if (el.parentNode) {
59
83
  el.parentNode.removeChild(el);
60
84
  count++;
@@ -292,13 +316,22 @@ function relocateBookmarks(p, paragraphsToRemove) {
292
316
  }
293
317
  }
294
318
  }
295
- // Also check sibling bookmarks (sibling-style: <bookmarkStart/><p/><bookmarkEnd/>)
319
+ // Also check sibling bookmarks that actually ENVELOP this paragraph
320
+ // (sibling-style: <bookmarkStart/><p/><bookmarkEnd/>). Merely moving every
321
+ // consecutive bookmark beside the paragraph corrupts adjacent, unrelated
322
+ // Safe DOCX paragraph anchors—for example, a deleted source paragraph may
323
+ // leave its empty start/end pair immediately after an inserted paragraph.
324
+ // A sibling bookmark belongs to this paragraph only when the start on the
325
+ // left and end on the right share the same w:id.
326
+ const precedingStarts = new Map();
296
327
  let prev = p.previousSibling;
297
328
  while (prev) {
298
329
  if (prev.nodeType === 1) {
299
330
  const el = prev;
300
- if (isW(el, 'bookmarkStart') || isW(el, 'bookmarkEnd')) {
301
- toMove.push(el);
331
+ if (isW(el, 'bookmarkStart')) {
332
+ const id = el.getAttributeNS(W_NS, 'id') ?? el.getAttribute('w:id');
333
+ if (id !== null)
334
+ precedingStarts.set(id, el);
302
335
  prev = prev.previousSibling;
303
336
  continue;
304
337
  }
@@ -306,12 +339,15 @@ function relocateBookmarks(p, paragraphsToRemove) {
306
339
  }
307
340
  prev = prev.previousSibling;
308
341
  }
342
+ const followingEnds = new Map();
309
343
  let next = p.nextSibling;
310
344
  while (next) {
311
345
  if (next.nodeType === 1) {
312
346
  const el = next;
313
- if (isW(el, 'bookmarkStart') || isW(el, 'bookmarkEnd')) {
314
- toMove.push(el);
347
+ if (isW(el, 'bookmarkEnd')) {
348
+ const id = el.getAttributeNS(W_NS, 'id') ?? el.getAttribute('w:id');
349
+ if (id !== null)
350
+ followingEnds.set(id, el);
315
351
  next = next.nextSibling;
316
352
  continue;
317
353
  }
@@ -319,12 +355,17 @@ function relocateBookmarks(p, paragraphsToRemove) {
319
355
  }
320
356
  next = next.nextSibling;
321
357
  }
358
+ for (const [id, start] of precedingStarts) {
359
+ const end = followingEnds.get(id);
360
+ if (end)
361
+ toMove.push(start, end);
362
+ }
363
+ const firstNonPPr = Array.from(target.childNodes).find((n) => !(n.nodeType === 1 && isW(n, 'pPr'))) ?? null;
322
364
  for (const bm of toMove) {
323
365
  // Insert at the beginning of the target paragraph (after pPr if present)
324
- const firstNonPPr = Array.from(target.childNodes).find((n) => !(n.nodeType === 1 && isW(n, 'pPr')));
325
366
  if (bm.parentNode)
326
367
  bm.parentNode.removeChild(bm);
327
- target.insertBefore(bm, firstNonPPr ?? null);
368
+ target.insertBefore(bm, firstNonPPr);
328
369
  }
329
370
  }
330
371
  // ── Public API ──────────────────────────────────────────────────────
@@ -351,7 +392,13 @@ export function rejectChanges(doc, opts) {
351
392
  const selective = filter !== ACCEPT_ALL;
352
393
  const root = doc.getElementsByTagNameNS(W_NS, 'body').item(0) ?? doc.documentElement;
353
394
  if (!root) {
354
- return { insertionsRemoved: 0, deletionsRestored: 0, movesReverted: 0, propertyChangesReverted: 0 };
395
+ return {
396
+ insertionsRemoved: 0,
397
+ deletionsRestored: 0,
398
+ movesReverted: 0,
399
+ propertyChangesReverted: 0,
400
+ unresolvedRowRevisions: 0,
401
+ };
355
402
  }
356
403
  // Phase A — Identify paragraphs whose MARK is a tracked insertion
357
404
  const markInsertedParagraphs = new Set();
@@ -378,8 +425,51 @@ export function rejectChanges(doc, opts) {
378
425
  for (const p of markInsertedParagraphs) {
379
426
  relocateBookmarks(p, markInsertedParagraphs);
380
427
  }
428
+ // Mirror Accept All's projection-aware bookmark cleanup: an endpoint inside
429
+ // a selected insertion can have a live counterpart outside the wrapper so
430
+ // the combined redline visibly brackets inserted text. Rejecting the
431
+ // insertion must remove that revised-side counterpart as well.
432
+ const insertedBookmarkIds = new Set();
433
+ for (const insertion of collectByLocalName(root, 'ins').filter(filter)) {
434
+ for (const localName of ['bookmarkStart', 'bookmarkEnd']) {
435
+ for (const boundary of collectByLocalName(insertion, localName)) {
436
+ const id = boundary.getAttributeNS(W_NS, 'id') ?? boundary.getAttribute('w:id');
437
+ if (id)
438
+ insertedBookmarkIds.add(id);
439
+ }
440
+ }
441
+ }
442
+ const isInsideRevision = (marker) => {
443
+ let current = marker.parentNode;
444
+ while (current && current !== root) {
445
+ if (isW(current, 'del') || isW(current, 'ins') || isW(current, 'moveFrom') || isW(current, 'moveTo')) {
446
+ return true;
447
+ }
448
+ current = current.parentNode;
449
+ }
450
+ return false;
451
+ };
452
+ if (insertedBookmarkIds.size > 0) {
453
+ for (const localName of ['bookmarkStart', 'bookmarkEnd']) {
454
+ for (const marker of collectByLocalName(root, localName)) {
455
+ const id = marker.getAttributeNS(W_NS, 'id') ?? marker.getAttribute('w:id');
456
+ if (id && insertedBookmarkIds.has(id) && !isInsideRevision(marker)) {
457
+ marker.parentNode?.removeChild(marker);
458
+ }
459
+ }
460
+ }
461
+ }
381
462
  // Phase C — Remove insertions and move destinations
382
- const insertionsRemoved = removeAllByLocalName(root, 'ins', filter);
463
+ // A `w:trPr > w:ins` marks the ROW as inserted; rejecting it should remove the
464
+ // whole `w:tr`, which this engine does not implement (conformance-adapter.ts
465
+ // already classifies the combination as unsupported). Sweeping it as a content
466
+ // insertion would strip the marker and keep the row — silent divergence with no
467
+ // residual record. Preserve it and report it instead (#845).
468
+ //
469
+ // The mirror direction needs no guard: rejecting a `w:trPr > w:del` correctly
470
+ // keeps the row and drops the marker, which Phase D's unwrap already does.
471
+ const unresolvedRowRevisions = countUnresolvedRowRevisions(root, 'ins', filter);
472
+ const insertionsRemoved = removeAllByLocalName(root, 'ins', filter, isRowPropertyRevisionMarker);
383
473
  const moveToRemoved = removeAllByLocalName(root, 'moveTo', filter);
384
474
  removeAllByLocalName(root, 'moveToRangeStart', filter);
385
475
  removeAllByLocalName(root, 'moveToRangeEnd', filter);
@@ -444,6 +534,38 @@ export function rejectChanges(doc, opts) {
444
534
  if (originalProps) {
445
535
  // Replace the current property element with the original
446
536
  const restored = originalProps.cloneNode(true);
537
+ // CT_SectPrChange carries CT_SectPrBase, which intentionally excludes
538
+ // header/footer references. Those live bindings are not part of the
539
+ // page-setup property revision and must survive rejection.
540
+ // A `w:trPr` may carry BOTH a row-level revision marker and a
541
+ // `w:trPrChange`. Restoring the snapshot replaces the whole `w:trPr`,
542
+ // which would silently destroy any surviving marker — including the
543
+ // unresolved `w:ins` Phase C deliberately preserved (making the reported
544
+ // `unresolvedRowRevisions` disagree with the document) and any FOREIGN
545
+ // marker a selective reject promised to leave byte-untouched.
546
+ //
547
+ // `w:trPrChange` carries CT_TrPrBase, which has no row-revision
548
+ // children of its own, so transplanting the survivors cannot collide
549
+ // with the restored properties.
550
+ if (localName === 'trPrChange') {
551
+ const survivingRowMarkers = Array.from(parentProp.childNodes)
552
+ .filter((node) => node.nodeType === 1
553
+ && (isW(node, 'ins') || isW(node, 'del')))
554
+ .map((marker) => marker.cloneNode(true));
555
+ for (const marker of survivingRowMarkers.reverse()) {
556
+ restored.insertBefore(marker, restored.firstChild);
557
+ }
558
+ }
559
+ if (localName === 'sectPrChange') {
560
+ const liveReferences = Array.from(parentProp.childNodes)
561
+ .filter((node) => node.nodeType === 1
562
+ && (isW(node, 'headerReference')
563
+ || isW(node, 'footerReference')))
564
+ .map((reference) => reference.cloneNode(true));
565
+ for (const reference of liveReferences.reverse()) {
566
+ restored.insertBefore(reference, restored.firstChild);
567
+ }
568
+ }
447
569
  grandParent.replaceChild(restored, parentProp);
448
570
  }
449
571
  else {
@@ -502,6 +624,7 @@ export function rejectChanges(doc, opts) {
502
624
  deletionsRestored,
503
625
  movesReverted: moveFromUnwrapped + moveToRemoved,
504
626
  propertyChangesReverted,
627
+ unresolvedRowRevisions,
505
628
  };
506
629
  }
507
630
  //# sourceMappingURL=reject_changes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"reject_changes.js","sourceRoot":"","sources":["../../src/primitives/reject_changes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reject_changes.js","sourceRoot":"","sources":["../../src/primitives/reject_changes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"sectPrAudit.d.ts","sourceRoot":"","sources":["../../src/primitives/sectPrAudit.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,eAAe,GACvB,cAAc,GACd,4BAA4B,GAC5B,4BAA4B,GAC5B,uBAAuB,GACvB,wCAAwC,GACxC,8BAA8B,GAC9B,+BAA+B,GAC/B,oCAAoC,GACpC,iCAAiC,GACjC,+BAA+B,GAC/B,kCAAkC,GAClC,0CAA0C,GAC1C,sCAAsC,GACtC,kCAAkC,GAClC,iCAAiC,GACjC,sCAAsC,GACtC,oCAAoC,CAAC;AAEzC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACpD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE;QACL,oBAAoB,EAAE,MAAM,CAAC;QAC7B,yBAAyB,EAAE,MAAM,CAAC;QAClC,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAsFD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,WAAW,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,EAC/B,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACzC,kBAAkB,CAsSpB"}
1
+ {"version":3,"file":"sectPrAudit.d.ts","sourceRoot":"","sources":["../../src/primitives/sectPrAudit.ts"],"names":[],"mappings":"AAQA,MAAM,MAAM,eAAe,GACvB,cAAc,GACd,4BAA4B,GAC5B,4BAA4B,GAC5B,uBAAuB,GACvB,wCAAwC,GACxC,8BAA8B,GAC9B,+BAA+B,GAC/B,oCAAoC,GACpC,iCAAiC,GACjC,+BAA+B,GAC/B,kCAAkC,GAClC,0CAA0C,GAC1C,sCAAsC,GACtC,kCAAkC,GAClC,iCAAiC,GACjC,sCAAsC,GACtC,oCAAoC,CAAC;AAEzC,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACpD,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,iBAAiB,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,KAAK,EAAE;QACL,oBAAoB,EAAE,MAAM,CAAC;QAC7B,yBAAyB,EAAE,MAAM,CAAC;QAClC,gBAAgB,EAAE,MAAM,CAAC;QACzB,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAsFD;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CACzB,WAAW,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,EAC/B,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACzC,kBAAkB,CAiTpB"}
@@ -139,7 +139,16 @@ export function auditSectPr(documentXml, documentRelsXml, packageParts) {
139
139
  }
140
140
  }
141
141
  }
142
- const sectPrNodes = Array.from(doc.getElementsByTagNameNS(OOXML.W_NS, 'sectPr'));
142
+ const sectPrNodes = Array.from(doc.getElementsByTagNameNS(OOXML.W_NS, 'sectPr'))
143
+ .filter((sectPr) => {
144
+ for (let ancestor = sectPr.parentNode; ancestor; ancestor = ancestor.parentNode) {
145
+ if (ancestor.nodeType === 1 &&
146
+ isWmlElement(ancestor, 'sectPrChange')) {
147
+ return false;
148
+ }
149
+ }
150
+ return true;
151
+ });
143
152
  let paragraphLevelSectPrCount = 0;
144
153
  let referenceCount = 0;
145
154
  for (const [sectionOrdinal, sectPr] of sectPrNodes.entries()) {