@usejunior/docx-core 0.9.0 → 0.9.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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/atomizer.d.ts +35 -0
- package/dist/atomizer.d.ts.map +1 -1
- package/dist/atomizer.js +54 -0
- package/dist/atomizer.js.map +1 -1
- package/dist/baselines/atomizer/documentReconstructor.d.ts.map +1 -1
- package/dist/baselines/atomizer/documentReconstructor.js +72 -3
- package/dist/baselines/atomizer/documentReconstructor.js.map +1 -1
- package/dist/baselines/atomizer/pipeline.d.ts.map +1 -1
- package/dist/baselines/atomizer/pipeline.js +241 -81
- package/dist/baselines/atomizer/pipeline.js.map +1 -1
- package/dist/integration/synthetic-docx-fixture.d.ts +62 -0
- package/dist/integration/synthetic-docx-fixture.d.ts.map +1 -0
- package/dist/integration/synthetic-docx-fixture.js +171 -0
- package/dist/integration/synthetic-docx-fixture.js.map +1 -0
- package/package.json +1 -1
|
@@ -530,7 +530,7 @@ export async function compareDocumentsAtomizer(original, revised, options = {})
|
|
|
530
530
|
comparisonResult = selected;
|
|
531
531
|
}
|
|
532
532
|
else {
|
|
533
|
-
comparisonResult = runComparisonPass(
|
|
533
|
+
comparisonResult = runComparisonPass({ atomizeParagraphLevelMarkers: true }, 'rebuild');
|
|
534
534
|
fallbackReason = 'round_trip_safety_check_failed';
|
|
535
535
|
fallbackDiagnostics = {
|
|
536
536
|
attempts: failedAttempts,
|
|
@@ -538,30 +538,33 @@ export async function compareDocumentsAtomizer(original, revised, options = {})
|
|
|
538
538
|
}
|
|
539
539
|
}
|
|
540
540
|
else {
|
|
541
|
-
comparisonResult = runComparisonPass(
|
|
541
|
+
comparisonResult = runComparisonPass({ atomizeParagraphLevelMarkers: true }, 'rebuild');
|
|
542
542
|
}
|
|
543
543
|
const { mergedAtoms, newDocumentXml } = comparisonResult;
|
|
544
544
|
// Step 12: Clone appropriate archive and update document.xml.
|
|
545
545
|
// Use the revised archive only for true inplace output.
|
|
546
546
|
const baseArchive = comparisonResult.outputMode === 'inplace' ? revisedArchive : originalArchive;
|
|
547
|
+
// The merge source is the *opposite* archive from the base: inplace pulls
|
|
548
|
+
// deleted-but-still-referenced definitions from the original, rebuild pulls
|
|
549
|
+
// added-but-still-referenced definitions from the revised. Without this,
|
|
550
|
+
// rebuild output ships dangling references when the original lacks an
|
|
551
|
+
// auxiliary part that the revised side introduced (issue #94).
|
|
552
|
+
const mergeSourceArchive = comparisonResult.outputMode === 'inplace' ? originalArchive : revisedArchive;
|
|
547
553
|
const resultArchive = await baseArchive.clone();
|
|
548
554
|
resultArchive.setDocumentXml(newDocumentXml);
|
|
549
|
-
// Step 12b:
|
|
550
|
-
//
|
|
551
|
-
//
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
if (mergeResults.has('comment')) {
|
|
563
|
-
await mergeCommentAncillaryParts(originalArchive, resultArchive, mergeResults.get('comment'));
|
|
564
|
-
}
|
|
555
|
+
// Step 12b: Merge auxiliary part definitions (footnotes, endnotes, comments).
|
|
556
|
+
// Reconstruction may insert content (deleted in inplace, added in rebuild)
|
|
557
|
+
// whose definitions are missing from the base archive.
|
|
558
|
+
for (const descriptor of AUXILIARY_PARTS) {
|
|
559
|
+
await mergeAuxiliaryPartDefinitions(mergeSourceArchive, resultArchive, newDocumentXml, descriptor);
|
|
560
|
+
}
|
|
561
|
+
// Comment-specific post-pass: walk reply threads via commentsExtended.xml.
|
|
562
|
+
// Gated on root comment IDs in the *result* document (not on what the
|
|
563
|
+
// generic merge appended), so the pass runs even when the original already
|
|
564
|
+
// contains the root and revised only adds replies under it (issue #108).
|
|
565
|
+
const rootCommentIds = collectReferenceIds(newDocumentXml, 'w:commentReference');
|
|
566
|
+
if (rootCommentIds.size > 0) {
|
|
567
|
+
await mergeCommentAncillaryParts(mergeSourceArchive, resultArchive, rootCommentIds);
|
|
565
568
|
}
|
|
566
569
|
// Step 13: Save result and compute stats
|
|
567
570
|
const resultBuffer = await resultArchive.save();
|
|
@@ -637,25 +640,27 @@ function parseEntries(xml, entryTag) {
|
|
|
637
640
|
const serializer = new XMLSerializer();
|
|
638
641
|
/**
|
|
639
642
|
* Merge auxiliary part definitions (footnotes, endnotes, comments) from the
|
|
640
|
-
*
|
|
641
|
-
*
|
|
643
|
+
* source archive into the result archive. The source archive is whichever
|
|
644
|
+
* side reconstruction may have introduced references to: original in inplace
|
|
645
|
+
* mode (deleted-but-referenced definitions), revised in rebuild mode
|
|
646
|
+
* (added-but-referenced definitions).
|
|
642
647
|
*/
|
|
643
|
-
async function mergeAuxiliaryPartDefinitions(
|
|
648
|
+
async function mergeAuxiliaryPartDefinitions(sourceArchive, resultArchive, documentXml, descriptor) {
|
|
644
649
|
const result = { mergedIds: new Set(), createdPart: false };
|
|
645
650
|
const referencedIds = collectReferenceIds(documentXml, descriptor.referenceTag);
|
|
646
651
|
if (referencedIds.size === 0)
|
|
647
652
|
return result;
|
|
648
|
-
const
|
|
649
|
-
if (!
|
|
653
|
+
const sourcePartXml = await sourceArchive.getFile(descriptor.partPath);
|
|
654
|
+
if (!sourcePartXml)
|
|
650
655
|
return result;
|
|
651
656
|
const resultPartXml = await resultArchive.getFile(descriptor.partPath);
|
|
652
|
-
const
|
|
657
|
+
const sourceParsed = parseEntries(sourcePartXml, descriptor.entryTag);
|
|
653
658
|
const resultParsed = resultPartXml ? parseEntries(resultPartXml, descriptor.entryTag) : null;
|
|
654
659
|
// Find missing entries: referenced in document.xml but not in result
|
|
655
660
|
const missingElements = [];
|
|
656
661
|
for (const id of referencedIds) {
|
|
657
|
-
if (!(resultParsed?.entries.has(id)) &&
|
|
658
|
-
missingElements.push(
|
|
662
|
+
if (!(resultParsed?.entries.has(id)) && sourceParsed.entries.has(id)) {
|
|
663
|
+
missingElements.push(sourceParsed.entries.get(id));
|
|
659
664
|
result.mergedIds.add(id);
|
|
660
665
|
}
|
|
661
666
|
}
|
|
@@ -673,27 +678,33 @@ async function mergeAuxiliaryPartDefinitions(originalArchive, resultArchive, doc
|
|
|
673
678
|
}
|
|
674
679
|
}
|
|
675
680
|
else {
|
|
676
|
-
// Create part from scratch: clone root from
|
|
677
|
-
|
|
681
|
+
// Create part from scratch: clone root from merge source, drop every
|
|
682
|
+
// non-reserved entry, then append the missing referenced ones.
|
|
683
|
+
// Reserved entries are footnote/endnote separators identified by
|
|
684
|
+
// w:type="separator" / w:type="continuationSeparator" — Word expects
|
|
685
|
+
// them to exist and they don't carry user content. Filtering by w:type
|
|
686
|
+
// (not by magic w:id values) keeps this robust across authoring tools.
|
|
687
|
+
const newDoc = parseXml(sourcePartXml);
|
|
678
688
|
const rootEl = newDoc.getElementsByTagName(descriptor.rootTag)[0];
|
|
679
689
|
if (rootEl) {
|
|
680
|
-
// Remove all existing entries — we only want the missing ones
|
|
681
690
|
const existingEntries = rootEl.getElementsByTagName(descriptor.entryTag);
|
|
682
691
|
const toRemove = [];
|
|
683
692
|
for (let i = 0; i < existingEntries.length; i++) {
|
|
684
|
-
|
|
693
|
+
const el = existingEntries[i];
|
|
694
|
+
const type = el.getAttribute('w:type');
|
|
695
|
+
if (type !== 'separator' && type !== 'continuationSeparator') {
|
|
696
|
+
toRemove.push(el);
|
|
697
|
+
}
|
|
685
698
|
}
|
|
686
699
|
for (const el of toRemove) {
|
|
687
700
|
rootEl.removeChild(el);
|
|
688
701
|
}
|
|
689
|
-
// Add back only the missing entries
|
|
690
702
|
for (const el of missingElements) {
|
|
691
703
|
const imported = newDoc.importNode(el, true);
|
|
692
704
|
rootEl.appendChild(imported);
|
|
693
705
|
}
|
|
694
706
|
resultArchive.setFile(descriptor.partPath, serializer.serializeToString(newDoc));
|
|
695
707
|
result.createdPart = true;
|
|
696
|
-
// Bootstrap OPC metadata for the newly created part
|
|
697
708
|
await ensureOpcMetadata(resultArchive, descriptor);
|
|
698
709
|
}
|
|
699
710
|
}
|
|
@@ -765,52 +776,154 @@ async function ensureOpcMetadata(archive, descriptor) {
|
|
|
765
776
|
// Comment Ancillary Parts Merging
|
|
766
777
|
// =============================================================================
|
|
767
778
|
/**
|
|
768
|
-
*
|
|
769
|
-
*
|
|
779
|
+
* Walk the comment reply graph from each root referenced in the result
|
|
780
|
+
* document, merging reply <w:comment> entries, their commentsExtended.xml
|
|
781
|
+
* threading entries, and people.xml authors. Replies have no
|
|
782
|
+
* <w:commentReference> in document.xml — they're discoverable only via
|
|
783
|
+
* w15:paraIdParent in commentsExtended.xml. Without this expansion, rebuild
|
|
784
|
+
* mode silently drops reply threads (issue #108).
|
|
770
785
|
*/
|
|
771
|
-
async function mergeCommentAncillaryParts(
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
if (!originalCommentsXml)
|
|
786
|
+
async function mergeCommentAncillaryParts(sourceArchive, resultArchive, rootCommentIds) {
|
|
787
|
+
const sourceCommentsXml = await sourceArchive.getFile('word/comments.xml');
|
|
788
|
+
if (!sourceCommentsXml)
|
|
775
789
|
return;
|
|
776
|
-
const
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
const
|
|
780
|
-
|
|
781
|
-
|
|
790
|
+
const sourceDoc = parseXml(sourceCommentsXml);
|
|
791
|
+
// Build full source comment maps. Canonical paraId is the first <w:p>
|
|
792
|
+
// child's w14:paraId, matching getCommentElParaId() in primitives/comments.ts.
|
|
793
|
+
const commentById = new Map();
|
|
794
|
+
const paraIdByCommentId = new Map();
|
|
795
|
+
const commentIdByParaId = new Map();
|
|
796
|
+
const authorByCommentId = new Map();
|
|
797
|
+
const allCommentEls = sourceDoc.getElementsByTagName('w:comment');
|
|
798
|
+
for (let i = 0; i < allCommentEls.length; i++) {
|
|
799
|
+
const el = allCommentEls[i];
|
|
782
800
|
const id = el.getAttribute('w:id');
|
|
783
|
-
if (!id
|
|
801
|
+
if (!id)
|
|
784
802
|
continue;
|
|
803
|
+
commentById.set(id, el);
|
|
785
804
|
const author = el.getAttribute('w:author');
|
|
786
805
|
if (author)
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
const
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
|
|
800
|
-
|
|
806
|
+
authorByCommentId.set(id, author);
|
|
807
|
+
const firstP = el.getElementsByTagName('w:p')[0];
|
|
808
|
+
const paraId = firstP?.getAttribute('w14:paraId');
|
|
809
|
+
if (paraId) {
|
|
810
|
+
paraIdByCommentId.set(id, paraId);
|
|
811
|
+
commentIdByParaId.set(paraId, id);
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
// Seed inclusion sets from the root IDs that appear in the result document.
|
|
815
|
+
const includedCommentIds = new Set();
|
|
816
|
+
const includedParaIds = new Set();
|
|
817
|
+
const includedAuthors = new Set();
|
|
818
|
+
for (const id of rootCommentIds) {
|
|
819
|
+
if (!commentById.has(id))
|
|
820
|
+
continue;
|
|
821
|
+
includedCommentIds.add(id);
|
|
822
|
+
const pid = paraIdByCommentId.get(id);
|
|
823
|
+
if (pid)
|
|
824
|
+
includedParaIds.add(pid);
|
|
825
|
+
const author = authorByCommentId.get(id);
|
|
826
|
+
if (author)
|
|
827
|
+
includedAuthors.add(author);
|
|
828
|
+
}
|
|
829
|
+
// BFS over commentsExtended.xml's paraIdParent graph from each included
|
|
830
|
+
// root paraId. Skip entries that don't resolve to a real source comment so
|
|
831
|
+
// we never pull in dangling commentEx/people without a backing definition.
|
|
832
|
+
const sourceExtendedXml = await sourceArchive.getFile('word/commentsExtended.xml');
|
|
833
|
+
if (sourceExtendedXml) {
|
|
834
|
+
const exDoc = parseXml(sourceExtendedXml);
|
|
835
|
+
const exEls = exDoc.getElementsByTagName('w15:commentEx');
|
|
836
|
+
const childrenOf = new Map();
|
|
837
|
+
for (let i = 0; i < exEls.length; i++) {
|
|
838
|
+
const ex = exEls[i];
|
|
839
|
+
const childPid = ex.getAttribute('w15:paraId');
|
|
840
|
+
const parentPid = ex.getAttribute('w15:paraIdParent');
|
|
841
|
+
if (!childPid || !parentPid)
|
|
842
|
+
continue;
|
|
843
|
+
const arr = childrenOf.get(parentPid);
|
|
844
|
+
if (arr)
|
|
845
|
+
arr.push(childPid);
|
|
846
|
+
else
|
|
847
|
+
childrenOf.set(parentPid, [childPid]);
|
|
848
|
+
}
|
|
849
|
+
const queue = [...includedParaIds];
|
|
850
|
+
while (queue.length > 0) {
|
|
851
|
+
const pid = queue.shift();
|
|
852
|
+
const children = childrenOf.get(pid);
|
|
853
|
+
if (!children)
|
|
854
|
+
continue;
|
|
855
|
+
for (const childPid of children) {
|
|
856
|
+
if (includedParaIds.has(childPid))
|
|
857
|
+
continue;
|
|
858
|
+
const childCommentId = commentIdByParaId.get(childPid);
|
|
859
|
+
if (!childCommentId)
|
|
860
|
+
continue;
|
|
861
|
+
includedParaIds.add(childPid);
|
|
862
|
+
includedCommentIds.add(childCommentId);
|
|
863
|
+
const author = authorByCommentId.get(childCommentId);
|
|
864
|
+
if (author)
|
|
865
|
+
includedAuthors.add(author);
|
|
866
|
+
queue.push(childPid);
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
}
|
|
870
|
+
// Append any reply <w:comment> definitions still missing from result.
|
|
871
|
+
// The generic merge already added roots when needed; we add the replies
|
|
872
|
+
// (and any roots not yet present in the result, defensively).
|
|
873
|
+
await mergeMissingCommentDefinitions(resultArchive, commentById, includedCommentIds);
|
|
874
|
+
// Merge commentsExtended and people for the expanded set.
|
|
875
|
+
await mergeCommentsExtended(sourceArchive, resultArchive, includedParaIds);
|
|
876
|
+
await mergePeople(sourceArchive, resultArchive, includedAuthors);
|
|
801
877
|
}
|
|
802
|
-
|
|
878
|
+
/**
|
|
879
|
+
* Append any source <w:comment> definitions in `includedCommentIds` that
|
|
880
|
+
* aren't already in result/word/comments.xml. Mirrors the append-with-importNode
|
|
881
|
+
* pattern used by mergeCommentsExtended below.
|
|
882
|
+
*/
|
|
883
|
+
async function mergeMissingCommentDefinitions(resultArchive, commentById, includedCommentIds) {
|
|
884
|
+
if (includedCommentIds.size === 0)
|
|
885
|
+
return;
|
|
886
|
+
const resultXml = await resultArchive.getFile('word/comments.xml');
|
|
887
|
+
if (!resultXml) {
|
|
888
|
+
// If result has no comments.xml at all, the generic merge would have
|
|
889
|
+
// bootstrapped it for any included root. Nothing to do here.
|
|
890
|
+
return;
|
|
891
|
+
}
|
|
892
|
+
const resultDoc = parseXml(resultXml);
|
|
893
|
+
const rootEl = resultDoc.documentElement;
|
|
894
|
+
const existingIds = new Set();
|
|
895
|
+
const existing = rootEl.getElementsByTagName('w:comment');
|
|
896
|
+
for (let i = 0; i < existing.length; i++) {
|
|
897
|
+
const id = existing[i].getAttribute('w:id');
|
|
898
|
+
if (id)
|
|
899
|
+
existingIds.add(id);
|
|
900
|
+
}
|
|
901
|
+
let appended = false;
|
|
902
|
+
for (const id of includedCommentIds) {
|
|
903
|
+
if (existingIds.has(id))
|
|
904
|
+
continue;
|
|
905
|
+
const sourceEl = commentById.get(id);
|
|
906
|
+
if (!sourceEl)
|
|
907
|
+
continue;
|
|
908
|
+
rootEl.appendChild(resultDoc.importNode(sourceEl, true));
|
|
909
|
+
appended = true;
|
|
910
|
+
}
|
|
911
|
+
if (appended) {
|
|
912
|
+
resultArchive.setFile('word/comments.xml', serializer.serializeToString(resultDoc));
|
|
913
|
+
}
|
|
914
|
+
}
|
|
915
|
+
async function mergeCommentsExtended(sourceArchive, resultArchive, mergedParaIds) {
|
|
803
916
|
if (mergedParaIds.size === 0)
|
|
804
917
|
return;
|
|
805
|
-
const
|
|
806
|
-
if (!
|
|
918
|
+
const sourceXml = await sourceArchive.getFile('word/commentsExtended.xml');
|
|
919
|
+
if (!sourceXml)
|
|
807
920
|
return;
|
|
808
|
-
const
|
|
809
|
-
const
|
|
921
|
+
const sourceDoc = parseXml(sourceXml);
|
|
922
|
+
const sourceEntries = sourceDoc.getElementsByTagName('w15:commentEx');
|
|
810
923
|
// Collect entries whose paraId matches a merged comment's paragraph
|
|
811
924
|
const entriesToMerge = [];
|
|
812
|
-
for (let i = 0; i <
|
|
813
|
-
const el =
|
|
925
|
+
for (let i = 0; i < sourceEntries.length; i++) {
|
|
926
|
+
const el = sourceEntries[i];
|
|
814
927
|
const paraId = el.getAttribute('w15:paraId');
|
|
815
928
|
if (paraId && mergedParaIds.has(paraId)) {
|
|
816
929
|
entriesToMerge.push(el);
|
|
@@ -818,11 +931,10 @@ async function mergeCommentsExtended(originalArchive, resultArchive, mergedParaI
|
|
|
818
931
|
}
|
|
819
932
|
if (entriesToMerge.length === 0)
|
|
820
933
|
return;
|
|
821
|
-
|
|
934
|
+
const resultXml = await resultArchive.getFile('word/commentsExtended.xml');
|
|
822
935
|
if (resultXml) {
|
|
823
936
|
const resultDoc = parseXml(resultXml);
|
|
824
937
|
const rootEl = resultDoc.documentElement;
|
|
825
|
-
// Check existing paraIds to avoid duplicates
|
|
826
938
|
const existingParaIds = new Set();
|
|
827
939
|
const existing = rootEl.getElementsByTagName('w15:commentEx');
|
|
828
940
|
for (let i = 0; i < existing.length; i++) {
|
|
@@ -837,21 +949,55 @@ async function mergeCommentsExtended(originalArchive, resultArchive, mergedParaI
|
|
|
837
949
|
}
|
|
838
950
|
}
|
|
839
951
|
resultArchive.setFile('word/commentsExtended.xml', serializer.serializeToString(resultDoc));
|
|
952
|
+
return;
|
|
840
953
|
}
|
|
841
|
-
//
|
|
842
|
-
//
|
|
954
|
+
// Bootstrap: result lacks commentsExtended.xml but the merged comments
|
|
955
|
+
// depend on it for reply threading / done state. Clone the source's root
|
|
956
|
+
// (preserves namespaces), drop non-matching entries, then add OPC metadata.
|
|
957
|
+
const newDoc = parseXml(sourceXml);
|
|
958
|
+
const newRoot = newDoc.documentElement;
|
|
959
|
+
const allEntries = newRoot.getElementsByTagName('w15:commentEx');
|
|
960
|
+
const toRemove = [];
|
|
961
|
+
for (let i = 0; i < allEntries.length; i++) {
|
|
962
|
+
const el = allEntries[i];
|
|
963
|
+
const paraId = el.getAttribute('w15:paraId');
|
|
964
|
+
if (!paraId || !mergedParaIds.has(paraId))
|
|
965
|
+
toRemove.push(el);
|
|
966
|
+
}
|
|
967
|
+
for (const el of toRemove)
|
|
968
|
+
newRoot.removeChild(el);
|
|
969
|
+
resultArchive.setFile('word/commentsExtended.xml', serializer.serializeToString(newDoc));
|
|
970
|
+
await ensureOpcMetadata(resultArchive, COMMENTS_EXTENDED_DESCRIPTOR);
|
|
843
971
|
}
|
|
844
|
-
|
|
972
|
+
const COMMENTS_EXTENDED_DESCRIPTOR = {
|
|
973
|
+
label: 'commentsExtended',
|
|
974
|
+
partPath: 'word/commentsExtended.xml',
|
|
975
|
+
referenceTag: '',
|
|
976
|
+
entryTag: 'w15:commentEx',
|
|
977
|
+
rootTag: 'w15:commentsEx',
|
|
978
|
+
contentType: 'application/vnd.ms-word.commentsExtended+xml',
|
|
979
|
+
relationshipType: 'http://schemas.microsoft.com/office/2011/relationships/commentsExtended',
|
|
980
|
+
};
|
|
981
|
+
const PEOPLE_DESCRIPTOR = {
|
|
982
|
+
label: 'people',
|
|
983
|
+
partPath: 'word/people.xml',
|
|
984
|
+
referenceTag: '',
|
|
985
|
+
entryTag: 'w15:person',
|
|
986
|
+
rootTag: 'w15:people',
|
|
987
|
+
contentType: 'application/vnd.ms-word.people+xml',
|
|
988
|
+
relationshipType: 'http://schemas.microsoft.com/office/2011/relationships/people',
|
|
989
|
+
};
|
|
990
|
+
async function mergePeople(sourceArchive, resultArchive, mergedAuthors) {
|
|
845
991
|
if (mergedAuthors.size === 0)
|
|
846
992
|
return;
|
|
847
|
-
const
|
|
848
|
-
if (!
|
|
993
|
+
const sourceXml = await sourceArchive.getFile('word/people.xml');
|
|
994
|
+
if (!sourceXml)
|
|
849
995
|
return;
|
|
850
|
-
const
|
|
851
|
-
const
|
|
996
|
+
const sourceDoc = parseXml(sourceXml);
|
|
997
|
+
const sourcePersons = sourceDoc.getElementsByTagName('w15:person');
|
|
852
998
|
const personsToMerge = [];
|
|
853
|
-
for (let i = 0; i <
|
|
854
|
-
const el =
|
|
999
|
+
for (let i = 0; i < sourcePersons.length; i++) {
|
|
1000
|
+
const el = sourcePersons[i];
|
|
855
1001
|
const author = el.getAttribute('w15:author');
|
|
856
1002
|
if (author && mergedAuthors.has(author)) {
|
|
857
1003
|
personsToMerge.push(el);
|
|
@@ -859,11 +1005,10 @@ async function mergePeople(originalArchive, resultArchive, mergedAuthors) {
|
|
|
859
1005
|
}
|
|
860
1006
|
if (personsToMerge.length === 0)
|
|
861
1007
|
return;
|
|
862
|
-
|
|
1008
|
+
const resultXml = await resultArchive.getFile('word/people.xml');
|
|
863
1009
|
if (resultXml) {
|
|
864
1010
|
const resultDoc = parseXml(resultXml);
|
|
865
1011
|
const rootEl = resultDoc.documentElement;
|
|
866
|
-
// Check existing authors to avoid duplicates
|
|
867
1012
|
const existingAuthors = new Set();
|
|
868
1013
|
const existing = rootEl.getElementsByTagName('w15:person');
|
|
869
1014
|
for (let i = 0; i < existing.length; i++) {
|
|
@@ -878,9 +1023,24 @@ async function mergePeople(originalArchive, resultArchive, mergedAuthors) {
|
|
|
878
1023
|
}
|
|
879
1024
|
}
|
|
880
1025
|
resultArchive.setFile('word/people.xml', serializer.serializeToString(resultDoc));
|
|
1026
|
+
return;
|
|
1027
|
+
}
|
|
1028
|
+
// Bootstrap: result lacks people.xml. Clone source root (preserves
|
|
1029
|
+
// namespaces), remove non-matching authors, then add OPC metadata.
|
|
1030
|
+
const newDoc = parseXml(sourceXml);
|
|
1031
|
+
const newRoot = newDoc.documentElement;
|
|
1032
|
+
const allPersons = newRoot.getElementsByTagName('w15:person');
|
|
1033
|
+
const toRemove = [];
|
|
1034
|
+
for (let i = 0; i < allPersons.length; i++) {
|
|
1035
|
+
const el = allPersons[i];
|
|
1036
|
+
const author = el.getAttribute('w15:author');
|
|
1037
|
+
if (!author || !mergedAuthors.has(author))
|
|
1038
|
+
toRemove.push(el);
|
|
881
1039
|
}
|
|
882
|
-
|
|
883
|
-
|
|
1040
|
+
for (const el of toRemove)
|
|
1041
|
+
newRoot.removeChild(el);
|
|
1042
|
+
resultArchive.setFile('word/people.xml', serializer.serializeToString(newDoc));
|
|
1043
|
+
await ensureOpcMetadata(resultArchive, PEOPLE_DESCRIPTOR);
|
|
884
1044
|
}
|
|
885
1045
|
/**
|
|
886
1046
|
* Compute comparison statistics from merged atoms.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/pipeline.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/pipeline.ts"],"names":[],"mappings":"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"}
|