docxodus 9.6.0 → 9.8.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.
Files changed (44) hide show
  1. package/LICENSE +22 -0
  2. package/README.md +0 -1
  3. package/dist/editor.bundle.js +462 -173
  4. package/dist/editor.d.ts +4 -4
  5. package/dist/editor.d.ts.map +1 -1
  6. package/dist/editor.js +55 -8
  7. package/dist/editor.js.map +1 -1
  8. package/dist/embed.bundle.js +466 -174
  9. package/dist/embed.d.ts.map +1 -1
  10. package/dist/embed.iife.js +465 -173
  11. package/dist/embed.js +3 -0
  12. package/dist/embed.js.map +1 -1
  13. package/dist/page-geometry.d.ts +50 -3
  14. package/dist/page-geometry.d.ts.map +1 -1
  15. package/dist/page-geometry.js +63 -6
  16. package/dist/page-geometry.js.map +1 -1
  17. package/dist/pagination.bundle.js +253 -68
  18. package/dist/pagination.d.ts +33 -8
  19. package/dist/pagination.d.ts.map +1 -1
  20. package/dist/pagination.js +198 -78
  21. package/dist/pagination.js.map +1 -1
  22. package/dist/ribbon-chrome.d.ts +2 -2
  23. package/dist/ribbon-chrome.d.ts.map +1 -1
  24. package/dist/ribbon-chrome.js +171 -97
  25. package/dist/ribbon-chrome.js.map +1 -1
  26. package/dist/ribbon.d.ts +8 -0
  27. package/dist/ribbon.d.ts.map +1 -1
  28. package/dist/ribbon.js +1 -0
  29. package/dist/ribbon.js.map +1 -1
  30. package/dist/wasm/_framework/Docxodus.wasm +0 -0
  31. package/dist/wasm/_framework/Docxodus.wasm.br +0 -0
  32. package/dist/wasm/_framework/DocxodusWasm.wasm +0 -0
  33. package/dist/wasm/_framework/DocxodusWasm.wasm.br +0 -0
  34. package/dist/wasm/_framework/System.Linq.wasm +0 -0
  35. package/dist/wasm/_framework/System.Linq.wasm.br +0 -0
  36. package/dist/wasm/_framework/System.Private.CoreLib.wasm +0 -0
  37. package/dist/wasm/_framework/System.Private.CoreLib.wasm.br +0 -0
  38. package/dist/wasm/_framework/dotnet.boot.js +6 -6
  39. package/dist/wasm/_framework/dotnet.boot.js.br +0 -0
  40. package/dist/wasm/_framework/dotnet.native.wasm +0 -0
  41. package/dist/wasm/_framework/dotnet.native.wasm.br +0 -0
  42. package/package.json +13 -5
  43. package/dist/wasm/index.html +0 -238
  44. package/dist/wasm/main.js +0 -26
@@ -1 +1 @@
1
- {"version":3,"file":"ribbon.js","sourceRoot":"","sources":["../src/ribbon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ribbon.js","sourceRoot":"","sources":["../src/ribbon.ts"],"names":[],"mappings":"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"}
Binary file
@@ -1,7 +1,7 @@
1
1
  export const config = /*json-start*/{
2
2
  "mainAssemblyName": "DocxodusWasm.dll",
3
3
  "resources": {
4
- "hash": "sha256-1ngxg7b7SMXqjnONfEq9MREBWKN0VMCwbGhJ8NtEVFE=",
4
+ "hash": "sha256-PsqxcJdJYOSwjY9fvBErCJyygpGUO3XHXSArCzOx0ok=",
5
5
  "jsModuleNative": [
6
6
  {
7
7
  "name": "dotnet.native.js"
@@ -15,14 +15,14 @@ export const config = /*json-start*/{
15
15
  "wasmNative": [
16
16
  {
17
17
  "name": "dotnet.native.wasm",
18
- "hash": "sha256-C8zzu5fEjBe59du4JmpQ7y03UnSLOQTAoUClCbbzNgc="
18
+ "hash": "sha256-mzi7SP2/zM/tsXG6D8EZ4mhhjt2yi2zpSq9YWHr5ER8="
19
19
  }
20
20
  ],
21
21
  "coreAssembly": [
22
22
  {
23
23
  "virtualPath": "System.Private.CoreLib.wasm",
24
24
  "name": "System.Private.CoreLib.wasm",
25
- "hash": "sha256-QFLPe3lv4HQZBL9S7g84LCdUgGmpXf6Mw2nVcJZG6TM="
25
+ "hash": "sha256-AQfS7GitJ0rk5XQI5Fxk0ET5tT6udMPKxkc93iu4RcE="
26
26
  },
27
27
  {
28
28
  "virtualPath": "System.Runtime.InteropServices.JavaScript.wasm",
@@ -44,12 +44,12 @@ export const config = /*json-start*/{
44
44
  {
45
45
  "virtualPath": "Docxodus.wasm",
46
46
  "name": "Docxodus.wasm",
47
- "hash": "sha256-aiYzFhFtJ0Bqeke6N6y7lmfc7wwViDc6fdraOCx6iCE="
47
+ "hash": "sha256-E2AWXZWt4bBuqQRWN3p1kJS0CArpCGEEbf8s4OjjJjQ="
48
48
  },
49
49
  {
50
50
  "virtualPath": "DocxodusWasm.wasm",
51
51
  "name": "DocxodusWasm.wasm",
52
- "hash": "sha256-qHypK8IWE+hIwd6JvbizOopf8axx5cOWsL7Gq4Bk0ls="
52
+ "hash": "sha256-ERjtxd0On5pPUsHNdfjZcO41EsNeKc+LHGMFPxWrjCw="
53
53
  },
54
54
  {
55
55
  "virtualPath": "System.Collections.Concurrent.wasm",
@@ -124,7 +124,7 @@ export const config = /*json-start*/{
124
124
  {
125
125
  "virtualPath": "System.Linq.wasm",
126
126
  "name": "System.Linq.wasm",
127
- "hash": "sha256-lDGA1XWGF7Kyb17I6+Jcnr7iHdVqyEDHPf1m1fKdHjI="
127
+ "hash": "sha256-+ZnsXvCvhDqJ912rD0E/BgDdk6Oh0trLIT4icC1MGZE="
128
128
  },
129
129
  {
130
130
  "virtualPath": "System.Linq.Expressions.wasm",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "docxodus",
3
- "version": "9.6.0",
3
+ "version": "9.8.0",
4
4
  "description": "Render, edit, diff and project Word .docx files in the browser — DOCX to HTML, a block editor, Word-grade redlines with tracked changes, and anchor-addressed markdown for LLM agents. WebAssembly, no server.",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -38,7 +38,11 @@
38
38
  }
39
39
  },
40
40
  "files": [
41
- "dist"
41
+ "dist/*.js",
42
+ "dist/*.js.map",
43
+ "dist/*.d.ts",
44
+ "dist/*.d.ts.map",
45
+ "dist/wasm/_framework"
42
46
  ],
43
47
  "scripts": {
44
48
  "build:wasm": "../scripts/build-wasm.sh",
@@ -50,12 +54,16 @@
50
54
  "build:embed-bundle": "esbuild src/embed.ts --bundle --format=esm --outfile=dist/embed.bundle.js && esbuild src/embed.ts --bundle --format=iife --global-name=Docxodus --outfile=dist/embed.iife.js",
51
55
  "build:worker-bundle": "esbuild src/docxodus.worker.ts --bundle --format=esm --outfile=dist/docxodus.worker.js && esbuild src/worker-proxy.ts --bundle --format=esm --outfile=dist/worker-proxy.bundle.js",
52
56
  "build": "npm run build:wasm && npm run build:ts && npm run build:pagination-bundle && npm run build:session-bundle && npm run build:editor-bundle && npm run build:embed-bundle && npm run build:worker-bundle",
53
- "pretest": "npm run typecheck && cp tests/test-harness.html dist/wasm/ && cp tests/worker-test-harness.html dist/wasm/ && cp tests/profiling-harness.html dist/wasm/ && cp examples/editor.html dist/wasm/ && cp examples/embed.html dist/wasm/ && cp examples/ascii-animation.html dist/wasm/ && cp examples/ascii-animation-editor.html dist/wasm/ && cp ../docs/demo/ascii-scenes.js dist/wasm/ && cp ../docs/demo/player.html dist/wasm/player.html && cp ../docs/demo/index.html dist/wasm/demo-index.html && cp ../docs/demo/app.html dist/wasm/demo-app.html && cp ../docs/demo/observatory.html dist/wasm/demo-observatory.html && cp ../docs/demo/docxodus-demo-guide.docx dist/wasm/docxodus-demo-guide.docx && cp dist/pagination.bundle.js dist/wasm/ && cp dist/session.bundle.js dist/wasm/ && cp dist/editor.bundle.js dist/wasm/ && cp dist/embed.bundle.js dist/wasm/ && cp dist/docxodus.worker.js dist/wasm/ && cp dist/worker-proxy.bundle.js dist/wasm/worker-proxy.js",
57
+ "pretest": "npm run test:demo-logic && npm run typecheck && cp tests/test-harness.html dist/wasm/ && cp tests/worker-test-harness.html dist/wasm/ && cp tests/profiling-harness.html dist/wasm/ && cp examples/editor.html dist/wasm/ && cp examples/embed.html dist/wasm/ && cp examples/ascii-animation.html dist/wasm/ && cp examples/ascii-animation-editor.html dist/wasm/ && cp ../docs/demo/ascii-scenes.js dist/wasm/ && cp ../docs/demo/player.html dist/wasm/player.html && cp ../docs/demo/index.html dist/wasm/demo-index.html && cp ../docs/demo/app.html dist/wasm/demo-app.html && cp ../docs/demo/observatory.html dist/wasm/demo-observatory.html && cp ../docs/demo/arcade.html dist/wasm/demo-arcade.html && cp ../docs/demo/ascii-arcade.js dist/wasm/ && cp ../docs/demo/freedoom-e1m1.js dist/wasm/ && cp ../docs/demo/docxodus-demo-guide.docx dist/wasm/docxodus-demo-guide.docx && cp dist/pagination.bundle.js dist/wasm/ && cp dist/session.bundle.js dist/wasm/ && cp dist/editor.bundle.js dist/wasm/ && cp dist/embed.bundle.js dist/wasm/ && cp dist/docxodus.worker.js dist/wasm/ && cp dist/worker-proxy.bundle.js dist/wasm/worker-proxy.js && npm run test:package-boundary",
58
+ "test:demo-logic": "node ../docs/demo/tools/ascii-arcade.test.mjs && node ../docs/demo/tools/wad2cart.test.mjs",
59
+ "test:package-boundary": "node scripts/check-package-boundary.mjs",
54
60
  "test": "playwright test",
61
+ "test:arcade:libreoffice": "npm run pretest && DOCXODUS_LO_PARITY=1 playwright test demo-arcade-libreoffice.spec.ts --project=chromium",
62
+ "test:visual-parity": "npm run pretest && DOCXODUS_VISUAL_PARITY=1 playwright test visual-parity.spec.ts --project=chromium --reporter=line",
55
63
  "test:ui": "playwright test --ui",
56
64
  "demo": "npm run build && npm run demo:serve",
57
65
  "demo:serve": "cp dist/editor.bundle.js examples/editor.html dist/wasm/ && cp ../TestFiles/HC031-Complicated-Document.docx dist/wasm/sample.docx && echo '\\n>>> Open http://localhost:8088/editor.html\\n' && python3 -m http.server 8088 --directory dist/wasm",
58
- "prepublishOnly": "npm run build"
66
+ "prepublishOnly": "npm run build && npm run test:package-boundary"
59
67
  },
60
68
  "repository": {
61
69
  "type": "git",
@@ -85,7 +93,7 @@
85
93
  "agent",
86
94
  "react"
87
95
  ],
88
- "author": "JSv4",
96
+ "author": "John Scrudato IV",
89
97
  "license": "MIT",
90
98
  "bugs": {
91
99
  "url": "https://github.com/JSv4/Docxodus/issues"
@@ -1,238 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <title>Docxodus WASM Test</title>
6
- <style>
7
- body {
8
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
9
- max-width: 1200px;
10
- margin: 0 auto;
11
- padding: 20px;
12
- background: #f5f5f5;
13
- }
14
- h1 { color: #333; }
15
- .card {
16
- background: white;
17
- border-radius: 8px;
18
- padding: 20px;
19
- margin: 20px 0;
20
- box-shadow: 0 2px 4px rgba(0,0,0,0.1);
21
- }
22
- .card h2 {
23
- margin-top: 0;
24
- color: #555;
25
- border-bottom: 1px solid #eee;
26
- padding-bottom: 10px;
27
- }
28
- input[type="file"] {
29
- margin: 10px 0;
30
- }
31
- button {
32
- background: #007bff;
33
- color: white;
34
- border: none;
35
- padding: 10px 20px;
36
- border-radius: 4px;
37
- cursor: pointer;
38
- margin: 5px;
39
- }
40
- button:hover { background: #0056b3; }
41
- button:disabled {
42
- background: #ccc;
43
- cursor: not-allowed;
44
- }
45
- #output {
46
- background: #f8f9fa;
47
- border: 1px solid #dee2e6;
48
- border-radius: 4px;
49
- padding: 15px;
50
- margin-top: 15px;
51
- max-height: 500px;
52
- overflow: auto;
53
- }
54
- #status {
55
- padding: 10px;
56
- border-radius: 4px;
57
- margin-bottom: 20px;
58
- }
59
- .loading { background: #fff3cd; color: #856404; }
60
- .ready { background: #d4edda; color: #155724; }
61
- .error { background: #f8d7da; color: #721c24; }
62
- .file-inputs {
63
- display: flex;
64
- gap: 20px;
65
- flex-wrap: wrap;
66
- }
67
- .file-input-group {
68
- flex: 1;
69
- min-width: 250px;
70
- }
71
- .file-input-group label {
72
- display: block;
73
- margin-bottom: 5px;
74
- font-weight: 500;
75
- }
76
- </style>
77
- </head>
78
- <body>
79
- <h1>Docxodus WASM Test</h1>
80
-
81
- <div id="status" class="loading">Loading WASM runtime...</div>
82
-
83
- <div class="card">
84
- <h2>Convert DOCX to HTML</h2>
85
- <input type="file" id="convertFile" accept=".docx" disabled />
86
- <button id="convertBtn" onclick="convertToHtml()" disabled>Convert to HTML</button>
87
- </div>
88
-
89
- <div class="card">
90
- <h2>Compare Documents (Redline)</h2>
91
- <div class="file-inputs">
92
- <div class="file-input-group">
93
- <label>Original Document:</label>
94
- <input type="file" id="originalFile" accept=".docx" disabled />
95
- </div>
96
- <div class="file-input-group">
97
- <label>Modified Document:</label>
98
- <input type="file" id="modifiedFile" accept=".docx" disabled />
99
- </div>
100
- </div>
101
- <div style="margin-top: 15px;">
102
- <button id="compareHtmlBtn" onclick="compareToHtml()" disabled>Compare → HTML</button>
103
- <button id="compareDocxBtn" onclick="compareToDocx()" disabled>Compare → Download DOCX</button>
104
- </div>
105
- </div>
106
-
107
- <div class="card">
108
- <h2>Output</h2>
109
- <div id="output">Results will appear here...</div>
110
- </div>
111
-
112
- <script type="module" src="./main.js"></script>
113
- <script>
114
- // Wait for Docxodus to be ready
115
- window.onDocxodusReady = function() {
116
- document.getElementById('status').className = 'ready';
117
- document.getElementById('status').textContent = 'Docxodus WASM Ready!';
118
-
119
- // Enable all controls
120
- document.querySelectorAll('input, button').forEach(el => el.disabled = false);
121
- };
122
-
123
- // Check if already ready
124
- if (window.DocxodusReady) {
125
- window.onDocxodusReady();
126
- }
127
-
128
- async function readFileAsBytes(file) {
129
- const buffer = await file.arrayBuffer();
130
- return new Uint8Array(buffer);
131
- }
132
-
133
- async function convertToHtml() {
134
- const fileInput = document.getElementById('convertFile');
135
- const output = document.getElementById('output');
136
-
137
- if (!fileInput.files[0]) {
138
- output.innerHTML = '<p style="color: red;">Please select a DOCX file</p>';
139
- return;
140
- }
141
-
142
- output.innerHTML = '<p>Converting...</p>';
143
-
144
- try {
145
- const bytes = await readFileAsBytes(fileInput.files[0]);
146
- const html = window.Docxodus.DocumentConverter.ConvertDocxToHtml(bytes);
147
-
148
- if (html.startsWith('{') && html.includes('error')) {
149
- const error = JSON.parse(html);
150
- output.innerHTML = `<p style="color: red;">Error: ${error.error}</p>`;
151
- } else {
152
- output.innerHTML = html;
153
- }
154
- } catch (err) {
155
- output.innerHTML = `<p style="color: red;">Error: ${err.message}</p>`;
156
- }
157
- }
158
-
159
- async function compareToHtml() {
160
- const originalInput = document.getElementById('originalFile');
161
- const modifiedInput = document.getElementById('modifiedFile');
162
- const output = document.getElementById('output');
163
-
164
- if (!originalInput.files[0] || !modifiedInput.files[0]) {
165
- output.innerHTML = '<p style="color: red;">Please select both original and modified DOCX files</p>';
166
- return;
167
- }
168
-
169
- output.innerHTML = '<p>Comparing documents...</p>';
170
-
171
- try {
172
- const originalBytes = await readFileAsBytes(originalInput.files[0]);
173
- const modifiedBytes = await readFileAsBytes(modifiedInput.files[0]);
174
-
175
- const html = window.Docxodus.DocumentComparer.CompareDocumentsToHtml(
176
- originalBytes,
177
- modifiedBytes,
178
- 'Docxodus WASM'
179
- );
180
-
181
- if (html.startsWith('{') && html.includes('error')) {
182
- const error = JSON.parse(html);
183
- output.innerHTML = `<p style="color: red;">Error: ${error.error}</p>`;
184
- } else {
185
- output.innerHTML = html;
186
- }
187
- } catch (err) {
188
- output.innerHTML = `<p style="color: red;">Error: ${err.message}</p>`;
189
- }
190
- }
191
-
192
- async function compareToDocx() {
193
- const originalInput = document.getElementById('originalFile');
194
- const modifiedInput = document.getElementById('modifiedFile');
195
- const output = document.getElementById('output');
196
-
197
- if (!originalInput.files[0] || !modifiedInput.files[0]) {
198
- output.innerHTML = '<p style="color: red;">Please select both original and modified DOCX files</p>';
199
- return;
200
- }
201
-
202
- output.innerHTML = '<p>Comparing documents...</p>';
203
-
204
- try {
205
- const originalBytes = await readFileAsBytes(originalInput.files[0]);
206
- const modifiedBytes = await readFileAsBytes(modifiedInput.files[0]);
207
-
208
- const resultBytes = window.Docxodus.DocumentComparer.CompareDocuments(
209
- originalBytes,
210
- modifiedBytes,
211
- 'Docxodus WASM',
212
- 1 // ComparisonEngine.DocxDiff
213
- );
214
-
215
- if (resultBytes.length === 0) {
216
- output.innerHTML = '<p style="color: red;">Comparison failed - check console for details</p>';
217
- return;
218
- }
219
-
220
- // Download the result
221
- const blob = new Blob([resultBytes], {
222
- type: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
223
- });
224
- const url = URL.createObjectURL(blob);
225
- const a = document.createElement('a');
226
- a.href = url;
227
- a.download = 'comparison-result.docx';
228
- a.click();
229
- URL.revokeObjectURL(url);
230
-
231
- output.innerHTML = '<p style="color: green;">Comparison complete! Download started.</p>';
232
- } catch (err) {
233
- output.innerHTML = `<p style="color: red;">Error: ${err.message}</p>`;
234
- }
235
- }
236
- </script>
237
- </body>
238
- </html>
package/dist/wasm/main.js DELETED
@@ -1,26 +0,0 @@
1
- // Docxodus WASM Bootstrap
2
- // This file initializes the .NET WASM runtime and exposes exports to JavaScript
3
-
4
- import { dotnet } from './_framework/dotnet.js';
5
-
6
- const { getAssemblyExports, getConfig } = await dotnet
7
- .withDiagnosticTracing(false)
8
- .create();
9
-
10
- const config = getConfig();
11
- const exports = await getAssemblyExports(config.mainAssemblyName);
12
-
13
- // Expose Docxodus APIs to window for testing
14
- window.Docxodus = {
15
- DocumentConverter: exports.DocxodusWasm.DocumentConverter,
16
- DocumentComparer: exports.DocxodusWasm.DocumentComparer
17
- };
18
-
19
- console.log("Docxodus WASM loaded successfully");
20
- console.log("Version:", window.Docxodus.DocumentConverter.GetVersion());
21
-
22
- // Signal that Docxodus is ready
23
- window.DocxodusReady = true;
24
- if (window.onDocxodusReady) {
25
- window.onDocxodusReady();
26
- }