docxodus 12.4.1 → 12.5.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 (59) hide show
  1. package/README.md +78 -0
  2. package/dist/core.d.ts +4 -4
  3. package/dist/core.d.ts.map +1 -1
  4. package/dist/core.js +21 -200
  5. package/dist/core.js.map +1 -1
  6. package/dist/docxodus.worker.js +280 -7
  7. package/dist/docxodus.worker.js.map +1 -1
  8. package/dist/editor-reconcile.d.ts +5 -0
  9. package/dist/editor-reconcile.d.ts.map +1 -1
  10. package/dist/editor-reconcile.js.map +1 -1
  11. package/dist/editor.bundle.js +157 -15
  12. package/dist/editor.d.ts +44 -0
  13. package/dist/editor.d.ts.map +1 -1
  14. package/dist/editor.js +209 -22
  15. package/dist/editor.js.map +1 -1
  16. package/dist/embed.bundle.js +560 -217
  17. package/dist/embed.iife.js +560 -217
  18. package/dist/export-assets.json +20 -20
  19. package/dist/export-browser.bundle.js +101 -4
  20. package/dist/external-annotation-wire.d.ts +19 -0
  21. package/dist/external-annotation-wire.d.ts.map +1 -0
  22. package/dist/external-annotation-wire.js +139 -0
  23. package/dist/external-annotation-wire.js.map +1 -0
  24. package/dist/session.bundle.js +258 -7
  25. package/dist/session.d.ts +61 -12
  26. package/dist/session.d.ts.map +1 -1
  27. package/dist/session.js +234 -7
  28. package/dist/session.js.map +1 -1
  29. package/dist/types.d.ts +371 -4
  30. package/dist/types.d.ts.map +1 -1
  31. package/dist/types.js.map +1 -1
  32. package/dist/verification-request.d.ts +9 -0
  33. package/dist/verification-request.d.ts.map +1 -0
  34. package/dist/verification-request.js +37 -0
  35. package/dist/verification-request.js.map +1 -0
  36. package/dist/wasm/_framework/Docxodus.wasm +0 -0
  37. package/dist/wasm/_framework/Docxodus.wasm.br +0 -0
  38. package/dist/wasm/_framework/DocxodusWasm.wasm +0 -0
  39. package/dist/wasm/_framework/DocxodusWasm.wasm.br +0 -0
  40. package/dist/wasm/_framework/System.Private.CoreLib.wasm +0 -0
  41. package/dist/wasm/_framework/System.Private.CoreLib.wasm.br +0 -0
  42. package/dist/wasm/_framework/System.Private.Xml.Linq.wasm +0 -0
  43. package/dist/wasm/_framework/System.Private.Xml.Linq.wasm.br +0 -0
  44. package/dist/wasm/_framework/System.Security.Cryptography.wasm +0 -0
  45. package/dist/wasm/_framework/System.Security.Cryptography.wasm.br +0 -0
  46. package/dist/wasm/_framework/System.Text.Encodings.Web.wasm +0 -0
  47. package/dist/wasm/_framework/System.Text.Encodings.Web.wasm.br +0 -0
  48. package/dist/wasm/_framework/System.Text.Json.wasm +0 -0
  49. package/dist/wasm/_framework/System.Text.Json.wasm.br +0 -0
  50. package/dist/wasm/_framework/dotnet.boot.js +9 -9
  51. package/dist/wasm/_framework/dotnet.boot.js.br +0 -0
  52. package/dist/wasm/_framework/dotnet.native.wasm +0 -0
  53. package/dist/wasm/_framework/dotnet.native.wasm.br +0 -0
  54. package/dist/worker-proxy.bundle.js +101 -4
  55. package/dist/worker-proxy.d.ts +21 -3
  56. package/dist/worker-proxy.d.ts.map +1 -1
  57. package/dist/worker-proxy.js +57 -2
  58. package/dist/worker-proxy.js.map +1 -1
  59. package/package.json +1 -1
package/README.md CHANGED
@@ -72,6 +72,13 @@ Two layers, so you can take as much UI as you want:
72
72
  import { DocxEditor } from 'docxodus';
73
73
  const editor = DocxEditor.open(container, docxBytes, exports);
74
74
 
75
+ // Long document? Mount it in windows instead, yielding to the event loop between them, so the
76
+ // tab stays responsive and you can show progress. The result is the same editor and the same DOM.
77
+ const editor = await DocxEditor.openAsync(container, docxBytes, exports, {
78
+ windowSize: 24,
79
+ onProgress: (mounted, total) => console.log(`${mounted}/${total} blocks`),
80
+ });
81
+
75
82
  // Or the whole surface: Word's tabbed ribbon (fonts, colour, styles, find & replace, links,
76
83
  // pictures, tables, page setup, tracked changes), Word-style comment bubbles beside the page,
77
84
  // in-place header/footer editing, a status bar with zoom, and the loading overlay.
@@ -125,6 +132,19 @@ if (!result.success) console.error(result.failure);
125
132
 
126
133
  Pass `'best_effort'` explicitly only when partial successes should be retained.
127
134
 
135
+ A retry after a lost response must not apply the edit twice. Give the batch a transaction id
136
+ and a serializable description of what it does; an identical retry returns the original result
137
+ without executing again, and reusing the id for a different request fails with
138
+ `transaction_conflict`:
139
+
140
+ ```ts
141
+ const result = session.executeBatch(steps, 'atomic', {
142
+ transactionId: 'plan-42-step-3',
143
+ request: { replace: firstAnchor, header: 'Confidential' },
144
+ });
145
+ result.transaction; // { schemaVersion: 1, transactionId, requestFingerprint }
146
+ ```
147
+
128
148
  `previewBatch` answers "what would this do?" without touching the live session. It runs the
129
149
  same steps against a complete isolated clone — each callback is handed the shadow session to
130
150
  mutate — and returns the same receipt plus optional predicted HTML:
@@ -144,6 +164,53 @@ the batch would produce, matching what the Python and MCP clients render for the
144
164
  `packageHash` is `null` when it could not be computed, so never assert replay equality
145
165
  without checking for it.
146
166
 
167
+ A preview predicts generated values (new anchor ids, comment ids, revision timestamps), but a
168
+ later `executeBatch` runs afresh and may generate them differently. `retain: true` keeps the
169
+ successful preview's exact result package, and `commitPreview` makes it the live document as
170
+ previewed — one undo step, same ids, same `packageHash`:
171
+
172
+ ```ts
173
+ const preview = session.previewBatch(steps, 'atomic', { html: 'full', retain: true });
174
+ showToReviewer(preview.html, preview.revisionChanges);
175
+ const commit = session.commitPreview(preview.retention!.previewId, {
176
+ transactionId: 'plan-42-commit', request: { commit: preview.retention!.previewId },
177
+ });
178
+ commit.packageHash === preview.packageHash; // true
179
+ ```
180
+
181
+ The commit refuses with `preview_stale`, editing nothing, if the session's version, package
182
+ content, tracked-changes mode or revision author moved since the preview, and with
183
+ `preview_not_found` once the preview expired, was evicted (8 previews, 64 MiB, 15 minutes per
184
+ session) or was already committed.
185
+
186
+ ### Delivery receipts from captured evidence
187
+
188
+ A session opened with `captureDeliveryEvidence: true` records the evidence a delivery change
189
+ receipt needs as its edits execute — the exact package before and after every mutation, each
190
+ `executeBatch` step's `tool`/`action`/`args`, transaction ids, and undo/redo lineage — and
191
+ `buildDeliveryReceipt` mints a receipt the portable verifier accepts:
192
+
193
+ ```ts
194
+ const session = openDocxSession(bytes, { captureDeliveryEvidence: true });
195
+ session.executeBatch([
196
+ { tool: 'docx_edit', action: 'replace_text', args: { anchorId: firstAnchor, markdown: 'Final wording' },
197
+ mutation: () => session.replaceText(firstAnchor, 'Final wording') },
198
+ ], 'atomic', { transactionId: 'plan-42', request: { replace: firstAnchor } });
199
+
200
+ const bundle = session.buildDeliveryReceipt({ privacyProfile: 'hashAndSummary' });
201
+ const receipt = bundle.artifacts.find(a => a.artifactId === 'change-receipt')!;
202
+ const artifacts = Object.fromEntries(bundle.artifacts
203
+ .filter(a => a.bytes && a.artifactId !== 'change-receipt')
204
+ .map(a => [a.artifactId, a.bytes!]));
205
+ await verifyDeliveryReceipt(new TextDecoder().decode(receipt.bytes!), artifacts); // isValid
206
+ ```
207
+
208
+ Deliver the bundle's `final-docx` artifact: it is the bytes the receipt attests. A direct call
209
+ outside `executeBatch` is still captured exactly but recorded as an unlabeled mutation;
210
+ `getDeliveryEvidenceStatus()` counts those and names the first reason a receipt cannot be
211
+ minted (capture off, retention of 256 states / 512 MiB exceeded), in which case the bundle is
212
+ `incomplete` and the receipt artifact carries the reason instead of claiming a history.
213
+
147
214
  ![Markdown projection beside the rendered document](https://raw.githubusercontent.com/JSv4/Docxodus/main/docs/images/projection.png)
148
215
 
149
216
  Native links and bookmarks use the same stable anchors and exact character spans:
@@ -528,10 +595,21 @@ const redlined = await docxodus.compareDocuments(original, modified, options);
528
595
  const revisions = await docxodus.getRevisions(docxFile);
529
596
  const metadata = await docxodus.getDocumentMetadata(docxFile);
530
597
 
598
+ // The external annotation family runs there too, so a read-only viewer that renders
599
+ // through the worker can annotate without booting a second runtime on the main thread.
600
+ const set = await docxodus.createExternalAnnotationSet(docxFile, 'doc-1');
601
+ const annotated = await docxodus.projectAnnotationsOntoHtml(html, set);
602
+ const validation = await docxodus.validateExternalAnnotations(docxFile, set);
603
+ const exported = await docxodus.exportToOpenContract(docxFile);
604
+
531
605
  // Terminate when done
532
606
  docxodus.terminate();
533
607
  ```
534
608
 
609
+ `projectAnnotationsOntoHtml` parses its input as XML: hand it the converter's output (or
610
+ another well-formed serialization), not a live DOM's `innerHTML`, which leaves `<br>` and
611
+ `<img>` unclosed. `DocxEditor.open()` stays main-thread only — it writes into a live container.
612
+
535
613
  #### First-call warmup
536
614
 
537
615
  `createWorkerDocxodus()` warms the .NET WASM runtime, but the **comparison code
package/dist/core.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Engine API: safe to import in plain Node ESM without loading the browser editor. */
2
- import type { ConversionOptions, CompareOptions, RevisionListEntry, VersionInfo, ErrorResponse, CompareResult, PackageManifest, DeliverableVerificationResult, DeliveryReceiptVerificationResult, RedlineReversibilityProof, DocxodusWasmExports, FormatChangeDetails, DocxDiffSettings, DocxDiffRevision, DocxDiffBatchCandidate, DocxDiffBatchResult, DocxDiffProduct, DocxDiffProducts, SemanticChange, SemanticChangeFamily, SemanticChangeOperation, SemanticChangeSet, SemanticValue, DocxDiffReviewer, DocxDiffConsolidateSettings, DocxDiffConflict, DocxDiffConflictCompetitor, DocxDiffConsolidatedRevision, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest, DocumentMetadata, SectionMetadata, OpenContractDocExport, PawlsPage, PawlsPageBoundary, PawlsToken, OpenContractsAnnotation, OpenContractsSinglePageAnnotation, BoundingBox, TokenId, TextSpan, OpenContractsRelationship, AnnotationLabel, ExternalAnnotationSet, ExternalAnnotationValidationResult, ExternalAnnotationValidationIssue, ExternalAnnotationProjectionSettings, MarkdownProjectionSettings, MarkdownAnchorTarget, MarkdownProjection, DocxSessionSettings } from "./types.js";
2
+ import type { ConversionOptions, CompareOptions, RevisionListEntry, RevisionRepairKind, RevisionRepairProposal, RevisionRepairRequest, RevisionCarrierIdentity, RevisionRepairOutcome, RevisionRepairResult, VersionInfo, ErrorResponse, CompareResult, PackageManifest, DeliverableVerificationResult, DeliverableVerificationRequest, DeliveryReceiptVerificationResult, RedlineReversibilityProof, DocxodusWasmExports, FormatChangeDetails, DocxDiffSettings, DocxDiffRevision, DocxDiffBatchCandidate, DocxDiffBatchResult, DocxDiffProduct, DocxDiffProducts, SemanticChange, SemanticChangeFamily, SemanticChangeOperation, SemanticChangeSet, SemanticValue, DocxDiffReviewer, DocxDiffConsolidateSettings, DocxDiffConflict, DocxDiffConflictCompetitor, DocxDiffConsolidatedRevision, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest, DocumentMetadata, SectionMetadata, OpenContractDocExport, PawlsPage, PawlsPageBoundary, PawlsToken, OpenContractsAnnotation, OpenContractsSinglePageAnnotation, BoundingBox, TokenId, TextSpan, OpenContractsRelationship, AnnotationLabel, ExternalAnnotationSet, ExternalAnnotationValidationResult, ExternalAnnotationValidationIssue, ExternalAnnotationProjectionSettings, MarkdownProjectionSettings, MarkdownAnchorTarget, MarkdownProjection, DocxSessionSettings } from "./types.js";
3
3
  import { DocxSession } from "./session.js";
4
4
  import { DocxHistoryArchive, DocxHistoryClient } from './history.js';
5
5
  import type { HistoryStorage } from './history.js';
@@ -12,7 +12,7 @@ export declare function openDocxHistory(storage: HistoryStorage): DocxHistoryCli
12
12
  /** Open a self-contained readonly .docxhistory file after initialize(); no storage adapter needed. */
13
13
  export declare function openDocxHistoryArchive(bytes: Uint8Array): Promise<DocxHistoryArchive>;
14
14
  export { DocxSession } from "./session.js";
15
- export type { AnchorInfo, AnchorRef, AnchorTargetRef, BlockMetadata, BookmarkInfo, BookmarkRangeSegment, CharSpan, CommentListEntry, ContentControlBindingInfo, ContentControlBindingPolicy, ContentControlFillOptions, ContentControlInfo, ContentControlPlacement, ContentControlType, DocumentAnnotation, DocumentRange, DocxSessionProjection, DocxSessionSettings, EditError, EditErrorCode, EditResult, FindOptions, EditorRenderOptions, FormatOp, HyperlinkInfo, HyperlinkKind, ImageBinaryFormat, ImageCapabilities, ImageDimensions, ImageFormatCapability, ImageHorizontalAlignment, ImageHorizontalReference, ImageInsertOptions, ImageMarkupKind, ImageOccurrence, ImagePlacement, ImageVerticalAlignment, ImageVerticalReference, ImageWrapMode, ImageWrapSide, FloatingImageLayout, LineSpacingRule, ListMembership, FormattingInspection, InlineSpan, ParagraphFormatting, RunFormattingInfo, StyleInfo, TableStyleFormatting, MarkdownPatch, NumberFormat, PageCitation, PageCitationFragment, PageCitationPage, PageCitationRequest, PageCitationUnavailableReason, PageMapRegistrationResult, PageMapStatus, PageNumberField, PageNumberingOp, PageSetupOp, ParagraphBorderEdge, ParagraphFormatOp, RevisionDiagnostic, RevisionFamily, RevisionResolutionStatus, SectionInfo, SessionRevisionType, TableOfAuthoritiesOptions, TableOfContentsOptions, TableOfFiguresOptions, TableBorderScope, TableBorderSpec, TableInsertOptions, TableMergeContent, TableShadingScope, PackageManifest, PackageManifestInspectionLimits, PackageManifestEntry, PackageManifestFacts, PackageRelationship, PackageContentTypeDeclaration, PackageRevisionCounts, PackageAnnotationCounts, DeliverableVerificationResult, DeliveryArtifactVerification, DeliveryArtifactVerificationStatus, DeliveryReceiptVerificationResult, DeliverableVerificationMode, DeliverableVerificationDecision, DeliverableFindingDisposition, DeliverableFindingCategory, DeliverableCheckStatus, DeliverablePackageChangeKind, DeliverableArtifactRole, DeliverableArtifactAvailability, DeliverableSemanticChangeFamily, DeliverablePackageIdentity, DeliverableCheckResult, DeliverableFinding, DeliverablePackageChange, DeliverableSemanticChange, DeliverableSemanticDelta, DeliverableArtifactMetadata, VerificationDigest, VerificationFinding, VerificationFindingSeverity, ChangeLocation, RedlineReversibilityProof, RedlineProofPathResult, RedlineProofPackageIdentity, RedlineProofFinding, RedlineProofDirection, RedlineRevisionClassification, RedlineRevisionDisposition, RedlineRevisionIdentity, RedlineRevisionFamily, RedlineRevisionResolutionStatus, RedlineRevisionDiagnostic, RedlineModeledSemanticComparison, RedlinePackageDivergence, RedlinePackageDivergenceKind, } from "./types.js";
15
+ export type { AnchorInfo, AnchorRef, AnchorTargetRef, BlockMetadata, BookmarkInfo, BookmarkRangeSegment, CharSpan, CommentListEntry, ContentControlBindingInfo, ContentControlBindingPolicy, ContentControlFillOptions, ContentControlInfo, ContentControlPlacement, ContentControlType, DocumentAnnotation, DocumentRange, DocxSessionProjection, DocxSessionSettings, EditError, EditErrorCode, EditResult, FindOptions, EditorRenderOptions, FormatOp, HyperlinkInfo, HyperlinkKind, ImageBinaryFormat, ImageCapabilities, ImageDimensions, ImageFormatCapability, ImageHorizontalAlignment, ImageHorizontalReference, ImageInsertOptions, ImageMarkupCapability, ImageMarkupKind, ImageOccurrence, ImageOperationSupport, ImagePlacement, ImageVerticalAlignment, ImageVerticalReference, ImageWrapMode, ImageWrapPoint, ImageWrapPolygon, ImageWrapSide, FloatingImageLayout, LineSpacingRule, ListMembership, FormattingInspection, InlineSpan, ParagraphFormatting, RunFormattingInfo, StyleInfo, TableStyleFormatting, MarkdownPatch, NumberFormat, PageCitation, PageCitationFragment, PageCitationPage, PageCitationRequest, PageCitationUnavailableReason, PageMapRegistrationResult, PageMapStatus, PageNumberField, PageNumberingOp, PageSetupOp, ParagraphBorderEdge, ParagraphFormatOp, RevisionDiagnostic, RevisionFamily, RevisionResolutionStatus, SectionInfo, SessionRevisionType, TableOfAuthoritiesOptions, TableOfContentsOptions, TableOfFiguresOptions, TableBorderScope, TableBorderSpec, TableInsertOptions, TableMergeContent, TableShadingScope, PackageManifest, PackageManifestInspectionLimits, PackageManifestEntry, PackageManifestFacts, PackageRelationship, PackageContentTypeDeclaration, PackageRevisionCounts, PackageAnnotationCounts, DeliverableVerificationResult, DeliverableVerificationRequest, DeliverableVerificationPolicyOptions, DeliverablePackageChangeExpectation, DeliverableCompanionArtifactInput, DeliverableRenderDiagnostic, DeliverableRenderDiagnosticKind, DeliveryArtifactVerification, DeliveryArtifactVerificationStatus, DeliveryReceiptVerificationResult, DeliverableVerificationMode, DeliverableVerificationDecision, DeliverableFindingDisposition, DeliverableFindingCategory, DeliverableCheckStatus, DeliverablePackageChangeKind, DeliverableArtifactRole, DeliverableArtifactAvailability, DeliverableSemanticChangeFamily, DeliverablePackageIdentity, DeliverableCheckResult, DeliverableFinding, DeliverablePackageChange, DeliverableSemanticChange, DeliverableSemanticDelta, DeliverableArtifactMetadata, VerificationDigest, VerificationFinding, VerificationFindingSeverity, ChangeLocation, RedlineReversibilityProof, RedlineProofPathResult, RedlineProofPackageIdentity, RedlineProofFinding, RedlineProofDirection, RedlineRevisionClassification, RedlineRevisionDisposition, RedlineRevisionIdentity, RedlineRevisionFamily, RedlineRevisionResolutionStatus, RedlineRevisionDiagnostic, RedlineModeledSemanticComparison, RedlinePackageDivergence, RedlinePackageDivergenceKind, } from "./types.js";
16
16
  export type { FillOptions, BulkEditResult } from "./types.js";
17
17
  export { PlaceholderKinds, ContextBoundary } from "./types.js";
18
18
  export { DiffFormat } from "./types.js";
@@ -37,7 +37,7 @@ export type { CommentProfile, CompleteRenderReport, DocxodusExportErrorCode, Exp
37
37
  export { DEFAULT_MARGIN, DEFAULT_PAGE_HEIGHT, DEFAULT_PAGE_WIDTH, fitScale, parseSectionDimensions, ptToPx, pxToPt, } from "./page-geometry.js";
38
38
  export { DocumentViewport } from "./viewport.js";
39
39
  export type { ColumnWidth, DocumentViewportOptions } from "./viewport.js";
40
- export type { ConversionOptions, CompareOptions, RevisionListEntry, VersionInfo, ErrorResponse, CompareResult, FormatChangeDetails, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest, DocumentMetadata, SectionMetadata, OpenContractDocExport, PawlsPage, PawlsPageBoundary, PawlsToken, OpenContractsAnnotation, OpenContractsSinglePageAnnotation, BoundingBox, TokenId, TextSpan, OpenContractsRelationship, AnnotationLabel, ExternalAnnotationSet, ExternalAnnotationValidationResult, ExternalAnnotationValidationIssue, ExternalAnnotationProjectionSettings, MarkdownProjectionSettings, MarkdownAnchorTarget, MarkdownProjection, DocxDiffSettings, DocxDiffRevision, DocxDiffBatchCandidate, DocxDiffBatchResult, DocxDiffProduct, DocxDiffProducts, SemanticChange, SemanticChangeFamily, SemanticChangeOperation, SemanticChangeSet, SemanticValue, DocxDiffReviewer, DocxDiffConsolidateSettings, DocxDiffConflict, DocxDiffConflictCompetitor, DocxDiffConsolidatedRevision, };
40
+ export type { ConversionOptions, CompareOptions, RevisionListEntry, RevisionRepairKind, RevisionRepairProposal, RevisionRepairRequest, RevisionCarrierIdentity, RevisionRepairOutcome, RevisionRepairResult, VersionInfo, ErrorResponse, CompareResult, FormatChangeDetails, Annotation, AddAnnotationRequest, AddAnnotationResponse, RemoveAnnotationResponse, AnnotationOptions, DocumentStructure, DocumentElement, TableColumnInfo, AnnotationTarget, AddAnnotationWithTargetRequest, DocumentMetadata, SectionMetadata, OpenContractDocExport, PawlsPage, PawlsPageBoundary, PawlsToken, OpenContractsAnnotation, OpenContractsSinglePageAnnotation, BoundingBox, TokenId, TextSpan, OpenContractsRelationship, AnnotationLabel, ExternalAnnotationSet, ExternalAnnotationValidationResult, ExternalAnnotationValidationIssue, ExternalAnnotationProjectionSettings, MarkdownProjectionSettings, MarkdownAnchorTarget, MarkdownProjection, DocxDiffSettings, DocxDiffRevision, DocxDiffBatchCandidate, DocxDiffBatchResult, DocxDiffProduct, DocxDiffProducts, SemanticChange, SemanticChangeFamily, SemanticChangeOperation, SemanticChangeSet, SemanticValue, DocxDiffReviewer, DocxDiffConsolidateSettings, DocxDiffConflict, DocxDiffConflictCompetitor, DocxDiffConsolidatedRevision, };
41
41
  export { CommentRenderMode, PaginationMode, AnnotationLabelMode, RevisionType, DocxDiffRevisionGranularity, DocxDiffFormatComparison, ConflictResolution, ProjectionScopes, AnchorRenderMode, TableRenderMode, TrackedChangeMode, EmptyParagraphMode, AnchorIdRendering, ProjectionDepth, DocumentElementType, ComparisonLogLevel, ComparisonLogCodes, isInsertion, isDeletion, isMove, isFormatChange, findElementById, findElementsByType, getParagraphs, getTables, getTableColumns, targetElement, targetParagraph, targetParagraphRange, targetRun, targetTable, targetTableRow, targetTableCell, targetTableColumn, targetSearch, targetSearchInElement, };
42
42
  /**
43
43
  * Current base path for WASM files.
@@ -74,7 +74,7 @@ export declare function generatePackageManifest(document: File | Uint8Array): Pr
74
74
  * structured report findings rather than editable-session errors. When supplied,
75
75
  * the exact baseline bytes are used to classify pre-existing, new, and resolved findings.
76
76
  */
77
- export declare function verifyDeliverable(document: File | Uint8Array, baseline?: File | Uint8Array): Promise<DeliverableVerificationResult>;
77
+ export declare function verifyDeliverable(document: File | Uint8Array, baseline?: File | Uint8Array, request?: DeliverableVerificationRequest): Promise<DeliverableVerificationResult>;
78
78
  /**
79
79
  * Verify a portable JSON delivery change receipt against supplied artifact bytes.
80
80
  *
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
package/dist/core.js CHANGED
@@ -1,4 +1,6 @@
1
1
  import { openDocxSession as openDocxSessionImpl } from "./session.js";
2
+ import { serializeVerificationRequest } from "./verification-request.js";
3
+ import { readExternalAnnotationSet, readExternalAnnotationValidation, readOpenContractExport, readProjectedHtml, } from "./external-annotation-wire.js";
2
4
  import { DocxHistoryArchive, DocxHistoryClient, installHistoryStorageImports } from './history.js';
3
5
  export * from './history.js';
4
6
  export * from './history-checkpoints.js';
@@ -238,11 +240,22 @@ export async function generatePackageManifest(document) {
238
240
  * structured report findings rather than editable-session errors. When supplied,
239
241
  * the exact baseline bytes are used to classify pre-existing, new, and resolved findings.
240
242
  */
241
- export async function verifyDeliverable(document, baseline) {
243
+ export async function verifyDeliverable(document, baseline, request) {
242
244
  const exports = ensureInitialized();
243
245
  const bytes = await toBytes(document);
244
246
  const baselineBytes = baseline === undefined ? undefined : await toBytes(baseline);
245
247
  await yieldToMain();
248
+ if (request !== undefined) {
249
+ // The full request (issue #747): the same wire shape every transport parses.
250
+ const requestJson = serializeVerificationRequest(request);
251
+ const converter = exports.DocumentConverter;
252
+ if (!converter.VerifyDeliverableWithRequest || !converter.VerifyDeliverableWithBaselineAndRequest) {
253
+ throw new Error("This WASM bundle predates full verification requests; rebuild docxodus.");
254
+ }
255
+ return JSON.parse(baselineBytes === undefined
256
+ ? converter.VerifyDeliverableWithRequest(bytes, requestJson)
257
+ : converter.VerifyDeliverableWithBaselineAndRequest(baselineBytes, bytes, requestJson));
258
+ }
246
259
  return JSON.parse(baselineBytes === undefined
247
260
  ? exports.DocumentConverter.VerifyDeliverable(bytes)
248
261
  : exports.DocumentConverter.VerifyDeliverableWithBaseline(baselineBytes, bytes));
@@ -1268,81 +1281,7 @@ export async function exportToOpenContract(document) {
1268
1281
  const error = parseError(result);
1269
1282
  throw new Error(`Failed to export to OpenContract format: ${error.error}`);
1270
1283
  }
1271
- const parsed = JSON.parse(result);
1272
- // Convert from PascalCase to camelCase
1273
- const convertPawlsPage = (p) => ({
1274
- page: {
1275
- width: p.Page?.Width ?? p.page?.width,
1276
- height: p.Page?.Height ?? p.page?.height,
1277
- index: p.Page?.Index ?? p.page?.index,
1278
- },
1279
- tokens: (p.Tokens || p.tokens || []).map((t) => ({
1280
- x: t.X ?? t.x,
1281
- y: t.Y ?? t.y,
1282
- width: t.Width ?? t.width,
1283
- height: t.Height ?? t.height,
1284
- text: t.Text ?? t.text,
1285
- })),
1286
- });
1287
- const convertAnnotation = (a) => ({
1288
- id: a.Id ?? a.id,
1289
- annotationLabel: a.AnnotationLabel ?? a.annotationLabel,
1290
- rawText: a.RawText ?? a.rawText,
1291
- page: a.Page ?? a.page,
1292
- annotationJson: convertAnnotationJson(a.AnnotationJson ?? a.annotationJson),
1293
- parentId: a.ParentId ?? a.parentId,
1294
- annotationType: a.AnnotationType ?? a.annotationType,
1295
- structural: a.Structural ?? a.structural,
1296
- });
1297
- const convertAnnotationJson = (json) => {
1298
- if (!json)
1299
- return undefined;
1300
- // Check if it's a TextSpan
1301
- if (json.Start !== undefined || json.start !== undefined) {
1302
- return {
1303
- id: json.Id ?? json.id,
1304
- start: json.Start ?? json.start,
1305
- end: json.End ?? json.end,
1306
- text: json.Text ?? json.text,
1307
- };
1308
- }
1309
- // Otherwise it's a dictionary of single-page annotations
1310
- const result = {};
1311
- for (const [key, value] of Object.entries(json)) {
1312
- const v = value;
1313
- result[key] = {
1314
- bounds: {
1315
- top: v.Bounds?.Top ?? v.bounds?.top,
1316
- bottom: v.Bounds?.Bottom ?? v.bounds?.bottom,
1317
- left: v.Bounds?.Left ?? v.bounds?.left,
1318
- right: v.Bounds?.Right ?? v.bounds?.right,
1319
- },
1320
- tokensJsons: (v.TokensJsons || v.tokensJsons || []).map((t) => ({
1321
- pageIndex: t.PageIndex ?? t.pageIndex,
1322
- tokenIndex: t.TokenIndex ?? t.tokenIndex,
1323
- })),
1324
- rawText: v.RawText ?? v.rawText,
1325
- };
1326
- }
1327
- return result;
1328
- };
1329
- const convertRelationship = (r) => ({
1330
- id: r.Id ?? r.id,
1331
- relationshipLabel: r.RelationshipLabel ?? r.relationshipLabel,
1332
- sourceAnnotationIds: r.SourceAnnotationIds ?? r.sourceAnnotationIds ?? [],
1333
- targetAnnotationIds: r.TargetAnnotationIds ?? r.targetAnnotationIds ?? [],
1334
- structural: r.Structural ?? r.structural,
1335
- });
1336
- return {
1337
- title: parsed.Title ?? parsed.title,
1338
- content: parsed.Content ?? parsed.content,
1339
- description: parsed.Description ?? parsed.description,
1340
- pageCount: parsed.PageCount ?? parsed.pageCount,
1341
- pawlsFileContent: (parsed.PawlsFileContent || parsed.pawlsFileContent || []).map(convertPawlsPage),
1342
- docLabels: parsed.DocLabels ?? parsed.docLabels ?? [],
1343
- labelledText: (parsed.LabelledText || parsed.labelledText || []).map(convertAnnotation),
1344
- relationships: (parsed.Relationships || parsed.relationships)?.map(convertRelationship),
1345
- };
1284
+ return readOpenContractExport(JSON.parse(result));
1346
1285
  }
1347
1286
  /**
1348
1287
  * Convert a DOCX file to an anchor-addressed Markdown projection.
@@ -1584,9 +1523,7 @@ export async function createExternalAnnotationSet(document, documentId) {
1584
1523
  const error = parseError(result);
1585
1524
  throw new Error(`Failed to create external annotation set: ${error.error}`);
1586
1525
  }
1587
- const parsed = JSON.parse(result);
1588
- // Convert from PascalCase to camelCase
1589
- return convertExternalAnnotationSet(parsed);
1526
+ return readExternalAnnotationSet(JSON.parse(result));
1590
1527
  }
1591
1528
  /**
1592
1529
  * Validate an external annotation set against a document.
@@ -1622,18 +1559,7 @@ export async function validateExternalAnnotations(document, annotationSet) {
1622
1559
  const error = parseError(result);
1623
1560
  throw new Error(`Failed to validate external annotations: ${error.error}`);
1624
1561
  }
1625
- const parsed = JSON.parse(result);
1626
- return {
1627
- isValid: parsed.IsValid ?? parsed.isValid,
1628
- hashMismatch: parsed.HashMismatch ?? parsed.hashMismatch,
1629
- issues: (parsed.Issues || parsed.issues || []).map((i) => ({
1630
- annotationId: i.AnnotationId ?? i.annotationId,
1631
- issueType: i.IssueType ?? i.issueType,
1632
- description: i.Description ?? i.description,
1633
- expectedText: i.ExpectedText ?? i.expectedText,
1634
- actualText: i.ActualText ?? i.actualText,
1635
- })),
1636
- };
1562
+ return readExternalAnnotationValidation(JSON.parse(result));
1637
1563
  }
1638
1564
  /**
1639
1565
  * Convert a DOCX document to HTML with external annotations projected.
@@ -1673,8 +1599,7 @@ export async function convertDocxToHtmlWithExternalAnnotations(document, annotat
1673
1599
  const error = parseError(result);
1674
1600
  throw new Error(`Failed to convert with external annotations: ${error.error}`);
1675
1601
  }
1676
- const parsed = JSON.parse(result);
1677
- return parsed.Html ?? parsed.html;
1602
+ return readProjectedHtml(JSON.parse(result));
1678
1603
  }
1679
1604
  /**
1680
1605
  * Search for text in a document and return character offsets.
@@ -1824,107 +1749,6 @@ export function findTextOccurrences(documentText, searchText, maxResults = 100)
1824
1749
  return results;
1825
1750
  }
1826
1751
  // Helper function to convert PascalCase response to camelCase ExternalAnnotationSet
1827
- function convertExternalAnnotationSet(parsed) {
1828
- const convertLabel = (l) => ({
1829
- id: l.Id ?? l.id,
1830
- color: l.Color ?? l.color,
1831
- description: l.Description ?? l.description ?? "",
1832
- icon: l.Icon ?? l.icon ?? "",
1833
- text: l.Text ?? l.text,
1834
- labelType: l.LabelType ?? l.labelType ?? "text",
1835
- });
1836
- const convertPawlsPage = (p) => ({
1837
- page: {
1838
- width: p.Page?.Width ?? p.page?.width,
1839
- height: p.Page?.Height ?? p.page?.height,
1840
- index: p.Page?.Index ?? p.page?.index,
1841
- },
1842
- tokens: (p.Tokens || p.tokens || []).map((t) => ({
1843
- x: t.X ?? t.x,
1844
- y: t.Y ?? t.y,
1845
- width: t.Width ?? t.width,
1846
- height: t.Height ?? t.height,
1847
- text: t.Text ?? t.text,
1848
- })),
1849
- });
1850
- const convertAnnotation = (a) => ({
1851
- id: a.Id ?? a.id,
1852
- annotationLabel: a.AnnotationLabel ?? a.annotationLabel,
1853
- rawText: a.RawText ?? a.rawText,
1854
- page: a.Page ?? a.page,
1855
- annotationJson: convertAnnotationJson(a.AnnotationJson ?? a.annotationJson),
1856
- parentId: a.ParentId ?? a.parentId,
1857
- annotationType: a.AnnotationType ?? a.annotationType,
1858
- structural: a.Structural ?? a.structural,
1859
- });
1860
- const convertAnnotationJson = (json) => {
1861
- if (!json)
1862
- return undefined;
1863
- // Check if it's a TextSpan
1864
- if (json.Start !== undefined || json.start !== undefined) {
1865
- return {
1866
- id: json.Id ?? json.id,
1867
- start: json.Start ?? json.start,
1868
- end: json.End ?? json.end,
1869
- text: json.Text ?? json.text,
1870
- };
1871
- }
1872
- // Otherwise it's a dictionary of single-page annotations
1873
- const result = {};
1874
- for (const [key, value] of Object.entries(json)) {
1875
- const v = value;
1876
- result[key] = {
1877
- bounds: {
1878
- top: v.Bounds?.Top ?? v.bounds?.top,
1879
- bottom: v.Bounds?.Bottom ?? v.bounds?.bottom,
1880
- left: v.Bounds?.Left ?? v.bounds?.left,
1881
- right: v.Bounds?.Right ?? v.bounds?.right,
1882
- },
1883
- tokensJsons: (v.TokensJsons || v.tokensJsons || []).map((t) => ({
1884
- pageIndex: t.PageIndex ?? t.pageIndex,
1885
- tokenIndex: t.TokenIndex ?? t.tokenIndex,
1886
- })),
1887
- rawText: v.RawText ?? v.rawText,
1888
- };
1889
- }
1890
- return result;
1891
- };
1892
- const convertRelationship = (r) => ({
1893
- id: r.Id ?? r.id,
1894
- relationshipLabel: r.RelationshipLabel ?? r.relationshipLabel,
1895
- sourceAnnotationIds: r.SourceAnnotationIds ?? r.sourceAnnotationIds ?? [],
1896
- targetAnnotationIds: r.TargetAnnotationIds ?? r.targetAnnotationIds ?? [],
1897
- structural: r.Structural ?? r.structural,
1898
- });
1899
- // Convert label dictionaries
1900
- const textLabels = {};
1901
- const rawTextLabels = parsed.TextLabels || parsed.textLabels || {};
1902
- for (const [key, value] of Object.entries(rawTextLabels)) {
1903
- textLabels[key] = convertLabel(value);
1904
- }
1905
- const docLabelDefinitions = {};
1906
- const rawDocLabelDefs = parsed.DocLabelDefinitions || parsed.docLabelDefinitions || {};
1907
- for (const [key, value] of Object.entries(rawDocLabelDefs)) {
1908
- docLabelDefinitions[key] = convertLabel(value);
1909
- }
1910
- return {
1911
- documentId: parsed.DocumentId ?? parsed.documentId,
1912
- documentHash: parsed.DocumentHash ?? parsed.documentHash,
1913
- createdAt: parsed.CreatedAt ?? parsed.createdAt,
1914
- updatedAt: parsed.UpdatedAt ?? parsed.updatedAt,
1915
- version: parsed.Version ?? parsed.version,
1916
- title: parsed.Title ?? parsed.title,
1917
- content: parsed.Content ?? parsed.content,
1918
- description: parsed.Description ?? parsed.description,
1919
- pageCount: parsed.PageCount ?? parsed.pageCount,
1920
- pawlsFileContent: (parsed.PawlsFileContent || parsed.pawlsFileContent || []).map(convertPawlsPage),
1921
- docLabels: parsed.DocLabels ?? parsed.docLabels ?? [],
1922
- labelledText: (parsed.LabelledText || parsed.labelledText || []).map(convertAnnotation),
1923
- relationships: (parsed.Relationships || parsed.relationships)?.map(convertRelationship),
1924
- textLabels,
1925
- docLabelDefinitions,
1926
- };
1927
- }
1928
1752
  // ============================================================================
1929
1753
  // Incremental Annotation Overlay API (Issue #106)
1930
1754
  // ============================================================================
@@ -1965,8 +1789,7 @@ export async function projectAnnotationsOntoHtml(html, annotationSet, projection
1965
1789
  const error = parseError(result);
1966
1790
  throw new Error(`Failed to project annotations: ${error.error}`);
1967
1791
  }
1968
- const parsed = JSON.parse(result);
1969
- return parsed.Html ?? parsed.html;
1792
+ return readProjectedHtml(JSON.parse(result));
1970
1793
  }
1971
1794
  /**
1972
1795
  * Add a single annotation to existing HTML without re-converting the document.
@@ -1996,8 +1819,7 @@ export async function addAnnotationToHtml(html, annotation, label, projectionOpt
1996
1819
  const error = parseError(result);
1997
1820
  throw new Error(`Failed to add annotation to HTML: ${error.error}`);
1998
1821
  }
1999
- const parsed = JSON.parse(result);
2000
- return parsed.Html ?? parsed.html;
1822
+ return readProjectedHtml(JSON.parse(result));
2001
1823
  }
2002
1824
  /**
2003
1825
  * Remove a single annotation from HTML by annotation ID.
@@ -2022,8 +1844,7 @@ export async function removeAnnotationFromHtml(html, annotationId, cssClassPrefi
2022
1844
  const error = parseError(result);
2023
1845
  throw new Error(`Failed to remove annotation from HTML: ${error.error}`);
2024
1846
  }
2025
- const parsed = JSON.parse(result);
2026
- return parsed.Html ?? parsed.html;
1847
+ return readProjectedHtml(JSON.parse(result));
2027
1848
  }
2028
1849
  /**
2029
1850
  * Generate CSS to hide annotations with specific label IDs.