@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 @@
1
+ {"version":3,"file":"field-semantics.js","sourceRoot":"","sources":["../../src/shared/field-semantics.ts"],"names":[],"mappings":"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"}
@@ -8,18 +8,24 @@ export type FieldStructureIssue = {
8
8
  story?: string;
9
9
  element?: string;
10
10
  };
11
+ /**
12
+ * @deprecated `w:fldChar` inside `<w:del>` is valid, so a `true` result is not a
13
+ * defect. Word and Aspose both emit it. Retained only so existing callers keep
14
+ * compiling; do not gate on it. See {@link collectFieldStructureIssues}.
15
+ */
11
16
  export declare function hasFldCharInsideDel(documentXml: string): boolean;
12
17
  /**
13
18
  * Reports structural complex-field violations without evaluating field codes.
14
19
  *
15
20
  * @conformance ECMA-376 edition 5, Part 1 § 17.16.18
16
21
  * @ooxmlSpec ooxml.ecma376.5ed.part1.fields.complex-field-characters
22
+ * @see https://github.com/UseJunior/safe-docx/issues/645
17
23
  */
18
24
  export declare function collectFieldStructureIssues(input: string | FieldStory[]): FieldStructureIssue[];
19
25
  export declare function validateFieldStructure(input: string | FieldStory[]): boolean;
20
26
  /**
21
27
  * Reports strict runtime field-story violations without changing the
22
- * Lean-pinned `validateFieldStructure` predicate.
28
+ * pinned `validateFieldStructure` predicate.
23
29
  *
24
30
  * @conformance ECMA-376 edition 5, Part 1 § 17.16.18
25
31
  */
@@ -1 +1 @@
1
- {"version":3,"file":"field-structure.d.ts","sourceRoot":"","sources":["../../src/shared/field-structure.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAcF,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CA2BhE;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,mBAAmB,EAAE,CAU/F;AAaD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,OAAO,CAI5E;AA4DD;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAC3B,mBAAmB,EAAE,CAUvB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,OAAO,CAIlF"}
1
+ {"version":3,"file":"field-structure.d.ts","sourceRoot":"","sources":["../../src/shared/field-structure.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAcF;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CA2BhE;AAED;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,mBAAmB,EAAE,CAU/F;AAaD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,OAAO,CAI5E;AA4DD;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAC3B,mBAAmB,EAAE,CAUvB;AAED,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,EAAE,GAAG,OAAO,CAIlF"}
@@ -9,6 +9,11 @@ function getWAttr(el, localName) {
9
9
  function allW(root, localName) {
10
10
  return Array.from(root.getElementsByTagNameNS(OOXML.W_NS, localName));
11
11
  }
12
+ /**
13
+ * @deprecated `w:fldChar` inside `<w:del>` is valid, so a `true` result is not a
14
+ * defect. Word and Aspose both emit it. Retained only so existing callers keep
15
+ * compiling; do not gate on it. See {@link collectFieldStructureIssues}.
16
+ */
12
17
  export function hasFldCharInsideDel(documentXml) {
13
18
  const root = parseXml(documentXml).documentElement;
14
19
  let insideDelDepth = 0;
@@ -43,6 +48,7 @@ export function hasFldCharInsideDel(documentXml) {
43
48
  *
44
49
  * @conformance ECMA-376 edition 5, Part 1 § 17.16.18
45
50
  * @ooxmlSpec ooxml.ecma376.5ed.part1.fields.complex-field-characters
51
+ * @see https://github.com/UseJunior/safe-docx/issues/645
46
52
  */
47
53
  export function collectFieldStructureIssues(input) {
48
54
  if (typeof input === 'string') {
@@ -57,7 +63,7 @@ export function collectFieldStructureIssues(input) {
57
63
  /**
58
64
  * Text-placement rules added for the AI revision validator. They are NOT part
59
65
  * of `validateFieldStructure`: that boolean is pinned extensionally against
60
- * the Lean model (`Tier2.FieldStructure.validateFieldStructure`) by the Lean
66
+ * the comparison engine's validation model by the differential
61
67
  * differential harness, so its rule set must not grow.
62
68
  */
63
69
  const TEXT_PLACEMENT_ISSUE_CODES = new Set([
@@ -123,7 +129,7 @@ function collectStrictStackIssuesForStory(xml, story) {
123
129
  }
124
130
  /**
125
131
  * Reports strict runtime field-story violations without changing the
126
- * Lean-pinned `validateFieldStructure` predicate.
132
+ * pinned `validateFieldStructure` predicate.
127
133
  *
128
134
  * @conformance ECMA-376 edition 5, Part 1 § 17.16.18
129
135
  */
@@ -178,11 +184,18 @@ function collectFieldStructureIssuesForStory(documentXml, story) {
178
184
  let insideDelDepth = 0;
179
185
  // Move-sources (w:moveFrom) carry deletion-flavored content (w:delText)
180
186
  // per the OOXML revision model; the text-placement rules treat them as
181
- // deletion contexts. The Lean-pinned field rules above use only w:del.
187
+ // deletion contexts. The field rules above use only w:del.
182
188
  let insideMoveFromDepth = 0;
183
189
  function push(code, message, element) {
184
190
  issues.push({ code, message, story, element });
185
191
  }
192
+ function isInsideOpenFieldCodeRegion() {
193
+ for (let fieldDepth = 1; fieldDepth <= depth; fieldDepth++) {
194
+ if (!pastSeparatorAtDepth[fieldDepth])
195
+ return true;
196
+ }
197
+ return false;
198
+ }
186
199
  function scan(node) {
187
200
  for (let child = node.firstChild; child; child = child.nextSibling) {
188
201
  if (child.nodeType !== 1)
@@ -201,9 +214,13 @@ function collectFieldStructureIssuesForStory(documentXml, story) {
201
214
  continue;
202
215
  }
203
216
  if (isW(el, 'fldChar')) {
204
- if (insideDelDepth > 0) {
205
- push('FIELD_CHAR_INSIDE_DELETION', 'w:fldChar must not appear inside w:del', 'w:fldChar');
206
- }
217
+ // `w:fldChar` inside `<w:del>` is NOT a violation. The Transitional WML
218
+ // schema reaches it (w:del -> CT_RunTrackChange -> EG_ContentRunContent
219
+ // -> w:r -> EG_RunInnerContent), and Word 16.112 and Aspose.Words 25.10
220
+ // both emit whole deleted fields that way on real input, producing
221
+ // schema-valid output. The rule this once enforced (issue #217) came
222
+ // from a research summary rather than the standard; enforcing it left
223
+ // deleted fields as unrenderable husks. See insertWholeDeletedField.
207
224
  const type = getWAttr(el, 'fldCharType');
208
225
  if (type === 'begin') {
209
226
  depth++;
@@ -219,7 +236,7 @@ function collectFieldStructureIssuesForStory(documentXml, story) {
219
236
  }
220
237
  }
221
238
  else if (isW(el, 'instrText')) {
222
- if (depth === 0 || pastSeparatorAtDepth[depth]) {
239
+ if (!isInsideOpenFieldCodeRegion()) {
223
240
  push('INSTRUCTION_TEXT_OUTSIDE_FIELD_CODE', 'w:instrText must appear inside an open field code region', 'w:instrText');
224
241
  }
225
242
  }
@@ -227,7 +244,7 @@ function collectFieldStructureIssuesForStory(documentXml, story) {
227
244
  if (insideDelDepth === 0) {
228
245
  push('DELETED_INSTRUCTION_TEXT_OUTSIDE_DELETION', 'w:delInstrText must appear inside w:del', 'w:delInstrText');
229
246
  }
230
- if (depth === 0 || pastSeparatorAtDepth[depth]) {
247
+ if (!isInsideOpenFieldCodeRegion()) {
231
248
  push('DELETED_INSTRUCTION_TEXT_OUTSIDE_FIELD_CODE', 'w:delInstrText must appear inside an open field code region', 'w:delInstrText');
232
249
  }
233
250
  }
@@ -1 +1 @@
1
- {"version":3,"file":"field-structure.js","sourceRoot":"","sources":["../../src/shared/field-structure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"field-structure.js","sourceRoot":"","sources":["../../src/shared/field-structure.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@usejunior/docx-core",
3
- "version": "0.19.1",
3
+ "version": "0.20.1",
4
4
  "description": "OOXML (.docx) core library: primitives, document generation, and track changes",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -12,7 +12,7 @@
12
12
  "test": "node ../../node_modules/vitest/vitest.mjs",
13
13
  "test:run": "node ../../node_modules/vitest/vitest.mjs run",
14
14
  "test:baseline": "node ../../node_modules/vitest/vitest.mjs run -c vitest.baseline.config.ts",
15
- "test:coverage": "node ../../node_modules/vitest/vitest.mjs run --coverage --coverage.reporter=text-summary --coverage.reporter=json-summary --coverage.reporter=lcov",
15
+ "test:coverage": "node ../../node_modules/vitest/vitest.mjs run --coverage --maxWorkers=1 --coverage.reporter=text-summary --coverage.reporter=json-summary --coverage.reporter=lcov",
16
16
  "check:spec-coverage": "npm run check:spec-coverage:openspec && npm run check:spec-coverage:primitives -- --strict && npm run check:spec-coverage:tag-density",
17
17
  "check:spec-coverage:openspec": "node scripts/validate_openspec_coverage.mjs",
18
18
  "check:spec-coverage:primitives": "node scripts/validate_primitives_openspec_coverage.mjs",
@@ -26,7 +26,7 @@
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/node": "^22.10.0",
29
- "@usejunior/docx-compare": "^0.19.1",
29
+ "@usejunior/docx-compare": "^0.20.1",
30
30
  "@vitest/coverage-v8": "^4.1.8",
31
31
  "@vitest/runner": "^4.1.8",
32
32
  "allure-vitest": "^3.9.0",