@mermanjs/node 0.8.0-alpha.5

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 (47) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/LICENSE-APACHE +201 -0
  3. package/LICENSE-MIT +21 -0
  4. package/README.md +11 -0
  5. package/THIRD_PARTY_LICENSES/beautiful-mermaid/LICENSE +21 -0
  6. package/THIRD_PARTY_LICENSES/cose-base-v1/LICENSE +21 -0
  7. package/THIRD_PARTY_LICENSES/cose-base-v2/LICENSE +21 -0
  8. package/THIRD_PARTY_LICENSES/cytoscape/LICENSE +19 -0
  9. package/THIRD_PARTY_LICENSES/cytoscape-cose-bilkent/LICENSE +21 -0
  10. package/THIRD_PARTY_LICENSES/cytoscape-fcose/LICENSE +19 -0
  11. package/THIRD_PARTY_LICENSES/d3-shape/LICENSE +13 -0
  12. package/THIRD_PARTY_LICENSES/dagre/LICENSE +19 -0
  13. package/THIRD_PARTY_LICENSES/dompurify/LICENSE +202 -0
  14. package/THIRD_PARTY_LICENSES/eclipse-elk/LICENSE.md +264 -0
  15. package/THIRD_PARTY_LICENSES/elkjs/LICENSE.md +264 -0
  16. package/THIRD_PARTY_LICENSES/fmin/LICENSE +27 -0
  17. package/THIRD_PARTY_LICENSES/graphlib/LICENSE +19 -0
  18. package/THIRD_PARTY_LICENSES/katex-fonts/FONT_NOTICE.txt +12 -0
  19. package/THIRD_PARTY_LICENSES/katex-fonts/OFL.txt +85 -0
  20. package/THIRD_PARTY_LICENSES/layout-base-v1/LICENSE +21 -0
  21. package/THIRD_PARTY_LICENSES/layout-base-v2/LICENSE +21 -0
  22. package/THIRD_PARTY_LICENSES/mermaid/LICENSE +21 -0
  23. package/THIRD_PARTY_LICENSES/mermaid-ascii/LICENSE +21 -0
  24. package/THIRD_PARTY_LICENSES/mermaid-rs-renderer/LICENSE +21 -0
  25. package/THIRD_PARTY_LICENSES/ratex/LICENSE +27 -0
  26. package/THIRD_PARTY_LICENSES/ratex/THIRD_PARTY_NOTICES.txt +19 -0
  27. package/THIRD_PARTY_LICENSES/rough-rs/LICENSE +21 -0
  28. package/THIRD_PARTY_LICENSES/roughjs/LICENSE +21 -0
  29. package/THIRD_PARTY_LICENSES/rust-cargo-dependencies.json +5562 -0
  30. package/THIRD_PARTY_LICENSES/sanitize-url/LICENSE +21 -0
  31. package/THIRD_PARTY_LICENSES/venn-js/LICENSE +22 -0
  32. package/THIRD_PARTY_LICENSES/wasm-minimal-protocol/LICENSE +24 -0
  33. package/THIRD_PARTY_LICENSES/zenuml-core/LICENSE +21 -0
  34. package/THIRD_PARTY_NOTICES.md +524 -0
  35. package/dist/bounded-executor.mjs +132 -0
  36. package/dist/candidates/native.mjs +51 -0
  37. package/dist/candidates/wrap-engine.mjs +28 -0
  38. package/dist/engine.mjs +1255 -0
  39. package/dist/errors.mjs +1199 -0
  40. package/dist/generated/binding-contract.mjs +873 -0
  41. package/dist/generated/capability-surface.mjs +66 -0
  42. package/dist/generated/node-wire-contract.json +122 -0
  43. package/dist/index.d.ts +239 -0
  44. package/dist/index.mjs +22 -0
  45. package/dist/native-loader.mjs +112 -0
  46. package/dist/transport-contract.mjs +87 -0
  47. package/package.json +50 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2017 Braintree
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2013 Ben Frederickson
4
+ Copyright (c) 2021 Samuel Gratzl
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
@@ -0,0 +1,24 @@
1
+ This is free and unencumbered software released into the public domain.
2
+
3
+ Anyone is free to copy, modify, publish, use, compile, sell, or
4
+ distribute this software, either in source code form or as a compiled
5
+ binary, for any purpose, commercial or non-commercial, and by any
6
+ means.
7
+
8
+ In jurisdictions that recognize copyright laws, the author or authors
9
+ of this software dedicate any and all copyright interest in the
10
+ software to the public domain. We make this dedication for the benefit
11
+ of the public at large and to the detriment of our heirs and
12
+ successors. We intend this dedication to be an overt act of
13
+ relinquishment in perpetuity of all present and future rights to this
14
+ software under copyright law.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20
+ OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22
+ OTHER DEALINGS IN THE SOFTWARE.
23
+
24
+ For more information, please refer to <https://unlicense.org>
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2022 Peng Xiao
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,524 @@
1
+ # Third-Party Notices
2
+
3
+ <!-- This file is generated. Run `python3 scripts/verify-third-party-licenses.py --write`. -->
4
+
5
+ Merman is an independent, headless Rust implementation of Mermaid-compatible behavior. It
6
+ is not affiliated with or endorsed by Mermaid or the projects listed below.
7
+
8
+ The machine-readable source of truth is [`docs/release/THIRD_PARTY_COMPONENTS.json`](docs/release/THIRD_PARTY_COMPONENTS.json).
9
+ It records exact source revisions, local relationships, artifact scopes, and SHA-256-bound
10
+ license or notice files. This inventory is engineering evidence, not legal advice.
11
+
12
+ ## Artifact Scopes
13
+
14
+ ### `ascii-render`
15
+
16
+ ASCII rendering source, copied fixtures, and behavior references.
17
+
18
+ Components: `beautiful-mermaid`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`.
19
+
20
+ ### `cli-default`
21
+
22
+ The default CLI feature closure, including ELK layout and RaTeX math/font support.
23
+
24
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
25
+
26
+ ### `elk-render`
27
+
28
+ Render artifacts that include the source-translated Eclipse ELK layered implementation.
29
+
30
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
31
+
32
+ ### `playground-reference`
33
+
34
+ Third-party projects loaded by or used as behavioral evidence for the deployed Playground.
35
+
36
+ Components: `d3-shape`, `dompurify`, `elkjs`, `mermaid`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
37
+
38
+ ### `ratex-render`
39
+
40
+ Render artifacts that link RaTeX and embed the KaTeX TrueType font payload.
41
+
42
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
43
+
44
+ ### `rust-render-base`
45
+
46
+ Headless parser and renderer artifacts without optional ELK, RaTeX, ASCII, or Typst transport features.
47
+
48
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
49
+
50
+ ### `source-archive`
51
+
52
+ Conservative repository source archive inventory covering every translated, copied, linked, embedded, fixture, and behavior-reference component recorded here.
53
+
54
+ Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
55
+
56
+ ### `typst-publish`
57
+
58
+ The published Typst WASM profile, including ELK and wasm-minimal-protocol but excluding RaTeX.
59
+
60
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `wasm-minimal-protocol`, `zenuml-core`.
61
+
62
+ ### `web-analysis`
63
+
64
+ Browser analysis artifacts containing the Merman core parser, sanitizer, diagram detection, and diagnostics without renderer or ASCII components.
65
+
66
+ Components: `dompurify`, `mermaid`, `sanitize-url`, `zenuml-core`.
67
+
68
+ ### `web-ascii`
69
+
70
+ Browser ASCII artifacts combining the core parser legal closure with the ASCII renderer's copied fixtures and behavior references.
71
+
72
+ Components: `beautiful-mermaid`, `dompurify`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `sanitize-url`, `zenuml-core`.
73
+
74
+ ### `web-editor`
75
+
76
+ Browser editor artifacts built on the analysis and core-parser legal closure without SVG or ASCII rendering components.
77
+
78
+ Components: `dompurify`, `mermaid`, `sanitize-url`, `zenuml-core`.
79
+
80
+ ### `web-full`
81
+
82
+ The published complete browser SVG renderer, including Cytoscape, ELK, RaTeX, and the embedded KaTeX font payload.
83
+
84
+ Components: `beautiful-mermaid`, `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `mermaid-ascii`, `mermaid-rs-renderer`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
85
+
86
+ ### `web-render`
87
+
88
+ Published complete browser SVG renderer with Cytoscape, ELK, RaTeX, and the embedded KaTeX font payload, but without analysis, ASCII, or editor APIs.
89
+
90
+ Components: `cose-base-v1`, `cose-base-v2`, `cytoscape`, `cytoscape-cose-bilkent`, `cytoscape-fcose`, `d3-shape`, `dagre`, `dompurify`, `eclipse-elk`, `elkjs`, `fmin`, `graphlib`, `katex-fonts`, `layout-base-v1`, `layout-base-v2`, `mermaid`, `ratex`, `rough-rs`, `roughjs`, `sanitize-url`, `venn-js`, `zenuml-core`.
91
+
92
+ ## Components
93
+
94
+ ### beautiful-mermaid (`beautiful-mermaid`)
95
+
96
+ The ASCII renderer uses this implementation as a behavior and presentation reference; its parser is not embedded.
97
+
98
+ - Version: `1.1.3`
99
+ - Source: <https://github.com/lukilabs/beautiful-mermaid>
100
+ - Source ref: `main`
101
+ - Source commit: `2ac8bbbb060ca0a65a6a21f3200bd99b1587b488`
102
+ - Source path: `.`
103
+ - Relationship: `behavior-reference`
104
+ - License expression: `MIT`
105
+ - Artifact scopes: `ascii-render`, `source-archive`, `web-ascii`, `web-full`
106
+ - Local evidence: `crates/merman-ascii`
107
+ - Legal files:
108
+ - [`THIRD_PARTY_LICENSES/beautiful-mermaid/LICENSE`](THIRD_PARTY_LICENSES/beautiful-mermaid/LICENSE) (license, SHA-256 `f05f5a4009eae7fadfd4a55f77ffe10948f621982d56076667e68afbb54de894`)
109
+
110
+ ### cose-base 1.x (`cose-base-v1`)
111
+
112
+ Manatee contains Rust translations and adaptations of CoSE layout behavior from this baseline.
113
+
114
+ - Version: `1.0.3`
115
+ - Source: <https://github.com/iVis-at-Bilkent/cose-base.git>
116
+ - Source ref: `v1.0.3`
117
+ - Source commit: `914bfe712991534af1d8b795d6f262687edc2563`
118
+ - Source path: `.`
119
+ - Relationship: `modified`, `translated`
120
+ - License expression: `MIT`
121
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
122
+ - Local evidence: `crates/manatee`
123
+ - Legal files:
124
+ - [`THIRD_PARTY_LICENSES/cose-base-v1/LICENSE`](THIRD_PARTY_LICENSES/cose-base-v1/LICENSE) (license, SHA-256 `5fb3cf4a14c3c5af6e473a192df8bca10c77754e3a0c6492c79fb92a76a5478a`)
125
+
126
+ ### cose-base 2.x (`cose-base-v2`)
127
+
128
+ Manatee contains Rust translations and adaptations of the newer CoSE base behavior from this baseline.
129
+
130
+ - Version: `2.2.0`
131
+ - Source: <https://github.com/iVis-at-Bilkent/cose-base.git>
132
+ - Source ref: `v2.2.0`
133
+ - Source commit: `37f07ed2b8803211ec6c74110574cc47c156a136`
134
+ - Source path: `.`
135
+ - Relationship: `modified`, `translated`
136
+ - License expression: `MIT`
137
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
138
+ - Local evidence: `crates/manatee`
139
+ - Legal files:
140
+ - [`THIRD_PARTY_LICENSES/cose-base-v2/LICENSE`](THIRD_PARTY_LICENSES/cose-base-v2/LICENSE) (license, SHA-256 `5fb3cf4a14c3c5af6e473a192df8bca10c77754e3a0c6492c79fb92a76a5478a`)
141
+
142
+ ### Cytoscape.js (`cytoscape`)
143
+
144
+ Architecture layout and styling use source-backed Cytoscape behavior and defaults.
145
+
146
+ - Version: `3.34.0`
147
+ - Source: <https://github.com/cytoscape/cytoscape.js.git>
148
+ - Source ref: `v3.34.0`
149
+ - Source commit: `22716bfb75834b56fa6679648b0abb06f4ae691c`
150
+ - Source path: `.`
151
+ - Relationship: `behavior-reference`, `translated`
152
+ - License expression: `MIT`
153
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
154
+ - Local evidence: `crates/manatee`, `crates/merman-render/src/architecture.rs`
155
+ - Legal files:
156
+ - [`THIRD_PARTY_LICENSES/cytoscape/LICENSE`](THIRD_PARTY_LICENSES/cytoscape/LICENSE) (license, SHA-256 `eb319c6e6f233607f71e8e2f450391751883cfc0eeb3ca7ef574c13d1d9c2203`)
157
+
158
+ ### cytoscape.js-cose-bilkent (`cytoscape-cose-bilkent`)
159
+
160
+ Manatee includes source-backed CoSE-Bilkent layout behavior translated to Rust.
161
+
162
+ - Version: `4.1.0`
163
+ - Source: <https://github.com/iVis-at-Bilkent/cytoscape.js-cose-bilkent.git>
164
+ - Source ref: `v4.1.0`
165
+ - Source commit: `999090a8438b4f14788d636ef4fd7a5355e29e8c`
166
+ - Source path: `.`
167
+ - Relationship: `modified`, `translated`
168
+ - License expression: `MIT`
169
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
170
+ - Local evidence: `crates/manatee`
171
+ - Legal files:
172
+ - [`THIRD_PARTY_LICENSES/cytoscape-cose-bilkent/LICENSE`](THIRD_PARTY_LICENSES/cytoscape-cose-bilkent/LICENSE) (license, SHA-256 `440fc58a56a12814e417d2b341da89b050da052dc75bdb235607d37ec5fe74ef`)
173
+
174
+ ### cytoscape.js-fcose (`cytoscape-fcose`)
175
+
176
+ The headless Architecture layout is a modified Rust implementation of FCoSE behavior.
177
+
178
+ - Version: `2.2.0`
179
+ - Source: <https://github.com/iVis-at-Bilkent/cytoscape.js-fcose.git>
180
+ - Source ref: `v2.2.0`
181
+ - Source commit: `78afcf96512a409abc903699277ad616c02dfad9`
182
+ - Source path: `.`
183
+ - Relationship: `modified`, `translated`
184
+ - License expression: `MIT`
185
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
186
+ - Local evidence: `crates/manatee`, `crates/merman-render/src/architecture.rs`
187
+ - Legal files:
188
+ - [`THIRD_PARTY_LICENSES/cytoscape-fcose/LICENSE`](THIRD_PARTY_LICENSES/cytoscape-fcose/LICENSE) (license, SHA-256 `2837634f403949215760fcdd2fa1ed0c64875d02099ecc8318c704b852f1421d`)
189
+
190
+ ### d3-shape (`d3-shape`)
191
+
192
+ The SVG parity layer translates D3 curve algorithms, including basis, natural, step, cardinal, bump, and Catmull-Rom variants.
193
+
194
+ - Version: `3.2.0`
195
+ - Source: <https://github.com/d3/d3-shape.git>
196
+ - Source ref: `npm:d3-shape@3.2.0`
197
+ - Source commit: `8ec82658454750cfa29efb1e0ea514e3dd9b2297`
198
+ - Source path: `src/curve`
199
+ - Relationship: `modified`, `translated`
200
+ - License expression: `ISC`
201
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
202
+ - Local evidence: `crates/merman-render/src/svg/parity/curve.rs`
203
+ - Legal files:
204
+ - [`THIRD_PARTY_LICENSES/d3-shape/LICENSE`](THIRD_PARTY_LICENSES/d3-shape/LICENSE) (license, SHA-256 `faa682e3e430941f958d26180458f5934a62f58dac4d70ccdd15608c15d0f884`)
205
+
206
+ ### Dagre (`dagre`)
207
+
208
+ Dugong is a modified Rust translation of Dagre's directed graph layout pipeline.
209
+
210
+ - Version: `2.0.2`
211
+ - Source: <https://github.com/dagrejs/dagre.git>
212
+ - Source ref: `v2.0.2`
213
+ - Source commit: `ba986662394f8f3ed608717194e5958f3386ce01`
214
+ - Source path: `lib`
215
+ - Relationship: `modified`, `translated`
216
+ - License expression: `MIT`
217
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
218
+ - Local evidence: `crates/dugong`
219
+ - Legal files:
220
+ - [`THIRD_PARTY_LICENSES/dagre/LICENSE`](THIRD_PARTY_LICENSES/dagre/LICENSE) (license, SHA-256 `6a349742a6cb219d5a2fc8d0844f6d89a6efc62e20c664450d884fc7ff2d6015`)
221
+
222
+ ### DOMPurify (`dompurify`)
223
+
224
+ Merman selects DOMPurify's Apache-2.0 option for generated sanitizer defaults; the exact upstream Apache-2.0 license file is preserved.
225
+
226
+ - Version: `3.4.13`
227
+ - Source: <https://github.com/cure53/DOMPurify.git>
228
+ - Source ref: `3.4.13`
229
+ - Source commit: `3067f774676975de12306effd6db6ad7a9a8c17f`
230
+ - Source path: `.`
231
+ - Relationship: `generated`, `translated`
232
+ - License expression: `(Apache-2.0 OR MPL-2.0)`
233
+ - Selected license path: `Apache-2.0`
234
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
235
+ - Local evidence: `crates/merman-core/src/generated/dompurify_defaults.rs`
236
+ - Legal files:
237
+ - [`THIRD_PARTY_LICENSES/dompurify/LICENSE`](THIRD_PARTY_LICENSES/dompurify/LICENSE) (license, SHA-256 `cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30`)
238
+
239
+ ### Eclipse Layout Kernel (`eclipse-elk`)
240
+
241
+ The merman-elk-layered crate contains a modified Rust source translation of Eclipse ELK layered algorithms under EPL-2.0.
242
+
243
+ - Version: `0.9.1`
244
+ - Source: <https://github.com/eclipse-elk/elk.git>
245
+ - Source ref: `v0.9.1`
246
+ - Source commit: `62d5909f96fad541bc101ad52dabaece6b7eab7e`
247
+ - Source path: `plugins/org.eclipse.elk.alg.layered`
248
+ - Relationship: `modified`, `translated`
249
+ - License expression: `EPL-2.0`
250
+ - Artifact scopes: `cli-default`, `elk-render`, `source-archive`, `typst-publish`, `web-full`, `web-render`
251
+ - Local evidence: `crates/merman-elk-layered`, `crates/merman-layout-elk`
252
+ - Legal files:
253
+ - [`THIRD_PARTY_LICENSES/eclipse-elk/LICENSE.md`](THIRD_PARTY_LICENSES/eclipse-elk/LICENSE.md) (license, SHA-256 `89591d4578fb1ebd91501312a3d25f021bd865a2e436641c1cf7b1bc7e3c1617`)
254
+
255
+ ### elkjs (`elkjs`)
256
+
257
+ Mermaid's ELK adapter behavior is compared against this JavaScript distribution, which is generated from Eclipse ELK sources.
258
+
259
+ - Version: `0.9.3`
260
+ - Source: <https://github.com/kieler/elkjs.git>
261
+ - Source ref: `npm:elkjs@0.9.3`
262
+ - Source commit: `a8304cf79fde75bc2ab1a89d28320f53f8637436`
263
+ - Source path: `.`
264
+ - Relationship: `behavior-reference`
265
+ - License expression: `EPL-2.0`
266
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `source-archive`, `typst-publish`, `web-full`, `web-render`
267
+ - Local evidence: `crates/merman-layout-elk`, `playground`
268
+ - Legal files:
269
+ - [`THIRD_PARTY_LICENSES/elkjs/LICENSE.md`](THIRD_PARTY_LICENSES/elkjs/LICENSE.md) (license, SHA-256 `89591d4578fb1ebd91501312a3d25f021bd865a2e436641c1cf7b1bc7e3c1617`)
270
+
271
+ ### fmin (`fmin`)
272
+
273
+ The Venn layout kernel translates the fmin Nelder-Mead and conjugate-gradient optimization behavior.
274
+
275
+ - Version: `0.0.4`
276
+ - Source: <https://github.com/benfred/fmin.git>
277
+ - Source ref: `npm:fmin@0.0.4`
278
+ - Source commit: `6b155c9f4a6ecf73ea5d71666da8e5dcd418b18b`
279
+ - Source path: `.`
280
+ - Relationship: `modified`, `translated`
281
+ - License expression: `BSD-3-Clause`
282
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
283
+ - Local evidence: `crates/merman-render/src/venn.rs`
284
+ - Legal files:
285
+ - [`THIRD_PARTY_LICENSES/fmin/LICENSE`](THIRD_PARTY_LICENSES/fmin/LICENSE) (license, SHA-256 `e4503e78185bff178d3ee91835f082d05771da1b3a2d795f17e03a40251bab77`)
286
+
287
+ ### Graphlib (`graphlib`)
288
+
289
+ dugong-graphlib is a modified Rust translation of the graph model used by Dagre.
290
+
291
+ - Version: `2.2.4`
292
+ - Source: <https://github.com/dagrejs/graphlib.git>
293
+ - Source ref: `v2.2.4`
294
+ - Source commit: `380d5efa1f4ab0904539f046bdba583d14ac2add`
295
+ - Source path: `lib`
296
+ - Relationship: `modified`, `translated`
297
+ - License expression: `MIT`
298
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
299
+ - Local evidence: `crates/dugong-graphlib`
300
+ - Legal files:
301
+ - [`THIRD_PARTY_LICENSES/graphlib/LICENSE`](THIRD_PARTY_LICENSES/graphlib/LICENSE) (license, SHA-256 `6a349742a6cb219d5a2fc8d0844f6d89a6efc62e20c664450d884fc7ff2d6015`)
302
+
303
+ ### KaTeX fonts bundled by ratex-katex-fonts (`katex-fonts`)
304
+
305
+ The RaTeX SVG backend embeds twenty KaTeX TrueType fonts; those font bytes are licensed under OFL-1.1 rather than RaTeX's MIT code license.
306
+
307
+ - Version: `ratex-katex-fonts@0.1.14`
308
+ - Source: <https://github.com/erweixin/RaTeX.git>
309
+ - Source ref: `crates.io:ratex-katex-fonts@0.1.14`
310
+ - Source commit: `ae391d727ac615437c63c308f4538d971a84bede`
311
+ - Source path: `crates/ratex-katex-fonts/fonts`
312
+ - Relationship: `embedded`
313
+ - License expression: `OFL-1.1`
314
+ - Artifact scopes: `cli-default`, `ratex-render`, `source-archive`, `web-full`, `web-render`
315
+ - Local evidence: `Cargo.lock`, `crates/merman-render/src/math.rs`
316
+ - Legal files:
317
+ - [`THIRD_PARTY_LICENSES/katex-fonts/FONT_NOTICE.txt`](THIRD_PARTY_LICENSES/katex-fonts/FONT_NOTICE.txt) (notice, SHA-256 `752ba9eff7a281f5ad789528ea078b46149b10e72296625108c26a94695ad03e`)
318
+ - [`THIRD_PARTY_LICENSES/katex-fonts/OFL.txt`](THIRD_PARTY_LICENSES/katex-fonts/OFL.txt) (license, SHA-256 `f19c674290e5dc79f02e8efe16139ab56a06a7128876f5b1579ffd0db5bc897e`)
319
+
320
+ ### layout-base 1.x (`layout-base-v1`)
321
+
322
+ Manatee translates shared layout-base geometry, graph, and force-layout primitives from this baseline.
323
+
324
+ - Version: `1.0.2`
325
+ - Source: <https://github.com/iVis-at-Bilkent/layout-base.git>
326
+ - Source ref: `v1.0.2`
327
+ - Source commit: `836898aa4a88e2794774997d7128b383108a3d5a`
328
+ - Source path: `.`
329
+ - Relationship: `modified`, `translated`
330
+ - License expression: `MIT`
331
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
332
+ - Local evidence: `crates/manatee`
333
+ - Legal files:
334
+ - [`THIRD_PARTY_LICENSES/layout-base-v1/LICENSE`](THIRD_PARTY_LICENSES/layout-base-v1/LICENSE) (license, SHA-256 `eabb762d8a95109a39c9be3247325529a5239a7aca327d909c3ccdc41f3a06bf`)
335
+
336
+ ### layout-base 2.x (`layout-base-v2`)
337
+
338
+ Manatee also follows the newer layout-base behavior selected by the FCoSE dependency graph.
339
+
340
+ - Version: `2.0.1`
341
+ - Source: <https://github.com/iVis-at-Bilkent/layout-base.git>
342
+ - Source ref: `v2.0.1`
343
+ - Source commit: `3f7549940feef31416cc35ef8256282ebc4d1ecd`
344
+ - Source path: `.`
345
+ - Relationship: `modified`, `translated`
346
+ - License expression: `MIT`
347
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
348
+ - Local evidence: `crates/manatee`
349
+ - Legal files:
350
+ - [`THIRD_PARTY_LICENSES/layout-base-v2/LICENSE`](THIRD_PARTY_LICENSES/layout-base-v2/LICENSE) (license, SHA-256 `eabb762d8a95109a39c9be3247325529a5239a7aca327d909c3ccdc41f3a06bf`)
351
+
352
+ ### Mermaid (`mermaid`)
353
+
354
+ Merman independently implements Mermaid-compatible behavior while translating selected algorithms, generating defaults, copying architecture icon data, and retaining upstream fixtures and snapshots.
355
+
356
+ - Version: `11.16.1`
357
+ - Source: <https://github.com/mermaid-js/mermaid.git>
358
+ - Source ref: `mermaid@11.16.1`
359
+ - Source commit: `7ecca0cd7f1658ef74f4e7e91f925724ef403bbf`
360
+ - Source path: `packages/mermaid`
361
+ - Relationship: `behavior-reference`, `copied`, `fixtures`, `generated`, `modified`, `translated`
362
+ - License expression: `MIT`
363
+ - Artifact scopes: `ascii-render`, `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
364
+ - Local evidence: `crates/merman-core/src`, `crates/merman-render/src`, `crates/merman-render/src/svg/parity/architecture/icons.rs`, `fixtures`
365
+ - Legal files:
366
+ - [`THIRD_PARTY_LICENSES/mermaid/LICENSE`](THIRD_PARTY_LICENSES/mermaid/LICENSE) (license, SHA-256 `ec9fb67dcb25eccc416ed56e1aab819222c805a2a4bfe4cb19e7556bf2ffde80`)
367
+
368
+ ### mermaid-ascii (`mermaid-ascii`)
369
+
370
+ The ASCII renderer translates algorithms and retains a documented set of copied upstream fixtures from this source.
371
+
372
+ - Version: `git-6fffb8e`
373
+ - Source: <https://github.com/AlexanderGrooff/mermaid-ascii>
374
+ - Source ref: `master`
375
+ - Source commit: `6fffb8e2714acab2c4cb41c78894fabbc62cee56`
376
+ - Source path: `.`
377
+ - Relationship: `fixtures`, `modified`, `translated`
378
+ - License expression: `MIT`
379
+ - Artifact scopes: `ascii-render`, `source-archive`, `web-ascii`, `web-full`
380
+ - Local evidence: `crates/merman-ascii`, `crates/merman-ascii/tests/testdata/mermaid-ascii`
381
+ - Legal files:
382
+ - [`THIRD_PARTY_LICENSES/mermaid-ascii/LICENSE`](THIRD_PARTY_LICENSES/mermaid-ascii/LICENSE) (license, SHA-256 `2568bfc33918af28d45f8ba672c93c8fbdcdfbc430b8ba86228b8ea1c2469b31`)
383
+
384
+ ### mermaid-rs-renderer (`mermaid-rs-renderer`)
385
+
386
+ This Rust renderer is retained as an ASCII and headless rendering behavior reference.
387
+
388
+ - Version: `0.2.0`
389
+ - Source: <https://github.com/1jehuang/mermaid-rs-renderer>
390
+ - Source ref: `master`
391
+ - Source commit: `859253415e69dce28bd65cd5a7c1d1ae8b39f4a1`
392
+ - Source path: `.`
393
+ - Relationship: `behavior-reference`
394
+ - License expression: `MIT`
395
+ - Artifact scopes: `ascii-render`, `source-archive`, `web-ascii`, `web-full`
396
+ - Local evidence: `crates/merman-ascii`
397
+ - Legal files:
398
+ - [`THIRD_PARTY_LICENSES/mermaid-rs-renderer/LICENSE`](THIRD_PARTY_LICENSES/mermaid-rs-renderer/LICENSE) (license, SHA-256 `57ed7943c34463678a150769d4a4f6c95d2a190fe2c1977f74bc883492c94b86`)
399
+
400
+ ### RaTeX (`ratex`)
401
+
402
+ Optional math rendering links the RaTeX 0.1.14 crate family; its separately licensed embedded fonts are recorded as their own component.
403
+
404
+ - Version: `0.1.14`
405
+ - Source: <https://github.com/erweixin/RaTeX.git>
406
+ - Source ref: `crates.io:ratex-*@0.1.14`
407
+ - Source commit: `ae391d727ac615437c63c308f4538d971a84bede`
408
+ - Source path: `crates`
409
+ - Relationship: `linked`
410
+ - License expression: `MIT`
411
+ - Artifact scopes: `cli-default`, `ratex-render`, `source-archive`, `web-full`, `web-render`
412
+ - Local evidence: `Cargo.lock`, `crates/merman-render/src/math.rs`
413
+ - Legal files:
414
+ - [`THIRD_PARTY_LICENSES/ratex/LICENSE`](THIRD_PARTY_LICENSES/ratex/LICENSE) (license, SHA-256 `f65e10eaa978c50a58c5e792110b4be5014b865edcb2ade49076bfcc98fa92b0`)
415
+ - [`THIRD_PARTY_LICENSES/ratex/THIRD_PARTY_NOTICES.txt`](THIRD_PARTY_LICENSES/ratex/THIRD_PARTY_NOTICES.txt) (notice, SHA-256 `e3cf753ddd8012543a3297b62b4cf5450db1d5a3ae7ddd7afae593db927c2980`)
416
+
417
+ ### rough-rs roughr (`rough-rs`)
418
+
419
+ roughr-merman is a modified in-tree fork of the rough-rs roughr crate.
420
+
421
+ - Version: `0.12.0`
422
+ - Source: <https://github.com/orhanbalci/rough-rs.git>
423
+ - Source ref: `roughr@0.12.0`
424
+ - Source commit: `b1c2d96c944da4e74275aa09892be14e2d54445a`
425
+ - Source path: `roughr`
426
+ - Relationship: `copied`, `modified`
427
+ - License expression: `MIT`
428
+ - Artifact scopes: `cli-default`, `elk-render`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
429
+ - Local evidence: `crates/roughr`
430
+ - Legal files:
431
+ - [`THIRD_PARTY_LICENSES/rough-rs/LICENSE`](THIRD_PARTY_LICENSES/rough-rs/LICENSE) (license, SHA-256 `0bef4264af5b4af4de4b01700f27afb7bdaf7498949692ff272ebf24489b0531`)
432
+
433
+ ### Rough.js (`roughjs`)
434
+
435
+ The roughr fork aligns its randomization and drawing-operation semantics with Rough.js as used by Mermaid.
436
+
437
+ - Version: `4.6.6`
438
+ - Source: <https://github.com/pshihn/rough.git>
439
+ - Source ref: `npm:roughjs@4.6.6`
440
+ - Source commit: `56a2762171b1294d643501e8d14f120db6b27bd7`
441
+ - Source path: `src`
442
+ - Relationship: `behavior-reference`, `translated`
443
+ - License expression: `MIT`
444
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
445
+ - Local evidence: `crates/roughr`
446
+ - Legal files:
447
+ - [`THIRD_PARTY_LICENSES/roughjs/LICENSE`](THIRD_PARTY_LICENSES/roughjs/LICENSE) (license, SHA-256 `dca9a392272606ac748ac0976a2a1133f14eef841c27beaa51a844d53c56a09d`)
448
+
449
+ ### sanitize-url (`sanitize-url`)
450
+
451
+ Merman's URL sanitization behavior is a source-backed Rust translation of sanitize-url.
452
+
453
+ - Version: `7.1.1`
454
+ - Source: <https://github.com/braintree/sanitize-url.git>
455
+ - Source ref: `v7.1.1`
456
+ - Source commit: `b1e8d50e4066a9af00fa042176676374747f754b`
457
+ - Source path: `src`
458
+ - Relationship: `modified`, `translated`
459
+ - License expression: `MIT`
460
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
461
+ - Local evidence: `crates/merman-core/src/utils.rs`
462
+ - Legal files:
463
+ - [`THIRD_PARTY_LICENSES/sanitize-url/LICENSE`](THIRD_PARTY_LICENSES/sanitize-url/LICENSE) (license, SHA-256 `0984740e0c3d725c8044dec7edcefe1dbce180ef5a7bc710c251e19607000158`)
464
+
465
+ ### @upsetjs/venn.js (`venn-js`)
466
+
467
+ The Venn family uses a modified Rust translation of the venn.js geometry and layout kernel.
468
+
469
+ - Version: `2.0.0`
470
+ - Source: <https://github.com/upsetjs/venn.js.git>
471
+ - Source ref: `v2.0.0`
472
+ - Source commit: `350c835aab4a92a7570963c28f725cf9f6e5f258`
473
+ - Source path: `src`
474
+ - Relationship: `modified`, `translated`
475
+ - License expression: `MIT`
476
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-full`, `web-render`
477
+ - Local evidence: `crates/merman-core/src/diagrams/venn.rs`, `crates/merman-render/src/venn.rs`
478
+ - Legal files:
479
+ - [`THIRD_PARTY_LICENSES/venn-js/LICENSE`](THIRD_PARTY_LICENSES/venn-js/LICENSE) (license, SHA-256 `6a3508febf2cfccfee96597394543a6154a4bb0b1f91f28404be42c09e9fcb54`)
480
+
481
+ ### wasm-minimal-protocol (`wasm-minimal-protocol`)
482
+
483
+ The Typst WASM transport links wasm-minimal-protocol; its upstream license file is the Unlicense text.
484
+
485
+ - Version: `0.2.0`
486
+ - Source: <https://github.com/typst-community/wasm-minimal-protocol.git>
487
+ - Source ref: `wasm-minimal-protocol-0.2.0`
488
+ - Source commit: `cc08c96b8e7683188eb16ad315a9689b89290f85`
489
+ - Source path: `crates/macro`
490
+ - Relationship: `linked`
491
+ - License expression: `Unlicense`
492
+ - Artifact scopes: `source-archive`, `typst-publish`
493
+ - Local evidence: `Cargo.lock`, `crates/merman-typst-plugin`
494
+ - Legal files:
495
+ - [`THIRD_PARTY_LICENSES/wasm-minimal-protocol/LICENSE`](THIRD_PARTY_LICENSES/wasm-minimal-protocol/LICENSE) (license, SHA-256 `6b0382b16279f26ff69014300541967a356a666eb0b91b422f6862f6b7dad17e`)
496
+
497
+ ### ZenUML Core (`zenuml-core`)
498
+
499
+ Merman's ZenUML grammar, model, renderer, emoji/icon data, and behavior probes follow the admitted ZenUML Core 3.50.1 source baseline.
500
+
501
+ - Version: `3.50.1`
502
+ - Source: <https://github.com/mermaid-js/zenuml-core.git>
503
+ - Source ref: `v3.50.1`
504
+ - Source commit: `38404ccc14243ed54ab45b804b2eb6f2ca73af36`
505
+ - Source path: `.`
506
+ - Relationship: `behavior-reference`, `copied`, `modified`, `translated`
507
+ - License expression: `MIT`
508
+ - Artifact scopes: `cli-default`, `elk-render`, `playground-reference`, `ratex-render`, `rust-render-base`, `source-archive`, `typst-publish`, `web-analysis`, `web-ascii`, `web-editor`, `web-full`, `web-render`
509
+ - Local evidence: `crates/merman-core/src/diagrams/zenuml`, `crates/merman-render/assets/zenuml`, `crates/merman-render/src/zenuml.rs`
510
+ - Legal files:
511
+ - [`THIRD_PARTY_LICENSES/zenuml-core/LICENSE`](THIRD_PARTY_LICENSES/zenuml-core/LICENSE) (license, SHA-256 `d4a77cbf1dc0975cd4be7266972dc6d3a6c6d68d43235384d6e4b6f12934e978`)
512
+
513
+ ## Additional Generated Inventories
514
+
515
+ - `THIRD_PARTY_LICENSES/rust-cargo-dependencies.json`: cargo-about normalized runtime dependency closure (required).
516
+
517
+ ## Verification
518
+
519
+ The verifier is offline and fails closed on unknown schema fields, lock drift, missing or
520
+ unregistered files, SHA-256 mismatches, invalid artifact scopes, and notice drift:
521
+
522
+ ```bash
523
+ python3 scripts/verify-third-party-licenses.py
524
+ ```