@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.
- package/README.md +12 -0
- package/dist/.tsbuildinfo +1 -1
- package/dist/cli/conformance-adapter.d.ts.map +1 -1
- package/dist/cli/conformance-adapter.js +0 -27
- package/dist/cli/conformance-adapter.js.map +1 -1
- package/dist/generation/compile.d.ts.map +1 -1
- package/dist/generation/compile.js +1 -3
- package/dist/generation/compile.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/integration/libreoffice-oracle.d.ts +3 -1
- package/dist/integration/libreoffice-oracle.d.ts.map +1 -1
- package/dist/integration/libreoffice-oracle.js +9 -3
- package/dist/integration/libreoffice-oracle.js.map +1 -1
- package/dist/primitives/accept_changes.d.ts +3 -4
- package/dist/primitives/accept_changes.d.ts.map +1 -1
- package/dist/primitives/accept_changes.js +165 -79
- package/dist/primitives/accept_changes.js.map +1 -1
- package/dist/primitives/bookmarks.d.ts +7 -2
- package/dist/primitives/bookmarks.d.ts.map +1 -1
- package/dist/primitives/bookmarks.js +30 -6
- package/dist/primitives/bookmarks.js.map +1 -1
- package/dist/primitives/comments.d.ts +73 -4
- package/dist/primitives/comments.d.ts.map +1 -1
- package/dist/primitives/comments.js +266 -165
- package/dist/primitives/comments.js.map +1 -1
- package/dist/primitives/conformance.d.ts +42 -0
- package/dist/primitives/conformance.d.ts.map +1 -0
- package/dist/primitives/conformance.js +61 -0
- package/dist/primitives/conformance.js.map +1 -0
- package/dist/primitives/document.d.ts +98 -1
- package/dist/primitives/document.d.ts.map +1 -1
- package/dist/primitives/document.js +315 -22
- package/dist/primitives/document.js.map +1 -1
- package/dist/primitives/errors.d.ts +3 -2
- package/dist/primitives/errors.d.ts.map +1 -1
- package/dist/primitives/errors.js +3 -1
- package/dist/primitives/errors.js.map +1 -1
- package/dist/primitives/extract_revisions.d.ts +23 -6
- package/dist/primitives/extract_revisions.d.ts.map +1 -1
- package/dist/primitives/extract_revisions.js +208 -38
- package/dist/primitives/extract_revisions.js.map +1 -1
- package/dist/primitives/footnotes.d.ts +36 -0
- package/dist/primitives/footnotes.d.ts.map +1 -1
- package/dist/primitives/footnotes.js +173 -75
- package/dist/primitives/footnotes.js.map +1 -1
- package/dist/primitives/index.d.ts +7 -1
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js +7 -1
- package/dist/primitives/index.js.map +1 -1
- package/dist/primitives/paragraph-index.d.ts +31 -0
- package/dist/primitives/paragraph-index.d.ts.map +1 -0
- package/dist/primitives/paragraph-index.js +140 -0
- package/dist/primitives/paragraph-index.js.map +1 -0
- package/dist/primitives/paragraph_merge_formatting.d.ts +24 -0
- package/dist/primitives/paragraph_merge_formatting.d.ts.map +1 -0
- package/dist/primitives/paragraph_merge_formatting.js +86 -0
- package/dist/primitives/paragraph_merge_formatting.js.map +1 -0
- package/dist/primitives/paragraph_structure.d.ts +19 -0
- package/dist/primitives/paragraph_structure.d.ts.map +1 -0
- package/dist/primitives/paragraph_structure.js +66 -0
- package/dist/primitives/paragraph_structure.js.map +1 -0
- package/dist/primitives/reject_changes.d.ts +3 -4
- package/dist/primitives/reject_changes.d.ts.map +1 -1
- package/dist/primitives/reject_changes.js +166 -79
- package/dist/primitives/reject_changes.js.map +1 -1
- package/dist/primitives/relationships.d.ts +22 -0
- package/dist/primitives/relationships.d.ts.map +1 -1
- package/dist/primitives/relationships.js +87 -0
- package/dist/primitives/relationships.js.map +1 -1
- package/dist/primitives/revision-parts.d.ts +15 -0
- package/dist/primitives/revision-parts.d.ts.map +1 -1
- package/dist/primitives/revision-parts.js +33 -1
- package/dist/primitives/revision-parts.js.map +1 -1
- package/dist/primitives/sections.d.ts +2 -1
- package/dist/primitives/sections.d.ts.map +1 -1
- package/dist/primitives/sections.js +2 -2
- package/dist/primitives/sections.js.map +1 -1
- package/dist/primitives/styles.d.ts +1 -0
- package/dist/primitives/styles.d.ts.map +1 -1
- package/dist/primitives/styles.js +1 -0
- package/dist/primitives/styles.js.map +1 -1
- package/dist/primitives/table_cells.d.ts +49 -0
- package/dist/primitives/table_cells.d.ts.map +1 -0
- package/dist/primitives/table_cells.js +149 -0
- package/dist/primitives/table_cells.js.map +1 -0
- package/dist/primitives/table_columns.d.ts +50 -0
- package/dist/primitives/table_columns.d.ts.map +1 -0
- package/dist/primitives/table_columns.js +138 -0
- package/dist/primitives/table_columns.js.map +1 -0
- package/dist/primitives/table_edit_common.d.ts +39 -0
- package/dist/primitives/table_edit_common.d.ts.map +1 -0
- package/dist/primitives/table_edit_common.js +163 -0
- package/dist/primitives/table_edit_common.js.map +1 -0
- package/dist/primitives/table_occupancy.d.ts +39 -0
- package/dist/primitives/table_occupancy.d.ts.map +1 -0
- package/dist/primitives/table_occupancy.js +145 -0
- package/dist/primitives/table_occupancy.js.map +1 -0
- package/dist/primitives/table_rows.d.ts +56 -0
- package/dist/primitives/table_rows.d.ts.map +1 -0
- package/dist/primitives/table_rows.js +390 -0
- package/dist/primitives/table_rows.js.map +1 -0
- package/dist/primitives/text.d.ts +40 -1
- package/dist/primitives/text.d.ts.map +1 -1
- package/dist/primitives/text.js +309 -129
- package/dist/primitives/text.js.map +1 -1
- package/dist/primitives/track-changes-emitter.d.ts +16 -2
- package/dist/primitives/track-changes-emitter.d.ts.map +1 -1
- package/dist/primitives/track-changes-emitter.js +38 -13
- package/dist/primitives/track-changes-emitter.js.map +1 -1
- package/dist/primitives/zip.d.ts +22 -1
- package/dist/primitives/zip.d.ts.map +1 -1
- package/dist/primitives/zip.js +47 -8
- package/dist/primitives/zip.js.map +1 -1
- package/dist/shared/docx/DocxArchive.d.ts +6 -2
- package/dist/shared/docx/DocxArchive.d.ts.map +1 -1
- package/dist/shared/docx/DocxArchive.js +10 -4
- package/dist/shared/docx/DocxArchive.js.map +1 -1
- package/dist/shared/field-structure.d.ts +3 -0
- package/dist/shared/field-structure.d.ts.map +1 -1
- package/dist/shared/field-structure.js +7 -5
- package/dist/shared/field-structure.js.map +1 -1
- 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 {
|
|
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({
|
|
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
|
|
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 (
|
|
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
|
-
|
|
361
|
-
const runs =
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
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
|
-
|
|
368
|
-
|
|
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.
|
|
414
|
+
const runEnd = pos + run.visibleText.length;
|
|
377
415
|
if (insertOffset <= pos) {
|
|
378
416
|
// Insert before this run
|
|
379
|
-
const parent = run.
|
|
380
|
-
parent.insertBefore(refAnchor, run.
|
|
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.
|
|
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.
|
|
392
|
-
parent.insertBefore(refAnchor, run.
|
|
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
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
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
|
|
712
|
-
|
|
713
|
-
|
|
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
|
-
|
|
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
|
|
721
|
-
if (
|
|
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
|
-
|
|
727
|
-
const
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
run.
|
|
731
|
-
|
|
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
|
-
|
|
734
|
-
return
|
|
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
|
|
739
|
-
*
|
|
740
|
-
* third-party documents or prior
|
|
741
|
-
*
|
|
742
|
-
*
|
|
743
|
-
*
|
|
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
|
|
746
|
-
const
|
|
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 (
|
|
751
|
-
|
|
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
|
-
|
|
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
|
|
775
|
-
*
|
|
776
|
-
* cross-
|
|
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
|
|
779
|
-
for (const child of Array.from(childElements(
|
|
780
|
-
if ((isW(child, 'ins') || isW(child, 'del')
|
|
781
|
-
|
|
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"}
|