ooxml.js 2.3.1 → 2.4.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.
Files changed (2) hide show
  1. package/README.md +29 -0
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -6,6 +6,35 @@
6
6
 
7
7
  An OOXML file is a ZIP archive of parts (an OPC "package"): `[Content_Types].xml`, relationships (`*.rels`), XML content parts, and binary parts (images, embedded objects). `ooxml.js` decodes the **whole package** into a faithful JSON model and encodes it back — part for part — so `encode(decode(file))` reproduces the original content.
8
8
 
9
+ ```mermaid
10
+ graph TD
11
+ schema("document-schema.js")
12
+ ooxml("ooxml.js")
13
+ odf("odf.js")
14
+ pdfcodec("pdf-codec")
15
+ documents("documents.js")
16
+ cli("document-cli")
17
+
18
+ schema --> ooxml
19
+ schema --> odf
20
+ schema --> pdfcodec
21
+ schema --> documents
22
+ ooxml --> documents
23
+ odf --> documents
24
+ pdfcodec --> documents
25
+ documents --> cli
26
+ odf --> cli
27
+
28
+ click schema "https://github.com/ExaDev/document-schema.js" "document-schema.js"
29
+ click ooxml "https://github.com/ExaDev/ooxml.js" "ooxml.js"
30
+ click odf "https://github.com/ExaDev/odf.js" "odf.js"
31
+ click pdfcodec "https://github.com/ExaDev/pdf-codec" "pdf-codec"
32
+ click documents "https://github.com/ExaDev/documents.js" "documents.js"
33
+ click cli "https://github.com/ExaDev/document-cli" "document-cli"
34
+
35
+ style ooxml fill:#f9a825,stroke:#333,stroke-width:3px
36
+ ```
37
+
9
38
  ## Why
10
39
 
11
40
  Semantic, typed document models are lossy and one-directional: they cannot round-trip. True round-trip requires capturing every part, relationship, and binary byte-for-byte at the content level. `ooxml.js` provides that lossless generic foundation, with ergonomic typed reading views (`Document`, `Presentation`, `Workbook`) layered on top for convenient access.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ooxml.js",
3
- "version": "2.3.1",
3
+ "version": "2.4.1",
4
4
  "description": "Type-safe, lossless round-trip conversion between OOXML packages (docx, pptx, xlsx) and JSON, built on Zod 4 codecs.",
5
5
  "type": "module",
6
6
  "repository": {