@usejunior/docx-core 0.14.0 → 0.16.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/dist/.tsbuildinfo +1 -1
- package/dist/generation/index.d.ts +0 -1
- package/dist/generation/index.d.ts.map +1 -1
- package/dist/generation/index.js +0 -1
- package/dist/generation/index.js.map +1 -1
- package/dist/index.d.ts +7 -25
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -47
- package/dist/index.js.map +1 -1
- package/dist/primitives/accept_ai_edits.d.ts +87 -0
- package/dist/primitives/accept_ai_edits.d.ts.map +1 -0
- package/dist/primitives/accept_ai_edits.js +253 -0
- package/dist/primitives/accept_ai_edits.js.map +1 -0
- package/dist/primitives/accept_changes.d.ts +13 -1
- package/dist/primitives/accept_changes.d.ts.map +1 -1
- package/dist/primitives/accept_changes.js +44 -29
- package/dist/primitives/accept_changes.js.map +1 -1
- package/dist/primitives/document.d.ts +51 -0
- package/dist/primitives/document.d.ts.map +1 -1
- package/dist/primitives/document.js +144 -1
- package/dist/primitives/document.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/reject_changes.d.ts +4 -1
- package/dist/primitives/reject_changes.d.ts.map +1 -1
- package/dist/primitives/reject_changes.js +54 -30
- package/dist/primitives/reject_changes.js.map +1 -1
- package/dist/primitives/relationships.d.ts +33 -0
- package/dist/primitives/relationships.d.ts.map +1 -1
- package/dist/primitives/relationships.js +84 -1
- package/dist/primitives/relationships.js.map +1 -1
- package/package.json +8 -9
- package/dist/atomizer.d.ts +0 -273
- package/dist/atomizer.d.ts.map +0 -1
- package/dist/atomizer.js +0 -1002
- package/dist/atomizer.js.map +0 -1
- package/dist/baselines/atomizer/atomLcs.d.ts +0 -82
- package/dist/baselines/atomizer/atomLcs.d.ts.map +0 -1
- package/dist/baselines/atomizer/atomLcs.js +0 -376
- package/dist/baselines/atomizer/atomLcs.js.map +0 -1
- package/dist/baselines/atomizer/auxiliaryIdCollision.d.ts +0 -99
- package/dist/baselines/atomizer/auxiliaryIdCollision.d.ts.map +0 -1
- package/dist/baselines/atomizer/auxiliaryIdCollision.js +0 -415
- package/dist/baselines/atomizer/auxiliaryIdCollision.js.map +0 -1
- package/dist/baselines/atomizer/consumerCompatibility.d.ts +0 -2
- package/dist/baselines/atomizer/consumerCompatibility.d.ts.map +0 -1
- package/dist/baselines/atomizer/consumerCompatibility.js +0 -188
- package/dist/baselines/atomizer/consumerCompatibility.js.map +0 -1
- package/dist/baselines/atomizer/debug.d.ts +0 -41
- package/dist/baselines/atomizer/debug.d.ts.map +0 -1
- package/dist/baselines/atomizer/debug.js +0 -85
- package/dist/baselines/atomizer/debug.js.map +0 -1
- package/dist/baselines/atomizer/documentReconstructor.d.ts +0 -75
- package/dist/baselines/atomizer/documentReconstructor.d.ts.map +0 -1
- package/dist/baselines/atomizer/documentReconstructor.js +0 -1449
- package/dist/baselines/atomizer/documentReconstructor.js.map +0 -1
- package/dist/baselines/atomizer/formattingFidelity.d.ts +0 -99
- package/dist/baselines/atomizer/formattingFidelity.d.ts.map +0 -1
- package/dist/baselines/atomizer/formattingFidelity.js +0 -449
- package/dist/baselines/atomizer/formattingFidelity.js.map +0 -1
- package/dist/baselines/atomizer/hierarchicalLcs.d.ts +0 -121
- package/dist/baselines/atomizer/hierarchicalLcs.d.ts.map +0 -1
- package/dist/baselines/atomizer/hierarchicalLcs.js +0 -753
- package/dist/baselines/atomizer/hierarchicalLcs.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts +0 -37
- package/dist/baselines/atomizer/inPlaceModifier-bookmarks.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-bookmarks.js +0 -189
- package/dist/baselines/atomizer/inPlaceModifier-bookmarks.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-containers.d.ts +0 -74
- package/dist/baselines/atomizer/inPlaceModifier-containers.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-containers.js +0 -171
- package/dist/baselines/atomizer/inPlaceModifier-containers.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts +0 -88
- package/dist/baselines/atomizer/inPlaceModifier-deletion.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-deletion.js +0 -326
- package/dist/baselines/atomizer/inPlaceModifier-deletion.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts +0 -85
- package/dist/baselines/atomizer/inPlaceModifier-postprocess.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-postprocess.js +0 -402
- package/dist/baselines/atomizer/inPlaceModifier-postprocess.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts +0 -39
- package/dist/baselines/atomizer/inPlaceModifier-presplit.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-presplit.js +0 -265
- package/dist/baselines/atomizer/inPlaceModifier-presplit.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-shared.d.ts +0 -62
- package/dist/baselines/atomizer/inPlaceModifier-shared.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-shared.js +0 -139
- package/dist/baselines/atomizer/inPlaceModifier-shared.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts +0 -198
- package/dist/baselines/atomizer/inPlaceModifier-wrappers.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier-wrappers.js +0 -475
- package/dist/baselines/atomizer/inPlaceModifier-wrappers.js.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier.d.ts +0 -27
- package/dist/baselines/atomizer/inPlaceModifier.d.ts.map +0 -1
- package/dist/baselines/atomizer/inPlaceModifier.js +0 -648
- package/dist/baselines/atomizer/inPlaceModifier.js.map +0 -1
- package/dist/baselines/atomizer/numberingIntegration.d.ts +0 -59
- package/dist/baselines/atomizer/numberingIntegration.d.ts.map +0 -1
- package/dist/baselines/atomizer/numberingIntegration.js +0 -209
- package/dist/baselines/atomizer/numberingIntegration.js.map +0 -1
- package/dist/baselines/atomizer/pipeline.d.ts +0 -103
- package/dist/baselines/atomizer/pipeline.d.ts.map +0 -1
- package/dist/baselines/atomizer/pipeline.js +0 -1160
- package/dist/baselines/atomizer/pipeline.js.map +0 -1
- package/dist/baselines/atomizer/premergeRuns.d.ts +0 -26
- package/dist/baselines/atomizer/premergeRuns.d.ts.map +0 -1
- package/dist/baselines/atomizer/premergeRuns.js +0 -153
- package/dist/baselines/atomizer/premergeRuns.js.map +0 -1
- package/dist/baselines/atomizer/trackChangesAcceptor.d.ts +0 -63
- package/dist/baselines/atomizer/trackChangesAcceptor.d.ts.map +0 -1
- package/dist/baselines/atomizer/trackChangesAcceptor.js +0 -254
- package/dist/baselines/atomizer/trackChangesAcceptor.js.map +0 -1
- package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts +0 -64
- package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts.map +0 -1
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js +0 -642
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js.map +0 -1
- package/dist/baselines/atomizer/xmlToWmlElement.d.ts +0 -65
- package/dist/baselines/atomizer/xmlToWmlElement.d.ts.map +0 -1
- package/dist/baselines/atomizer/xmlToWmlElement.js +0 -96
- package/dist/baselines/atomizer/xmlToWmlElement.js.map +0 -1
- package/dist/baselines/wmlcomparer/DocxodusWasm.d.ts +0 -51
- package/dist/baselines/wmlcomparer/DocxodusWasm.d.ts.map +0 -1
- package/dist/baselines/wmlcomparer/DocxodusWasm.js +0 -83
- package/dist/baselines/wmlcomparer/DocxodusWasm.js.map +0 -1
- package/dist/baselines/wmlcomparer/DotnetCli.d.ts +0 -40
- package/dist/baselines/wmlcomparer/DotnetCli.d.ts.map +0 -1
- package/dist/baselines/wmlcomparer/DotnetCli.js +0 -142
- package/dist/baselines/wmlcomparer/DotnetCli.js.map +0 -1
- package/dist/cli/compare-two.d.ts +0 -28
- package/dist/cli/compare-two.d.ts.map +0 -1
- package/dist/cli/compare-two.js +0 -112
- package/dist/cli/compare-two.js.map +0 -1
- package/dist/cli/index.d.ts +0 -3
- package/dist/cli/index.d.ts.map +0 -1
- package/dist/cli/index.js +0 -25
- package/dist/cli/index.js.map +0 -1
- package/dist/compare-types.d.ts +0 -197
- package/dist/compare-types.d.ts.map +0 -1
- package/dist/compare-types.js +0 -2
- package/dist/compare-types.js.map +0 -1
- package/dist/format-detection.d.ts +0 -120
- package/dist/format-detection.d.ts.map +0 -1
- package/dist/format-detection.js +0 -339
- package/dist/format-detection.js.map +0 -1
- package/dist/generation/recipes.d.ts +0 -144
- package/dist/generation/recipes.d.ts.map +0 -1
- package/dist/generation/recipes.js +0 -358
- package/dist/generation/recipes.js.map +0 -1
- package/dist/move-detection.d.ts +0 -211
- package/dist/move-detection.d.ts.map +0 -1
- package/dist/move-detection.js +0 -390
- package/dist/move-detection.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"inPlaceModifier.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/inPlaceModifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Numbering Integration
|
|
3
|
-
*
|
|
4
|
-
* Applies numbering resolution to atoms before comparison.
|
|
5
|
-
* This allows detection of list renumbering changes.
|
|
6
|
-
*
|
|
7
|
-
* Note: Full implementation would parse numbering.xml and inject
|
|
8
|
-
* computed list labels as virtual tokens. For v1, this is a stub
|
|
9
|
-
* that can be extended later.
|
|
10
|
-
*/
|
|
11
|
-
import type { ComparisonUnitAtom, ListLevelInfo } from '../../core-types.js';
|
|
12
|
-
/**
|
|
13
|
-
* Options for numbering integration.
|
|
14
|
-
*/
|
|
15
|
-
export interface NumberingIntegrationOptions {
|
|
16
|
-
/** Enable numbering virtualization. Default: true */
|
|
17
|
-
enabled: boolean;
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Default options for numbering integration.
|
|
21
|
-
*/
|
|
22
|
-
export declare const DEFAULT_NUMBERING_OPTIONS: NumberingIntegrationOptions;
|
|
23
|
-
/**
|
|
24
|
-
* Parsed numbering definitions from numbering.xml.
|
|
25
|
-
*/
|
|
26
|
-
interface NumberingDefinitions {
|
|
27
|
-
/** Abstract numbering definitions keyed by abstractNumId */
|
|
28
|
-
abstractNums: Map<string, ListLevelInfo[]>;
|
|
29
|
-
/** Num definitions mapping numId to abstractNumId */
|
|
30
|
-
numToAbstractNum: Map<string, string>;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Parse numbering.xml to extract numbering definitions.
|
|
34
|
-
*
|
|
35
|
-
* @param numberingXml - Raw numbering.xml content
|
|
36
|
-
* @returns Parsed numbering definitions
|
|
37
|
-
*/
|
|
38
|
-
export declare function parseNumberingXml(numberingXml: string): NumberingDefinitions;
|
|
39
|
-
/**
|
|
40
|
-
* Apply numbering labels to atoms for comparison.
|
|
41
|
-
*
|
|
42
|
-
* This is a stub implementation. Full implementation would:
|
|
43
|
-
* 1. Parse numbering.xml
|
|
44
|
-
* 2. Walk through paragraphs tracking numbering state
|
|
45
|
-
* 3. Compute the rendered list label for each numbered paragraph
|
|
46
|
-
* 4. Inject the label as a virtual atom or modify the hash
|
|
47
|
-
*
|
|
48
|
-
* @param atoms - Atoms to process
|
|
49
|
-
* @param numberingXml - Raw numbering.xml content (optional)
|
|
50
|
-
* @param options - Numbering integration options
|
|
51
|
-
*/
|
|
52
|
-
export declare function virtualizeNumberingLabels(atoms: ComparisonUnitAtom[], numberingXml?: string, options?: NumberingIntegrationOptions): void;
|
|
53
|
-
/**
|
|
54
|
-
* Check if an atom is the first atom in its paragraph.
|
|
55
|
-
* Used to determine when to process numbering.
|
|
56
|
-
*/
|
|
57
|
-
export declare function isFirstAtomInParagraph(atom: ComparisonUnitAtom, previousAtom: ComparisonUnitAtom | null): boolean;
|
|
58
|
-
export {};
|
|
59
|
-
//# sourceMappingURL=numberingIntegration.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"numberingIntegration.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/numberingIntegration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAc,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAUzF;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,2BAEvC,CAAC;AAEF;;GAEG;AACH,UAAU,oBAAoB;IAC5B,4DAA4D;IAC5D,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;IAC3C,qDAAqD;IACrD,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACvC;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,MAAM,GACnB,oBAAoB,CAwCtB;AAwFD;;;;;;;;;;;;GAYG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,kBAAkB,EAAE,EAC3B,YAAY,CAAC,EAAE,MAAM,EACrB,OAAO,GAAE,2BAAuD,GAC/D,IAAI,CAkEN;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,kBAAkB,EACxB,YAAY,EAAE,kBAAkB,GAAG,IAAI,GACtC,OAAO,CAST"}
|
|
@@ -1,209 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Numbering Integration
|
|
3
|
-
*
|
|
4
|
-
* Applies numbering resolution to atoms before comparison.
|
|
5
|
-
* This allows detection of list renumbering changes.
|
|
6
|
-
*
|
|
7
|
-
* Note: Full implementation would parse numbering.xml and inject
|
|
8
|
-
* computed list labels as virtual tokens. For v1, this is a stub
|
|
9
|
-
* that can be extended later.
|
|
10
|
-
*/
|
|
11
|
-
import { createNumberingState, processNumberedParagraph, expandLevelTextWithLegal, parseLevelElement, } from '../../numbering.js';
|
|
12
|
-
import { findElement, parseDocumentXml } from './xmlToWmlElement.js';
|
|
13
|
-
import { childElements } from '../../primitives/index.js';
|
|
14
|
-
/**
|
|
15
|
-
* Default options for numbering integration.
|
|
16
|
-
*/
|
|
17
|
-
export const DEFAULT_NUMBERING_OPTIONS = {
|
|
18
|
-
enabled: true,
|
|
19
|
-
};
|
|
20
|
-
/**
|
|
21
|
-
* Parse numbering.xml to extract numbering definitions.
|
|
22
|
-
*
|
|
23
|
-
* @param numberingXml - Raw numbering.xml content
|
|
24
|
-
* @returns Parsed numbering definitions
|
|
25
|
-
*/
|
|
26
|
-
export function parseNumberingXml(numberingXml) {
|
|
27
|
-
const definitions = {
|
|
28
|
-
abstractNums: new Map(),
|
|
29
|
-
numToAbstractNum: new Map(),
|
|
30
|
-
};
|
|
31
|
-
if (!numberingXml) {
|
|
32
|
-
return definitions;
|
|
33
|
-
}
|
|
34
|
-
try {
|
|
35
|
-
const root = parseDocumentXml(numberingXml);
|
|
36
|
-
const numbering = findElement(root, 'w:numbering');
|
|
37
|
-
if (!numbering) {
|
|
38
|
-
return definitions;
|
|
39
|
-
}
|
|
40
|
-
// Parse abstract numbering definitions
|
|
41
|
-
for (const child of childElements(numbering)) {
|
|
42
|
-
if (child.tagName === 'w:abstractNum') {
|
|
43
|
-
const abstractNumId = child.getAttribute('w:abstractNumId');
|
|
44
|
-
if (abstractNumId) {
|
|
45
|
-
const levels = parseAbstractNumLevels(child);
|
|
46
|
-
definitions.abstractNums.set(abstractNumId, levels);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
else if (child.tagName === 'w:num') {
|
|
50
|
-
const numId = child.getAttribute('w:numId');
|
|
51
|
-
const abstractNumIdRef = findAbstractNumIdRef(child);
|
|
52
|
-
if (numId && abstractNumIdRef) {
|
|
53
|
-
definitions.numToAbstractNum.set(numId, abstractNumIdRef);
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
catch (error) {
|
|
59
|
-
// If parsing fails, return empty definitions
|
|
60
|
-
console.warn('Failed to parse numbering.xml:', error);
|
|
61
|
-
}
|
|
62
|
-
return definitions;
|
|
63
|
-
}
|
|
64
|
-
/**
|
|
65
|
-
* Parse level definitions from an abstractNum element.
|
|
66
|
-
*/
|
|
67
|
-
function parseAbstractNumLevels(abstractNum) {
|
|
68
|
-
const levels = [];
|
|
69
|
-
for (const child of childElements(abstractNum)) {
|
|
70
|
-
if (child.tagName === 'w:lvl') {
|
|
71
|
-
levels.push(parseLevelElement(child));
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
// Sort by ilvl
|
|
75
|
-
levels.sort((a, b) => a.ilvl - b.ilvl);
|
|
76
|
-
return levels;
|
|
77
|
-
}
|
|
78
|
-
/**
|
|
79
|
-
* Find the abstractNumId reference in a num element.
|
|
80
|
-
*/
|
|
81
|
-
function findAbstractNumIdRef(numElement) {
|
|
82
|
-
for (const child of childElements(numElement)) {
|
|
83
|
-
if (child.tagName === 'w:abstractNumId') {
|
|
84
|
-
return child.getAttribute('w:val') || null;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
return null;
|
|
88
|
-
}
|
|
89
|
-
/**
|
|
90
|
-
* Get the numId from a paragraph's numbering properties.
|
|
91
|
-
*/
|
|
92
|
-
function getNumIdFromAtom(atom) {
|
|
93
|
-
// Find w:p ancestor
|
|
94
|
-
const pAncestor = atom.ancestorElements.find((a) => a.tagName === 'w:p');
|
|
95
|
-
if (!pAncestor) {
|
|
96
|
-
return null;
|
|
97
|
-
}
|
|
98
|
-
// Find w:pPr
|
|
99
|
-
const pPr = childElements(pAncestor).find((c) => c.tagName === 'w:pPr');
|
|
100
|
-
if (!pPr) {
|
|
101
|
-
return null;
|
|
102
|
-
}
|
|
103
|
-
// Find w:numPr
|
|
104
|
-
const numPr = childElements(pPr).find((c) => c.tagName === 'w:numPr');
|
|
105
|
-
if (!numPr) {
|
|
106
|
-
return null;
|
|
107
|
-
}
|
|
108
|
-
// Find w:numId
|
|
109
|
-
const numId = childElements(numPr).find((c) => c.tagName === 'w:numId');
|
|
110
|
-
return numId?.getAttribute('w:val') || null;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Get the ilvl from a paragraph's numbering properties.
|
|
114
|
-
*/
|
|
115
|
-
function getIlvlFromAtom(atom) {
|
|
116
|
-
// Find w:p ancestor
|
|
117
|
-
const pAncestor = atom.ancestorElements.find((a) => a.tagName === 'w:p');
|
|
118
|
-
if (!pAncestor) {
|
|
119
|
-
return 0;
|
|
120
|
-
}
|
|
121
|
-
// Find w:pPr
|
|
122
|
-
const pPr = childElements(pAncestor).find((c) => c.tagName === 'w:pPr');
|
|
123
|
-
if (!pPr) {
|
|
124
|
-
return 0;
|
|
125
|
-
}
|
|
126
|
-
// Find w:numPr
|
|
127
|
-
const numPr = childElements(pPr).find((c) => c.tagName === 'w:numPr');
|
|
128
|
-
if (!numPr) {
|
|
129
|
-
return 0;
|
|
130
|
-
}
|
|
131
|
-
// Find w:ilvl
|
|
132
|
-
const ilvl = childElements(numPr).find((c) => c.tagName === 'w:ilvl');
|
|
133
|
-
const val = ilvl?.getAttribute('w:val');
|
|
134
|
-
return val ? parseInt(val, 10) : 0;
|
|
135
|
-
}
|
|
136
|
-
/**
|
|
137
|
-
* Apply numbering labels to atoms for comparison.
|
|
138
|
-
*
|
|
139
|
-
* This is a stub implementation. Full implementation would:
|
|
140
|
-
* 1. Parse numbering.xml
|
|
141
|
-
* 2. Walk through paragraphs tracking numbering state
|
|
142
|
-
* 3. Compute the rendered list label for each numbered paragraph
|
|
143
|
-
* 4. Inject the label as a virtual atom or modify the hash
|
|
144
|
-
*
|
|
145
|
-
* @param atoms - Atoms to process
|
|
146
|
-
* @param numberingXml - Raw numbering.xml content (optional)
|
|
147
|
-
* @param options - Numbering integration options
|
|
148
|
-
*/
|
|
149
|
-
export function virtualizeNumberingLabels(atoms, numberingXml, options = DEFAULT_NUMBERING_OPTIONS) {
|
|
150
|
-
if (!options.enabled || !numberingXml) {
|
|
151
|
-
return;
|
|
152
|
-
}
|
|
153
|
-
const definitions = parseNumberingXml(numberingXml);
|
|
154
|
-
if (definitions.abstractNums.size === 0) {
|
|
155
|
-
return;
|
|
156
|
-
}
|
|
157
|
-
const numberingState = createNumberingState();
|
|
158
|
-
let lastParagraph = null;
|
|
159
|
-
for (const atom of atoms) {
|
|
160
|
-
// Find paragraph ancestor
|
|
161
|
-
const pAncestor = atom.ancestorElements.find((a) => a.tagName === 'w:p');
|
|
162
|
-
if (pAncestor && pAncestor !== lastParagraph) {
|
|
163
|
-
lastParagraph = pAncestor;
|
|
164
|
-
// Check if this paragraph has numbering
|
|
165
|
-
const numId = getNumIdFromAtom(atom);
|
|
166
|
-
const ilvl = getIlvlFromAtom(atom);
|
|
167
|
-
if (numId) {
|
|
168
|
-
const abstractNumId = definitions.numToAbstractNum.get(numId);
|
|
169
|
-
if (abstractNumId) {
|
|
170
|
-
const levels = definitions.abstractNums.get(abstractNumId);
|
|
171
|
-
if (levels && levels[ilvl]) {
|
|
172
|
-
const levelInfo = levels[ilvl];
|
|
173
|
-
const counter = processNumberedParagraph(numberingState, parseInt(numId, 10), ilvl, levelInfo);
|
|
174
|
-
// Build counter array for level text expansion
|
|
175
|
-
const counters = [];
|
|
176
|
-
const storedCounters = numberingState.counters.get(numId);
|
|
177
|
-
for (let i = 0; i <= ilvl; i++) {
|
|
178
|
-
counters.push(storedCounters?.[i] ?? counter);
|
|
179
|
-
}
|
|
180
|
-
// Compute the rendered label
|
|
181
|
-
const label = expandLevelTextWithLegal(levelInfo.lvlText, counters, levels, ilvl);
|
|
182
|
-
// Store the computed label on the atom for hash modification
|
|
183
|
-
// This affects comparison by making atoms with different labels
|
|
184
|
-
// have different hashes even if the text is the same
|
|
185
|
-
if (label) {
|
|
186
|
-
// Modify the atom's hash to include the numbering label
|
|
187
|
-
// This is a simple approach - append label to hash input
|
|
188
|
-
const originalHash = atom.sha1Hash;
|
|
189
|
-
atom.sha1Hash = `${originalHash}:${numId}:${ilvl}:${label}`;
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
}
|
|
193
|
-
}
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
/**
|
|
198
|
-
* Check if an atom is the first atom in its paragraph.
|
|
199
|
-
* Used to determine when to process numbering.
|
|
200
|
-
*/
|
|
201
|
-
export function isFirstAtomInParagraph(atom, previousAtom) {
|
|
202
|
-
if (!previousAtom) {
|
|
203
|
-
return true;
|
|
204
|
-
}
|
|
205
|
-
const currentP = atom.ancestorElements.find((a) => a.tagName === 'w:p');
|
|
206
|
-
const previousP = previousAtom.ancestorElements.find((a) => a.tagName === 'w:p');
|
|
207
|
-
return currentP !== previousP;
|
|
208
|
-
}
|
|
209
|
-
//# sourceMappingURL=numberingIntegration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"numberingIntegration.js","sourceRoot":"","sources":["../../../src/baselines/atomizer/numberingIntegration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAU1D;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAgC;IACpE,OAAO,EAAE,IAAI;CACd,CAAC;AAYF;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,YAAoB;IAEpB,MAAM,WAAW,GAAyB;QACxC,YAAY,EAAE,IAAI,GAAG,EAAE;QACvB,gBAAgB,EAAE,IAAI,GAAG,EAAE;KAC5B,CAAC;IAEF,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAC5C,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC;QAEnD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,WAAW,CAAC;QACrB,CAAC;QAED,uCAAuC;QACvC,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,IAAI,KAAK,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;gBACtC,MAAM,aAAa,GAAG,KAAK,CAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;gBAC5D,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC;oBAC7C,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;gBACrC,MAAM,KAAK,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;gBAC5C,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;gBACrD,IAAI,KAAK,IAAI,gBAAgB,EAAE,CAAC;oBAC9B,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;gBAC5D,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,6CAA6C;QAC7C,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,WAAuB;IACrD,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/C,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAED,eAAe;IACf,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAAC,UAAsB;IAClD,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,OAAO,KAAK,iBAAiB,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;QAC7C,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,IAAwB;IAChD,oBAAoB;IACpB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa;IACb,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IACxE,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;IACf,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;IACtE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;IAED,eAAe;IACf,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;IACxE,OAAO,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,IAAwB;IAC/C,oBAAoB;IACpB,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IACzE,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,CAAC,CAAC;IACX,CAAC;IAED,aAAa;IACb,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,CAAC;IACxE,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,CAAC,CAAC;IACX,CAAC;IAED,eAAe;IACf,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;IACtE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,CAAC,CAAC;IACX,CAAC;IAED,cAAc;IACd,MAAM,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;IACtE,MAAM,GAAG,GAAG,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACxC,OAAO,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACrC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAA2B,EAC3B,YAAqB,EACrB,UAAuC,yBAAyB;IAEhE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,YAAY,EAAE,CAAC;QACtC,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,WAAW,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACxC,OAAO;IACT,CAAC;IAED,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;IAC9C,IAAI,aAAa,GAAsB,IAAI,CAAC;IAE5C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,0BAA0B;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;QAEzE,IAAI,SAAS,IAAI,SAAS,KAAK,aAAa,EAAE,CAAC;YAC7C,aAAa,GAAG,SAAS,CAAC;YAE1B,wCAAwC;YACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACrC,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,aAAa,GAAG,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC9D,IAAI,aAAa,EAAE,CAAC;oBAClB,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBAC3D,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAE,CAAC;wBAChC,MAAM,OAAO,GAAG,wBAAwB,CACtC,cAAc,EACd,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC,EACnB,IAAI,EACJ,SAAS,CACV,CAAC;wBAEF,+CAA+C;wBAC/C,MAAM,QAAQ,GAAa,EAAE,CAAC;wBAC9B,MAAM,cAAc,GAAG,cAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;4BAC/B,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC;wBAChD,CAAC;wBAED,6BAA6B;wBAC7B,MAAM,KAAK,GAAG,wBAAwB,CACpC,SAAS,CAAC,OAAO,EACjB,QAAQ,EACR,MAAM,EACN,IAAI,CACL,CAAC;wBAEF,6DAA6D;wBAC7D,gEAAgE;wBAChE,qDAAqD;wBACrD,IAAI,KAAK,EAAE,CAAC;4BACV,wDAAwD;4BACxD,yDAAyD;4BACzD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC;4BACnC,IAAI,CAAC,QAAQ,GAAG,GAAG,YAAY,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;wBAC9D,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,IAAwB,EACxB,YAAuC;IAEvC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,YAAY,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,CAAC;IAEjF,OAAO,QAAQ,KAAK,SAAS,CAAC;AAChC,CAAC"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Atomizer Pipeline
|
|
3
|
-
*
|
|
4
|
-
* Main orchestration for the atomizer-based document comparison.
|
|
5
|
-
* Integrates atomization, LCS comparison, move detection, format detection,
|
|
6
|
-
* and document reconstruction.
|
|
7
|
-
*/
|
|
8
|
-
import type { CompareResult, CompareStats, ReconstructionMode } from '../../compare-types.js';
|
|
9
|
-
import type { ComparisonUnitAtom, MoveDetectionSettings, FormatDetectionSettings } from '../../core-types.js';
|
|
10
|
-
import { type NumberingIntegrationOptions } from './numberingIntegration.js';
|
|
11
|
-
export { hasFldCharInsideDel, validateFieldStructure, type FieldStory, } from '../../shared/field-structure.js';
|
|
12
|
-
import { type FieldStory } from '../../shared/field-structure.js';
|
|
13
|
-
/**
|
|
14
|
-
* Options for the atomizer pipeline.
|
|
15
|
-
*/
|
|
16
|
-
export interface AtomizerOptions {
|
|
17
|
-
/** Author name for track changes. Default: "Comparison" */
|
|
18
|
-
author?: string;
|
|
19
|
-
/** Timestamp for track changes. Default: current time */
|
|
20
|
-
date?: Date;
|
|
21
|
-
/** Move detection settings */
|
|
22
|
-
moveDetection?: Partial<MoveDetectionSettings>;
|
|
23
|
-
/** Format detection settings */
|
|
24
|
-
formatDetection?: Partial<FormatDetectionSettings>;
|
|
25
|
-
/** Numbering integration settings */
|
|
26
|
-
numbering?: Partial<NumberingIntegrationOptions>;
|
|
27
|
-
/**
|
|
28
|
-
* Pre-compare normalization: merge adjacent <w:r> siblings with identical formatting.
|
|
29
|
-
*
|
|
30
|
-
* This reduces overly-fragmented diffs without relying on atom-level cross-run text merging,
|
|
31
|
-
* and can improve revision grouping in Word.
|
|
32
|
-
*
|
|
33
|
-
* Default: true.
|
|
34
|
-
*/
|
|
35
|
-
premergeRuns?: boolean;
|
|
36
|
-
/**
|
|
37
|
-
* How to reconstruct the output:
|
|
38
|
-
* - 'rebuild': rebuild document.xml from atoms (best reject/accept idempotency)
|
|
39
|
-
* - 'inplace': modify the revised document AST in place (experimental)
|
|
40
|
-
*
|
|
41
|
-
* Default: 'rebuild'
|
|
42
|
-
*/
|
|
43
|
-
reconstructionMode?: ReconstructionMode;
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Split a docx into per-story XML fragments for field-closure validation.
|
|
47
|
-
*
|
|
48
|
-
* Each footnote/endnote entry is treated as an isolated story: a complex
|
|
49
|
-
* field whose `begin` and `end` markers straddle stories breaks Word's
|
|
50
|
-
* field state machine. We therefore validate each `<w:footnote>` and
|
|
51
|
-
* `<w:endnote>` entry independently rather than treating the whole
|
|
52
|
-
* `footnotes.xml`/`endnotes.xml` as one stream.
|
|
53
|
-
*
|
|
54
|
-
* Accepts arrays of sidecar XMLs (one per source archive) so callers can
|
|
55
|
-
* validate the union of entries from every archive that may contribute to the
|
|
56
|
-
* final result. Step 12 of `compareDocumentsAtomizer` merges entries from a
|
|
57
|
-
* mode-dependent source archive into the base archive; passing both archives'
|
|
58
|
-
* sidecars guarantees that whichever path the merge takes, the entries it
|
|
59
|
-
* could publish have already been screened. Duplicates (same `w:id` in both
|
|
60
|
-
* archives) yield redundant but harmless validation work.
|
|
61
|
-
*
|
|
62
|
-
* Header/footer stories are not yet covered — they require relationship
|
|
63
|
-
* walking to enumerate `headerN.xml`/`footerN.xml`.
|
|
64
|
-
*
|
|
65
|
-
* @conformance ECMA-376 edition 5, Part 4 § 17.16.5
|
|
66
|
-
* @see https://github.com/UseJunior/safe-docx/issues/212
|
|
67
|
-
*/
|
|
68
|
-
export declare function splitStories(documentXml: string, footnotesXmls: ReadonlyArray<string | null>, endnotesXmls: ReadonlyArray<string | null>): FieldStory[];
|
|
69
|
-
/**
|
|
70
|
-
* Compare two DOCX documents using the atomizer-based approach.
|
|
71
|
-
*
|
|
72
|
-
* Pipeline steps:
|
|
73
|
-
* 1. Load DOCX archives
|
|
74
|
-
* 2. Extract document.xml
|
|
75
|
-
* 3. Parse to WmlElement trees
|
|
76
|
-
* 4. Atomize both documents
|
|
77
|
-
* 5. (Optional) Apply numbering virtualization
|
|
78
|
-
* 6. Run LCS on atom hashes
|
|
79
|
-
* 7. Mark correlation status
|
|
80
|
-
* 8. Run move detection
|
|
81
|
-
* 9. Run format detection
|
|
82
|
-
* 10. Reconstruct document with track changes
|
|
83
|
-
* 11. Save and return result
|
|
84
|
-
*
|
|
85
|
-
* @param original - Original document as Buffer
|
|
86
|
-
* @param revised - Revised document as Buffer
|
|
87
|
-
* @param options - Pipeline options
|
|
88
|
-
* @returns Comparison result with track changes document
|
|
89
|
-
*/
|
|
90
|
-
export declare function compareDocumentsAtomizer(original: Buffer, revised: Buffer, options?: AtomizerOptions): Promise<CompareResult>;
|
|
91
|
-
export interface AuxiliaryMergeResult {
|
|
92
|
-
mergedIds: Set<string>;
|
|
93
|
-
createdPart: boolean;
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Compute comparison statistics from merged atoms.
|
|
97
|
-
*
|
|
98
|
-
* Range counts are contiguous same-status runs in the merged atom stream, scoped
|
|
99
|
-
* to a paragraph. Atom counts remain available under explicit names for callers
|
|
100
|
-
* that need the old granular benchmark signal.
|
|
101
|
-
*/
|
|
102
|
-
export declare function computeAtomizerStats(mergedAtoms: ComparisonUnitAtom[]): CompareStats;
|
|
103
|
-
//# sourceMappingURL=pipeline.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline.d.ts","sourceRoot":"","sources":["../../../src/baselines/atomizer/pipeline.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,KAAK,EACV,aAAa,EACb,YAAY,EAeZ,kBAAkB,EACnB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EACV,kBAAkB,EAClB,qBAAqB,EACrB,uBAAuB,EAExB,MAAM,qBAAqB,CAAC;AAkC7B,OAAO,EAEL,KAAK,2BAA2B,EAEjC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,KAAK,UAAU,GAChB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,iCAAiC,CAAC;AAUzC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,2DAA2D;IAC3D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,yDAAyD;IACzD,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,8BAA8B;IAC9B,aAAa,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAC/C,gCAAgC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACnD,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC;IACjD;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAkPD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,YAAY,CAC1B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,EAC3C,YAAY,EAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,GACzC,UAAU,EAAE,CA4Bd;AAqHD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,wBAAwB,CAC5C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,aAAa,CAAC,CAwWxB;AAYD,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,WAAW,EAAE,OAAO,CAAC;CACtB;AAwgBD;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,WAAW,EAAE,kBAAkB,EAAE,GAAG,YAAY,CAyDpF"}
|