@usejunior/docx-core 0.20.1 → 0.21.2

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 (125) hide show
  1. package/README.md +12 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/cli/conformance-adapter.d.ts.map +1 -1
  4. package/dist/cli/conformance-adapter.js +0 -27
  5. package/dist/cli/conformance-adapter.js.map +1 -1
  6. package/dist/generation/compile.d.ts.map +1 -1
  7. package/dist/generation/compile.js +1 -3
  8. package/dist/generation/compile.js.map +1 -1
  9. package/dist/index.d.ts +2 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +2 -1
  12. package/dist/index.js.map +1 -1
  13. package/dist/integration/libreoffice-oracle.d.ts +3 -1
  14. package/dist/integration/libreoffice-oracle.d.ts.map +1 -1
  15. package/dist/integration/libreoffice-oracle.js +9 -3
  16. package/dist/integration/libreoffice-oracle.js.map +1 -1
  17. package/dist/primitives/accept_changes.d.ts +3 -4
  18. package/dist/primitives/accept_changes.d.ts.map +1 -1
  19. package/dist/primitives/accept_changes.js +165 -79
  20. package/dist/primitives/accept_changes.js.map +1 -1
  21. package/dist/primitives/bookmarks.d.ts +7 -2
  22. package/dist/primitives/bookmarks.d.ts.map +1 -1
  23. package/dist/primitives/bookmarks.js +30 -6
  24. package/dist/primitives/bookmarks.js.map +1 -1
  25. package/dist/primitives/comments.d.ts +73 -4
  26. package/dist/primitives/comments.d.ts.map +1 -1
  27. package/dist/primitives/comments.js +266 -165
  28. package/dist/primitives/comments.js.map +1 -1
  29. package/dist/primitives/conformance.d.ts +42 -0
  30. package/dist/primitives/conformance.d.ts.map +1 -0
  31. package/dist/primitives/conformance.js +61 -0
  32. package/dist/primitives/conformance.js.map +1 -0
  33. package/dist/primitives/document.d.ts +98 -1
  34. package/dist/primitives/document.d.ts.map +1 -1
  35. package/dist/primitives/document.js +315 -22
  36. package/dist/primitives/document.js.map +1 -1
  37. package/dist/primitives/errors.d.ts +3 -2
  38. package/dist/primitives/errors.d.ts.map +1 -1
  39. package/dist/primitives/errors.js +3 -1
  40. package/dist/primitives/errors.js.map +1 -1
  41. package/dist/primitives/extract_revisions.d.ts +23 -6
  42. package/dist/primitives/extract_revisions.d.ts.map +1 -1
  43. package/dist/primitives/extract_revisions.js +208 -38
  44. package/dist/primitives/extract_revisions.js.map +1 -1
  45. package/dist/primitives/footnotes.d.ts +36 -0
  46. package/dist/primitives/footnotes.d.ts.map +1 -1
  47. package/dist/primitives/footnotes.js +173 -75
  48. package/dist/primitives/footnotes.js.map +1 -1
  49. package/dist/primitives/index.d.ts +7 -1
  50. package/dist/primitives/index.d.ts.map +1 -1
  51. package/dist/primitives/index.js +7 -1
  52. package/dist/primitives/index.js.map +1 -1
  53. package/dist/primitives/paragraph-index.d.ts +31 -0
  54. package/dist/primitives/paragraph-index.d.ts.map +1 -0
  55. package/dist/primitives/paragraph-index.js +140 -0
  56. package/dist/primitives/paragraph-index.js.map +1 -0
  57. package/dist/primitives/paragraph_merge_formatting.d.ts +24 -0
  58. package/dist/primitives/paragraph_merge_formatting.d.ts.map +1 -0
  59. package/dist/primitives/paragraph_merge_formatting.js +86 -0
  60. package/dist/primitives/paragraph_merge_formatting.js.map +1 -0
  61. package/dist/primitives/paragraph_structure.d.ts +19 -0
  62. package/dist/primitives/paragraph_structure.d.ts.map +1 -0
  63. package/dist/primitives/paragraph_structure.js +66 -0
  64. package/dist/primitives/paragraph_structure.js.map +1 -0
  65. package/dist/primitives/reject_changes.d.ts +3 -4
  66. package/dist/primitives/reject_changes.d.ts.map +1 -1
  67. package/dist/primitives/reject_changes.js +166 -79
  68. package/dist/primitives/reject_changes.js.map +1 -1
  69. package/dist/primitives/relationships.d.ts +22 -0
  70. package/dist/primitives/relationships.d.ts.map +1 -1
  71. package/dist/primitives/relationships.js +87 -0
  72. package/dist/primitives/relationships.js.map +1 -1
  73. package/dist/primitives/revision-parts.d.ts +15 -0
  74. package/dist/primitives/revision-parts.d.ts.map +1 -1
  75. package/dist/primitives/revision-parts.js +33 -1
  76. package/dist/primitives/revision-parts.js.map +1 -1
  77. package/dist/primitives/sections.d.ts +2 -1
  78. package/dist/primitives/sections.d.ts.map +1 -1
  79. package/dist/primitives/sections.js +2 -2
  80. package/dist/primitives/sections.js.map +1 -1
  81. package/dist/primitives/styles.d.ts +1 -0
  82. package/dist/primitives/styles.d.ts.map +1 -1
  83. package/dist/primitives/styles.js +1 -0
  84. package/dist/primitives/styles.js.map +1 -1
  85. package/dist/primitives/table_cells.d.ts +49 -0
  86. package/dist/primitives/table_cells.d.ts.map +1 -0
  87. package/dist/primitives/table_cells.js +149 -0
  88. package/dist/primitives/table_cells.js.map +1 -0
  89. package/dist/primitives/table_columns.d.ts +50 -0
  90. package/dist/primitives/table_columns.d.ts.map +1 -0
  91. package/dist/primitives/table_columns.js +138 -0
  92. package/dist/primitives/table_columns.js.map +1 -0
  93. package/dist/primitives/table_edit_common.d.ts +39 -0
  94. package/dist/primitives/table_edit_common.d.ts.map +1 -0
  95. package/dist/primitives/table_edit_common.js +163 -0
  96. package/dist/primitives/table_edit_common.js.map +1 -0
  97. package/dist/primitives/table_occupancy.d.ts +39 -0
  98. package/dist/primitives/table_occupancy.d.ts.map +1 -0
  99. package/dist/primitives/table_occupancy.js +145 -0
  100. package/dist/primitives/table_occupancy.js.map +1 -0
  101. package/dist/primitives/table_rows.d.ts +56 -0
  102. package/dist/primitives/table_rows.d.ts.map +1 -0
  103. package/dist/primitives/table_rows.js +390 -0
  104. package/dist/primitives/table_rows.js.map +1 -0
  105. package/dist/primitives/text.d.ts +40 -1
  106. package/dist/primitives/text.d.ts.map +1 -1
  107. package/dist/primitives/text.js +309 -129
  108. package/dist/primitives/text.js.map +1 -1
  109. package/dist/primitives/track-changes-emitter.d.ts +16 -2
  110. package/dist/primitives/track-changes-emitter.d.ts.map +1 -1
  111. package/dist/primitives/track-changes-emitter.js +38 -13
  112. package/dist/primitives/track-changes-emitter.js.map +1 -1
  113. package/dist/primitives/zip.d.ts +22 -1
  114. package/dist/primitives/zip.d.ts.map +1 -1
  115. package/dist/primitives/zip.js +47 -8
  116. package/dist/primitives/zip.js.map +1 -1
  117. package/dist/shared/docx/DocxArchive.d.ts +6 -2
  118. package/dist/shared/docx/DocxArchive.d.ts.map +1 -1
  119. package/dist/shared/docx/DocxArchive.js +10 -4
  120. package/dist/shared/docx/DocxArchive.js.map +1 -1
  121. package/dist/shared/field-structure.d.ts +3 -0
  122. package/dist/shared/field-structure.d.ts.map +1 -1
  123. package/dist/shared/field-structure.js +7 -5
  124. package/dist/shared/field-structure.js.map +1 -1
  125. package/package.json +3 -4
@@ -6,17 +6,19 @@
6
6
  */
7
7
  import { OOXML, W } from './namespaces.js';
8
8
  import { parseXml, serializeXml } from './xml.js';
9
- import { getParagraphRuns } from './text.js';
9
+ import { buildParagraphIndex } from './paragraph-index.js';
10
10
  import { getParagraphBookmarkId } from './bookmarks.js';
11
11
  import { findUniqueSubstringMatch } from './matching.js';
12
12
  import { childElements, isW } from './dom-helpers.js';
13
13
  import { getFirstChild } from './xml-helpers.js';
14
14
  import { extractEffectiveRunFormatting, parseStylesXml, parseThemeXml, } from './styles.js';
15
15
  import { emitFormattingTags, mergeAdjacentTags } from './formatting_tags.js';
16
+ import { ensureExternalHyperlinkRelationships } from './relationships.js';
16
17
  import { createRevisionContainer, prepareElementForDeletion, } from './track-changes-emitter.js';
17
18
  // ── Relationship & content types ────────────────────────────────────────
18
19
  const REL_TYPE_FOOTNOTES = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships/footnotes';
19
20
  const CT_FOOTNOTES = 'application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml';
21
+ const XMLNS_NS = 'http://www.w3.org/2000/xmlns/';
20
22
  // ── Minimal XML template ────────────────────────────────────────────────
21
23
  const FOOTNOTES_XML_TEMPLATE = `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>` +
22
24
  `<w:footnotes xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main"` +
@@ -178,6 +180,8 @@ function buildDisplayNumberMap(documentXml, footnotesDoc) {
178
180
  * When omitted, formatting is read from direct `w:rPr` only — the flattened
179
181
  * `text` and the plural anchor map are unaffected either way, so existing
180
182
  * callers that pass `(zip, documentXml)` keep their exact behavior.
183
+ *
184
+ * @conformance ECMA-376 edition 5, Part 1 § 17.11.14
181
185
  */
182
186
  export async function getFootnotes(zip, documentXml, styles, theme) {
183
187
  const footnotesText = await zip.readTextOrNull('word/footnotes.xml');
@@ -198,6 +202,7 @@ export async function getFootnotes(zip, documentXml, styles, theme) {
198
202
  // malformed one has been observed reusing an id across several — so we keep
199
203
  // them all rather than silently dropping the extras.
200
204
  const anchorMap = new Map();
205
+ const referencePointMap = new Map();
201
206
  const refs = documentXml.getElementsByTagNameNS(OOXML.W_NS, W.footnoteReference);
202
207
  for (let i = 0; i < refs.length; i++) {
203
208
  const ref = refs.item(i);
@@ -216,6 +221,14 @@ export async function getFootnotes(zip, documentXml, styles, theme) {
216
221
  if (!existing.includes(bookmarkId))
217
222
  existing.push(bookmarkId);
218
223
  anchorMap.set(id, existing);
224
+ const index = buildParagraphIndex(pel);
225
+ const indexedReference = index.nodes.find((node) => node.element === ref);
226
+ if (indexedReference) {
227
+ referencePointMap.set(id, [
228
+ ...(referencePointMap.get(id) ?? []),
229
+ { paragraphId: bookmarkId, textOffset: indexedReference.visibleStart },
230
+ ]);
231
+ }
219
232
  }
220
233
  break;
221
234
  }
@@ -235,8 +248,9 @@ export async function getFootnotes(zip, documentXml, styles, theme) {
235
248
  const text = paragraphs.map((p) => p.text).join('\n');
236
249
  const displayNumber = displayMap.get(id) ?? 0;
237
250
  const refParagraphIds = anchorMap.get(id) ?? [];
251
+ const referencePoints = referencePointMap.get(id) ?? [];
238
252
  const anchoredParagraphId = refParagraphIds[0] ?? null;
239
- footnotes.push({ id, displayNumber, text, anchoredParagraphId, refParagraphIds, paragraphs });
253
+ footnotes.push({ id, displayNumber, text, anchoredParagraphId, refParagraphIds, referencePoints, paragraphs });
240
254
  }
241
255
  // Sort by display number (document order)
242
256
  footnotes.sort((a, b) => a.displayNumber - b.displayNumber);
@@ -296,7 +310,12 @@ function extractFootnoteParagraphs(footnoteEl, styles, theme) {
296
310
  }
297
311
  // `full` mode: no baseline suppression, so every run's bold/italic/etc.
298
312
  // survives into tagged_text at node-level fidelity.
299
- const tagged = mergeAdjacentTags(emitFormattingTags({ runs: annotated, baseline: FOOTNOTE_TAG_BASELINE, formattingMode: 'full' }));
313
+ const tagged = mergeAdjacentTags(emitFormattingTags({
314
+ runs: annotated,
315
+ baseline: FOOTNOTE_TAG_BASELINE,
316
+ fontBaseline: { modalColor: null, colorSuppressed: false, modalFontSizePt: 0, fontSizeSuppressed: true, modalFontName: '', fontNameSuppressed: true },
317
+ formattingMode: 'full',
318
+ }));
300
319
  out.push({ text: textParts.join(''), tagged_text: tagged, style });
301
320
  }
302
321
  return out;
@@ -314,24 +333,38 @@ function getFootnoteParagraphStyle(p) {
314
333
  return getWAttr(pStyle, 'val');
315
334
  }
316
335
  // ── Insertion ───────────────────────────────────────────────────────────
336
+ /**
337
+ * Add one footnote definition and its exact point reference in the main story.
338
+ *
339
+ * @conformance ECMA-376 edition 5, Part 1 § 17.11.14
340
+ */
317
341
  export async function addFootnote(documentXml, zip, params, ctx) {
318
- const { paragraphEl, afterText, text, presentation } = params;
342
+ const { paragraphEl, afterText, visibleOffset, text, presentation } = params;
343
+ if (afterText !== undefined && visibleOffset !== undefined) {
344
+ throw new Error('afterText and visibleOffset are mutually exclusive footnote anchors');
345
+ }
319
346
  // Load or bootstrap footnotes.xml
320
347
  const footnotesXml = await zip.readText('word/footnotes.xml');
321
348
  const footnotesDoc = parseXml(footnotesXml);
322
349
  // Allocate next ID
323
350
  const noteId = allocateNextFootnoteId(footnotesDoc);
324
351
  // Insert footnoteReference run in document body
325
- insertFootnoteReference(documentXml, paragraphEl, noteId, afterText, ctx);
352
+ insertFootnoteReference(documentXml, paragraphEl, noteId, afterText, visibleOffset, ctx);
326
353
  // Add footnote body to footnotes.xml
327
- const footnoteEl = addFootnoteElement(footnotesDoc, noteId, text, presentation);
354
+ const destinations = [
355
+ ...(presentation?.prefixRuns ?? []),
356
+ ...(presentation?.separatorRuns ?? []),
357
+ ...(presentation?.body?.flatMap((paragraph) => paragraph.runs) ?? []),
358
+ ].flatMap((run) => run.hyperlink ? [run.hyperlink.destination] : []);
359
+ const hyperlinkRelationshipIds = await ensureExternalHyperlinkRelationships(zip, 'word/footnotes.xml', destinations);
360
+ const footnoteEl = addFootnoteElement(footnotesDoc, noteId, text, presentation, hyperlinkRelationshipIds);
328
361
  if (ctx) {
329
362
  wrapFootnoteParagraphTextRuns(getFirstFootnoteParagraph(footnoteEl), 'ins', ctx);
330
363
  }
331
364
  zip.writeText('word/footnotes.xml', serializeXml(footnotesDoc));
332
365
  return { noteId };
333
366
  }
334
- function insertFootnoteReference(documentXml, paragraphEl, noteId, afterText, ctx) {
367
+ function insertFootnoteReference(documentXml, paragraphEl, noteId, afterText, requestedVisibleOffset, ctx) {
335
368
  // Create the reference run
336
369
  const refRun = documentXml.createElementNS(OOXML.W_NS, 'w:r');
337
370
  const rPr = documentXml.createElementNS(OOXML.W_NS, 'w:rPr');
@@ -352,44 +385,49 @@ function insertFootnoteReference(documentXml, paragraphEl, noteId, afterText, ct
352
385
  if (ctx) {
353
386
  refAnchor.appendChild(refRun);
354
387
  }
355
- if (!afterText) {
388
+ if (afterText === undefined && requestedVisibleOffset === undefined) {
356
389
  // Default: append at end of paragraph
357
390
  paragraphEl.appendChild(refAnchor);
358
391
  return;
359
392
  }
360
- // Find the text boundary using unique substring matching
361
- const runs = getParagraphRuns(paragraphEl);
362
- const fullText = runs.map((r) => r.text).join('');
363
- const match = findUniqueSubstringMatch(fullText, afterText);
364
- if (match.status === 'not_found') {
365
- throw new Error(`after_text '${afterText}' not found in paragraph`);
393
+ const index = buildParagraphIndex(paragraphEl);
394
+ const runs = index.runs.filter((run) => run.visibleText.length > 0);
395
+ let insertOffset;
396
+ if (requestedVisibleOffset !== undefined) {
397
+ if (!Number.isInteger(requestedVisibleOffset) || requestedVisibleOffset < 0 || requestedVisibleOffset > index.text.length) {
398
+ throw new Error(`visibleOffset ${requestedVisibleOffset} is outside paragraph visible text [0, ${index.text.length}]`);
399
+ }
400
+ insertOffset = requestedVisibleOffset;
366
401
  }
367
- if (match.status === 'multiple') {
368
- throw new Error(`after_text '${afterText}' found ${match.matchCount} times in paragraph`);
402
+ else {
403
+ const match = findUniqueSubstringMatch(index.text, afterText);
404
+ if (match.status === 'not_found')
405
+ throw new Error(`after_text '${afterText}' not found in paragraph`);
406
+ if (match.status === 'multiple')
407
+ throw new Error(`after_text '${afterText}' found ${match.matchCount} times in paragraph`);
408
+ insertOffset = match.end;
369
409
  }
370
- // We need to insert after the end of the matched text
371
- const insertOffset = match.end;
372
410
  // Map offset to run position
373
411
  let pos = 0;
374
412
  for (let i = 0; i < runs.length; i++) {
375
413
  const run = runs[i];
376
- const runEnd = pos + run.text.length;
414
+ const runEnd = pos + run.visibleText.length;
377
415
  if (insertOffset <= pos) {
378
416
  // Insert before this run
379
- const parent = run.r.parentNode;
380
- parent.insertBefore(refAnchor, run.r);
417
+ const parent = run.element.parentNode;
418
+ parent.insertBefore(refAnchor, run.element);
381
419
  return;
382
420
  }
383
421
  if (insertOffset > pos && insertOffset < runEnd) {
384
422
  // Need to split this run at the offset
385
423
  const splitOffset = insertOffset - pos;
386
- splitRunAndInsertReference(run.r, splitOffset, refAnchor);
424
+ splitRunAndInsertReference(run.element, splitOffset, refAnchor);
387
425
  return;
388
426
  }
389
427
  if (insertOffset === runEnd) {
390
428
  // Insert after this run
391
- const parent = run.r.parentNode;
392
- parent.insertBefore(refAnchor, run.r.nextSibling);
429
+ const parent = run.element.parentNode;
430
+ parent.insertBefore(refAnchor, run.element.nextSibling);
393
431
  return;
394
432
  }
395
433
  pos = runEnd;
@@ -502,8 +540,11 @@ function setXmlSpacePreserve(t, text) {
502
540
  t.setAttributeNS('http://www.w3.org/XML/1998/namespace', 'xml:space', 'preserve');
503
541
  }
504
542
  }
505
- function addFootnoteElement(footnotesDoc, noteId, text, presentation) {
543
+ function addFootnoteElement(footnotesDoc, noteId, text, presentation, hyperlinkRelationshipIds) {
506
544
  const root = footnotesDoc.documentElement;
545
+ if (hyperlinkRelationshipIds?.size && root.lookupNamespaceURI('r') !== OOXML.R_NS) {
546
+ root.setAttributeNS(XMLNS_NS, 'xmlns:r', OOXML.R_NS);
547
+ }
507
548
  const footnoteEl = footnotesDoc.createElementNS(OOXML.W_NS, 'w:footnote');
508
549
  footnoteEl.setAttributeNS(OOXML.W_NS, 'w:id', String(noteId));
509
550
  // Word-compatible body skeleton
@@ -534,17 +575,52 @@ function addFootnoteElement(footnotesDoc, noteId, text, presentation) {
534
575
  spaceT.appendChild(footnotesDoc.createTextNode(' '));
535
576
  spaceRun.appendChild(spaceT);
536
577
  p.appendChild(spaceRun);
537
- if (presentation?.prefix) {
538
- p.appendChild(buildStyledTextRun(footnotesDoc, presentation.prefix, presentation.prefixStyle));
539
- if (presentation.prefixSeparator) {
540
- p.appendChild(buildStyledTextRun(footnotesDoc, presentation.prefixSeparator));
541
- }
542
- }
543
- p.appendChild(buildStyledTextRun(footnotesDoc, text, presentation?.bodyStyle));
578
+ const prefixRuns = presentation?.prefixRuns
579
+ ?? (presentation?.prefix ? [{ text: presentation.prefix, style: presentation.prefixStyle }] : []);
580
+ const separatorRuns = presentation?.separatorRuns
581
+ ?? (presentation?.prefixSeparator ? [{ text: presentation.prefixSeparator }] : []);
582
+ appendFootnoteRuns(p, prefixRuns, footnotesDoc, hyperlinkRelationshipIds);
583
+ appendFootnoteRuns(p, separatorRuns, footnotesDoc, hyperlinkRelationshipIds);
584
+ const body = presentation?.body ?? [{ runs: [{ text, style: presentation?.bodyStyle }] }];
585
+ appendFootnoteRuns(p, body[0]?.runs ?? [], footnotesDoc, hyperlinkRelationshipIds);
544
586
  footnoteEl.appendChild(p);
587
+ for (const paragraph of body.slice(1)) {
588
+ const bodyParagraph = footnotesDoc.createElementNS(OOXML.W_NS, 'w:p');
589
+ appendFootnoteRuns(bodyParagraph, paragraph.runs, footnotesDoc, hyperlinkRelationshipIds);
590
+ footnoteEl.appendChild(bodyParagraph);
591
+ }
545
592
  root.appendChild(footnoteEl);
546
593
  return footnoteEl;
547
594
  }
595
+ /**
596
+ * Emit footnote runs under destination-grouped external hyperlink wrappers.
597
+ *
598
+ * @conformance ECMA-376 edition 5, Part 1 § 17.16.22
599
+ * @see #956
600
+ */
601
+ function appendFootnoteRuns(paragraph, runs, doc, relationshipIds) {
602
+ let activeDestination;
603
+ let activeHyperlink;
604
+ for (const styledRun of runs) {
605
+ const destination = styledRun.hyperlink?.destination;
606
+ if (!destination) {
607
+ activeDestination = undefined;
608
+ activeHyperlink = undefined;
609
+ paragraph.appendChild(buildStyledTextRun(doc, styledRun.text, styledRun.style));
610
+ continue;
611
+ }
612
+ const relationshipId = relationshipIds?.get(destination);
613
+ if (!relationshipId)
614
+ throw new Error(`Missing footnote hyperlink relationship for ${destination}`);
615
+ if (activeDestination !== destination || !activeHyperlink) {
616
+ activeDestination = destination;
617
+ activeHyperlink = doc.createElementNS(OOXML.W_NS, 'w:hyperlink');
618
+ activeHyperlink.setAttributeNS(OOXML.R_NS, 'r:id', relationshipId);
619
+ paragraph.appendChild(activeHyperlink);
620
+ }
621
+ activeHyperlink.appendChild(buildStyledTextRun(doc, styledRun.text, styledRun.style));
622
+ }
623
+ }
548
624
  function buildStyledTextRun(doc, text, style) {
549
625
  const run = doc.createElementNS(OOXML.W_NS, 'w:r');
550
626
  if (style && Object.values(style).some((value) => value !== undefined && value !== false)) {
@@ -553,6 +629,16 @@ function buildStyledTextRun(doc, text, style) {
553
629
  const el = doc.createElementNS(OOXML.W_NS, `w:${name}`);
554
630
  rPr.appendChild(el);
555
631
  };
632
+ if (style.styleId) {
633
+ const rStyle = doc.createElementNS(OOXML.W_NS, 'w:rStyle');
634
+ rStyle.setAttributeNS(OOXML.W_NS, 'w:val', style.styleId);
635
+ rPr.appendChild(rStyle);
636
+ }
637
+ if (style.fontSizeHalfPoints !== undefined) {
638
+ const size = doc.createElementNS(OOXML.W_NS, 'w:sz');
639
+ size.setAttributeNS(OOXML.W_NS, 'w:val', String(style.fontSizeHalfPoints));
640
+ rPr.appendChild(size);
641
+ }
556
642
  if (style.bold)
557
643
  onOff('b');
558
644
  if (style.italic)
@@ -708,78 +794,90 @@ function buildFootnoteTextRuns(doc, text) {
708
794
  return [spaceRun, textRun];
709
795
  }
710
796
  function removeFootnoteParagraphTextRuns(paragraph) {
711
- const collected = collectFootnoteTextRuns(paragraph);
712
- if (!collected)
713
- return;
714
- for (const run of collected.runs) {
715
- run.parentNode?.removeChild(run);
797
+ for (const group of collectFootnoteTextRunGroups(paragraph)) {
798
+ for (const run of group.runs)
799
+ group.parent.removeChild(run);
716
800
  }
717
- cleanupEmptyRevisionWrappers(paragraph);
801
+ cleanupEmptyRunContainers(paragraph);
718
802
  }
803
+ /**
804
+ * Wrap every text run of a footnote paragraph in a `w:ins` / `w:del`
805
+ * revision container. Runs are wrapped per parent container, so text that
806
+ * already sits inside a revision wrapper or inside a `w:hyperlink` stays
807
+ * where it is: the new container is created inside that parent, which keeps
808
+ * document order and link identity intact instead of hoisting linked runs
809
+ * out of their hyperlink.
810
+ *
811
+ * @conformance ECMA-376 edition 5, Part 1 § 17.16.22
812
+ * @see #956
813
+ */
719
814
  function wrapFootnoteParagraphTextRuns(paragraph, kind, ctx) {
720
- const collected = collectFootnoteTextRuns(paragraph);
721
- if (!collected)
815
+ const groups = collectFootnoteTextRunGroups(paragraph);
816
+ if (groups.length === 0)
722
817
  return null;
723
818
  const doc = paragraph.ownerDocument;
724
819
  if (!doc)
725
820
  throw new Error('Paragraph has no ownerDocument');
726
- const { parent: anchorParent, before: anchorBefore } = collected.insertionAnchor;
727
- const wrapper = createRevisionContainer(doc, kind, ctx);
728
- anchorParent.insertBefore(wrapper, anchorBefore);
729
- for (const run of collected.runs) {
730
- run.parentNode?.removeChild(run);
731
- wrapper.appendChild(kind === 'del' ? prepareElementForDeletion(run) : run);
821
+ let first = null;
822
+ for (const group of groups) {
823
+ const wrapper = createRevisionContainer(doc, kind, ctx);
824
+ group.parent.insertBefore(wrapper, group.runs[0]);
825
+ for (const run of group.runs) {
826
+ group.parent.removeChild(run);
827
+ wrapper.appendChild(kind === 'del' ? prepareElementForDeletion(run) : run);
828
+ }
829
+ first ??= wrapper;
732
830
  }
733
- cleanupEmptyRevisionWrappers(paragraph);
734
- return wrapper;
831
+ cleanupEmptyRunContainers(paragraph);
832
+ return first;
735
833
  }
736
834
  /**
737
835
  * Collect every `<w:r>` descendant of the paragraph that does NOT contain a
738
- * `footnoteRef` marker. This intentionally crosses into `<w:ins>` / `<w:del>`
739
- * wrappers so that footnote text already carrying revision history (e.g.,
740
- * third-party documents or prior tracked edits in the same session) is still
741
- * captured by `updateFootnoteText` and `deleteFootnote`. The first-found
742
- * insertion-anchor (the parent of the first match) is returned so callers
743
- * can place a new wrapper at the same structural position.
836
+ * `footnoteRef` marker, grouped by immediate parent in document order. The
837
+ * traversal intentionally crosses `<w:ins>` / `<w:del>` wrappers so footnote
838
+ * text already carrying revision history (third-party documents or prior
839
+ * tracked edits in the same session) is still captured by
840
+ * `updateFootnoteText` and `deleteFootnote`, and crosses `<w:hyperlink>`
841
+ * containers so linked text is captured without being detached from its link.
744
842
  */
745
- function collectFootnoteTextRuns(paragraph) {
746
- const collected = [];
843
+ function collectFootnoteTextRunGroups(paragraph) {
844
+ const groups = [];
747
845
  function visit(parent) {
748
846
  for (const child of childElements(parent)) {
749
847
  if (isW(child, W.r)) {
750
- if (!runContainsFootnoteRef(child)) {
751
- collected.push({ parent, run: child });
752
- }
848
+ if (runContainsFootnoteRef(child))
849
+ continue;
850
+ const last = groups[groups.length - 1];
851
+ if (last && last.parent === parent)
852
+ last.runs.push(child);
853
+ else
854
+ groups.push({ parent, runs: [child] });
753
855
  continue;
754
856
  }
755
- if (isW(child, 'ins') || isW(child, 'del')) {
857
+ if (isW(child, 'ins') || isW(child, 'del') || isW(child, W.hyperlink)) {
756
858
  visit(child);
757
859
  }
758
860
  }
759
861
  }
760
862
  visit(paragraph);
761
- if (collected.length === 0)
762
- return null;
763
- const first = collected[0];
764
- return {
765
- insertionAnchor: { parent: first.parent, before: first.run },
766
- runs: collected.map((entry) => entry.run),
767
- };
863
+ return groups;
768
864
  }
769
865
  function runContainsFootnoteRef(run) {
770
866
  return run.getElementsByTagNameNS(OOXML.W_NS, W.footnoteRef).length > 0;
771
867
  }
772
868
  /**
773
869
  * After detaching runs from their parents, sweep up any now-empty
774
- * `<w:ins>`/`<w:del>` siblings of the paragraph so we do not leave orphan
775
- * revision wrappers behind. This pairs with `collectFootnoteTextRuns`'s
776
- * cross-wrapper traversal.
870
+ * `<w:ins>` / `<w:del>` wrappers and `<w:hyperlink>` containers at any depth
871
+ * so we do not leave orphan containers behind. This pairs with
872
+ * `collectFootnoteTextRunGroups`'s cross-container traversal.
777
873
  */
778
- function cleanupEmptyRevisionWrappers(paragraph) {
779
- for (const child of Array.from(childElements(paragraph))) {
780
- if ((isW(child, 'ins') || isW(child, 'del')) && childElements(child).length === 0) {
781
- paragraph.removeChild(child);
782
- }
874
+ function cleanupEmptyRunContainers(element) {
875
+ for (const child of Array.from(childElements(element))) {
876
+ if (!(isW(child, 'ins') || isW(child, 'del') || isW(child, W.hyperlink)))
877
+ continue;
878
+ cleanupEmptyRunContainers(child);
879
+ if (childElements(child).length === 0)
880
+ element.removeChild(child);
783
881
  }
784
882
  }
785
883
  function isolateReferenceRun(run, ref) {
@@ -1 +1 @@
1
- {"version":3,"file":"footnotes.js","sourceRoot":"","sources":["../../src/primitives/footnotes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"footnotes.js","sourceRoot":"","sources":["../../src/primitives/footnotes.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export * from './document.js';
2
2
  export * from './document_view.js';
3
3
  export * from './errors.js';
4
+ export * from './conformance.js';
4
5
  export * from './list_labels.js';
5
6
  export * from './layout.js';
6
7
  export * from './matching.js';
@@ -14,6 +15,7 @@ export * from './serialize_plaintext.js';
14
15
  export * from './styles.js';
15
16
  export * from './symbol_run_content.js';
16
17
  export * from './text.js';
18
+ export * from './paragraph-index.js';
17
19
  export * from './xml.js';
18
20
  export * from './dom-helpers.js';
19
21
  export * from './zip.js';
@@ -26,6 +28,7 @@ export * from './revision-vocabulary.js';
26
28
  export * from './revision-parts.js';
27
29
  export * from './accept_changes.js';
28
30
  export * from './reject_changes.js';
31
+ export { retainLeadingParagraphFormatting, isEmptyParagraphFormattingRun } from './paragraph_merge_formatting.js';
29
32
  export * from './accept_ai_edits.js';
30
33
  export * from './extract_revisions.js';
31
34
  export * from './comments.js';
@@ -38,10 +41,13 @@ export * from './sections.js';
38
41
  export * from './formatting_tags.js';
39
42
  export * from './prevent_double_elevation.js';
40
43
  export * from './tables.js';
44
+ export * from './table_rows.js';
45
+ export * from './table_columns.js';
46
+ export * from './table_cells.js';
41
47
  export * from './content_fingerprint.js';
42
48
  export * from './field_evaluation.js';
43
49
  export * from './locator.js';
44
50
  export { buildTableMetaMap, deriveTableContext, type TableMeta } from './table_context.js';
45
- export { getW14ParaId, getParagraphBookmarkId, getParagraphBookmarkNames, findParagraphByBookmarkId, cleanupInternalBookmarks, insertParagraphBookmarks, insertSingleParagraphBookmark, } from './bookmarks.js';
51
+ export { getW14ParaId, getParagraphBookmarkId, getParagraphBookmarkNames, findParagraphByBookmarkId, collectBookmarkReservation, cleanupInternalBookmarks, insertParagraphBookmarks, insertSingleParagraphBookmark, } from './bookmarks.js';
46
52
  export type { ParagraphBookmark } from './bookmarks.js';
47
53
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,aAAa,CAAC;AAC5B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,wBAAwB,EACxB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/primitives/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,aAAa,CAAC;AAC5B,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,aAAa,CAAC;AAC5B,cAAc,yBAAyB,CAAC;AACxC,cAAc,WAAW,CAAC;AAC1B,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC;AACjC,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,gCAAgC,EAAE,6BAA6B,EAAE,MAAM,iCAAiC,CAAC;AAClH,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,KAAK,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EACL,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}