@zh-xx/antu 0.9.1 → 0.11.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.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@zh-xx/antu",
3
- "version": "0.9.1",
4
- "description": "Antu: legal diagrams (fact, procedure, relationship, justification) from JSON, as one offline HTML page. The command line and the MCP server.",
3
+ "version": "0.11.0",
4
+ "description": "Antu: legal diagrams (fact, procedure, relationship, justification) from JSON, as one offline HTML page. The command line, the MCP server, and the entries to embed a diagram in an application.",
5
5
  "license": "AGPL-3.0-or-later",
6
6
  "author": "Ji Cheng",
7
7
  "homepage": "https://github.com/zh-xx/Antu",
@@ -26,6 +26,21 @@
26
26
  "antu": "bin/antu.mjs",
27
27
  "antu-mcp": "bin/antu-mcp.mjs"
28
28
  },
29
+ "exports": {
30
+ "./embed": {
31
+ "types": "./embed/antu-embed.d.ts",
32
+ "default": "./embed/antu-embed.js"
33
+ },
34
+ "./validate": {
35
+ "types": "./lib/validate.d.ts",
36
+ "default": "./lib/validate.mjs"
37
+ },
38
+ "./html": {
39
+ "types": "./lib/html.d.ts",
40
+ "default": "./lib/html.mjs"
41
+ },
42
+ "./package.json": "./package.json"
43
+ },
29
44
  "engines": {
30
45
  "node": ">=18"
31
46
  },
package/server.json CHANGED
@@ -6,12 +6,12 @@
6
6
  "url": "https://github.com/zh-xx/Antu",
7
7
  "source": "github"
8
8
  },
9
- "version": "0.9.1",
9
+ "version": "0.11.0",
10
10
  "packages": [
11
11
  {
12
12
  "registryType": "npm",
13
13
  "identifier": "@zh-xx/antu",
14
- "version": "0.9.1",
14
+ "version": "0.11.0",
15
15
  "transport": {
16
16
  "type": "stdio"
17
17
  }
@@ -112,3 +112,15 @@ diagram looks good. Always run `preview` and look before delivering.
112
112
  - **Keep the summary short.** `summary` fits one line of the card (about 22 full-width
113
113
  characters); a longer one is **rejected**, not truncated, because it would overflow
114
114
  the card. Put the long text in `detail`.
115
+
116
+ ## The examples
117
+
118
+ Each adds one idea (`<name>.zh-CN.json`, `<name>.en.json`):
119
+
120
+ - `1-minimal`: two parties, no `groups` (every card on the axis)
121
+ - `2-single-actor`: one party
122
+ - `3-groups`: `groupId` picks the side
123
+ - `4-views`: the same data, two views
124
+ - `5-duration`: spans and approximate times
125
+ - `6-sources`: facts traced to sources
126
+ - `7-undated`: no `date`
@@ -75,8 +75,9 @@ it twice.
75
75
  ## Big diagrams
76
76
 
77
77
  A reader can fold each issue up to its conclusion (its box title is a button; the dock has "Fold issues"), so a
78
- diagram of several issues can be read at a glance. Nothing to write for it: it is not in the JSON. Still split a
79
- diagram that grows past about 60 nodes.
78
+ diagram of several issues can be read at a glance. Nothing to write for it: it is not in the JSON. A diagram whose
79
+ text would be under 9 px fitted to a screen **opens with its issues folded** (`layout` says "Opens with the issues
80
+ folded"). Still split a diagram that grows past about 60 nodes.
80
81
 
81
82
  ## After writing
82
83
 
@@ -98,3 +99,14 @@ render the self-contained HTML
98
99
  - **`holds` is not for facts and norms; `date` is only for facts** (`2032-04-14` or `2032-04-14T22:22`).
99
100
  - **At least one conclusion has no outgoing link**: the conclusion the whole reasoning leads to.
100
101
  - **Do not invent a date**: leave `date` out when the source does not give one.
102
+
103
+ ## The examples
104
+
105
+ Each adds one idea (`<name>.zh-CN.json`, `<name>.en.json`):
106
+
107
+ - `1-minimal`: conclusion, norm, element, two facts
108
+ - `2-against-and-rejected`: the rejected side
109
+ - `3-issues`: one box per issue
110
+ - `4-shared-fact`: one fact, two issues
111
+ - `5-sources`: time and sources
112
+ - `6-all-or-any`: and / or
@@ -107,3 +107,15 @@ delivering.
107
107
  The reader can switch to the **route map**: the main line as one line, with rework loops and early endings
108
108
  hanging below it. It needs a clear main line, so **mark `main` along the whole line from start to end**
109
109
  (or on none, and the engine infers it). `kind: "route"` on `layout`, `preview` and `render` shows it.
110
+
111
+ ## The examples
112
+
113
+ Each adds one idea (`<name>.zh-CN.json`, `<name>.en.json`):
114
+
115
+ - `1-minimal`: three steps in a line
116
+ - `2-decision`: decision point, conditions, edge back
117
+ - `3-branches`: several edges from one step
118
+ - `4-stages`: stages, actors, outcomes
119
+ - `5-inferred-spine`: engine infers the main line
120
+ - `6-merged-edges`: several edges to one target
121
+ - `7-rules`: what may happen at any time
@@ -90,3 +90,13 @@ render the self-contained HTML
90
90
  - **`share` is only for `equity`, `amount` only for `debt` and `contract`, `secures` only for `guarantee`.**
91
91
  - **An entity nothing relates to floats beside the diagram** (a hint): relate it or leave it out.
92
92
  - **`amount` is a string**, written the way it should be read, with the currency.
93
+
94
+ ## The examples
95
+
96
+ Each adds one idea (`<name>.zh-CN.json`, `<name>.en.json`):
97
+
98
+ - `1-minimal`: one loan
99
+ - `2-equity`: who holds whom, how much
100
+ - `3-guarantee`: names the claim it secures
101
+ - `4-groups`: camps
102
+ - `5-kinship`: undirected beside directed relations