@usejunior/docx-core 0.0.1 → 0.1.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/LICENSE +21 -0
- package/README.md +86 -28
- package/dist/.tsbuildinfo +1 -0
- package/dist/atomizer.d.ts +218 -0
- package/dist/atomizer.d.ts.map +1 -0
- package/dist/atomizer.js +856 -0
- package/dist/atomizer.js.map +1 -0
- package/dist/baselines/atomizer/atomLcs.d.ts +96 -0
- package/dist/baselines/atomizer/atomLcs.d.ts.map +1 -0
- package/dist/baselines/atomizer/atomLcs.js +347 -0
- package/dist/baselines/atomizer/atomLcs.js.map +1 -0
- package/dist/baselines/atomizer/debug.d.ts +41 -0
- package/dist/baselines/atomizer/debug.d.ts.map +1 -0
- package/dist/baselines/atomizer/debug.js +85 -0
- package/dist/baselines/atomizer/debug.js.map +1 -0
- package/dist/baselines/atomizer/documentReconstructor.d.ts +64 -0
- package/dist/baselines/atomizer/documentReconstructor.d.ts.map +1 -0
- package/dist/baselines/atomizer/documentReconstructor.js +939 -0
- package/dist/baselines/atomizer/documentReconstructor.js.map +1 -0
- package/dist/baselines/atomizer/hierarchicalLcs.d.ts +111 -0
- package/dist/baselines/atomizer/hierarchicalLcs.d.ts.map +1 -0
- package/dist/baselines/atomizer/hierarchicalLcs.js +469 -0
- package/dist/baselines/atomizer/hierarchicalLcs.js.map +1 -0
- package/dist/baselines/atomizer/inPlaceModifier.d.ts +183 -0
- package/dist/baselines/atomizer/inPlaceModifier.d.ts.map +1 -0
- package/dist/baselines/atomizer/inPlaceModifier.js +1600 -0
- package/dist/baselines/atomizer/inPlaceModifier.js.map +1 -0
- package/dist/baselines/atomizer/numberingIntegration.d.ts +59 -0
- package/dist/baselines/atomizer/numberingIntegration.d.ts.map +1 -0
- package/dist/baselines/atomizer/numberingIntegration.js +209 -0
- package/dist/baselines/atomizer/numberingIntegration.js.map +1 -0
- package/dist/baselines/atomizer/pipeline.d.ts +65 -0
- package/dist/baselines/atomizer/pipeline.d.ts.map +1 -0
- package/dist/baselines/atomizer/pipeline.js +510 -0
- package/dist/baselines/atomizer/pipeline.js.map +1 -0
- package/dist/baselines/atomizer/premergeRuns.d.ts +26 -0
- package/dist/baselines/atomizer/premergeRuns.d.ts.map +1 -0
- package/dist/baselines/atomizer/premergeRuns.js +150 -0
- package/dist/baselines/atomizer/premergeRuns.js.map +1 -0
- package/dist/baselines/atomizer/trackChangesAcceptor.d.ts +63 -0
- package/dist/baselines/atomizer/trackChangesAcceptor.d.ts.map +1 -0
- package/dist/baselines/atomizer/trackChangesAcceptor.js +254 -0
- package/dist/baselines/atomizer/trackChangesAcceptor.js.map +1 -0
- package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts +64 -0
- package/dist/baselines/atomizer/trackChangesAcceptorAst.d.ts.map +1 -0
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js +586 -0
- package/dist/baselines/atomizer/trackChangesAcceptorAst.js.map +1 -0
- package/dist/baselines/atomizer/xmlToWmlElement.d.ts +65 -0
- package/dist/baselines/atomizer/xmlToWmlElement.d.ts.map +1 -0
- package/dist/baselines/atomizer/xmlToWmlElement.js +95 -0
- package/dist/baselines/atomizer/xmlToWmlElement.js.map +1 -0
- package/dist/baselines/diffmatch/documentBuilder.d.ts +44 -0
- package/dist/baselines/diffmatch/documentBuilder.d.ts.map +1 -0
- package/dist/baselines/diffmatch/documentBuilder.js +227 -0
- package/dist/baselines/diffmatch/documentBuilder.js.map +1 -0
- package/dist/baselines/diffmatch/paragraphAlignment.d.ts +75 -0
- package/dist/baselines/diffmatch/paragraphAlignment.d.ts.map +1 -0
- package/dist/baselines/diffmatch/paragraphAlignment.js +206 -0
- package/dist/baselines/diffmatch/paragraphAlignment.js.map +1 -0
- package/dist/baselines/diffmatch/pipeline.d.ts +33 -0
- package/dist/baselines/diffmatch/pipeline.d.ts.map +1 -0
- package/dist/baselines/diffmatch/pipeline.js +84 -0
- package/dist/baselines/diffmatch/pipeline.js.map +1 -0
- package/dist/baselines/diffmatch/runDiff.d.ts +53 -0
- package/dist/baselines/diffmatch/runDiff.d.ts.map +1 -0
- package/dist/baselines/diffmatch/runDiff.js +253 -0
- package/dist/baselines/diffmatch/runDiff.js.map +1 -0
- package/dist/baselines/diffmatch/trackChangesRenderer.d.ts +64 -0
- package/dist/baselines/diffmatch/trackChangesRenderer.d.ts.map +1 -0
- package/dist/baselines/diffmatch/trackChangesRenderer.js +178 -0
- package/dist/baselines/diffmatch/trackChangesRenderer.js.map +1 -0
- package/dist/baselines/diffmatch/xmlParser.d.ts +45 -0
- package/dist/baselines/diffmatch/xmlParser.d.ts.map +1 -0
- package/dist/baselines/diffmatch/xmlParser.js +344 -0
- package/dist/baselines/diffmatch/xmlParser.js.map +1 -0
- package/dist/baselines/wmlcomparer/DocxodusWasm.d.ts +51 -0
- package/dist/baselines/wmlcomparer/DocxodusWasm.d.ts.map +1 -0
- package/dist/baselines/wmlcomparer/DocxodusWasm.js +83 -0
- package/dist/baselines/wmlcomparer/DocxodusWasm.js.map +1 -0
- package/dist/baselines/wmlcomparer/DotnetCli.d.ts +40 -0
- package/dist/baselines/wmlcomparer/DotnetCli.d.ts.map +1 -0
- package/dist/baselines/wmlcomparer/DotnetCli.js +135 -0
- package/dist/baselines/wmlcomparer/DotnetCli.js.map +1 -0
- package/dist/benchmark/metrics.d.ts +72 -0
- package/dist/benchmark/metrics.d.ts.map +1 -0
- package/dist/benchmark/metrics.js +45 -0
- package/dist/benchmark/metrics.js.map +1 -0
- package/dist/benchmark/reporter.d.ts +23 -0
- package/dist/benchmark/reporter.d.ts.map +1 -0
- package/dist/benchmark/reporter.js +147 -0
- package/dist/benchmark/reporter.js.map +1 -0
- package/dist/benchmark/runner.d.ts +30 -0
- package/dist/benchmark/runner.d.ts.map +1 -0
- package/dist/benchmark/runner.js +233 -0
- package/dist/benchmark/runner.js.map +1 -0
- package/dist/cli/compare-two.d.ts +28 -0
- package/dist/cli/compare-two.d.ts.map +1 -0
- package/dist/cli/compare-two.js +110 -0
- package/dist/cli/compare-two.js.map +1 -0
- package/dist/cli/index.d.ts +3 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +21 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/core-types.d.ts +296 -0
- package/dist/core-types.d.ts.map +1 -0
- package/dist/core-types.js +122 -0
- package/dist/core-types.js.map +1 -0
- package/dist/footnotes.d.ts +144 -0
- package/dist/footnotes.d.ts.map +1 -0
- package/dist/footnotes.js +291 -0
- package/dist/footnotes.js.map +1 -0
- package/dist/format-detection.d.ts +120 -0
- package/dist/format-detection.d.ts.map +1 -0
- package/dist/format-detection.js +338 -0
- package/dist/format-detection.js.map +1 -0
- package/dist/index.d.ts +177 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +55 -0
- package/dist/index.js.map +1 -0
- package/dist/integration/output-artifacts.d.ts +6 -0
- package/dist/integration/output-artifacts.d.ts.map +1 -0
- package/dist/integration/output-artifacts.js +30 -0
- package/dist/integration/output-artifacts.js.map +1 -0
- package/dist/move-detection.d.ts +211 -0
- package/dist/move-detection.d.ts.map +1 -0
- package/dist/move-detection.js +391 -0
- package/dist/move-detection.js.map +1 -0
- package/dist/numbering.d.ts +136 -0
- package/dist/numbering.d.ts.map +1 -0
- package/dist/numbering.js +446 -0
- package/dist/numbering.js.map +1 -0
- package/dist/primitives/accept_changes.d.ts +30 -0
- package/dist/primitives/accept_changes.d.ts.map +1 -0
- package/dist/primitives/accept_changes.js +241 -0
- package/dist/primitives/accept_changes.js.map +1 -0
- package/dist/primitives/bookmarks.d.ts +12 -0
- package/dist/primitives/bookmarks.d.ts.map +1 -0
- package/dist/primitives/bookmarks.js +248 -0
- package/dist/primitives/bookmarks.js.map +1 -0
- package/dist/primitives/comments.d.ts +88 -0
- package/dist/primitives/comments.d.ts.map +1 -0
- package/dist/primitives/comments.js +703 -0
- package/dist/primitives/comments.js.map +1 -0
- package/dist/primitives/document.d.ts +168 -0
- package/dist/primitives/document.d.ts.map +1 -0
- package/dist/primitives/document.js +532 -0
- package/dist/primitives/document.js.map +1 -0
- package/dist/primitives/document_view.d.ts +93 -0
- package/dist/primitives/document_view.d.ts.map +1 -0
- package/dist/primitives/document_view.js +722 -0
- package/dist/primitives/document_view.js.map +1 -0
- package/dist/primitives/dom-helpers.d.ts +94 -0
- package/dist/primitives/dom-helpers.d.ts.map +1 -0
- package/dist/primitives/dom-helpers.js +219 -0
- package/dist/primitives/dom-helpers.js.map +1 -0
- package/dist/primitives/errors.d.ts +7 -0
- package/dist/primitives/errors.d.ts.map +1 -0
- package/dist/primitives/errors.js +10 -0
- package/dist/primitives/errors.js.map +1 -0
- package/dist/primitives/extract_revisions.d.ts +50 -0
- package/dist/primitives/extract_revisions.d.ts.map +1 -0
- package/dist/primitives/extract_revisions.js +340 -0
- package/dist/primitives/extract_revisions.js.map +1 -0
- package/dist/primitives/footnotes.d.ts +37 -0
- package/dist/primitives/footnotes.d.ts.map +1 -0
- package/dist/primitives/footnotes.js +552 -0
- package/dist/primitives/footnotes.js.map +1 -0
- package/dist/primitives/formatting_tags.d.ts +30 -0
- package/dist/primitives/formatting_tags.d.ts.map +1 -0
- package/dist/primitives/formatting_tags.js +217 -0
- package/dist/primitives/formatting_tags.js.map +1 -0
- package/dist/primitives/index.d.ts +26 -0
- package/dist/primitives/index.d.ts.map +1 -0
- package/dist/primitives/index.js +26 -0
- package/dist/primitives/index.js.map +1 -0
- package/dist/primitives/layout.d.ts +53 -0
- package/dist/primitives/layout.d.ts.map +1 -0
- package/dist/primitives/layout.js +178 -0
- package/dist/primitives/layout.js.map +1 -0
- package/dist/primitives/list_labels.d.ts +19 -0
- package/dist/primitives/list_labels.d.ts.map +1 -0
- package/dist/primitives/list_labels.js +57 -0
- package/dist/primitives/list_labels.js.map +1 -0
- package/dist/primitives/matching.d.ts +17 -0
- package/dist/primitives/matching.d.ts.map +1 -0
- package/dist/primitives/matching.js +144 -0
- package/dist/primitives/matching.js.map +1 -0
- package/dist/primitives/merge_runs.d.ts +23 -0
- package/dist/primitives/merge_runs.d.ts.map +1 -0
- package/dist/primitives/merge_runs.js +195 -0
- package/dist/primitives/merge_runs.js.map +1 -0
- package/dist/primitives/namespaces.d.ts +90 -0
- package/dist/primitives/namespaces.d.ts.map +1 -0
- package/dist/primitives/namespaces.js +107 -0
- package/dist/primitives/namespaces.js.map +1 -0
- package/dist/primitives/numbering.d.ts +27 -0
- package/dist/primitives/numbering.d.ts.map +1 -0
- package/dist/primitives/numbering.js +182 -0
- package/dist/primitives/numbering.js.map +1 -0
- package/dist/primitives/prevent_double_elevation.d.ts +18 -0
- package/dist/primitives/prevent_double_elevation.d.ts.map +1 -0
- package/dist/primitives/prevent_double_elevation.js +190 -0
- package/dist/primitives/prevent_double_elevation.js.map +1 -0
- package/dist/primitives/reject_changes.d.ts +27 -0
- package/dist/primitives/reject_changes.d.ts.map +1 -0
- package/dist/primitives/reject_changes.js +371 -0
- package/dist/primitives/reject_changes.js.map +1 -0
- package/dist/primitives/relationships.d.ts +7 -0
- package/dist/primitives/relationships.d.ts.map +1 -0
- package/dist/primitives/relationships.js +24 -0
- package/dist/primitives/relationships.js.map +1 -0
- package/dist/primitives/semantic_tags.d.ts +32 -0
- package/dist/primitives/semantic_tags.d.ts.map +1 -0
- package/dist/primitives/semantic_tags.js +139 -0
- package/dist/primitives/semantic_tags.js.map +1 -0
- package/dist/primitives/simplify_redlines.d.ts +19 -0
- package/dist/primitives/simplify_redlines.d.ts.map +1 -0
- package/dist/primitives/simplify_redlines.js +94 -0
- package/dist/primitives/simplify_redlines.js.map +1 -0
- package/dist/primitives/styles.d.ts +36 -0
- package/dist/primitives/styles.d.ts.map +1 -0
- package/dist/primitives/styles.js +190 -0
- package/dist/primitives/styles.js.map +1 -0
- package/dist/primitives/text.d.ts +27 -0
- package/dist/primitives/text.d.ts.map +1 -0
- package/dist/primitives/text.js +416 -0
- package/dist/primitives/text.js.map +1 -0
- package/dist/primitives/validate_document.d.ts +24 -0
- package/dist/primitives/validate_document.d.ts.map +1 -0
- package/dist/primitives/validate_document.js +147 -0
- package/dist/primitives/validate_document.js.map +1 -0
- package/dist/primitives/xml.d.ts +5 -0
- package/dist/primitives/xml.d.ts.map +1 -0
- package/dist/primitives/xml.js +19 -0
- package/dist/primitives/xml.js.map +1 -0
- package/dist/primitives/zip.d.ts +25 -0
- package/dist/primitives/zip.d.ts.map +1 -0
- package/dist/primitives/zip.js +78 -0
- package/dist/primitives/zip.js.map +1 -0
- package/dist/shared/docx/DocxArchive.d.ts +94 -0
- package/dist/shared/docx/DocxArchive.d.ts.map +1 -0
- package/dist/shared/docx/DocxArchive.js +169 -0
- package/dist/shared/docx/DocxArchive.js.map +1 -0
- package/dist/shared/ooxml/namespaces.d.ts +149 -0
- package/dist/shared/ooxml/namespaces.d.ts.map +1 -0
- package/dist/shared/ooxml/namespaces.js +224 -0
- package/dist/shared/ooxml/namespaces.js.map +1 -0
- package/dist/shared/ooxml/types.d.ts +136 -0
- package/dist/shared/ooxml/types.d.ts.map +1 -0
- package/dist/shared/ooxml/types.js +7 -0
- package/dist/shared/ooxml/types.js.map +1 -0
- package/package.json +63 -6
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OOXML namespace constants for Word document manipulation.
|
|
3
|
+
*
|
|
4
|
+
* Ported from: app/shared/document_primitives/ooxml/namespaces.py
|
|
5
|
+
*
|
|
6
|
+
* Central definitions for all WordprocessingML namespaces and qualified element names.
|
|
7
|
+
* This ensures consistent namespace handling across all XML operations.
|
|
8
|
+
*
|
|
9
|
+
* Reference: ECMA-376 Office Open XML File Formats
|
|
10
|
+
*/
|
|
11
|
+
// =============================================================================
|
|
12
|
+
// Namespace URIs
|
|
13
|
+
// =============================================================================
|
|
14
|
+
/** Main WordprocessingML namespace */
|
|
15
|
+
export const W_NS = 'http://schemas.openxmlformats.org/wordprocessingml/2006/main';
|
|
16
|
+
/** Relationship namespace (for hyperlinks, etc.) */
|
|
17
|
+
export const R_NS = 'http://schemas.openxmlformats.org/officeDocument/2006/relationships';
|
|
18
|
+
/** Extended properties namespace */
|
|
19
|
+
export const WP_NS = 'http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing';
|
|
20
|
+
/** Drawing namespace */
|
|
21
|
+
export const A_NS = 'http://schemas.openxmlformats.org/drawingml/2006/main';
|
|
22
|
+
/** VML namespace (legacy drawing) */
|
|
23
|
+
export const V_NS = 'urn:schemas-microsoft-com:vml';
|
|
24
|
+
/** Math namespace */
|
|
25
|
+
export const M_NS = 'http://schemas.openxmlformats.org/officeDocument/2006/math';
|
|
26
|
+
// =============================================================================
|
|
27
|
+
// Namespace Map
|
|
28
|
+
// =============================================================================
|
|
29
|
+
export const NSMAP = {
|
|
30
|
+
w: W_NS,
|
|
31
|
+
r: R_NS,
|
|
32
|
+
wp: WP_NS,
|
|
33
|
+
a: A_NS,
|
|
34
|
+
v: V_NS,
|
|
35
|
+
m: M_NS,
|
|
36
|
+
};
|
|
37
|
+
/** Reverse map for looking up prefixes */
|
|
38
|
+
export const PREFIX_MAP = Object.fromEntries(Object.entries(NSMAP).map(([k, v]) => [v, k]));
|
|
39
|
+
// =============================================================================
|
|
40
|
+
// Qualified Element Names (Clark notation)
|
|
41
|
+
// =============================================================================
|
|
42
|
+
// Document structure
|
|
43
|
+
export const W_BODY = `{${W_NS}}body`;
|
|
44
|
+
export const W_DOCUMENT = `{${W_NS}}document`;
|
|
45
|
+
export const W_SECTPR = `{${W_NS}}sectPr`; // Section properties
|
|
46
|
+
// Paragraph elements
|
|
47
|
+
export const W_P = `{${W_NS}}p`; // Paragraph
|
|
48
|
+
export const W_PPR = `{${W_NS}}pPr`; // Paragraph properties
|
|
49
|
+
export const W_PSTYLE = `{${W_NS}}pStyle`; // Paragraph style reference
|
|
50
|
+
export const W_JC = `{${W_NS}}jc`; // Paragraph justification/alignment
|
|
51
|
+
// Run elements
|
|
52
|
+
export const W_R = `{${W_NS}}r`; // Run
|
|
53
|
+
export const W_RPR = `{${W_NS}}rPr`; // Run properties
|
|
54
|
+
export const W_T = `{${W_NS}}t`; // Text
|
|
55
|
+
export const W_BR = `{${W_NS}}br`; // Break
|
|
56
|
+
export const W_TAB = `{${W_NS}}tab`; // Tab character
|
|
57
|
+
// Run formatting
|
|
58
|
+
export const W_B = `{${W_NS}}b`; // Bold
|
|
59
|
+
export const W_B_CS = `{${W_NS}}bCs`; // Bold (complex script)
|
|
60
|
+
export const W_I = `{${W_NS}}i`; // Italic
|
|
61
|
+
export const W_I_CS = `{${W_NS}}iCs`; // Italic (complex script)
|
|
62
|
+
export const W_U = `{${W_NS}}u`; // Underline
|
|
63
|
+
export const W_STRIKE = `{${W_NS}}strike`; // Strikethrough
|
|
64
|
+
export const W_DSTRIKE = `{${W_NS}}dstrike`; // Double strikethrough
|
|
65
|
+
export const W_CAPS = `{${W_NS}}caps`; // All caps
|
|
66
|
+
export const W_SMALLCAPS = `{${W_NS}}smallCaps`; // Small caps
|
|
67
|
+
export const W_VANISH = `{${W_NS}}vanish`; // Hidden text
|
|
68
|
+
// Font properties
|
|
69
|
+
export const W_RFONTS = `{${W_NS}}rFonts`; // Font family
|
|
70
|
+
export const W_SZ = `{${W_NS}}sz`; // Font size (half-points)
|
|
71
|
+
export const W_SZ_CS = `{${W_NS}}szCs`; // Font size complex script
|
|
72
|
+
export const W_COLOR = `{${W_NS}}color`; // Text color
|
|
73
|
+
export const W_HIGHLIGHT = `{${W_NS}}highlight`; // Highlight color
|
|
74
|
+
export const W_SHD = `{${W_NS}}shd`; // Shading (background)
|
|
75
|
+
export const W_RSTYLE = `{${W_NS}}rStyle`; // Character style reference
|
|
76
|
+
// Bookmarks
|
|
77
|
+
export const W_BOOKMARK_START = `{${W_NS}}bookmarkStart`;
|
|
78
|
+
export const W_BOOKMARK_END = `{${W_NS}}bookmarkEnd`;
|
|
79
|
+
// Fields
|
|
80
|
+
export const W_FLDCHAR = `{${W_NS}}fldChar`; // Field character
|
|
81
|
+
export const W_FLDCHARTYPE = `{${W_NS}}fldCharType`; // Field char type attr
|
|
82
|
+
export const W_INSTRTEXT = `{${W_NS}}instrText`; // Instruction text
|
|
83
|
+
export const W_FLDSIMPLE = `{${W_NS}}fldSimple`; // Simple field
|
|
84
|
+
export const W_DIRTY = `{${W_NS}}dirty`; // Field needs update
|
|
85
|
+
// Hyperlinks
|
|
86
|
+
export const W_HYPERLINK = `{${W_NS}}hyperlink`;
|
|
87
|
+
// Lists
|
|
88
|
+
export const W_NUMPR = `{${W_NS}}numPr`; // Numbering properties
|
|
89
|
+
export const W_ILVL = `{${W_NS}}ilvl`; // Indentation level
|
|
90
|
+
export const W_NUMID = `{${W_NS}}numId`; // Numbering ID
|
|
91
|
+
// Tables
|
|
92
|
+
export const W_TBL = `{${W_NS}}tbl`; // Table
|
|
93
|
+
export const W_TR = `{${W_NS}}tr`; // Table row
|
|
94
|
+
export const W_TC = `{${W_NS}}tc`; // Table cell
|
|
95
|
+
export const W_TBLPR = `{${W_NS}}tblPr`; // Table properties
|
|
96
|
+
export const W_TCPR = `{${W_NS}}tcPr`; // Cell properties
|
|
97
|
+
// Headers/Footers
|
|
98
|
+
export const W_SECTTYPE = `{${W_NS}}type`;
|
|
99
|
+
export const W_HEADERREFERENCE = `{${W_NS}}headerReference`;
|
|
100
|
+
export const W_FOOTERREFERENCE = `{${W_NS}}footerReference`;
|
|
101
|
+
// Comments
|
|
102
|
+
export const W_COMMENT_RANGE_START = `{${W_NS}}commentRangeStart`;
|
|
103
|
+
export const W_COMMENT_RANGE_END = `{${W_NS}}commentRangeEnd`;
|
|
104
|
+
// =============================================================================
|
|
105
|
+
// Track Changes Elements (NEW - not in Python original)
|
|
106
|
+
// =============================================================================
|
|
107
|
+
export const W_INS = `{${W_NS}}ins`; // Insertion
|
|
108
|
+
export const W_DEL = `{${W_NS}}del`; // Deletion
|
|
109
|
+
export const W_DELTEXT = `{${W_NS}}delText`; // Deleted text content
|
|
110
|
+
export const W_MOVEFROM = `{${W_NS}}moveFrom`; // Move source
|
|
111
|
+
export const W_MOVETO = `{${W_NS}}moveTo`; // Move destination
|
|
112
|
+
export const W_RPRCHANGE = `{${W_NS}}rPrChange`; // Run properties change
|
|
113
|
+
export const W_PPRCHANGE = `{${W_NS}}pPrChange`; // Paragraph properties change
|
|
114
|
+
// Relationship attributes
|
|
115
|
+
export const R_ID = `{${R_NS}}id`;
|
|
116
|
+
// =============================================================================
|
|
117
|
+
// Common Attribute Names
|
|
118
|
+
// =============================================================================
|
|
119
|
+
// Bookmark attributes
|
|
120
|
+
export const W_ID = `{${W_NS}}id`;
|
|
121
|
+
export const W_NAME = `{${W_NS}}name`;
|
|
122
|
+
// Track changes attributes
|
|
123
|
+
export const W_AUTHOR = `{${W_NS}}author`;
|
|
124
|
+
export const W_DATE = `{${W_NS}}date`;
|
|
125
|
+
// General attributes
|
|
126
|
+
export const W_VAL = `{${W_NS}}val`;
|
|
127
|
+
// Underline types (for w:u/@w:val)
|
|
128
|
+
export const UNDERLINE_NONE = 'none';
|
|
129
|
+
export const UNDERLINE_SINGLE = 'single';
|
|
130
|
+
export const UNDERLINE_DOUBLE = 'double';
|
|
131
|
+
export const UNDERLINE_DOTTED = 'dotted';
|
|
132
|
+
export const UNDERLINE_DASHED = 'dash';
|
|
133
|
+
export const UNDERLINE_WAVY = 'wave';
|
|
134
|
+
export const UNDERLINE_WORDS = 'words';
|
|
135
|
+
// Alignment values (for w:jc/@w:val)
|
|
136
|
+
export const ALIGN_LEFT = 'left';
|
|
137
|
+
export const ALIGN_CENTER = 'center';
|
|
138
|
+
export const ALIGN_RIGHT = 'right';
|
|
139
|
+
export const ALIGN_JUSTIFY = 'both';
|
|
140
|
+
// Field character types (for w:fldChar/@w:fldCharType)
|
|
141
|
+
export const FLDCHAR_BEGIN = 'begin';
|
|
142
|
+
export const FLDCHAR_SEPARATE = 'separate';
|
|
143
|
+
export const FLDCHAR_END = 'end';
|
|
144
|
+
// Highlight color names (for w:highlight/@w:val)
|
|
145
|
+
export const HIGHLIGHT_YELLOW = 'yellow';
|
|
146
|
+
export const HIGHLIGHT_GREEN = 'green';
|
|
147
|
+
export const HIGHLIGHT_CYAN = 'cyan';
|
|
148
|
+
export const HIGHLIGHT_MAGENTA = 'magenta';
|
|
149
|
+
export const HIGHLIGHT_BLUE = 'blue';
|
|
150
|
+
export const HIGHLIGHT_RED = 'red';
|
|
151
|
+
export const HIGHLIGHT_DARK_BLUE = 'darkBlue';
|
|
152
|
+
export const HIGHLIGHT_DARK_CYAN = 'darkCyan';
|
|
153
|
+
export const HIGHLIGHT_DARK_GREEN = 'darkGreen';
|
|
154
|
+
export const HIGHLIGHT_DARK_MAGENTA = 'darkMagenta';
|
|
155
|
+
export const HIGHLIGHT_DARK_RED = 'darkRed';
|
|
156
|
+
export const HIGHLIGHT_DARK_YELLOW = 'darkYellow';
|
|
157
|
+
export const HIGHLIGHT_DARK_GRAY = 'darkGray';
|
|
158
|
+
export const HIGHLIGHT_LIGHT_GRAY = 'lightGray';
|
|
159
|
+
export const HIGHLIGHT_BLACK = 'black';
|
|
160
|
+
export const HIGHLIGHT_NONE = 'none';
|
|
161
|
+
// =============================================================================
|
|
162
|
+
// Helper Functions
|
|
163
|
+
// =============================================================================
|
|
164
|
+
/**
|
|
165
|
+
* Convert Clark notation to prefixed notation.
|
|
166
|
+
*
|
|
167
|
+
* @param clarkName - Element name in Clark notation, e.g., '{http://...}p'
|
|
168
|
+
* @returns Prefixed name, e.g., 'w:p'
|
|
169
|
+
*
|
|
170
|
+
* @example
|
|
171
|
+
* clarkToPrefixed(W_P) // => 'w:p'
|
|
172
|
+
*/
|
|
173
|
+
export function clarkToPrefixed(clarkName) {
|
|
174
|
+
if (clarkName.startsWith('{')) {
|
|
175
|
+
const nsEnd = clarkName.indexOf('}');
|
|
176
|
+
if (nsEnd !== -1) {
|
|
177
|
+
const ns = clarkName.slice(1, nsEnd);
|
|
178
|
+
const local = clarkName.slice(nsEnd + 1);
|
|
179
|
+
const prefix = PREFIX_MAP[ns];
|
|
180
|
+
if (prefix) {
|
|
181
|
+
return `${prefix}:${local}`;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
return clarkName;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Convert prefixed notation to Clark notation.
|
|
189
|
+
*
|
|
190
|
+
* @param prefixedName - Element name with prefix, e.g., 'w:p'
|
|
191
|
+
* @returns Clark notation name, e.g., '{http://...}p'
|
|
192
|
+
*
|
|
193
|
+
* @example
|
|
194
|
+
* prefixedToClark('w:p') // => '{http://schemas.openxmlformats.org/wordprocessingml/2006/main}p'
|
|
195
|
+
*/
|
|
196
|
+
export function prefixedToClark(prefixedName) {
|
|
197
|
+
if (prefixedName.includes(':')) {
|
|
198
|
+
const [prefix, local] = prefixedName.split(':', 2);
|
|
199
|
+
const ns = NSMAP[prefix];
|
|
200
|
+
if (ns) {
|
|
201
|
+
return `{${ns}}${local}`;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
return prefixedName;
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Extract local name from Clark notation.
|
|
208
|
+
*
|
|
209
|
+
* @param clarkName - Element name in Clark notation
|
|
210
|
+
* @returns Local name without namespace
|
|
211
|
+
*
|
|
212
|
+
* @example
|
|
213
|
+
* localName(W_P) // => 'p'
|
|
214
|
+
*/
|
|
215
|
+
export function localName(clarkName) {
|
|
216
|
+
if (clarkName.startsWith('{')) {
|
|
217
|
+
const nsEnd = clarkName.indexOf('}');
|
|
218
|
+
if (nsEnd !== -1) {
|
|
219
|
+
return clarkName.slice(nsEnd + 1);
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
return clarkName;
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=namespaces.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"namespaces.js","sourceRoot":"","sources":["../../../src/shared/ooxml/namespaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* TypeScript types for OOXML document elements.
|
|
3
|
+
*
|
|
4
|
+
* These types represent the object model used during comparison operations.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Represents a revision (track change) in the document.
|
|
8
|
+
*/
|
|
9
|
+
export interface Revision {
|
|
10
|
+
/** Unique ID for this revision */
|
|
11
|
+
id: number;
|
|
12
|
+
/** Author of the revision */
|
|
13
|
+
author: string;
|
|
14
|
+
/** Timestamp of the revision */
|
|
15
|
+
date: Date;
|
|
16
|
+
/** Type of revision */
|
|
17
|
+
type: 'insertion' | 'deletion' | 'move' | 'format';
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Represents a text run with its properties.
|
|
21
|
+
*/
|
|
22
|
+
export interface RunInfo {
|
|
23
|
+
/** The text content */
|
|
24
|
+
text: string;
|
|
25
|
+
/** Character offset within the paragraph */
|
|
26
|
+
start: number;
|
|
27
|
+
/** Character offset of end (exclusive) */
|
|
28
|
+
end: number;
|
|
29
|
+
/** Run properties (bold, italic, etc.) */
|
|
30
|
+
properties?: RunProperties;
|
|
31
|
+
/** If this run is part of a revision */
|
|
32
|
+
revision?: Revision;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Run formatting properties.
|
|
36
|
+
*/
|
|
37
|
+
export interface RunProperties {
|
|
38
|
+
bold?: boolean;
|
|
39
|
+
italic?: boolean;
|
|
40
|
+
underline?: string;
|
|
41
|
+
strikethrough?: boolean;
|
|
42
|
+
highlight?: string;
|
|
43
|
+
color?: string;
|
|
44
|
+
fontSize?: number;
|
|
45
|
+
fontFamily?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Represents a paragraph with its content.
|
|
49
|
+
*/
|
|
50
|
+
export interface ParagraphInfo {
|
|
51
|
+
/** Unique identifier for correlation */
|
|
52
|
+
id?: string;
|
|
53
|
+
/** Plain text content (for comparison) */
|
|
54
|
+
text: string;
|
|
55
|
+
/** Individual runs in this paragraph */
|
|
56
|
+
runs: RunInfo[];
|
|
57
|
+
/** Paragraph style */
|
|
58
|
+
style?: string;
|
|
59
|
+
/** Numbering info if this is a list item */
|
|
60
|
+
numbering?: NumberingInfo;
|
|
61
|
+
/** SHA1 hash for correlation */
|
|
62
|
+
hash?: string;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Numbering (list) information.
|
|
66
|
+
*/
|
|
67
|
+
export interface NumberingInfo {
|
|
68
|
+
/** Numbering definition ID */
|
|
69
|
+
numId: number;
|
|
70
|
+
/** Indentation level */
|
|
71
|
+
ilvl: number;
|
|
72
|
+
/** Rendered label text (e.g., "1.", "a)", "(i)") */
|
|
73
|
+
label?: string;
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Represents a field (cross-reference, hyperlink, etc.)
|
|
77
|
+
*/
|
|
78
|
+
export interface FieldInfo {
|
|
79
|
+
/** Field type (REF, HYPERLINK, etc.) */
|
|
80
|
+
type: string;
|
|
81
|
+
/** Field instruction code */
|
|
82
|
+
instruction: string;
|
|
83
|
+
/** Displayed result text */
|
|
84
|
+
result: string;
|
|
85
|
+
/** Character position in paragraph */
|
|
86
|
+
start: number;
|
|
87
|
+
end: number;
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Result of paragraph alignment (LCS-based).
|
|
91
|
+
*/
|
|
92
|
+
export interface AlignmentResult {
|
|
93
|
+
/** Paragraphs that match between documents */
|
|
94
|
+
matched: Array<{
|
|
95
|
+
original: ParagraphInfo;
|
|
96
|
+
revised: ParagraphInfo;
|
|
97
|
+
similarity: number;
|
|
98
|
+
}>;
|
|
99
|
+
/** Paragraphs only in original (deleted) */
|
|
100
|
+
deleted: ParagraphInfo[];
|
|
101
|
+
/** Paragraphs only in revised (inserted) */
|
|
102
|
+
inserted: ParagraphInfo[];
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Diff operation from diff-match-patch.
|
|
106
|
+
*/
|
|
107
|
+
export type DiffOp = [-1 | 0 | 1, string];
|
|
108
|
+
/**
|
|
109
|
+
* Run-level diff result.
|
|
110
|
+
*/
|
|
111
|
+
export interface RunDiffResult {
|
|
112
|
+
/** Original runs with deletion markers */
|
|
113
|
+
originalRuns: RunInfo[];
|
|
114
|
+
/** Revised runs with insertion markers */
|
|
115
|
+
revisedRuns: RunInfo[];
|
|
116
|
+
/** Combined runs with track changes */
|
|
117
|
+
mergedRuns: RunInfo[];
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Statistics from a comparison operation.
|
|
121
|
+
*/
|
|
122
|
+
export interface ComparisonStats {
|
|
123
|
+
/** Number of inserted runs/paragraphs */
|
|
124
|
+
insertions: number;
|
|
125
|
+
/** Number of deleted runs/paragraphs */
|
|
126
|
+
deletions: number;
|
|
127
|
+
/** Number of modified paragraphs */
|
|
128
|
+
modifications: number;
|
|
129
|
+
/** Average length of changed spans */
|
|
130
|
+
avgSpanLength: number;
|
|
131
|
+
/** Total paragraphs in original */
|
|
132
|
+
originalParagraphs: number;
|
|
133
|
+
/** Total paragraphs in revised */
|
|
134
|
+
revisedParagraphs: number;
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/ooxml/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/shared/ooxml/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
package/package.json
CHANGED
|
@@ -1,10 +1,67 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@usejunior/docx-core",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.1.1",
|
|
4
|
+
"description": "OOXML (.docx) core library: primitives, comparison, and track changes",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"main": "dist/index.js",
|
|
7
|
+
"types": "dist/index.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"clean:dist": "node -e \"const { rmSync } = require('node:fs'); rmSync('dist', { recursive: true, force: true });\"",
|
|
10
|
+
"build": "npm run clean:dist && tsc -p tsconfig.build.json",
|
|
11
|
+
"dev": "tsc -p tsconfig.build.json --watch",
|
|
12
|
+
"test": "node ../../node_modules/vitest/vitest.mjs",
|
|
13
|
+
"test:run": "node ../../node_modules/vitest/vitest.mjs run",
|
|
14
|
+
"test:baseline": "node ../../node_modules/vitest/vitest.mjs run -c vitest.baseline.config.ts",
|
|
15
|
+
"test:coverage": "node ../../node_modules/vitest/vitest.mjs run --coverage --coverage.reporter=text-summary --coverage.reporter=json-summary --coverage.reporter=lcov",
|
|
16
|
+
"check:spec-coverage": "node scripts/validate_openspec_coverage.mjs && node scripts/validate_primitives_openspec_coverage.mjs",
|
|
17
|
+
"lint": "tsc --noEmit",
|
|
18
|
+
"benchmark": "tsx src/benchmark/runner.ts",
|
|
19
|
+
"cli": "node dist/cli/index.js"
|
|
20
|
+
},
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@xmldom/xmldom": "^0.8.10",
|
|
23
|
+
"diff-match-patch": "^1.0.5",
|
|
24
|
+
"jszip": "^3.10.1"
|
|
25
|
+
},
|
|
26
|
+
"devDependencies": {
|
|
27
|
+
"@types/diff-match-patch": "^1.0.36",
|
|
28
|
+
"@types/node": "^22.10.0",
|
|
29
|
+
"@vitest/coverage-v8": "^3.2.4",
|
|
30
|
+
"@vitest/runner": "^3.2.4",
|
|
31
|
+
"allure-vitest": "^3.0.0",
|
|
32
|
+
"tsx": "^4.19.2",
|
|
33
|
+
"typescript": "^5.7.2",
|
|
34
|
+
"vitest": "^3.2.4"
|
|
35
|
+
},
|
|
36
|
+
"engines": {
|
|
37
|
+
"node": ">=18.0.0"
|
|
38
|
+
},
|
|
39
|
+
"repository": {
|
|
40
|
+
"type": "git",
|
|
41
|
+
"url": "https://github.com/UseJunior/safe-docx"
|
|
42
|
+
},
|
|
43
|
+
"homepage": "https://github.com/UseJunior/safe-docx/tree/main/packages/docx-core",
|
|
44
|
+
"bugs": {
|
|
45
|
+
"url": "https://github.com/UseJunior/safe-docx/issues"
|
|
46
|
+
},
|
|
47
|
+
"files": [
|
|
48
|
+
"dist"
|
|
49
|
+
],
|
|
5
50
|
"keywords": [
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
9
|
-
|
|
51
|
+
"docx",
|
|
52
|
+
"ooxml",
|
|
53
|
+
"word",
|
|
54
|
+
"comparison",
|
|
55
|
+
"track-changes",
|
|
56
|
+
"document-editing",
|
|
57
|
+
"serverless",
|
|
58
|
+
"cloudflare-workers",
|
|
59
|
+
"edge",
|
|
60
|
+
"vercel"
|
|
61
|
+
],
|
|
62
|
+
"license": "MIT",
|
|
63
|
+
"bin": {
|
|
64
|
+
"docx-comparison": "dist/cli/index.js",
|
|
65
|
+
"safe-docx-compare": "dist/cli/index.js"
|
|
66
|
+
}
|
|
10
67
|
}
|