@usejunior/docx-core 0.9.1 → 0.10.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.
Files changed (181) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/atomizer.d.ts +15 -1
  3. package/dist/atomizer.d.ts.map +1 -1
  4. package/dist/atomizer.js +37 -1
  5. package/dist/atomizer.js.map +1 -1
  6. package/dist/baselines/atomizer/documentReconstructor.d.ts.map +1 -1
  7. package/dist/baselines/atomizer/documentReconstructor.js +218 -90
  8. package/dist/baselines/atomizer/documentReconstructor.js.map +1 -1
  9. package/dist/baselines/atomizer/formattingFidelity.d.ts +99 -0
  10. package/dist/baselines/atomizer/formattingFidelity.d.ts.map +1 -0
  11. package/dist/baselines/atomizer/formattingFidelity.js +449 -0
  12. package/dist/baselines/atomizer/formattingFidelity.js.map +1 -0
  13. package/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts +37 -0
  14. package/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts.map +1 -0
  15. package/dist/baselines/atomizer/inPlaceModifier-bookmarks.js +189 -0
  16. package/dist/baselines/atomizer/inPlaceModifier-bookmarks.js.map +1 -0
  17. package/dist/baselines/atomizer/inPlaceModifier-containers.d.ts +74 -0
  18. package/dist/baselines/atomizer/inPlaceModifier-containers.d.ts.map +1 -0
  19. package/dist/baselines/atomizer/inPlaceModifier-containers.js +171 -0
  20. package/dist/baselines/atomizer/inPlaceModifier-containers.js.map +1 -0
  21. package/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts +88 -0
  22. package/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts.map +1 -0
  23. package/dist/baselines/atomizer/inPlaceModifier-deletion.js +326 -0
  24. package/dist/baselines/atomizer/inPlaceModifier-deletion.js.map +1 -0
  25. package/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts +85 -0
  26. package/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts.map +1 -0
  27. package/dist/baselines/atomizer/inPlaceModifier-postprocess.js +402 -0
  28. package/dist/baselines/atomizer/inPlaceModifier-postprocess.js.map +1 -0
  29. package/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts +39 -0
  30. package/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts.map +1 -0
  31. package/dist/baselines/atomizer/inPlaceModifier-presplit.js +265 -0
  32. package/dist/baselines/atomizer/inPlaceModifier-presplit.js.map +1 -0
  33. package/dist/baselines/atomizer/inPlaceModifier-shared.d.ts +62 -0
  34. package/dist/baselines/atomizer/inPlaceModifier-shared.d.ts.map +1 -0
  35. package/dist/baselines/atomizer/inPlaceModifier-shared.js +139 -0
  36. package/dist/baselines/atomizer/inPlaceModifier-shared.js.map +1 -0
  37. package/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts +189 -0
  38. package/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts.map +1 -0
  39. package/dist/baselines/atomizer/inPlaceModifier-wrappers.js +427 -0
  40. package/dist/baselines/atomizer/inPlaceModifier-wrappers.js.map +1 -0
  41. package/dist/baselines/atomizer/inPlaceModifier.d.ts +6 -290
  42. package/dist/baselines/atomizer/inPlaceModifier.d.ts.map +1 -1
  43. package/dist/baselines/atomizer/inPlaceModifier.js +23 -1828
  44. package/dist/baselines/atomizer/inPlaceModifier.js.map +1 -1
  45. package/dist/baselines/atomizer/pipeline.d.ts +76 -1
  46. package/dist/baselines/atomizer/pipeline.d.ts.map +1 -1
  47. package/dist/baselines/atomizer/pipeline.js +204 -27
  48. package/dist/baselines/atomizer/pipeline.js.map +1 -1
  49. package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts.map +1 -1
  50. package/dist/baselines/atomizer/trackChangesAcceptorAst.js +56 -160
  51. package/dist/baselines/atomizer/trackChangesAcceptorAst.js.map +1 -1
  52. package/dist/compare-types.d.ts +151 -0
  53. package/dist/compare-types.d.ts.map +1 -0
  54. package/dist/compare-types.js +2 -0
  55. package/dist/compare-types.js.map +1 -0
  56. package/dist/core-types.d.ts +5 -1
  57. package/dist/core-types.d.ts.map +1 -1
  58. package/dist/core-types.js +5 -1
  59. package/dist/core-types.js.map +1 -1
  60. package/dist/footnotes.d.ts +8 -3
  61. package/dist/footnotes.d.ts.map +1 -1
  62. package/dist/footnotes.js +8 -3
  63. package/dist/footnotes.js.map +1 -1
  64. package/dist/index.d.ts +6 -150
  65. package/dist/index.d.ts.map +1 -1
  66. package/dist/index.js +6 -0
  67. package/dist/index.js.map +1 -1
  68. package/dist/integration/libreoffice-oracle.d.ts +41 -0
  69. package/dist/integration/libreoffice-oracle.d.ts.map +1 -0
  70. package/dist/integration/libreoffice-oracle.js +282 -0
  71. package/dist/integration/libreoffice-oracle.js.map +1 -0
  72. package/dist/primitives/accept_changes.d.ts +2 -2
  73. package/dist/primitives/accept_changes.d.ts.map +1 -1
  74. package/dist/primitives/accept_changes.js +24 -79
  75. package/dist/primitives/accept_changes.js.map +1 -1
  76. package/dist/primitives/comments.d.ts +12 -3
  77. package/dist/primitives/comments.d.ts.map +1 -1
  78. package/dist/primitives/comments.js +374 -97
  79. package/dist/primitives/comments.js.map +1 -1
  80. package/dist/primitives/content_fingerprint.d.ts +29 -0
  81. package/dist/primitives/content_fingerprint.d.ts.map +1 -0
  82. package/dist/primitives/content_fingerprint.js +63 -0
  83. package/dist/primitives/content_fingerprint.js.map +1 -0
  84. package/dist/primitives/document.d.ts +56 -15
  85. package/dist/primitives/document.d.ts.map +1 -1
  86. package/dist/primitives/document.js +303 -32
  87. package/dist/primitives/document.js.map +1 -1
  88. package/dist/primitives/document_view-comments.d.ts +18 -0
  89. package/dist/primitives/document_view-comments.d.ts.map +1 -0
  90. package/dist/primitives/document_view-comments.js +159 -0
  91. package/dist/primitives/document_view-comments.js.map +1 -0
  92. package/dist/primitives/document_view-headings.d.ts +45 -0
  93. package/dist/primitives/document_view-headings.d.ts.map +1 -0
  94. package/dist/primitives/document_view-headings.js +247 -0
  95. package/dist/primitives/document_view-headings.js.map +1 -0
  96. package/dist/primitives/document_view-styles.d.ts +11 -0
  97. package/dist/primitives/document_view-styles.d.ts.map +1 -0
  98. package/dist/primitives/document_view-styles.js +104 -0
  99. package/dist/primitives/document_view-styles.js.map +1 -0
  100. package/dist/primitives/document_view-toon.d.ts +37 -0
  101. package/dist/primitives/document_view-toon.d.ts.map +1 -0
  102. package/dist/primitives/document_view-toon.js +199 -0
  103. package/dist/primitives/document_view-toon.js.map +1 -0
  104. package/dist/primitives/document_view-types.d.ts +137 -0
  105. package/dist/primitives/document_view-types.d.ts.map +1 -0
  106. package/dist/primitives/document_view-types.js +2 -0
  107. package/dist/primitives/document_view-types.js.map +1 -0
  108. package/dist/primitives/document_view.d.ts +8 -106
  109. package/dist/primitives/document_view.d.ts.map +1 -1
  110. package/dist/primitives/document_view.js +134 -301
  111. package/dist/primitives/document_view.js.map +1 -1
  112. package/dist/primitives/dom-helpers.d.ts +9 -0
  113. package/dist/primitives/dom-helpers.d.ts.map +1 -1
  114. package/dist/primitives/dom-helpers.js +10 -1
  115. package/dist/primitives/dom-helpers.js.map +1 -1
  116. package/dist/primitives/footnotes.d.ts +4 -3
  117. package/dist/primitives/footnotes.d.ts.map +1 -1
  118. package/dist/primitives/footnotes.js +232 -44
  119. package/dist/primitives/footnotes.js.map +1 -1
  120. package/dist/primitives/formatting_tags.d.ts +6 -0
  121. package/dist/primitives/formatting_tags.d.ts.map +1 -1
  122. package/dist/primitives/formatting_tags.js +6 -1
  123. package/dist/primitives/formatting_tags.js.map +1 -1
  124. package/dist/primitives/index.d.ts +6 -0
  125. package/dist/primitives/index.d.ts.map +1 -1
  126. package/dist/primitives/index.js +5 -0
  127. package/dist/primitives/index.js.map +1 -1
  128. package/dist/primitives/layout.d.ts +4 -3
  129. package/dist/primitives/layout.d.ts.map +1 -1
  130. package/dist/primitives/layout.js +32 -3
  131. package/dist/primitives/layout.js.map +1 -1
  132. package/dist/primitives/merge_runs.d.ts +21 -3
  133. package/dist/primitives/merge_runs.d.ts.map +1 -1
  134. package/dist/primitives/merge_runs.js +32 -10
  135. package/dist/primitives/merge_runs.js.map +1 -1
  136. package/dist/primitives/namespaces.d.ts +6 -0
  137. package/dist/primitives/namespaces.d.ts.map +1 -1
  138. package/dist/primitives/namespaces.js +9 -0
  139. package/dist/primitives/namespaces.js.map +1 -1
  140. package/dist/primitives/reject_changes.d.ts +2 -2
  141. package/dist/primitives/reject_changes.d.ts.map +1 -1
  142. package/dist/primitives/reject_changes.js +24 -81
  143. package/dist/primitives/reject_changes.js.map +1 -1
  144. package/dist/primitives/semantic_tags.d.ts +7 -0
  145. package/dist/primitives/semantic_tags.d.ts.map +1 -1
  146. package/dist/primitives/semantic_tags.js +21 -3
  147. package/dist/primitives/semantic_tags.js.map +1 -1
  148. package/dist/primitives/serialize_html.d.ts +36 -0
  149. package/dist/primitives/serialize_html.d.ts.map +1 -0
  150. package/dist/primitives/serialize_html.js +393 -0
  151. package/dist/primitives/serialize_html.js.map +1 -0
  152. package/dist/primitives/serialize_markdown.d.ts +16 -0
  153. package/dist/primitives/serialize_markdown.d.ts.map +1 -0
  154. package/dist/primitives/serialize_markdown.js +300 -0
  155. package/dist/primitives/serialize_markdown.js.map +1 -0
  156. package/dist/primitives/serialize_plaintext.d.ts +15 -0
  157. package/dist/primitives/serialize_plaintext.d.ts.map +1 -0
  158. package/dist/primitives/serialize_plaintext.js +154 -0
  159. package/dist/primitives/serialize_plaintext.js.map +1 -0
  160. package/dist/primitives/styles.js +22 -22
  161. package/dist/primitives/styles.js.map +1 -1
  162. package/dist/primitives/tables.d.ts.map +1 -1
  163. package/dist/primitives/tables.js +13 -3
  164. package/dist/primitives/tables.js.map +1 -1
  165. package/dist/primitives/text.d.ts +2 -1
  166. package/dist/primitives/text.d.ts.map +1 -1
  167. package/dist/primitives/text.js +116 -12
  168. package/dist/primitives/text.js.map +1 -1
  169. package/dist/primitives/track-changes-emitter.d.ts +139 -0
  170. package/dist/primitives/track-changes-emitter.d.ts.map +1 -0
  171. package/dist/primitives/track-changes-emitter.js +241 -0
  172. package/dist/primitives/track-changes-emitter.js.map +1 -0
  173. package/dist/primitives/xml-helpers.d.ts +29 -0
  174. package/dist/primitives/xml-helpers.d.ts.map +1 -0
  175. package/dist/primitives/xml-helpers.js +35 -0
  176. package/dist/primitives/xml-helpers.js.map +1 -0
  177. package/dist/shared/ooxml/namespaces.d.ts +4 -1
  178. package/dist/shared/ooxml/namespaces.d.ts.map +1 -1
  179. package/dist/shared/ooxml/namespaces.js +4 -1
  180. package/dist/shared/ooxml/namespaces.js.map +1 -1
  181. package/package.json +7 -6
@@ -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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"}
@@ -5,7 +5,7 @@
5
5
  * Integrates atomization, LCS comparison, move detection, format detection,
6
6
  * and document reconstruction.
7
7
  */
8
- import type { CompareResult, ReconstructionMode } from '../../index.js';
8
+ import type { CompareResult, ReconstructionMode } from '../../compare-types.js';
9
9
  import type { MoveDetectionSettings, FormatDetectionSettings } from '../../core-types.js';
10
10
  import { type NumberingIntegrationOptions } from './numberingIntegration.js';
11
11
  /**
@@ -40,6 +40,81 @@ export interface AtomizerOptions {
40
40
  */
41
41
  reconstructionMode?: ReconstructionMode;
42
42
  }
43
+ /**
44
+ * One story (a self-contained complex-field state machine): the main document
45
+ * body, an individual footnote entry, or an individual endnote entry. `label`
46
+ * is for diagnostics only; `xml` is the serialized fragment that gets parsed
47
+ * and walked.
48
+ *
49
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
50
+ */
51
+ export interface FieldStory {
52
+ label: string;
53
+ xml: string;
54
+ }
55
+ /**
56
+ * Split a docx into per-story XML fragments for field-closure validation.
57
+ *
58
+ * Each footnote/endnote entry is treated as an isolated story: a complex
59
+ * field whose `begin` and `end` markers straddle stories breaks Word's
60
+ * field state machine. We therefore validate each `<w:footnote>` and
61
+ * `<w:endnote>` entry independently rather than treating the whole
62
+ * `footnotes.xml`/`endnotes.xml` as one stream.
63
+ *
64
+ * Accepts arrays of sidecar XMLs (one per source archive) so callers can
65
+ * validate the union of entries from every archive that may contribute to the
66
+ * final result. Step 12 of `compareDocumentsAtomizer` merges entries from a
67
+ * mode-dependent source archive into the base archive; passing both archives'
68
+ * sidecars guarantees that whichever path the merge takes, the entries it
69
+ * could publish have already been screened. Duplicates (same `w:id` in both
70
+ * archives) yield redundant but harmless validation work.
71
+ *
72
+ * Header/footer stories are not yet covered — they require relationship
73
+ * walking to enumerate `headerN.xml`/`footerN.xml`.
74
+ *
75
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
76
+ * @see https://github.com/UseJunior/safe-docx/issues/212
77
+ */
78
+ export declare function splitStories(documentXml: string, footnotesXmls: ReadonlyArray<string | null>, endnotesXmls: ReadonlyArray<string | null>): FieldStory[];
79
+ /**
80
+ * Validate field structure integrity across one or more document stories.
81
+ *
82
+ * Enforces three constraints on complex fields **per story**:
83
+ * 1. `w:fldChar` begin/end count balance within the story.
84
+ * 2. Every `w:instrText` AND `w:delInstrText` sits inside an open field body
85
+ * (between `begin` and `separate`). Orphaned instruction text renders as
86
+ * literal text in Word.
87
+ * 3. `w:delInstrText` is nested inside a `<w:del>` ancestor (DeletedFieldCode
88
+ * schema constraint), and conversely `w:fldChar` is NEVER inside `<w:del>`
89
+ * (Word treats this as fatal and discards the field state machine).
90
+ *
91
+ * Called on both pre-accept/reject combined XML (with track-change wrappers)
92
+ * and on post-accept/reject XML (wrappers removed). Both cases must satisfy the
93
+ * field placement check; constraint (3) is vacuous post-accept/reject.
94
+ *
95
+ * Accepts either a single XML string (legacy single-story call) or an array of
96
+ * `FieldStory` fragments. Stories are validated independently and short-circuit
97
+ * on the first failure.
98
+ *
99
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
100
+ */
101
+ /**
102
+ * Targeted check for one of the constraints above: `w:fldChar` MUST NOT appear
103
+ * inside any `<w:del>` element. Word treats this violation as fatal — the
104
+ * field state machine is discarded and the field renders as literal-text
105
+ * fallback.
106
+ *
107
+ * Used as a combined-output safety gate alongside the per-projection
108
+ * `validateFieldStructure` checks. Kept narrower than the full structural
109
+ * validation so that legacy shapes (e.g. `delInstrText` inside `<w:moveFrom>`)
110
+ * don't trigger fallback when the inplace candidate is otherwise sound on its
111
+ * accept/reject projections.
112
+ *
113
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
114
+ * @see https://github.com/UseJunior/safe-docx/issues/217
115
+ */
116
+ export declare function hasFldCharInsideDel(documentXml: string): boolean;
117
+ export declare function validateFieldStructure(input: string | FieldStory[]): boolean;
43
118
  /**
44
119
  * Compare two DOCX documents using the atomizer-based approach.
45
120
  *
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EACV,aAAa,EAeb,kBAAkB,EACnB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAEV,qBAAqB,EACrB,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAkC7B,OAAO,EAEL,KAAK,2BAA2B,EAEjC,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,8BAA8B;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/C,gCAAgC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACnD,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACjD;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AA+XD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,aAAa,CAAC,CA4SxB;AAsBD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EACV,aAAa,EAeb,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAEV,qBAAqB,EACrB,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAkC7B,OAAO,EAEL,KAAK,2BAA2B,EAEjC,MAAM,2BAA2B,CAAC;AAGnC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,8BAA8B;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/C,gCAAgC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACnD,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACjD;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAkPD;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAC3C,YAAY,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,GACzC,UAAU,EAAE,CA4Bd;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CA4BhE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,OAAO,CAQ5E;AA4LD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,aAAa,CAAC,CAwUxB;AAsBD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;CACtB"}
@@ -215,19 +215,140 @@ function buildFailureSummary(failureDetails) {
215
215
  }
216
216
  return Object.keys(summary).length > 0 ? summary : undefined;
217
217
  }
218
+ // Declared above splitStories so the function body never observes an
219
+ // uninitialized binding under circular imports.
220
+ const serializer = new XMLSerializer();
218
221
  /**
219
- * Validate field structure integrity in document XML.
222
+ * Split a docx into per-story XML fragments for field-closure validation.
223
+ *
224
+ * Each footnote/endnote entry is treated as an isolated story: a complex
225
+ * field whose `begin` and `end` markers straddle stories breaks Word's
226
+ * field state machine. We therefore validate each `<w:footnote>` and
227
+ * `<w:endnote>` entry independently rather than treating the whole
228
+ * `footnotes.xml`/`endnotes.xml` as one stream.
229
+ *
230
+ * Accepts arrays of sidecar XMLs (one per source archive) so callers can
231
+ * validate the union of entries from every archive that may contribute to the
232
+ * final result. Step 12 of `compareDocumentsAtomizer` merges entries from a
233
+ * mode-dependent source archive into the base archive; passing both archives'
234
+ * sidecars guarantees that whichever path the merge takes, the entries it
235
+ * could publish have already been screened. Duplicates (same `w:id` in both
236
+ * archives) yield redundant but harmless validation work.
237
+ *
238
+ * Header/footer stories are not yet covered — they require relationship
239
+ * walking to enumerate `headerN.xml`/`footerN.xml`.
220
240
  *
221
- * Checks that fldChar begin/end are balanced and that w:instrText only
222
- * appears inside a proper field sequence (between begin and separate).
223
- * Orphaned instrText elements render as visible text in Word.
241
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
242
+ * @see https://github.com/UseJunior/safe-docx/issues/212
224
243
  */
225
- function validateFieldStructure(documentXml) {
244
+ export function splitStories(documentXml, footnotesXmls, endnotesXmls) {
245
+ const stories = [{ label: 'document', xml: documentXml }];
246
+ const collectEntries = (sidecars, entryTag, labelPrefix) => {
247
+ for (let s = 0; s < sidecars.length; s++) {
248
+ const sidecarXml = sidecars[s];
249
+ if (!sidecarXml)
250
+ continue;
251
+ const doc = parseXml(sidecarXml);
252
+ const entries = doc.getElementsByTagName(entryTag);
253
+ for (let i = 0; i < entries.length; i++) {
254
+ const entry = entries[i];
255
+ const id = entry.getAttribute('w:id') ?? String(i);
256
+ stories.push({
257
+ label: `${labelPrefix}[${s}]:${id}`,
258
+ xml: serializer.serializeToString(entry),
259
+ });
260
+ }
261
+ }
262
+ };
263
+ collectEntries(footnotesXmls, 'w:footnote', 'footnote');
264
+ collectEntries(endnotesXmls, 'w:endnote', 'endnote');
265
+ return stories;
266
+ }
267
+ /**
268
+ * Validate field structure integrity across one or more document stories.
269
+ *
270
+ * Enforces three constraints on complex fields **per story**:
271
+ * 1. `w:fldChar` begin/end count balance within the story.
272
+ * 2. Every `w:instrText` AND `w:delInstrText` sits inside an open field body
273
+ * (between `begin` and `separate`). Orphaned instruction text renders as
274
+ * literal text in Word.
275
+ * 3. `w:delInstrText` is nested inside a `<w:del>` ancestor (DeletedFieldCode
276
+ * schema constraint), and conversely `w:fldChar` is NEVER inside `<w:del>`
277
+ * (Word treats this as fatal and discards the field state machine).
278
+ *
279
+ * Called on both pre-accept/reject combined XML (with track-change wrappers)
280
+ * and on post-accept/reject XML (wrappers removed). Both cases must satisfy the
281
+ * field placement check; constraint (3) is vacuous post-accept/reject.
282
+ *
283
+ * Accepts either a single XML string (legacy single-story call) or an array of
284
+ * `FieldStory` fragments. Stories are validated independently and short-circuit
285
+ * on the first failure.
286
+ *
287
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
288
+ */
289
+ /**
290
+ * Targeted check for one of the constraints above: `w:fldChar` MUST NOT appear
291
+ * inside any `<w:del>` element. Word treats this violation as fatal — the
292
+ * field state machine is discarded and the field renders as literal-text
293
+ * fallback.
294
+ *
295
+ * Used as a combined-output safety gate alongside the per-projection
296
+ * `validateFieldStructure` checks. Kept narrower than the full structural
297
+ * validation so that legacy shapes (e.g. `delInstrText` inside `<w:moveFrom>`)
298
+ * don't trigger fallback when the inplace candidate is otherwise sound on its
299
+ * accept/reject projections.
300
+ *
301
+ * @conformance ECMA-376 edition 5, Part 4 § 17.16.5
302
+ * @see https://github.com/UseJunior/safe-docx/issues/217
303
+ */
304
+ export function hasFldCharInsideDel(documentXml) {
305
+ const root = parseDocumentXml(documentXml);
306
+ let insideDelDepth = 0;
307
+ let violation = false;
308
+ function scan(node) {
309
+ if (violation)
310
+ return;
311
+ for (let child = node.firstChild; child; child = child.nextSibling) {
312
+ if (child.nodeType !== 1)
313
+ continue;
314
+ const el = child;
315
+ const tag = el.tagName;
316
+ if (tag === 'w:del') {
317
+ insideDelDepth++;
318
+ scan(el);
319
+ insideDelDepth--;
320
+ if (violation)
321
+ return;
322
+ continue;
323
+ }
324
+ if (tag === 'w:fldChar' && insideDelDepth > 0) {
325
+ violation = true;
326
+ return;
327
+ }
328
+ scan(el);
329
+ if (violation)
330
+ return;
331
+ }
332
+ }
333
+ scan(root);
334
+ return violation;
335
+ }
336
+ export function validateFieldStructure(input) {
337
+ if (typeof input === 'string') {
338
+ return validateFieldStructureForStory(input);
339
+ }
340
+ for (const story of input) {
341
+ if (!validateFieldStructureForStory(story.xml))
342
+ return false;
343
+ }
344
+ return true;
345
+ }
346
+ function validateFieldStructureForStory(documentXml) {
226
347
  const root = parseDocumentXml(documentXml);
227
- // Walk the document in order, tracking field nesting
228
348
  const allFldChars = findAllByTagName(root, 'w:fldChar');
229
349
  const allInstrTexts = findAllByTagName(root, 'w:instrText');
230
- // Quick balance check
350
+ const allDelInstrTexts = findAllByTagName(root, 'w:delInstrText');
351
+ // Constraint (1): global fldChar begin/end balance.
231
352
  let begins = 0;
232
353
  let ends = 0;
233
354
  for (const fc of allFldChars) {
@@ -239,19 +360,33 @@ function validateFieldStructure(documentXml) {
239
360
  }
240
361
  if (begins !== ends)
241
362
  return false;
242
- // Check that instrText elements are inside a field (between begin and separate).
243
- // Walk all elements in document order using a recursive scan.
244
- if (allInstrTexts.length === 0)
245
- return true; // No instrText, nothing to validate
246
- // Depth-first scan to check instrText placement
363
+ if (allFldChars.length === 0 &&
364
+ allInstrTexts.length === 0 &&
365
+ allDelInstrTexts.length === 0) {
366
+ return true;
367
+ }
368
+ // Depth-first scan tracking field nesting (for constraint 2) and <w:del>
369
+ // ancestor nesting (for constraint 3).
247
370
  let depth = 0;
248
- const pastSeparatorAtDepth = []; // track separator state per depth
371
+ const pastSeparatorAtDepth = [];
372
+ let insideDelDepth = 0;
249
373
  function scan(node) {
250
374
  for (let child = node.firstChild; child; child = child.nextSibling) {
251
375
  if (child.nodeType !== 1)
252
- continue; // skip non-elements
376
+ continue;
253
377
  const el = child;
254
- if (el.tagName === 'w:fldChar') {
378
+ const tag = el.tagName;
379
+ if (tag === 'w:del') {
380
+ insideDelDepth++;
381
+ const ok = scan(el);
382
+ insideDelDepth--;
383
+ if (!ok)
384
+ return false;
385
+ continue;
386
+ }
387
+ if (tag === 'w:fldChar') {
388
+ if (insideDelDepth > 0)
389
+ return false;
255
390
  const type = el.getAttribute('w:fldCharType');
256
391
  if (type === 'begin') {
257
392
  depth++;
@@ -266,8 +401,13 @@ function validateFieldStructure(documentXml) {
266
401
  depth--;
267
402
  }
268
403
  }
269
- else if (el.tagName === 'w:instrText') {
270
- // instrText must be inside a field (depth > 0) and before the separator
404
+ else if (tag === 'w:instrText') {
405
+ if (depth === 0 || pastSeparatorAtDepth[depth])
406
+ return false;
407
+ }
408
+ else if (tag === 'w:delInstrText') {
409
+ if (insideDelDepth === 0)
410
+ return false;
271
411
  if (depth === 0 || pastSeparatorAtDepth[depth])
272
412
  return false;
273
413
  }
@@ -278,7 +418,7 @@ function validateFieldStructure(documentXml) {
278
418
  }
279
419
  return scan(root);
280
420
  }
281
- function evaluateSafetyChecks(originalTextForRoundTrip, revisedTextForRoundTrip, originalBookmarkDiagnostics, revisedBookmarkDiagnostics, candidateXml) {
421
+ function evaluateSafetyChecks(originalTextForRoundTrip, revisedTextForRoundTrip, originalBookmarkDiagnostics, revisedBookmarkDiagnostics, candidateXml, auxiliarySidecars) {
282
422
  const acceptedXml = acceptAllChanges(candidateXml);
283
423
  const rejectedXml = rejectAllChanges(candidateXml);
284
424
  const acceptedText = extractTextWithParagraphs(acceptedXml);
@@ -289,11 +429,28 @@ function evaluateSafetyChecks(originalTextForRoundTrip, revisedTextForRoundTrip,
289
429
  const rejectTextComparison = compareTexts(originalTextForRoundTrip, rejectedText);
290
430
  const acceptBookmarksOk = bookmarkDiagnosticsSemanticallyEqual(revisedBookmarkDiagnostics, acceptedBookmarkDiagnostics);
291
431
  const rejectBookmarksOk = bookmarkDiagnosticsSemanticallyEqual(originalBookmarkDiagnostics, rejectedBookmarkDiagnostics);
292
- // Validate field structure: after accept-all and reject-all, every
293
- // w:instrText must be inside a proper field sequence (between fldChar
294
- // begin and fldChar separate). Orphaned instrText renders as visible
295
- // text in Word.
296
- const fieldStructureOk = validateFieldStructure(acceptedXml) && validateFieldStructure(rejectedXml);
432
+ // Validate field structure per-story. Each footnote/endnote entry is its own
433
+ // ECMA-376 story; a complex field that crosses a story boundary breaks
434
+ // Word's field state machine even when global begin/end counts balance.
435
+ // Sidecars from BOTH archives are validated because Step 12's auxiliary-part
436
+ // merge picks its base and source archives by reconstruction mode (inplace
437
+ // base = revised; rebuild base = original) and validating only one side
438
+ // would miss field issues that would still ship in the merged result.
439
+ // `acceptAllChanges` / `rejectAllChanges` only transform document.xml, so
440
+ // the sidecar set is identical for both transforms.
441
+ const acceptedStories = splitStories(acceptedXml, auxiliarySidecars.footnotesXmls, auxiliarySidecars.endnotesXmls);
442
+ const rejectedStories = splitStories(rejectedXml, auxiliarySidecars.footnotesXmls, auxiliarySidecars.endnotesXmls);
443
+ // Issue #217 conformance gate on the COMBINED output: w:fldChar MUST NOT
444
+ // appear inside <w:del>. ECMA-376 Part 4 § 17.16.5 makes this fatal for
445
+ // Word's field state machine. The full validateFieldStructure check is run
446
+ // on the accept/reject projections (per-story); on the combined view we
447
+ // only gate the strict no-fldChar-in-del rule because some legacy emit
448
+ // paths (e.g. delInstrText inside <w:moveFrom>) are non-conformant in shape
449
+ // but out of scope for #217.
450
+ const combinedNoFldCharInDel = !hasFldCharInsideDel(candidateXml);
451
+ const fieldStructureOk = combinedNoFldCharInDel &&
452
+ validateFieldStructure(acceptedStories) &&
453
+ validateFieldStructure(rejectedStories);
297
454
  const checks = {
298
455
  acceptText: acceptTextComparison.normalizedIdentical,
299
456
  rejectText: rejectTextComparison.normalizedIdentical,
@@ -375,6 +532,22 @@ export async function compareDocumentsAtomizer(original, revised, options = {})
375
532
  // Extract numbering.xml if available
376
533
  const originalNumberingXml = await originalArchive.getNumberingXml() ?? undefined;
377
534
  const revisedNumberingXml = await revisedArchive.getNumberingXml() ?? undefined;
535
+ // Extract footnote/endnote sidecars from BOTH archives for per-story
536
+ // field-closure validation (issue #212). Step 12 picks the base archive by
537
+ // reconstruction mode (inplace = revised, rebuild = original) and merges
538
+ // missing referenced entries from the opposite archive. Validating both
539
+ // archives' sidecars covers the union of entries that could ship without
540
+ // having to duplicate the merge logic at safety-check time.
541
+ const [originalFootnotesXml, originalEndnotesXml, revisedFootnotesXml, revisedEndnotesXml,] = await Promise.all([
542
+ originalArchive.getFile('word/footnotes.xml'),
543
+ originalArchive.getFile('word/endnotes.xml'),
544
+ revisedArchive.getFile('word/footnotes.xml'),
545
+ revisedArchive.getFile('word/endnotes.xml'),
546
+ ]);
547
+ const auxiliarySidecars = {
548
+ footnotesXmls: [originalFootnotesXml, revisedFootnotesXml],
549
+ endnotesXmls: [originalEndnotesXml, revisedEndnotesXml],
550
+ };
378
551
  const originalPart = {
379
552
  uri: 'word/document.xml',
380
553
  contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml',
@@ -383,8 +556,13 @@ export async function compareDocumentsAtomizer(original, revised, options = {})
383
556
  uri: 'word/document.xml',
384
557
  contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml',
385
558
  };
386
- const originalTextForRoundTrip = extractTextWithParagraphs(originalXml);
387
- const revisedTextForRoundTrip = extractTextWithParagraphs(revisedXml);
559
+ // Project each input through the SAME accept/reject operation the candidate is
560
+ // checked under, so the round-trip comparison is like-for-like even when an
561
+ // input already carries its own tracked changes (pre-tracked w:ins / w:del,
562
+ // comment anchors, multi-author stacks). For a clean input these equal the raw
563
+ // extraction, so behavior on the common case is unchanged. (#347)
564
+ const originalTextForRoundTrip = extractTextWithParagraphs(rejectAllChanges(originalXml));
565
+ const revisedTextForRoundTrip = extractTextWithParagraphs(acceptAllChanges(revisedXml));
388
566
  const originalBookmarkDiagnostics = collectBookmarkDiagnostics(originalXml);
389
567
  const revisedBookmarkDiagnostics = collectBookmarkDiagnostics(revisedXml);
390
568
  const runComparisonPass = (atomizeOptions, outputMode) => {
@@ -445,7 +623,7 @@ export async function compareDocumentsAtomizer(original, revised, options = {})
445
623
  }
446
624
  return { mergedAtoms, newDocumentXml, outputMode };
447
625
  };
448
- const evaluateRoundTripSafety = (candidateXml) => evaluateSafetyChecks(originalTextForRoundTrip, revisedTextForRoundTrip, originalBookmarkDiagnostics, revisedBookmarkDiagnostics, candidateXml);
626
+ const evaluateRoundTripSafety = (candidateXml) => evaluateSafetyChecks(originalTextForRoundTrip, revisedTextForRoundTrip, originalBookmarkDiagnostics, revisedBookmarkDiagnostics, candidateXml, auxiliarySidecars);
449
627
  let comparisonResult;
450
628
  let fallbackReason;
451
629
  let fallbackDiagnostics;
@@ -637,7 +815,6 @@ function parseEntries(xml, entryTag) {
637
815
  }
638
816
  return { doc, entries };
639
817
  }
640
- const serializer = new XMLSerializer();
641
818
  /**
642
819
  * Merge auxiliary part definitions (footnotes, endnotes, comments) from the
643
820
  * source archive into the result archive. The source archive is whichever