-
Notifications
You must be signed in to change notification settings - Fork 1
Comparing changes
Open a pull request
base repository: JSv4/Docxodus
base: v5.1.2
head repository: JSv4/Docxodus
compare: v5.2.0
- 8 commits
- 24 files changed
- 2 contributors
Commits on Dec 4, 2025
-
chore: remove GitHub Packages, update install docs for nuget.org
- Remove GitHub Packages publishing from workflow (now using nuget.org only) - Update redline README with simple nuget.org install command - All packages now available via: dotnet tool install --global <PackageName>
Configuration menu - View commit details
-
Copy full SHA for 4a95b91 - Browse repository at this point
Copy the full SHA 4a95b91View commit details
Commits on Dec 5, 2025
-
feat(annotations): add external annotation system (Issue #57)
Add a parallel annotation system that stores annotations externally as JSON without modifying the source DOCX file. Annotations are validated against a SHA256 document hash and projected onto HTML during rendering. Core components: - ExternalAnnotationSet: extends OpenContractDocExport with document binding (documentId, documentHash, timestamps, label definitions) - ExternalAnnotationManager: hash computation, annotation creation from offsets or text search, validation, JSON serialization - ExternalAnnotationProjector: projects annotations onto HTML as styled spans with configurable label modes (Above, Inline, Tooltip, None) WASM layer: - AOT-safe JSON deserialization using source-generated JsonContext - camelCase property naming for JavaScript interop - JSExport methods: ComputeDocumentHash, CreateExternalAnnotationSet, ValidateExternalAnnotations, ConvertDocxToHtmlWithExternalAnnotations, SearchTextOffsets TypeScript/npm: - Full type definitions for external annotation types - Wrapper functions matching WASM exports - Client-side helpers for annotation creation - Test harness with external annotation API Testing: - 21 C# unit tests for core functionality - 11 Playwright browser tests including visual demo - Visual demo renders document with annotations and JSON panel Closes #57
Configuration menu - View commit details
-
Copy full SHA for 3250f93 - Browse repository at this point
Copy the full SHA 3250f93View commit details -
Merge pull request #73 from JSv4/feature/external-annotations-issue-57
feat(annotations): add external annotation system (Issue #57)
Configuration menu - View commit details
-
Copy full SHA for 88e88b5 - Browse repository at this point
Copy the full SHA 88e88b5View commit details
Commits on Dec 6, 2025
-
fix(comparer): preserve legal numbering when comparing documents
When comparing Word documents where one has legal numbering (w:isLgl) and the other doesn't, the comparison result was losing the legal numbering definitions entirely. Root cause: The result document starts as a copy of source1, and while styles were copied from source2 via CopyMissingStylesFromOneDocToAnother, there was no equivalent for numbering definitions. Fix: Added CopyMissingNumberingFromOneDocToAnother that: - Copies missing w:abstractNum elements from revised to result - Copies missing w:num elements with proper abstractNumId remapping - Handles ID conflicts by assigning new IDs when definitions differ - Compares by content (not just ID) to detect different definitions Fixes: dotnet/Open-XML-SDK#1634
Configuration menu - View commit details
-
Copy full SHA for 5d37e1d - Browse repository at this point
Copy the full SHA 5d37e1dView commit details -
refactor(comparer): improve null-safety and content-matching in numbe…
…ring merge - Add null-safe GetIntAttribute helper for robust attribute extraction - Check for matching abstractNum content across ALL destination elements (not just by ID) to avoid duplicate definitions - Use explicit PutXDocument(toNumberingXDoc) for clarity - Add null-checks when setting abstractNumId element values - Improve code comments for maintainability
Configuration menu - View commit details
-
Copy full SHA for dd86ac7 - Browse repository at this point
Copy the full SHA dd86ac7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 10bc6da - Browse repository at this point
Copy the full SHA 10bc6daView commit details -
docs: update READMEs and fix repository URLs
- Update main README.md: - Fix installation instructions (NuGet, not GitHub Packages) - Update repository URLs from JSv4/Redlines to JSv4/Docxodus - Add format change detection to features - Expand HTML converter features (comments, pagination, headers/footers) - Add OpenContractExporter to features list - Update npm example with new APIs (metadata, format changes) - Update test count (~1,100) - Update npm/README.md: - Add new features (move detection, format changes, pagination, etc.) - Update RevisionType enum with Moved and FormatChanged - Add getDocumentMetadata and exportToOpenContract API docs - Add Web Worker API section - Add additional React hooks (useAnnotations, useDocumentStructure) - Expand ConversionOptions with new properties - Fix credits URL - Update tools READMEs: - Add environment variable documentation (DEBUG flags) - Remove outdated limitation (headers/footers now supported) - Fix license URLs to JSv4/Docxodus - Fix repository URLs in all .csproj files: - Docxodus/Docxodus.csproj - tools/redline/redline.csproj - tools/docx2html/docx2html.csproj - tools/docx2oc/docx2oc.csproj
Configuration menu - View commit details
-
Copy full SHA for d18393c - Browse repository at this point
Copy the full SHA d18393cView commit details -
Merge pull request #75 from JSv4/fix/legal-numbering-issue-1634
fix(comparer): preserve legal numbering when comparing documents
Configuration menu - View commit details
-
Copy full SHA for 8058c20 - Browse repository at this point
Copy the full SHA 8058c20View commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff v5.1.2...v5.2.0