@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
|
@@ -4,12 +4,17 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Algorithm:
|
|
6
6
|
* 1. Clone DOM twice → acceptChanges() on one, rejectChanges() on the other
|
|
7
|
-
* 2. Walk
|
|
8
|
-
*
|
|
7
|
+
* 2. Walk the *original* tracked DOM in document order, visiting every w:tr
|
|
8
|
+
* and every w:p (including inside w:tc table cells)
|
|
9
|
+
* 3. For each table row whose w:trPr carries a row-level marker (w:ins, w:del,
|
|
10
|
+
* w:trPrChange), emit one `scope: 'row'` record keyed by the row's first
|
|
11
|
+
* paragraph, with the whole-row text before/after
|
|
12
|
+
* 4. For each paragraph with revision wrappers, look up before_text (rejected clone)
|
|
9
13
|
* and after_text (accepted clone) by _bk_* bookmark ID
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* 6.
|
|
14
|
+
* 5. Collect individual revision entries with type, text, author, and the
|
|
15
|
+
* markup's w:id / w:date when present
|
|
16
|
+
* 6. Join comments by anchoredParagraphId
|
|
17
|
+
* 7. Apply offset/limit pagination
|
|
13
18
|
*/
|
|
14
19
|
import { OOXML } from './namespaces.js';
|
|
15
20
|
import { acceptChanges } from './accept_changes.js';
|
|
@@ -146,6 +151,21 @@ function getRevisionText(el) {
|
|
|
146
151
|
function getAttr(el, localName) {
|
|
147
152
|
return el.getAttributeNS(W_NS, localName) ?? el.getAttribute(`w:${localName}`) ?? '';
|
|
148
153
|
}
|
|
154
|
+
/**
|
|
155
|
+
* Build one revision entry from a revision element, carrying its `w:id` and
|
|
156
|
+
* `w:date` when the markup has them (both are optional in the schema, and
|
|
157
|
+
* comparison output from some engines omits them).
|
|
158
|
+
*/
|
|
159
|
+
function makeEntry(el, type, text) {
|
|
160
|
+
const entry = { type, text, author: getAttr(el, 'author') };
|
|
161
|
+
const id = getAttr(el, 'id');
|
|
162
|
+
if (id)
|
|
163
|
+
entry.id = id;
|
|
164
|
+
const date = getAttr(el, 'date');
|
|
165
|
+
if (date)
|
|
166
|
+
entry.date = date;
|
|
167
|
+
return entry;
|
|
168
|
+
}
|
|
149
169
|
/**
|
|
150
170
|
* Collect individual revision entries from a paragraph's revision wrappers.
|
|
151
171
|
*/
|
|
@@ -158,11 +178,7 @@ function collectRevisionEntries(p) {
|
|
|
158
178
|
// Skip paragraph-level markers (inside pPr/rPr)
|
|
159
179
|
if (isInsidePPrOrRPr(ins, p))
|
|
160
180
|
continue;
|
|
161
|
-
entries.push(
|
|
162
|
-
type: 'INSERTION',
|
|
163
|
-
text: getRevisionText(ins),
|
|
164
|
-
author: getAttr(ins, 'author'),
|
|
165
|
-
});
|
|
181
|
+
entries.push(makeEntry(ins, 'INSERTION', getRevisionText(ins)));
|
|
166
182
|
}
|
|
167
183
|
// Collect from w:del wrappers
|
|
168
184
|
const delEls = p.getElementsByTagNameNS(W_NS, 'del');
|
|
@@ -170,46 +186,149 @@ function collectRevisionEntries(p) {
|
|
|
170
186
|
const del = delEls[i];
|
|
171
187
|
if (isInsidePPrOrRPr(del, p))
|
|
172
188
|
continue;
|
|
173
|
-
entries.push(
|
|
174
|
-
type: 'DELETION',
|
|
175
|
-
text: getRevisionText(del),
|
|
176
|
-
author: getAttr(del, 'author'),
|
|
177
|
-
});
|
|
189
|
+
entries.push(makeEntry(del, 'DELETION', getRevisionText(del)));
|
|
178
190
|
}
|
|
179
191
|
// Collect from w:moveFrom wrappers
|
|
180
192
|
const moveFromEls = p.getElementsByTagNameNS(W_NS, 'moveFrom');
|
|
181
193
|
for (let i = 0; i < moveFromEls.length; i++) {
|
|
182
194
|
const mf = moveFromEls[i];
|
|
183
|
-
entries.push(
|
|
184
|
-
type: 'MOVE_FROM',
|
|
185
|
-
text: getRevisionText(mf),
|
|
186
|
-
author: getAttr(mf, 'author'),
|
|
187
|
-
});
|
|
195
|
+
entries.push(makeEntry(mf, 'MOVE_FROM', getRevisionText(mf)));
|
|
188
196
|
}
|
|
189
197
|
// Collect from w:moveTo wrappers
|
|
190
198
|
const moveToEls = p.getElementsByTagNameNS(W_NS, 'moveTo');
|
|
191
199
|
for (let i = 0; i < moveToEls.length; i++) {
|
|
192
200
|
const mt = moveToEls[i];
|
|
193
|
-
entries.push(
|
|
194
|
-
type: 'MOVE_TO',
|
|
195
|
-
text: getRevisionText(mt),
|
|
196
|
-
author: getAttr(mt, 'author'),
|
|
197
|
-
});
|
|
201
|
+
entries.push(makeEntry(mt, 'MOVE_TO', getRevisionText(mt)));
|
|
198
202
|
}
|
|
199
203
|
// Collect FORMAT_CHANGE from *PrChange records
|
|
200
204
|
for (const localName of PR_CHANGE_LOCALS) {
|
|
201
205
|
const changes = p.getElementsByTagNameNS(W_NS, localName);
|
|
202
206
|
for (let i = 0; i < changes.length; i++) {
|
|
203
|
-
|
|
204
|
-
entries.push({
|
|
205
|
-
type: 'FORMAT_CHANGE',
|
|
206
|
-
text: '',
|
|
207
|
-
author: getAttr(change, 'author'),
|
|
208
|
-
});
|
|
207
|
+
entries.push(makeEntry(changes[i], 'FORMAT_CHANGE', ''));
|
|
209
208
|
}
|
|
210
209
|
}
|
|
211
210
|
return entries;
|
|
212
211
|
}
|
|
212
|
+
// ── Table-row revisions ─────────────────────────────────────────────
|
|
213
|
+
function directChildren(el, localName) {
|
|
214
|
+
const out = [];
|
|
215
|
+
for (let i = 0; i < el.childNodes.length; i++) {
|
|
216
|
+
const child = el.childNodes[i];
|
|
217
|
+
if (isW(child, localName))
|
|
218
|
+
out.push(child);
|
|
219
|
+
}
|
|
220
|
+
return out;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* The row-level revision markers of a `w:tr`: direct children of its `w:trPr`
|
|
224
|
+
* that revise the row itself rather than wrapping a span of content.
|
|
225
|
+
*
|
|
226
|
+
* An empty `w:del` under `w:trPr` marks the enclosing row as a tracked
|
|
227
|
+
* deletion, an empty `w:ins` marks it as a tracked insertion, and
|
|
228
|
+
* `w:trPrChange` records a revision to the row's properties. None of them
|
|
229
|
+
* imply a revision state for the row's cell content, which is revision-marked
|
|
230
|
+
* independently and reported by the per-paragraph walk.
|
|
231
|
+
*
|
|
232
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.13.5.12
|
|
233
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.13.5.17
|
|
234
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.13.5.37
|
|
235
|
+
* @see https://github.com/UseJunior/safe-docx/issues/868
|
|
236
|
+
*/
|
|
237
|
+
function rowRevisionMarkers(tr) {
|
|
238
|
+
const markers = [];
|
|
239
|
+
for (const trPr of directChildren(tr, 'trPr')) {
|
|
240
|
+
for (let i = 0; i < trPr.childNodes.length; i++) {
|
|
241
|
+
const child = trPr.childNodes[i];
|
|
242
|
+
if (isW(child, 'ins') || isW(child, 'del') || isW(child, 'trPrChange')) {
|
|
243
|
+
markers.push(child);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
return markers;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* Children of `el` with the given local name, looking through the structured
|
|
251
|
+
* document tag and custom XML wrappers the schema allows at that level
|
|
252
|
+
* (`w:sdt > w:sdtContent > …`, `w:customXml > …`), but never into a nested
|
|
253
|
+
* table: `w:tbl` is not a wrapper, and its cells belong to another row.
|
|
254
|
+
*/
|
|
255
|
+
function ownChildrenThroughWrappers(el, localName) {
|
|
256
|
+
const out = [];
|
|
257
|
+
for (let i = 0; i < el.childNodes.length; i++) {
|
|
258
|
+
const child = el.childNodes[i];
|
|
259
|
+
if (isW(child, localName)) {
|
|
260
|
+
out.push(child);
|
|
261
|
+
}
|
|
262
|
+
else if (isW(child, 'sdt')) {
|
|
263
|
+
for (const content of directChildren(child, 'sdtContent')) {
|
|
264
|
+
out.push(...ownChildrenThroughWrappers(content, localName));
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
else if (isW(child, 'customXml')) {
|
|
268
|
+
out.push(...ownChildrenThroughWrappers(child, localName));
|
|
269
|
+
}
|
|
270
|
+
}
|
|
271
|
+
return out;
|
|
272
|
+
}
|
|
273
|
+
/** The row's own cells, including cells wrapped in `w:sdt` / `w:customXml`. */
|
|
274
|
+
function rowCells(tr) {
|
|
275
|
+
return ownChildrenThroughWrappers(tr, 'tc');
|
|
276
|
+
}
|
|
277
|
+
/** The cell's own paragraphs, including ones wrapped in `w:sdt` / `w:customXml`; paragraphs of a nested table are excluded. */
|
|
278
|
+
function cellParagraphs(tc) {
|
|
279
|
+
return ownChildrenThroughWrappers(tc, 'p');
|
|
280
|
+
}
|
|
281
|
+
/**
|
|
282
|
+
* The first paragraph in the row's own cells (not one inside a nested table),
|
|
283
|
+
* falling back to the first descendant paragraph when the row has none of its
|
|
284
|
+
* own. `trDepth` is how many `w:tr` ancestors (counting `tr` itself) sit
|
|
285
|
+
* between that paragraph and the row, so the row can be recovered from the
|
|
286
|
+
* paragraph in a clone even when the fallback landed inside a nested table.
|
|
287
|
+
*/
|
|
288
|
+
function firstRowParagraph(tr) {
|
|
289
|
+
for (const tc of rowCells(tr)) {
|
|
290
|
+
const p = cellParagraphs(tc)[0];
|
|
291
|
+
if (p)
|
|
292
|
+
return { p, trDepth: 1 };
|
|
293
|
+
}
|
|
294
|
+
const p = tr.getElementsByTagNameNS(W_NS, 'p').item(0);
|
|
295
|
+
if (!p)
|
|
296
|
+
return null;
|
|
297
|
+
let trDepth = 0;
|
|
298
|
+
for (let cur = p; cur; cur = cur.parentNode) {
|
|
299
|
+
if (isW(cur, 'tr'))
|
|
300
|
+
trDepth++;
|
|
301
|
+
if (cur === tr)
|
|
302
|
+
break;
|
|
303
|
+
}
|
|
304
|
+
return { p, trDepth };
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Whole-row text: each of the row's own cells' own paragraphs joined by
|
|
308
|
+
* newlines, cells joined by tabs. Uses the same visible-text rule as
|
|
309
|
+
* paragraph records. Content of a nested table is not part of the row text.
|
|
310
|
+
*/
|
|
311
|
+
function getRowText(tr) {
|
|
312
|
+
return rowCells(tr)
|
|
313
|
+
.map((tc) => cellParagraphs(tc).map(getParagraphText).join('\n'))
|
|
314
|
+
.join('\t');
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* Locate the row in a clone (accepted or rejected) by the bookmark of the
|
|
318
|
+
* paragraph `firstRowParagraph` chose, climbing `trDepth` row ancestors so a
|
|
319
|
+
* fallback paragraph inside a nested table still resolves to the outer row.
|
|
320
|
+
* Empty when the row no longer exists in that clone.
|
|
321
|
+
*/
|
|
322
|
+
function getRowTextByBookmarkId(doc, paraId, trDepth) {
|
|
323
|
+
let cur = findParagraphByBookmarkId(doc, paraId);
|
|
324
|
+
let remaining = trDepth;
|
|
325
|
+
while (cur) {
|
|
326
|
+
if (isW(cur, 'tr') && --remaining === 0)
|
|
327
|
+
break;
|
|
328
|
+
cur = cur.parentNode;
|
|
329
|
+
}
|
|
330
|
+
return cur ? getRowText(cur) : '';
|
|
331
|
+
}
|
|
213
332
|
/**
|
|
214
333
|
* Check if an element is nested inside w:pPr or w:rPr within the given paragraph.
|
|
215
334
|
* These are paragraph-level revision markers, not content revisions.
|
|
@@ -276,15 +395,51 @@ export function extractRevisions(doc, comments, opts) {
|
|
|
276
395
|
}
|
|
277
396
|
}
|
|
278
397
|
}
|
|
279
|
-
// Walk all paragraphs in the original tracked DOM
|
|
280
|
-
const allParagraphs = Array.from(body.getElementsByTagNameNS(W_NS, 'p'));
|
|
281
398
|
const changedParagraphs = [];
|
|
282
|
-
|
|
399
|
+
// A row inserted or deleted as a whole, or a row property change, lives in
|
|
400
|
+
// w:tr > w:trPr and is invisible to a per-paragraph walk. Report it as one
|
|
401
|
+
// record for the row, keyed by the row's first paragraph, in document order
|
|
402
|
+
// (the w:tr precedes its paragraphs, so the row record precedes theirs).
|
|
403
|
+
const visitRow = (tr) => {
|
|
404
|
+
const markers = rowRevisionMarkers(tr);
|
|
405
|
+
if (markers.length === 0)
|
|
406
|
+
return;
|
|
407
|
+
const first = firstRowParagraph(tr);
|
|
408
|
+
const paraId = first ? getParagraphBookmarkId(first.p) : null;
|
|
409
|
+
if (!first || !paraId)
|
|
410
|
+
return;
|
|
411
|
+
const isInserted = markers.some((m) => m.localName === 'ins');
|
|
412
|
+
const isDeleted = markers.some((m) => m.localName === 'del');
|
|
413
|
+
const rowText = getRowText(tr);
|
|
414
|
+
// An inserted row does not exist once rejected; a deleted row does not
|
|
415
|
+
// exist once accepted. Do not look those up: the row's bookmarks leave
|
|
416
|
+
// with it, so a lookup could only hit some other paragraph.
|
|
417
|
+
const beforeText = isInserted ? '' : getRowTextByBookmarkId(rejectedDoc, paraId, first.trDepth);
|
|
418
|
+
const afterText = isDeleted ? '' : getRowTextByBookmarkId(acceptedDoc, paraId, first.trDepth);
|
|
419
|
+
const revisions = markers.map((marker) => {
|
|
420
|
+
if (marker.localName === 'ins')
|
|
421
|
+
return makeEntry(marker, 'ROW_INSERTION', rowText);
|
|
422
|
+
if (marker.localName === 'del')
|
|
423
|
+
return makeEntry(marker, 'ROW_DELETION', rowText);
|
|
424
|
+
return makeEntry(marker, 'FORMAT_CHANGE', '');
|
|
425
|
+
});
|
|
426
|
+
// Comments are anchored to paragraphs, not rows; they stay on the
|
|
427
|
+
// paragraph record so they are never reported twice.
|
|
428
|
+
changedParagraphs.push({
|
|
429
|
+
para_id: paraId,
|
|
430
|
+
scope: 'row',
|
|
431
|
+
before_text: beforeText,
|
|
432
|
+
after_text: afterText,
|
|
433
|
+
revisions,
|
|
434
|
+
comments: [],
|
|
435
|
+
});
|
|
436
|
+
};
|
|
437
|
+
const visitParagraph = (p) => {
|
|
283
438
|
if (!paragraphHasRevisions(p))
|
|
284
|
-
|
|
439
|
+
return;
|
|
285
440
|
const paraId = getParagraphBookmarkId(p);
|
|
286
441
|
if (!paraId)
|
|
287
|
-
|
|
442
|
+
return; // All paragraphs should have bookmarks from session resolution
|
|
288
443
|
// Detect entirely-inserted/deleted paragraphs to avoid stale bookmark lookups.
|
|
289
444
|
// When rejectChanges() removes an inserted paragraph, it relocates bookmarks
|
|
290
445
|
// to adjacent paragraphs, which would give the wrong before_text.
|
|
@@ -313,7 +468,7 @@ export function extractRevisions(doc, comments, opts) {
|
|
|
313
468
|
// Skip structurally-empty paragraphs with only paragraph-level markers
|
|
314
469
|
// (e.g. empty inserted paragraphs from comparison engines with pPr/rPr/ins only)
|
|
315
470
|
if (revisions.length === 0 && beforeText === '' && afterText === '')
|
|
316
|
-
|
|
471
|
+
return;
|
|
317
472
|
// Associate comments
|
|
318
473
|
const paraComments = commentsByParaId.get(paraId) ?? [];
|
|
319
474
|
const revisionComments = paraComments.map(commentToRevisionComment);
|
|
@@ -324,7 +479,22 @@ export function extractRevisions(doc, comments, opts) {
|
|
|
324
479
|
revisions,
|
|
325
480
|
comments: revisionComments,
|
|
326
481
|
});
|
|
327
|
-
}
|
|
482
|
+
};
|
|
483
|
+
// Pre-order walk of the original tracked DOM. This visits the same w:p
|
|
484
|
+
// elements in the same order as getElementsByTagNameNS('p') did (including
|
|
485
|
+
// paragraphs nested in text boxes), and additionally sees every w:tr.
|
|
486
|
+
const walk = (el) => {
|
|
487
|
+
if (isW(el, 'tr'))
|
|
488
|
+
visitRow(el);
|
|
489
|
+
else if (isW(el, 'p'))
|
|
490
|
+
visitParagraph(el);
|
|
491
|
+
for (let i = 0; i < el.childNodes.length; i++) {
|
|
492
|
+
const child = el.childNodes[i];
|
|
493
|
+
if (child.nodeType === 1)
|
|
494
|
+
walk(child);
|
|
495
|
+
}
|
|
496
|
+
};
|
|
497
|
+
walk(body);
|
|
328
498
|
// Apply pagination
|
|
329
499
|
const totalChanges = changedParagraphs.length;
|
|
330
500
|
const offset = opts?.offset ?? 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract_revisions.js","sourceRoot":"","sources":["../../src/primitives/extract_revisions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"extract_revisions.js","sourceRoot":"","sources":["../../src/primitives/extract_revisions.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,19 +43,35 @@ export type Footnote = {
|
|
|
43
43
|
* entry; empty when the note is orphaned (no reference in the body).
|
|
44
44
|
*/
|
|
45
45
|
refParagraphIds: string[];
|
|
46
|
+
/** Exact canonical visible-coordinate locations of every body reference. */
|
|
47
|
+
referencePoints: FootnoteReferencePoint[];
|
|
46
48
|
/**
|
|
47
49
|
* Structured, run-formatting-preserving body paragraphs. Present at
|
|
48
50
|
* node-level fidelity — see {@link FootnoteParagraph}.
|
|
49
51
|
*/
|
|
50
52
|
paragraphs: FootnoteParagraph[];
|
|
51
53
|
};
|
|
54
|
+
export type FootnoteReferencePoint = {
|
|
55
|
+
paragraphId: string;
|
|
56
|
+
textOffset: number;
|
|
57
|
+
};
|
|
52
58
|
export type AddFootnoteParams = {
|
|
53
59
|
paragraphEl: Element;
|
|
54
60
|
afterText?: string;
|
|
61
|
+
visibleOffset?: number;
|
|
55
62
|
text: string;
|
|
56
63
|
presentation?: FootnoteNotePresentation;
|
|
57
64
|
};
|
|
65
|
+
/**
|
|
66
|
+
* Admitted character formatting for a generated footnote run.
|
|
67
|
+
*
|
|
68
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.3.2.29
|
|
69
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.3.2.38
|
|
70
|
+
* @see #951
|
|
71
|
+
*/
|
|
58
72
|
export type FootnoteRunStyle = {
|
|
73
|
+
styleId?: string;
|
|
74
|
+
fontSizeHalfPoints?: number;
|
|
59
75
|
bold?: boolean;
|
|
60
76
|
italic?: boolean;
|
|
61
77
|
underline?: boolean;
|
|
@@ -67,6 +83,19 @@ export type FootnoteNotePresentation = {
|
|
|
67
83
|
prefixSeparator?: string;
|
|
68
84
|
prefixStyle?: FootnoteRunStyle;
|
|
69
85
|
bodyStyle?: FootnoteRunStyle;
|
|
86
|
+
prefixRuns?: FootnoteStyledRun[];
|
|
87
|
+
separatorRuns?: FootnoteStyledRun[];
|
|
88
|
+
body?: FootnoteBodyParagraph[];
|
|
89
|
+
};
|
|
90
|
+
export type FootnoteStyledRun = {
|
|
91
|
+
text: string;
|
|
92
|
+
style?: FootnoteRunStyle;
|
|
93
|
+
hyperlink?: {
|
|
94
|
+
destination: string;
|
|
95
|
+
};
|
|
96
|
+
};
|
|
97
|
+
export type FootnoteBodyParagraph = {
|
|
98
|
+
runs: FootnoteStyledRun[];
|
|
70
99
|
};
|
|
71
100
|
export type AddFootnoteResult = {
|
|
72
101
|
noteId: number;
|
|
@@ -86,9 +115,16 @@ export declare function bootstrapFootnoteParts(zip: DocxZip): Promise<BootstrapF
|
|
|
86
115
|
* When omitted, formatting is read from direct `w:rPr` only — the flattened
|
|
87
116
|
* `text` and the plural anchor map are unaffected either way, so existing
|
|
88
117
|
* callers that pass `(zip, documentXml)` keep their exact behavior.
|
|
118
|
+
*
|
|
119
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.11.14
|
|
89
120
|
*/
|
|
90
121
|
export declare function getFootnotes(zip: DocxZip, documentXml: Document, styles?: StylesModel, theme?: ThemeModel): Promise<Footnote[]>;
|
|
91
122
|
export declare function getFootnote(zip: DocxZip, documentXml: Document, noteId: number, styles?: StylesModel, theme?: ThemeModel): Promise<Footnote | null>;
|
|
123
|
+
/**
|
|
124
|
+
* Add one footnote definition and its exact point reference in the main story.
|
|
125
|
+
*
|
|
126
|
+
* @conformance ECMA-376 edition 5, Part 1 § 17.11.14
|
|
127
|
+
*/
|
|
92
128
|
export declare function addFootnote(documentXml: Document, zip: DocxZip, params: AddFootnoteParams, ctx?: RevisionContext): Promise<AddFootnoteResult>;
|
|
93
129
|
export declare function updateFootnoteText(zip: DocxZip, params: {
|
|
94
130
|
noteId: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"footnotes.d.ts","sourceRoot":"","sources":["../../src/primitives/footnotes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMnC,OAAO,EAIL,KAAK,WAAW,EAChB,KAAK,UAAU,EAChB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"footnotes.d.ts","sourceRoot":"","sources":["../../src/primitives/footnotes.ts"],"names":[],"mappings":"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"}
|