@usejunior/docx-core 0.3.0 → 0.4.0
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 +0 -2
- package/dist/.tsbuildinfo +1 -1
- package/dist/atomizer.d.ts.map +1 -1
- package/dist/atomizer.js +16 -3
- package/dist/atomizer.js.map +1 -1
- package/dist/baselines/atomizer/documentReconstructor.d.ts.map +1 -1
- package/dist/baselines/atomizer/documentReconstructor.js +11 -5
- package/dist/baselines/atomizer/documentReconstructor.js.map +1 -1
- package/dist/baselines/atomizer/inPlaceModifier.d.ts +81 -1
- package/dist/baselines/atomizer/inPlaceModifier.d.ts.map +1 -1
- package/dist/baselines/atomizer/inPlaceModifier.js +618 -34
- package/dist/baselines/atomizer/inPlaceModifier.js.map +1 -1
- package/dist/baselines/atomizer/pipeline.d.ts +1 -1
- package/dist/baselines/atomizer/pipeline.d.ts.map +1 -1
- package/dist/baselines/atomizer/pipeline.js +70 -1
- package/dist/baselines/atomizer/pipeline.js.map +1 -1
- package/dist/baselines/atomizer/premergeRuns.d.ts.map +1 -1
- package/dist/baselines/atomizer/premergeRuns.js +3 -0
- package/dist/baselines/atomizer/premergeRuns.js.map +1 -1
- package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts.map +1 -1
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js +63 -33
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js.map +1 -1
- package/dist/cli/compare-two.js +4 -4
- package/dist/cli/compare-two.js.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -7
- package/dist/index.js.map +1 -1
- package/dist/primitives/document.d.ts +6 -0
- package/dist/primitives/document.d.ts.map +1 -1
- package/dist/primitives/document.js +198 -3
- package/dist/primitives/document.js.map +1 -1
- package/dist/primitives/document_view.d.ts +39 -0
- package/dist/primitives/document_view.d.ts.map +1 -1
- package/dist/primitives/document_view.js +83 -13
- package/dist/primitives/document_view.js.map +1 -1
- package/dist/primitives/dom-helpers.d.ts +11 -0
- package/dist/primitives/dom-helpers.d.ts.map +1 -1
- package/dist/primitives/dom-helpers.js +23 -0
- package/dist/primitives/dom-helpers.js.map +1 -1
- package/dist/primitives/index.d.ts +1 -0
- package/dist/primitives/index.d.ts.map +1 -1
- package/dist/primitives/index.js +1 -0
- package/dist/primitives/index.js.map +1 -1
- package/dist/primitives/tables.d.ts +54 -0
- package/dist/primitives/tables.d.ts.map +1 -0
- package/dist/primitives/tables.js +192 -0
- package/dist/primitives/tables.js.map +1 -0
- package/package.json +2 -2
- package/dist/baselines/diffmatch/documentBuilder.d.ts +0 -44
- package/dist/baselines/diffmatch/documentBuilder.d.ts.map +0 -1
- package/dist/baselines/diffmatch/documentBuilder.js +0 -227
- package/dist/baselines/diffmatch/documentBuilder.js.map +0 -1
- package/dist/baselines/diffmatch/paragraphAlignment.d.ts +0 -75
- package/dist/baselines/diffmatch/paragraphAlignment.d.ts.map +0 -1
- package/dist/baselines/diffmatch/paragraphAlignment.js +0 -206
- package/dist/baselines/diffmatch/paragraphAlignment.js.map +0 -1
- package/dist/baselines/diffmatch/pipeline.d.ts +0 -33
- package/dist/baselines/diffmatch/pipeline.d.ts.map +0 -1
- package/dist/baselines/diffmatch/pipeline.js +0 -84
- package/dist/baselines/diffmatch/pipeline.js.map +0 -1
- package/dist/baselines/diffmatch/runDiff.d.ts +0 -53
- package/dist/baselines/diffmatch/runDiff.d.ts.map +0 -1
- package/dist/baselines/diffmatch/runDiff.js +0 -253
- package/dist/baselines/diffmatch/runDiff.js.map +0 -1
- package/dist/baselines/diffmatch/trackChangesRenderer.d.ts +0 -64
- package/dist/baselines/diffmatch/trackChangesRenderer.d.ts.map +0 -1
- package/dist/baselines/diffmatch/trackChangesRenderer.js +0 -178
- package/dist/baselines/diffmatch/trackChangesRenderer.js.map +0 -1
- package/dist/baselines/diffmatch/xmlParser.d.ts +0 -45
- package/dist/baselines/diffmatch/xmlParser.d.ts.map +0 -1
- package/dist/baselines/diffmatch/xmlParser.js +0 -216
- package/dist/baselines/diffmatch/xmlParser.js.map +0 -1
- package/dist/benchmark/gates.d.ts +0 -17
- package/dist/benchmark/gates.d.ts.map +0 -1
- package/dist/benchmark/gates.js +0 -260
- package/dist/benchmark/gates.js.map +0 -1
- package/dist/benchmark/metrics.d.ts +0 -15
- package/dist/benchmark/metrics.d.ts.map +0 -1
- package/dist/benchmark/metrics.js +0 -24
- package/dist/benchmark/metrics.js.map +0 -1
- package/dist/benchmark/reporter.d.ts +0 -10
- package/dist/benchmark/reporter.d.ts.map +0 -1
- package/dist/benchmark/reporter.js +0 -94
- package/dist/benchmark/reporter.js.map +0 -1
- package/dist/benchmark/runner.d.ts +0 -15
- package/dist/benchmark/runner.d.ts.map +0 -1
- package/dist/benchmark/runner.js +0 -241
- package/dist/benchmark/runner.js.map +0 -1
- package/dist/benchmark/scores.d.ts +0 -24
- package/dist/benchmark/scores.d.ts.map +0 -1
- package/dist/benchmark/scores.js +0 -103
- package/dist/benchmark/scores.js.map +0 -1
- package/dist/benchmark/types.d.ts +0 -81
- package/dist/benchmark/types.d.ts.map +0 -1
- package/dist/benchmark/types.js +0 -7
- package/dist/benchmark/types.js.map +0 -1
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Baseline B: Run-level diff using diff-match-patch.
|
|
3
|
-
*
|
|
4
|
-
* Performs character-level diff on matched paragraphs, then maps
|
|
5
|
-
* the diff operations back to run boundaries for track changes generation.
|
|
6
|
-
*/
|
|
7
|
-
import type { RunInfo, RunDiffResult, DiffOp } from '../../shared/ooxml/types.js';
|
|
8
|
-
/**
|
|
9
|
-
* Compute a diff between two strings.
|
|
10
|
-
*
|
|
11
|
-
* @param original - Original text
|
|
12
|
-
* @param revised - Revised text
|
|
13
|
-
* @param cleanupSemantic - Apply semantic cleanup (default: true)
|
|
14
|
-
* @returns Array of diff operations [operation, text]
|
|
15
|
-
*/
|
|
16
|
-
export declare function computeDiff(original: string, revised: string, cleanupSemantic?: boolean): DiffOp[];
|
|
17
|
-
/**
|
|
18
|
-
* Compute a word-level diff (more suitable for document comparison).
|
|
19
|
-
*
|
|
20
|
-
* Tokenizes input by words, performs diff, then reconstructs.
|
|
21
|
-
*/
|
|
22
|
-
export declare function computeWordDiff(original: string, revised: string): DiffOp[];
|
|
23
|
-
/**
|
|
24
|
-
* Split a run at a given character offset.
|
|
25
|
-
*
|
|
26
|
-
* @param run - The run to split
|
|
27
|
-
* @param offset - Character offset to split at
|
|
28
|
-
* @returns [before, after] runs
|
|
29
|
-
*/
|
|
30
|
-
export declare function splitRun(run: RunInfo, offset: number): [RunInfo, RunInfo];
|
|
31
|
-
/**
|
|
32
|
-
* Extract text from runs.
|
|
33
|
-
*/
|
|
34
|
-
export declare function extractText(runs: RunInfo[]): string;
|
|
35
|
-
/**
|
|
36
|
-
* Compute run-level diff between original and revised runs.
|
|
37
|
-
*
|
|
38
|
-
* Maps character-level diff back to run boundaries, splitting runs
|
|
39
|
-
* when necessary.
|
|
40
|
-
*
|
|
41
|
-
* @param originalRuns - Runs from original paragraph
|
|
42
|
-
* @param revisedRuns - Runs from revised paragraph
|
|
43
|
-
* @returns Merged runs with revision markers
|
|
44
|
-
*/
|
|
45
|
-
export declare function diffRuns(originalRuns: RunInfo[], revisedRuns: RunInfo[]): RunDiffResult;
|
|
46
|
-
/**
|
|
47
|
-
* Count changes in a diff result.
|
|
48
|
-
*/
|
|
49
|
-
export declare function countChanges(diffs: DiffOp[]): {
|
|
50
|
-
insertions: number;
|
|
51
|
-
deletions: number;
|
|
52
|
-
};
|
|
53
|
-
//# sourceMappingURL=runDiff.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runDiff.d.ts","sourceRoot":"","sources":["../../../src/baselines/diffmatch/runDiff.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAclF;;;;;;;GAOG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,eAAe,UAAO,GACrB,MAAM,EAAE,CAQV;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAkB3E;AAuFD;;;;;;GAMG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAgBzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,MAAM,CAEnD;AAED;;;;;;;;;GASG;AACH,wBAAgB,QAAQ,CACtB,YAAY,EAAE,OAAO,EAAE,EACvB,WAAW,EAAE,OAAO,EAAE,GACrB,aAAa,CAkGf;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAavF"}
|
|
@@ -1,253 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Baseline B: Run-level diff using diff-match-patch.
|
|
3
|
-
*
|
|
4
|
-
* Performs character-level diff on matched paragraphs, then maps
|
|
5
|
-
* the diff operations back to run boundaries for track changes generation.
|
|
6
|
-
*/
|
|
7
|
-
import DiffMatchPatch from 'diff-match-patch';
|
|
8
|
-
/** Diff operation codes from diff-match-patch */
|
|
9
|
-
const DIFF_DELETE = -1;
|
|
10
|
-
const DIFF_INSERT = 1;
|
|
11
|
-
const DIFF_EQUAL = 0;
|
|
12
|
-
/** Create a shared diff-match-patch instance */
|
|
13
|
-
const dmp = new DiffMatchPatch();
|
|
14
|
-
// Configure diff-match-patch for better document comparison
|
|
15
|
-
dmp.Diff_Timeout = 5; // 5 seconds timeout
|
|
16
|
-
dmp.Diff_EditCost = 4; // Favor fewer, larger edits
|
|
17
|
-
/**
|
|
18
|
-
* Compute a diff between two strings.
|
|
19
|
-
*
|
|
20
|
-
* @param original - Original text
|
|
21
|
-
* @param revised - Revised text
|
|
22
|
-
* @param cleanupSemantic - Apply semantic cleanup (default: true)
|
|
23
|
-
* @returns Array of diff operations [operation, text]
|
|
24
|
-
*/
|
|
25
|
-
export function computeDiff(original, revised, cleanupSemantic = true) {
|
|
26
|
-
const diffs = dmp.diff_main(original, revised);
|
|
27
|
-
if (cleanupSemantic) {
|
|
28
|
-
dmp.diff_cleanupSemantic(diffs);
|
|
29
|
-
}
|
|
30
|
-
return diffs;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Compute a word-level diff (more suitable for document comparison).
|
|
34
|
-
*
|
|
35
|
-
* Tokenizes input by words, performs diff, then reconstructs.
|
|
36
|
-
*/
|
|
37
|
-
export function computeWordDiff(original, revised) {
|
|
38
|
-
// Tokenize by words (keep punctuation attached to words)
|
|
39
|
-
const tokenize = (text) => {
|
|
40
|
-
return text.match(/\S+\s*/g) ?? [];
|
|
41
|
-
};
|
|
42
|
-
const originalTokens = tokenize(original);
|
|
43
|
-
const revisedTokens = tokenize(revised);
|
|
44
|
-
// Convert tokens to characters for diff-match-patch (1 token = 1 char)
|
|
45
|
-
const { chars1, chars2, lineArray } = tokensToChars(originalTokens, revisedTokens);
|
|
46
|
-
// Compute diff on character representation
|
|
47
|
-
const diffs = dmp.diff_main(chars1, chars2);
|
|
48
|
-
dmp.diff_cleanupSemantic(diffs);
|
|
49
|
-
// Convert back to actual text
|
|
50
|
-
return charsToTokens(diffs, lineArray);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Convert token arrays to character sequences for diffing.
|
|
54
|
-
*/
|
|
55
|
-
function tokensToChars(tokens1, tokens2) {
|
|
56
|
-
const tokenSet = new Map();
|
|
57
|
-
const lineArray = [];
|
|
58
|
-
const encode = (tokens) => {
|
|
59
|
-
let chars = '';
|
|
60
|
-
for (const token of tokens) {
|
|
61
|
-
if (!tokenSet.has(token)) {
|
|
62
|
-
tokenSet.set(token, lineArray.length);
|
|
63
|
-
lineArray.push(token);
|
|
64
|
-
}
|
|
65
|
-
chars += String.fromCharCode(tokenSet.get(token));
|
|
66
|
-
}
|
|
67
|
-
return chars;
|
|
68
|
-
};
|
|
69
|
-
const chars1 = encode(tokens1);
|
|
70
|
-
const chars2 = encode(tokens2);
|
|
71
|
-
return { chars1, chars2, lineArray };
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Convert character diff back to token diff.
|
|
75
|
-
*/
|
|
76
|
-
function charsToTokens(diffs, lineArray) {
|
|
77
|
-
const result = [];
|
|
78
|
-
for (const [op, chars] of diffs) {
|
|
79
|
-
let text = '';
|
|
80
|
-
for (let i = 0; i < chars.length; i++) {
|
|
81
|
-
text += lineArray[chars.charCodeAt(i)] ?? '';
|
|
82
|
-
}
|
|
83
|
-
if (text) {
|
|
84
|
-
result.push([op, text]);
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return result;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Map a character offset to a position in the run array.
|
|
91
|
-
*/
|
|
92
|
-
function offsetToRunPosition(runs, offset) {
|
|
93
|
-
let charCount = 0;
|
|
94
|
-
for (let i = 0; i < runs.length; i++) {
|
|
95
|
-
const run = runs[i];
|
|
96
|
-
const runLength = run.text.length;
|
|
97
|
-
if (charCount + runLength > offset) {
|
|
98
|
-
return {
|
|
99
|
-
runIndex: i,
|
|
100
|
-
charOffset: offset - charCount,
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
charCount += runLength;
|
|
104
|
-
}
|
|
105
|
-
// Offset is at or past end
|
|
106
|
-
return {
|
|
107
|
-
runIndex: runs.length - 1,
|
|
108
|
-
charOffset: runs[runs.length - 1]?.text.length ?? 0,
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Split a run at a given character offset.
|
|
113
|
-
*
|
|
114
|
-
* @param run - The run to split
|
|
115
|
-
* @param offset - Character offset to split at
|
|
116
|
-
* @returns [before, after] runs
|
|
117
|
-
*/
|
|
118
|
-
export function splitRun(run, offset) {
|
|
119
|
-
const before = {
|
|
120
|
-
text: run.text.slice(0, offset),
|
|
121
|
-
start: run.start,
|
|
122
|
-
end: run.start + offset,
|
|
123
|
-
properties: run.properties ? { ...run.properties } : undefined,
|
|
124
|
-
};
|
|
125
|
-
const after = {
|
|
126
|
-
text: run.text.slice(offset),
|
|
127
|
-
start: run.start + offset,
|
|
128
|
-
end: run.end,
|
|
129
|
-
properties: run.properties ? { ...run.properties } : undefined,
|
|
130
|
-
};
|
|
131
|
-
return [before, after];
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Extract text from runs.
|
|
135
|
-
*/
|
|
136
|
-
export function extractText(runs) {
|
|
137
|
-
return runs.map(r => r.text).join('');
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Compute run-level diff between original and revised runs.
|
|
141
|
-
*
|
|
142
|
-
* Maps character-level diff back to run boundaries, splitting runs
|
|
143
|
-
* when necessary.
|
|
144
|
-
*
|
|
145
|
-
* @param originalRuns - Runs from original paragraph
|
|
146
|
-
* @param revisedRuns - Runs from revised paragraph
|
|
147
|
-
* @returns Merged runs with revision markers
|
|
148
|
-
*/
|
|
149
|
-
export function diffRuns(originalRuns, revisedRuns) {
|
|
150
|
-
const originalText = extractText(originalRuns);
|
|
151
|
-
const revisedText = extractText(revisedRuns);
|
|
152
|
-
// Compute character-level diff
|
|
153
|
-
const diffs = computeDiff(originalText, revisedText);
|
|
154
|
-
// Build merged runs with revision markers
|
|
155
|
-
const mergedRuns = [];
|
|
156
|
-
let originalOffset = 0;
|
|
157
|
-
let revisedOffset = 0;
|
|
158
|
-
for (const [op, text] of diffs) {
|
|
159
|
-
if (op === DIFF_EQUAL) {
|
|
160
|
-
// Equal text - use revised runs' formatting
|
|
161
|
-
const startPos = offsetToRunPosition(revisedRuns, revisedOffset);
|
|
162
|
-
const endPos = offsetToRunPosition(revisedRuns, revisedOffset + text.length);
|
|
163
|
-
// Extract runs that cover this range
|
|
164
|
-
for (let i = startPos.runIndex; i <= endPos.runIndex && i < revisedRuns.length; i++) {
|
|
165
|
-
const run = revisedRuns[i];
|
|
166
|
-
const runStart = i === startPos.runIndex ? startPos.charOffset : 0;
|
|
167
|
-
const runEnd = i === endPos.runIndex ? endPos.charOffset : run.text.length;
|
|
168
|
-
if (runEnd > runStart) {
|
|
169
|
-
mergedRuns.push({
|
|
170
|
-
text: run.text.slice(runStart, runEnd),
|
|
171
|
-
start: revisedOffset + runStart,
|
|
172
|
-
end: revisedOffset + runEnd,
|
|
173
|
-
properties: run.properties,
|
|
174
|
-
});
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
originalOffset += text.length;
|
|
178
|
-
revisedOffset += text.length;
|
|
179
|
-
}
|
|
180
|
-
else if (op === DIFF_DELETE) {
|
|
181
|
-
// Deleted text - use original runs' formatting, mark as deletion
|
|
182
|
-
const startPos = offsetToRunPosition(originalRuns, originalOffset);
|
|
183
|
-
const endPos = offsetToRunPosition(originalRuns, originalOffset + text.length);
|
|
184
|
-
for (let i = startPos.runIndex; i <= endPos.runIndex && i < originalRuns.length; i++) {
|
|
185
|
-
const run = originalRuns[i];
|
|
186
|
-
const runStart = i === startPos.runIndex ? startPos.charOffset : 0;
|
|
187
|
-
const runEnd = i === endPos.runIndex ? endPos.charOffset : run.text.length;
|
|
188
|
-
if (runEnd > runStart) {
|
|
189
|
-
mergedRuns.push({
|
|
190
|
-
text: run.text.slice(runStart, runEnd),
|
|
191
|
-
start: originalOffset + runStart,
|
|
192
|
-
end: originalOffset + runEnd,
|
|
193
|
-
properties: run.properties,
|
|
194
|
-
revision: {
|
|
195
|
-
id: 0, // Will be assigned later
|
|
196
|
-
author: '',
|
|
197
|
-
date: new Date(),
|
|
198
|
-
type: 'deletion',
|
|
199
|
-
},
|
|
200
|
-
});
|
|
201
|
-
}
|
|
202
|
-
}
|
|
203
|
-
originalOffset += text.length;
|
|
204
|
-
}
|
|
205
|
-
else if (op === DIFF_INSERT) {
|
|
206
|
-
// Inserted text - use revised runs' formatting, mark as insertion
|
|
207
|
-
const startPos = offsetToRunPosition(revisedRuns, revisedOffset);
|
|
208
|
-
const endPos = offsetToRunPosition(revisedRuns, revisedOffset + text.length);
|
|
209
|
-
for (let i = startPos.runIndex; i <= endPos.runIndex && i < revisedRuns.length; i++) {
|
|
210
|
-
const run = revisedRuns[i];
|
|
211
|
-
const runStart = i === startPos.runIndex ? startPos.charOffset : 0;
|
|
212
|
-
const runEnd = i === endPos.runIndex ? endPos.charOffset : run.text.length;
|
|
213
|
-
if (runEnd > runStart) {
|
|
214
|
-
mergedRuns.push({
|
|
215
|
-
text: run.text.slice(runStart, runEnd),
|
|
216
|
-
start: revisedOffset + runStart,
|
|
217
|
-
end: revisedOffset + runEnd,
|
|
218
|
-
properties: run.properties,
|
|
219
|
-
revision: {
|
|
220
|
-
id: 0, // Will be assigned later
|
|
221
|
-
author: '',
|
|
222
|
-
date: new Date(),
|
|
223
|
-
type: 'insertion',
|
|
224
|
-
},
|
|
225
|
-
});
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
revisedOffset += text.length;
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
return {
|
|
232
|
-
originalRuns,
|
|
233
|
-
revisedRuns,
|
|
234
|
-
mergedRuns,
|
|
235
|
-
};
|
|
236
|
-
}
|
|
237
|
-
/**
|
|
238
|
-
* Count changes in a diff result.
|
|
239
|
-
*/
|
|
240
|
-
export function countChanges(diffs) {
|
|
241
|
-
let insertions = 0;
|
|
242
|
-
let deletions = 0;
|
|
243
|
-
for (const [op, text] of diffs) {
|
|
244
|
-
if (op === DIFF_INSERT) {
|
|
245
|
-
insertions += text.length;
|
|
246
|
-
}
|
|
247
|
-
else if (op === DIFF_DELETE) {
|
|
248
|
-
deletions += text.length;
|
|
249
|
-
}
|
|
250
|
-
}
|
|
251
|
-
return { insertions, deletions };
|
|
252
|
-
}
|
|
253
|
-
//# sourceMappingURL=runDiff.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"runDiff.js","sourceRoot":"","sources":["../../../src/baselines/diffmatch/runDiff.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Baseline B: Track changes OOXML renderer.
|
|
3
|
-
*
|
|
4
|
-
* Generates OOXML track changes markup (w:ins, w:del) from diff results.
|
|
5
|
-
*/
|
|
6
|
-
import type { RunInfo } from '../../shared/ooxml/types.js';
|
|
7
|
-
/**
|
|
8
|
-
* Reset the revision ID counter.
|
|
9
|
-
*/
|
|
10
|
-
export declare function resetRevisionIds(): void;
|
|
11
|
-
/**
|
|
12
|
-
* Allocate a new revision ID.
|
|
13
|
-
*/
|
|
14
|
-
export declare function allocateRevisionId(): number;
|
|
15
|
-
/**
|
|
16
|
-
* Format a date for OOXML (ISO 8601 format).
|
|
17
|
-
*/
|
|
18
|
-
export declare function formatOoxmlDate(date: Date): string;
|
|
19
|
-
/**
|
|
20
|
-
* Escape XML special characters.
|
|
21
|
-
*/
|
|
22
|
-
export declare function escapeXml(text: string): string;
|
|
23
|
-
/**
|
|
24
|
-
* Generate insertion markup.
|
|
25
|
-
*/
|
|
26
|
-
export declare function generateInsertion(runs: RunInfo[], author: string, date: Date): string;
|
|
27
|
-
/**
|
|
28
|
-
* Generate deletion markup.
|
|
29
|
-
*/
|
|
30
|
-
export declare function generateDeletion(runs: RunInfo[], author: string, date: Date): string;
|
|
31
|
-
/**
|
|
32
|
-
* Generate unchanged run markup.
|
|
33
|
-
*/
|
|
34
|
-
export declare function generateUnchangedRun(run: RunInfo): string;
|
|
35
|
-
/**
|
|
36
|
-
* Options for rendering track changes.
|
|
37
|
-
*/
|
|
38
|
-
export interface RenderOptions {
|
|
39
|
-
/** Author name for revisions */
|
|
40
|
-
author: string;
|
|
41
|
-
/** Timestamp for revisions */
|
|
42
|
-
date: Date;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Render merged runs with track changes to OOXML.
|
|
46
|
-
*
|
|
47
|
-
* @param mergedRuns - Runs with revision markers from diffRuns()
|
|
48
|
-
* @param options - Rendering options
|
|
49
|
-
* @returns OOXML paragraph content with track changes
|
|
50
|
-
*/
|
|
51
|
-
export declare function renderTrackChanges(mergedRuns: RunInfo[], options: RenderOptions): string;
|
|
52
|
-
/**
|
|
53
|
-
* Wrap content in a paragraph element.
|
|
54
|
-
*/
|
|
55
|
-
export declare function wrapInParagraph(content: string, pPr?: string): string;
|
|
56
|
-
/**
|
|
57
|
-
* Generate a complete deleted paragraph.
|
|
58
|
-
*/
|
|
59
|
-
export declare function generateDeletedParagraph(runs: RunInfo[], author: string, date: Date, pPr?: string): string;
|
|
60
|
-
/**
|
|
61
|
-
* Generate a complete inserted paragraph.
|
|
62
|
-
*/
|
|
63
|
-
export declare function generateInsertedParagraph(runs: RunInfo[], author: string, date: Date, pPr?: string): string;
|
|
64
|
-
//# sourceMappingURL=trackChangesRenderer.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trackChangesRenderer.d.ts","sourceRoot":"","sources":["../../../src/baselines/diffmatch/trackChangesRenderer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AAK3D;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAO9C;AA2DD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,GACT,MAAM,CAOR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,GACT,MAAM,CAQR;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAEzD;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,gCAAgC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,8BAA8B;IAC9B,IAAI,EAAE,IAAI,CAAC;CACZ;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,OAAO,EAAE,EACrB,OAAO,EAAE,aAAa,GACrB,MAAM,CAsCR;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAGrE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,CAGR;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,OAAO,EAAE,EACf,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,IAAI,EACV,GAAG,CAAC,EAAE,MAAM,GACX,MAAM,CAGR"}
|
|
@@ -1,178 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Baseline B: Track changes OOXML renderer.
|
|
3
|
-
*
|
|
4
|
-
* Generates OOXML track changes markup (w:ins, w:del) from diff results.
|
|
5
|
-
*/
|
|
6
|
-
/** ID allocator for revision IDs */
|
|
7
|
-
let nextRevisionId = 1;
|
|
8
|
-
/**
|
|
9
|
-
* Reset the revision ID counter.
|
|
10
|
-
*/
|
|
11
|
-
export function resetRevisionIds() {
|
|
12
|
-
nextRevisionId = 1;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Allocate a new revision ID.
|
|
16
|
-
*/
|
|
17
|
-
export function allocateRevisionId() {
|
|
18
|
-
return nextRevisionId++;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Format a date for OOXML (ISO 8601 format).
|
|
22
|
-
*/
|
|
23
|
-
export function formatOoxmlDate(date) {
|
|
24
|
-
return date.toISOString().replace('Z', 'Z');
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Escape XML special characters.
|
|
28
|
-
*/
|
|
29
|
-
export function escapeXml(text) {
|
|
30
|
-
return text
|
|
31
|
-
.replace(/&/g, '&')
|
|
32
|
-
.replace(/</g, '<')
|
|
33
|
-
.replace(/>/g, '>')
|
|
34
|
-
.replace(/"/g, '"')
|
|
35
|
-
.replace(/'/g, ''');
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* Generate run properties XML.
|
|
39
|
-
*/
|
|
40
|
-
function generateRunProperties(run) {
|
|
41
|
-
if (!run.properties) {
|
|
42
|
-
return '';
|
|
43
|
-
}
|
|
44
|
-
const props = [];
|
|
45
|
-
const p = run.properties;
|
|
46
|
-
if (p.bold) {
|
|
47
|
-
props.push('<w:b/>');
|
|
48
|
-
}
|
|
49
|
-
if (p.italic) {
|
|
50
|
-
props.push('<w:i/>');
|
|
51
|
-
}
|
|
52
|
-
if (p.underline) {
|
|
53
|
-
props.push(`<w:u w:val="${escapeXml(p.underline)}"/>`);
|
|
54
|
-
}
|
|
55
|
-
if (p.strikethrough) {
|
|
56
|
-
props.push('<w:strike/>');
|
|
57
|
-
}
|
|
58
|
-
if (p.highlight) {
|
|
59
|
-
props.push(`<w:highlight w:val="${escapeXml(p.highlight)}"/>`);
|
|
60
|
-
}
|
|
61
|
-
if (p.color) {
|
|
62
|
-
props.push(`<w:color w:val="${escapeXml(p.color)}"/>`);
|
|
63
|
-
}
|
|
64
|
-
if (p.fontSize !== undefined) {
|
|
65
|
-
props.push(`<w:sz w:val="${p.fontSize}"/>`);
|
|
66
|
-
}
|
|
67
|
-
if (p.fontFamily) {
|
|
68
|
-
props.push(`<w:rFonts w:ascii="${escapeXml(p.fontFamily)}" w:hAnsi="${escapeXml(p.fontFamily)}"/>`);
|
|
69
|
-
}
|
|
70
|
-
if (props.length === 0) {
|
|
71
|
-
return '';
|
|
72
|
-
}
|
|
73
|
-
return `<w:rPr>${props.join('')}</w:rPr>`;
|
|
74
|
-
}
|
|
75
|
-
/**
|
|
76
|
-
* Generate a single run's XML.
|
|
77
|
-
*/
|
|
78
|
-
function generateRunXml(text, run, useDelText = false) {
|
|
79
|
-
const rPr = generateRunProperties(run);
|
|
80
|
-
const textElement = useDelText ? 'w:delText' : 'w:t';
|
|
81
|
-
// Handle whitespace preservation
|
|
82
|
-
const needsSpace = text.startsWith(' ') || text.endsWith(' ') || text.includes(' ');
|
|
83
|
-
const spaceAttr = needsSpace ? ' xml:space="preserve"' : '';
|
|
84
|
-
return `<w:r>${rPr}<${textElement}${spaceAttr}>${escapeXml(text)}</${textElement}></w:r>`;
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* Generate insertion markup.
|
|
88
|
-
*/
|
|
89
|
-
export function generateInsertion(runs, author, date) {
|
|
90
|
-
const id = allocateRevisionId();
|
|
91
|
-
const dateStr = formatOoxmlDate(date);
|
|
92
|
-
const runXml = runs.map(run => generateRunXml(run.text, run, false)).join('');
|
|
93
|
-
return `<w:ins w:id="${id}" w:author="${escapeXml(author)}" w:date="${dateStr}">${runXml}</w:ins>`;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Generate deletion markup.
|
|
97
|
-
*/
|
|
98
|
-
export function generateDeletion(runs, author, date) {
|
|
99
|
-
const id = allocateRevisionId();
|
|
100
|
-
const dateStr = formatOoxmlDate(date);
|
|
101
|
-
// Deletions use w:delText instead of w:t
|
|
102
|
-
const runXml = runs.map(run => generateRunXml(run.text, run, true)).join('');
|
|
103
|
-
return `<w:del w:id="${id}" w:author="${escapeXml(author)}" w:date="${dateStr}">${runXml}</w:del>`;
|
|
104
|
-
}
|
|
105
|
-
/**
|
|
106
|
-
* Generate unchanged run markup.
|
|
107
|
-
*/
|
|
108
|
-
export function generateUnchangedRun(run) {
|
|
109
|
-
return generateRunXml(run.text, run, false);
|
|
110
|
-
}
|
|
111
|
-
/**
|
|
112
|
-
* Render merged runs with track changes to OOXML.
|
|
113
|
-
*
|
|
114
|
-
* @param mergedRuns - Runs with revision markers from diffRuns()
|
|
115
|
-
* @param options - Rendering options
|
|
116
|
-
* @returns OOXML paragraph content with track changes
|
|
117
|
-
*/
|
|
118
|
-
export function renderTrackChanges(mergedRuns, options) {
|
|
119
|
-
const { author, date } = options;
|
|
120
|
-
const parts = [];
|
|
121
|
-
// Group consecutive runs by revision type for cleaner output
|
|
122
|
-
let i = 0;
|
|
123
|
-
while (i < mergedRuns.length) {
|
|
124
|
-
const run = mergedRuns[i];
|
|
125
|
-
const revType = run.revision?.type;
|
|
126
|
-
if (!revType) {
|
|
127
|
-
// Unchanged run
|
|
128
|
-
parts.push(generateUnchangedRun(run));
|
|
129
|
-
i++;
|
|
130
|
-
}
|
|
131
|
-
else if (revType === 'insertion') {
|
|
132
|
-
// Collect consecutive insertions
|
|
133
|
-
const insertionRuns = [];
|
|
134
|
-
while (i < mergedRuns.length && mergedRuns[i]?.revision?.type === 'insertion') {
|
|
135
|
-
insertionRuns.push(mergedRuns[i]);
|
|
136
|
-
i++;
|
|
137
|
-
}
|
|
138
|
-
parts.push(generateInsertion(insertionRuns, author, date));
|
|
139
|
-
}
|
|
140
|
-
else if (revType === 'deletion') {
|
|
141
|
-
// Collect consecutive deletions
|
|
142
|
-
const deletionRuns = [];
|
|
143
|
-
while (i < mergedRuns.length && mergedRuns[i]?.revision?.type === 'deletion') {
|
|
144
|
-
deletionRuns.push(mergedRuns[i]);
|
|
145
|
-
i++;
|
|
146
|
-
}
|
|
147
|
-
parts.push(generateDeletion(deletionRuns, author, date));
|
|
148
|
-
}
|
|
149
|
-
else {
|
|
150
|
-
// Unknown revision type, treat as unchanged
|
|
151
|
-
parts.push(generateUnchangedRun(run));
|
|
152
|
-
i++;
|
|
153
|
-
}
|
|
154
|
-
}
|
|
155
|
-
return parts.join('');
|
|
156
|
-
}
|
|
157
|
-
/**
|
|
158
|
-
* Wrap content in a paragraph element.
|
|
159
|
-
*/
|
|
160
|
-
export function wrapInParagraph(content, pPr) {
|
|
161
|
-
const pPrXml = pPr ? `<w:pPr>${pPr}</w:pPr>` : '';
|
|
162
|
-
return `<w:p>${pPrXml}${content}</w:p>`;
|
|
163
|
-
}
|
|
164
|
-
/**
|
|
165
|
-
* Generate a complete deleted paragraph.
|
|
166
|
-
*/
|
|
167
|
-
export function generateDeletedParagraph(runs, author, date, pPr) {
|
|
168
|
-
const content = generateDeletion(runs, author, date);
|
|
169
|
-
return wrapInParagraph(content, pPr);
|
|
170
|
-
}
|
|
171
|
-
/**
|
|
172
|
-
* Generate a complete inserted paragraph.
|
|
173
|
-
*/
|
|
174
|
-
export function generateInsertedParagraph(runs, author, date, pPr) {
|
|
175
|
-
const content = generateInsertion(runs, author, date);
|
|
176
|
-
return wrapInParagraph(content, pPr);
|
|
177
|
-
}
|
|
178
|
-
//# sourceMappingURL=trackChangesRenderer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trackChangesRenderer.js","sourceRoot":"","sources":["../../../src/baselines/diffmatch/trackChangesRenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* XML Parser for extracting paragraphs and runs from DOCX document.xml.
|
|
3
|
-
*
|
|
4
|
-
* Uses xmldom to parse OOXML and extract ParagraphInfo objects
|
|
5
|
-
* suitable for comparison.
|
|
6
|
-
*/
|
|
7
|
-
import type { ParagraphInfo, RunProperties } from '../../shared/ooxml/types.js';
|
|
8
|
-
/**
|
|
9
|
-
* Extended ParagraphInfo with original XML for reconstruction.
|
|
10
|
-
*/
|
|
11
|
-
export interface ExtendedParagraphInfo extends ParagraphInfo {
|
|
12
|
-
/** Original paragraph properties XML (w:pPr) for preservation */
|
|
13
|
-
pPrXml?: string;
|
|
14
|
-
/** Original paragraph index in document */
|
|
15
|
-
originalIndex: number;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Extract paragraphs from document.xml content.
|
|
19
|
-
*
|
|
20
|
-
* @param documentXml - The raw document.xml content
|
|
21
|
-
* @returns Array of ParagraphInfo objects with runs and metadata
|
|
22
|
-
*/
|
|
23
|
-
export declare function extractParagraphs(documentXml: string): ExtendedParagraphInfo[];
|
|
24
|
-
/**
|
|
25
|
-
* Extract run properties from a w:rPr element.
|
|
26
|
-
*/
|
|
27
|
-
export declare function extractRunProperties(rPrElement: Element): RunProperties | undefined;
|
|
28
|
-
/**
|
|
29
|
-
* Get the document body content (everything inside w:body).
|
|
30
|
-
* Useful for document reconstruction.
|
|
31
|
-
*/
|
|
32
|
-
export declare function getBodyContent(documentXml: string): {
|
|
33
|
-
beforeBody: string;
|
|
34
|
-
bodyContent: string;
|
|
35
|
-
afterBody: string;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* Extract sectPr (section properties) from body content if present.
|
|
39
|
-
* sectPr must remain at the end of body.
|
|
40
|
-
*/
|
|
41
|
-
export declare function extractSectPr(bodyContent: string): {
|
|
42
|
-
content: string;
|
|
43
|
-
sectPr: string | null;
|
|
44
|
-
};
|
|
45
|
-
//# sourceMappingURL=xmlParser.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xmlParser.d.ts","sourceRoot":"","sources":["../../../src/baselines/diffmatch/xmlParser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAW,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAMzF;;GAEG;AACH,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC1D,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,qBAAqB,EAAE,CAsB9E;AAoED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAiDnF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG;IACnD,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB,CAoBA;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,CAaA"}
|