@danielsimonjr/sciengjs 0.7.1 → 0.9.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/README.md +61 -4
- package/THIRD_PARTY_NOTICES.md +5 -0
- package/dist/config.d.ts +4 -0
- package/dist/config.js +9 -1
- package/dist/config.js.map +1 -1
- package/dist/core.js +2 -0
- package/dist/core.js.map +1 -1
- package/dist/errors.d.ts +2 -0
- package/dist/errors.js +4 -0
- package/dist/errors.js.map +1 -1
- package/dist/graph/backend-pdf.js +3 -2
- package/dist/graph/backend-pdf.js.map +1 -1
- package/dist/graph/backend-png.js +3 -2
- package/dist/graph/backend-png.js.map +1 -1
- package/dist/graph/backend-svg.js +3 -2
- package/dist/graph/backend-svg.js.map +1 -1
- package/dist/graph/dot.d.ts +0 -2
- package/dist/graph/dot.js +0 -4
- package/dist/graph/dot.js.map +1 -1
- package/dist/graph/text.d.ts +12 -0
- package/dist/graph/text.js +21 -0
- package/dist/graph/text.js.map +1 -0
- package/dist/mermaid/backend-pdf.js +2 -1
- package/dist/mermaid/backend-pdf.js.map +1 -1
- package/dist/mermaid/backend-png.js +2 -1
- package/dist/mermaid/backend-png.js.map +1 -1
- package/dist/mermaid/backend-svg.js +2 -1
- package/dist/mermaid/backend-svg.js.map +1 -1
- package/dist/mermaid/class.js +3 -7
- package/dist/mermaid/class.js.map +1 -1
- package/dist/mermaid/common.d.ts +0 -10
- package/dist/mermaid/common.js +2 -16
- package/dist/mermaid/common.js.map +1 -1
- package/dist/mermaid/sequence-layout.js +1 -1
- package/dist/mermaid/sequence-layout.js.map +1 -1
- package/dist/mermaid/sequence.js +2 -1
- package/dist/mermaid/sequence.js.map +1 -1
- package/dist/mermaid/state.js +3 -1
- package/dist/mermaid/state.js.map +1 -1
- package/dist/mesh/backend-glb.d.ts +11 -3
- package/dist/mesh/backend-glb.js +36 -11
- package/dist/mesh/backend-glb.js.map +1 -1
- package/dist/mesh/backend-stl.d.ts +7 -0
- package/dist/mesh/backend-stl.js +19 -0
- package/dist/mesh/backend-stl.js.map +1 -0
- package/dist/mesh/cad-build.d.ts +69 -0
- package/dist/mesh/cad-build.js +195 -0
- package/dist/mesh/cad-build.js.map +1 -0
- package/dist/mesh/cad-builder.d.ts +56 -0
- package/dist/mesh/cad-builder.js +78 -0
- package/dist/mesh/cad-builder.js.map +1 -0
- package/dist/mesh/cad-document.d.ts +140 -0
- package/dist/mesh/cad-document.js +300 -0
- package/dist/mesh/cad-document.js.map +1 -0
- package/dist/mesh/index.d.ts +7 -1
- package/dist/mesh/index.js +5 -1
- package/dist/mesh/index.js.map +1 -1
- package/dist/mesh/stl.d.ts +10 -0
- package/dist/mesh/stl.js +49 -0
- package/dist/mesh/stl.js.map +1 -0
- package/dist/registry.js +7 -0
- package/dist/registry.js.map +1 -1
- package/dist/sysml/backend-pdf.d.ts +3 -0
- package/dist/sysml/backend-pdf.js +10 -0
- package/dist/sysml/backend-pdf.js.map +1 -0
- package/dist/sysml/backend-png.d.ts +6 -0
- package/dist/sysml/backend-png.js +19 -0
- package/dist/sysml/backend-png.js.map +1 -0
- package/dist/sysml/backend-svg.d.ts +3 -0
- package/dist/sysml/backend-svg.js +8 -0
- package/dist/sysml/backend-svg.js.map +1 -0
- package/dist/sysml/index.d.ts +8 -0
- package/dist/sysml/index.js +9 -0
- package/dist/sysml/index.js.map +1 -0
- package/dist/sysml/parse.d.ts +99 -0
- package/dist/sysml/parse.js +480 -0
- package/dist/sysml/parse.js.map +1 -0
- package/dist/sysml/render.d.ts +7 -0
- package/dist/sysml/render.js +11 -0
- package/dist/sysml/render.js.map +1 -0
- package/dist/sysml/tokens.d.ts +14 -0
- package/dist/sysml/tokens.js +93 -0
- package/dist/sysml/tokens.js.map +1 -0
- package/dist/sysml/views.d.ts +16 -0
- package/dist/sysml/views.js +156 -0
- package/dist/sysml/views.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/worker/protocol.d.ts +4 -0
- package/package.json +106 -101
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@ sciengjs turns diagram source into images on your own machine. It sends no sourc
|
|
|
10
10
|
|
|
11
11
|
## What this release does
|
|
12
12
|
|
|
13
|
-
Release 0.
|
|
13
|
+
Release 0.9.0 holds ten input types. They are **Graphviz DOT**, **Mermaid** (every diagram type) and **LaTeX math** (to SVG, PNG and PDF). They also include **Plotly plots** (to SVG, PNG and HTML) and **HTML** (to PNG, PDF and Markdown). The CAD files **STEP**, **IGES** and **BREP** go to GLB, to a viewer page in HTML, and to PNG. A **CAD document** (a CSG model in JSON) goes to GLB, STL, HTML and PNG. A **SysML v2** source in a textual subset goes to SVG, PNG and PDF. The browser stage draws the Mermaid types other than class, state and sequence, and every PDF.
|
|
14
14
|
|
|
15
15
|
| Input | Output | Engine |
|
|
16
16
|
|---|---|---|
|
|
@@ -21,13 +21,16 @@ Release 0.7.1 holds eight input types. They are **Graphviz DOT**, **Mermaid** (e
|
|
|
21
21
|
| Mermaid (all other types) | SVG, PNG, PDF | The pinned Mermaid 11.17.2 build in the browser stage. The engine serves the build from the package. |
|
|
22
22
|
| DOT, Mermaid | PDF | The SVG, printed by the browser stage |
|
|
23
23
|
| HTML | PNG, PDF | The browser stage |
|
|
24
|
+
| STEP, IGES, BREP | GLB, HTML, PNG | OpenCascade, compiled to WASM (`occt-import-js`); a Three.js viewer page |
|
|
25
|
+
| CAD document | GLB, STL, HTML, PNG | The engine's own reader; the solid operations through `manifold-3d` (WASM) |
|
|
26
|
+
| SysML v2 (a textual subset) | SVG, PNG, PDF | The engine's own parser and views, then Graphviz; PDF through the browser stage |
|
|
24
27
|
|
|
25
28
|
- **No network.** The DOT and Mermaid paths make no network request. The browser stage starts Chrome or Chromium from `SCIENG_BROWSER` with a new profile. Its flags stop every connection out of the host. The client refuses every request except the page and the pinned Mermaid build. CI checks the browser process tree on Linux, macOS and Windows.
|
|
26
29
|
- **Unsafe attributes are removed.** The engine removes each `image` and `stylesheet` attribute before the layout and gives a warning for each one. A DOT file cannot make the engine or a browser fetch a file or a URL. A `URL` attribute stays as a link in the SVG.
|
|
27
30
|
- **The same text on every machine.** PNG text uses the bundled Liberation Serif font, not the fonts of the host. The engine gives a warning when the drawing asks for bold, italic or a character that the font does not have.
|
|
28
31
|
- **Limits.** Each render has a time limit, a source size limit and a heap limit. A PNG has a pixel limit of 1024 MB.
|
|
29
32
|
- **Typed errors.** A failed render rejects with a `RenderError` that has a code. The engine never falls back to another format.
|
|
30
|
-
- **
|
|
33
|
+
- **Pinned runtime dependencies** only: `@viz-js/viz`, `@resvg/resvg-wasm`, `@mathjax/src`, `parse5`, `occt-import-js` and `manifold-3d`. No native module and no Python.
|
|
31
34
|
|
|
32
35
|
Each later release adds one input type. The [Roadmap](#roadmap) lists them.
|
|
33
36
|
|
|
@@ -119,6 +122,8 @@ Each render takes an optional configuration as its second argument. An environme
|
|
|
119
122
|
| `rasterFont` | `SCIENG_RASTER_FONT` | the bundled Liberation Serif |
|
|
120
123
|
| `assetsUrl` | `SCIENG_ASSETS_URL` | the `assets/` folder of the package, which holds the font and `index_bg.wasm`. A `file:` URL with a host other than `localhost` rejects with `E_CONFIG`. |
|
|
121
124
|
| `allowNetwork` | `SCIENG_ALLOW_NETWORK` | `tex-bundles` (the DOT path makes no request) |
|
|
125
|
+
| `maxCadNodes` | `SCIENG_MAX_CAD_NODES` | 10000 |
|
|
126
|
+
| `maxCadFacets` | `SCIENG_MAX_CAD_FACETS` | 2000000 |
|
|
122
127
|
|
|
123
128
|
`SCIENG_CONFIG` names a JSON configuration file. `loadConfig` returns the resolved configuration.
|
|
124
129
|
|
|
@@ -271,6 +276,57 @@ const { figure } = bode({ num: [10], den: [1, 1, 0] });
|
|
|
271
276
|
const { bytes } = await render({ type: "plot", source: JSON.stringify(figure), format: "html" }, {});
|
|
272
277
|
```
|
|
273
278
|
|
|
279
|
+
## CAD
|
|
280
|
+
|
|
281
|
+
A CAD document is a CSG model in JSON. The engine reads the document as data. The engine runs no code from the document. The node types are:
|
|
282
|
+
|
|
283
|
+
- the primitives `cube`, `cylinder`, `sphere` and `polyhedron`;
|
|
284
|
+
- the 2D profiles `rectangle`, `circle` and `polygon`, only as the child of `extrude` or `revolve`;
|
|
285
|
+
- the operations `union`, `difference` and `intersection`;
|
|
286
|
+
- the transforms `translate`, `rotate`, `scale` and `mirror`.
|
|
287
|
+
|
|
288
|
+
Each node can have a `name` and a `color`.
|
|
289
|
+
|
|
290
|
+
The builder functions of the `./mesh` subpath write the same document from a TypeScript program:
|
|
291
|
+
|
|
292
|
+
```js
|
|
293
|
+
import { cad } from "@danielsimonjr/sciengjs/mesh";
|
|
294
|
+
import { render } from "@danielsimonjr/sciengjs";
|
|
295
|
+
|
|
296
|
+
const plate = cad.difference([
|
|
297
|
+
cad.cube([40, 20, 4], { color: [0.7, 0.7, 0.7] }),
|
|
298
|
+
cad.translate([10, 10, -1], cad.cylinder(6, 3, { color: [0.2, 0.4, 1] })),
|
|
299
|
+
]);
|
|
300
|
+
const source = JSON.stringify(cad.cadDocument(plate, { segments: 48 }));
|
|
301
|
+
const { bytes } = await render({ type: "cad", source, format: "stl" }, {});
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
- The faces keep the colour of the primitive that made them. The cut face of a `difference` has the colour of the cutter.
|
|
305
|
+
- STL holds no colour and no name. A coloured model gives a warning in STL.
|
|
306
|
+
- A document with more than `maxCadNodes` nodes rejects with `E_LIMIT` before the solid operations start. A model with more than `maxCadFacets` facets also rejects with `E_LIMIT`.
|
|
307
|
+
- A bad value rejects with `E_INPUT`. The message gives the JSON path, for example `model.children[1].radius`.
|
|
308
|
+
|
|
309
|
+
## SysML
|
|
310
|
+
|
|
311
|
+
The `sysml` input reads a subset of the SysML v2 text notation. The subset holds `package`, `part def`, `part`, `attribute`, `port def`, `port`, `connect`, `interface def`, `interface`, `requirement def`, `requirement`, `satisfy`, `:>` and comments. The [design](docs/superpowers/specs/2026-11-01-scieng-engine-design.md) gives the exact grammar.
|
|
312
|
+
|
|
313
|
+
The option `view` selects the drawing:
|
|
314
|
+
|
|
315
|
+
- `bdd` (the default): the definitions, the composition and the specialization;
|
|
316
|
+
- `ibd`: the parts, ports and connections of the part def that the option `root` names;
|
|
317
|
+
- `requirements`: the requirements and the `satisfy` relations.
|
|
318
|
+
|
|
319
|
+
```js
|
|
320
|
+
import { render } from "@danielsimonjr/sciengjs";
|
|
321
|
+
|
|
322
|
+
const source = "part def Car { part wheels : Wheel [4]; } part def Wheel;";
|
|
323
|
+
const { bytes } = await render({ type: "sysml", source, format: "svg" }, {});
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
- A construct outside the subset rejects with `E_INPUT`, and the message names the line.
|
|
327
|
+
- Set `lenient` to `true` to skip a statement with an unknown keyword and get a warning.
|
|
328
|
+
- A `png` takes the option `scale`. A `pdf` needs the browser stage.
|
|
329
|
+
|
|
274
330
|
## Roadmap
|
|
275
331
|
|
|
276
332
|
The [build plan](docs/superpowers/plans/2026-11-01-scieng-engine-build.md) gives the order of the increments. Each increment adds one input type, its tests and one release. The [design](docs/superpowers/specs/2026-11-01-scieng-engine-design.md) gives the API, the stages, the security controls and the licence of each engine.
|
|
@@ -282,8 +338,9 @@ The [build plan](docs/superpowers/plans/2026-11-01-scieng-engine-build.md) gives
|
|
|
282
338
|
| LaTeX math | math (MathJax) | svg, png and pdf are built; pdf needs the browser stage |
|
|
283
339
|
| TikZ, circuitikz, LaTeX | tex (an own WASM build of `tex.web`) | trial builds pass |
|
|
284
340
|
| Plots | plot | svg, png and html: released in 0.5.0; pdf is not planned |
|
|
285
|
-
| SysML v2 | sysml |
|
|
286
|
-
| STEP, IGES, BREP | mesh (OpenCascade WASM) |
|
|
341
|
+
| SysML v2 | sysml, graph | svg, png and pdf: released in 0.9.0 |
|
|
342
|
+
| STEP, IGES, BREP | mesh (OpenCascade WASM) | glb, html and png: released in 0.7.0 |
|
|
343
|
+
| CAD documents | mesh (`manifold-3d`) | glb, stl, html and png: released in 0.8.0 |
|
|
287
344
|
| HTML to PNG, PDF and Markdown | html, browser | PNG and PDF: released in 0.3.0; Markdown: released in 0.6.0 |
|
|
288
345
|
|
|
289
346
|
## Use from an agent
|
package/THIRD_PARTY_NOTICES.md
CHANGED
|
@@ -15,6 +15,7 @@ Version: each row gives the version that the engine pins.
|
|
|
15
15
|
| tex | The own WASM build of `tex.web` with `etex.ch` (trials T5 and T6) | The "tex" stage of the design gives the licence of each input | not yet a dependency |
|
|
16
16
|
| tex | TeX packages (bundles) | LPPL or public domain only. Each package keeps its own licence | not yet a dependency |
|
|
17
17
|
| mesh | `occt-import-js` 0.0.23 (OpenCascade compiled to WASM) | LGPL-2.1 | a dependency |
|
|
18
|
+
| mesh | `manifold-3d` 3.2.1 (Manifold compiled to WASM) | Apache-2.0 | a dependency |
|
|
18
19
|
| mesh | `manifold-3d` | Apache-2.0 | not yet a dependency |
|
|
19
20
|
| mesh (viewer page) | `three` 0.187.0 (six pinned module files, copied into the assets folder at build) | MIT | a devDependency. The browser stage serves the copies to pages |
|
|
20
21
|
| browser | `mermaid` 11.17.2 (the pinned build `dist/mermaid.min.js`, copied into the assets folder at build) | MIT | a devDependency. The browser stage serves the copy to pages |
|
|
@@ -84,6 +85,10 @@ The MIT licence applies to `three` 0.187.0. The package is a devDependency. The
|
|
|
84
85
|
|
|
85
86
|
`occt-import-js` 0.0.23 is licensed under the GNU Lesser General Public License 2.1. The WASM file stays a separate, unmodified file. The mesh stage reads STEP, IGES and BREP files through this package. The licence text is in the installed package at `node_modules/occt-import-js/LICENSE.md`.
|
|
86
87
|
|
|
88
|
+
### Manifold (Apache-2.0)
|
|
89
|
+
|
|
90
|
+
`manifold-3d` 3.2.1 is licensed under the Apache License 2.0. The package ships no NOTICE file. The WASM file stays a separate, unmodified file. The mesh stage runs the solid operations of CAD documents through this package. The licence text is in the installed package at `node_modules/manifold-3d/LICENSE`.
|
|
91
|
+
|
|
87
92
|
### resvg (MPL-2.0)
|
|
88
93
|
|
|
89
94
|
The Mozilla Public License 2.0 applies to `@resvg/resvg-wasm`. The WASM file stays a separate, unmodified file. The source code is in the repository https://github.com/yisibl/resvg-js, which builds the npm package. The licence text is in `assets/licenses/MPL-2.0.txt`.
|
package/dist/config.d.ts
CHANGED
|
@@ -18,6 +18,10 @@ export interface SciengConfig {
|
|
|
18
18
|
imageTimeoutMs: number;
|
|
19
19
|
/** The size limit of the body of one remote image, in bytes. */
|
|
20
20
|
maxImageBytes: number;
|
|
21
|
+
/** The node limit of one CAD document. */
|
|
22
|
+
maxCadNodes: number;
|
|
23
|
+
/** The facet (triangle) limit of one CAD model. */
|
|
24
|
+
maxCadFacets: number;
|
|
21
25
|
}
|
|
22
26
|
/** The inputs of the loader. A caller injects them in a test. */
|
|
23
27
|
export interface ConfigDeps {
|
package/dist/config.js
CHANGED
|
@@ -19,6 +19,8 @@ const ENV = {
|
|
|
19
19
|
rasterFont: "SCIENG_RASTER_FONT",
|
|
20
20
|
imageTimeoutMs: "SCIENG_IMAGE_TIMEOUT_MS",
|
|
21
21
|
maxImageBytes: "SCIENG_MAX_IMAGE_BYTES",
|
|
22
|
+
maxCadNodes: "SCIENG_MAX_CAD_NODES",
|
|
23
|
+
maxCadFacets: "SCIENG_MAX_CAD_FACETS",
|
|
22
24
|
};
|
|
23
25
|
const RELEASE_URL_BASE = "https://github.com/danielsimonjr/sciengjs/releases/download";
|
|
24
26
|
const NETWORK_POLICIES = ["none", "tex-bundles", "tex-bundles,images"];
|
|
@@ -61,6 +63,8 @@ function defaults(engineVersion) {
|
|
|
61
63
|
assetsUrl: DEFAULT_ASSETS_URL,
|
|
62
64
|
imageTimeoutMs: 15000,
|
|
63
65
|
maxImageBytes: 10485760,
|
|
66
|
+
maxCadNodes: 10000,
|
|
67
|
+
maxCadFacets: 2000000,
|
|
64
68
|
};
|
|
65
69
|
}
|
|
66
70
|
function defaultConfigPath(d) {
|
|
@@ -85,6 +89,8 @@ function checkValue(key, value, source) {
|
|
|
85
89
|
case "maxMemoryMb":
|
|
86
90
|
case "imageTimeoutMs":
|
|
87
91
|
case "maxImageBytes":
|
|
92
|
+
case "maxCadNodes":
|
|
93
|
+
case "maxCadFacets":
|
|
88
94
|
if (typeof value !== "number" || !Number.isInteger(value) || value <= 0) {
|
|
89
95
|
return fail("must be a positive integer");
|
|
90
96
|
}
|
|
@@ -98,7 +104,7 @@ function checkValue(key, value, source) {
|
|
|
98
104
|
return checkAssetsUrl(value, `${source}: ${key}`);
|
|
99
105
|
}
|
|
100
106
|
}
|
|
101
|
-
const NUMBER_KEYS = ["timeoutMs", "maxSourceBytes", "maxMemoryMb", "imageTimeoutMs", "maxImageBytes"];
|
|
107
|
+
const NUMBER_KEYS = ["timeoutMs", "maxSourceBytes", "maxMemoryMb", "imageTimeoutMs", "maxImageBytes", "maxCadNodes", "maxCadFacets"];
|
|
102
108
|
/** Converts an environment text to a value of the key. Numbers must be whole and positive. */
|
|
103
109
|
function fromEnvText(key, text, envName) {
|
|
104
110
|
if (NUMBER_KEYS.includes(key)) {
|
|
@@ -121,6 +127,8 @@ const ENV_KEYS = {
|
|
|
121
127
|
rasterFont: ENV.rasterFont,
|
|
122
128
|
imageTimeoutMs: ENV.imageTimeoutMs,
|
|
123
129
|
maxImageBytes: ENV.maxImageBytes,
|
|
130
|
+
maxCadNodes: ENV.maxCadNodes,
|
|
131
|
+
maxCadFacets: ENV.maxCadFacets,
|
|
124
132
|
};
|
|
125
133
|
/** Reads the config file. A missing file is fine only at the default path. */
|
|
126
134
|
async function readConfigFile(filePath, explicit, d) {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/core.js
CHANGED
|
@@ -65,6 +65,8 @@ export async function renderWithRegistry(req, options, registry, configDeps) {
|
|
|
65
65
|
timeoutMs: cfg.timeoutMs,
|
|
66
66
|
allowNetwork: cfg.allowNetwork,
|
|
67
67
|
imageTimeoutMs: cfg.imageTimeoutMs,
|
|
68
|
+
maxCadNodes: cfg.maxCadNodes,
|
|
69
|
+
maxCadFacets: cfg.maxCadFacets,
|
|
68
70
|
maxImageBytes: cfg.maxImageBytes,
|
|
69
71
|
},
|
|
70
72
|
},
|
package/dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -22,3 +22,5 @@ export declare class RenderError extends Error {
|
|
|
22
22
|
* fails `instanceof RenderError`. The check matches the name and the code instead.
|
|
23
23
|
*/
|
|
24
24
|
export declare function isRenderError(value: unknown): value is RenderError;
|
|
25
|
+
/** An input error that names its source line. */
|
|
26
|
+
export declare function inputError(line: number, message: string): RenderError;
|
package/dist/errors.js
CHANGED
|
@@ -37,4 +37,8 @@ export function isRenderError(value) {
|
|
|
37
37
|
}
|
|
38
38
|
return RENDER_ERROR_CODES.includes(code);
|
|
39
39
|
}
|
|
40
|
+
/** An input error that names its source line. */
|
|
41
|
+
export function inputError(line, message) {
|
|
42
|
+
return new RenderError("E_INPUT", `line ${line}: ${message}`, { line });
|
|
43
|
+
}
|
|
40
44
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,SAAS;IACT,eAAe;IACf,SAAS;IACT,WAAW;IACX,iBAAiB;IACjB,UAAU;IACV,aAAa;IACb,YAAY;CACJ,CAAC;AAaX,wDAAwD;AACxD,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,CAAkB;IACtB,IAAI,CAAqB;IACzB,MAAM,CAAqB;IAEpC,YAAY,IAAqB,EAAE,OAAe,EAAE,QAAQ,GAAwB,EAAE;QACpF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAChC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;IAChD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAQ,kBAAwC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,yEAAyE;AACzE,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,SAAS;IACT,eAAe;IACf,SAAS;IACT,WAAW;IACX,iBAAiB;IACjB,UAAU;IACV,aAAa;IACb,YAAY;CACJ,CAAC;AAaX,wDAAwD;AACxD,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,IAAI,CAAkB;IACtB,IAAI,CAAqB;IACzB,MAAM,CAAqB;IAEpC,YAAY,IAAqB,EAAE,OAAe,EAAE,QAAQ,GAAwB,EAAE;QACpF,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAChC,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;IAChD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAQ,kBAAwC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAClE,CAAC;AAED,iDAAiD;AACjD,MAAM,UAAU,UAAU,CAAC,IAAY,EAAE,OAAe;IACtD,OAAO,IAAI,WAAW,CAAC,SAAS,EAAE,QAAQ,IAAI,KAAK,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import { RenderError } from "../errors.js";
|
|
2
2
|
import { drawSvgToPdf } from "../mermaid/browser.js";
|
|
3
|
-
import {
|
|
3
|
+
import { dotToSvg } from "./dot.js";
|
|
4
|
+
import { sourceText } from "./text.js";
|
|
4
5
|
/** Renders dot to pdf: the SVG of the graph, then the pdf of that SVG in the browser stage. The backend takes no options. */
|
|
5
6
|
export async function render(request) {
|
|
6
7
|
const names = Object.keys(request.options ?? {});
|
|
7
8
|
if (names.length > 0) {
|
|
8
9
|
throw new RenderError("E_INPUT", `dot to pdf takes no options; got ${names.join(", ")}`);
|
|
9
10
|
}
|
|
10
|
-
const dot = await dotToSvg(
|
|
11
|
+
const dot = await dotToSvg(sourceText(request.source));
|
|
11
12
|
const draw = await drawSvgToPdf(dot.svg, request.settings);
|
|
12
13
|
return { bytes: draw.bytes, warnings: [...dot.warnings, ...draw.warnings], backend: "graph/viz+browser/chromium" };
|
|
13
14
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-pdf.js","sourceRoot":"","sources":["../../src/graph/backend-pdf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-pdf.js","sourceRoot":"","sources":["../../src/graph/backend-pdf.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,6HAA6H;AAC7H,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;IACjD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,oCAAoC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3D,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,4BAA4B,EAAE,CAAC;AACrH,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
import { RenderError } from "../errors.js";
|
|
3
3
|
import { bundledFontPathIn } from "../assets.js";
|
|
4
|
-
import {
|
|
4
|
+
import { dotToSvg } from "./dot.js";
|
|
5
|
+
import { sourceText } from "./text.js";
|
|
5
6
|
import { isFontFile, svgToPng } from "../raster/index.js";
|
|
6
7
|
import { rasterWarnings } from "../raster/warnings.js";
|
|
7
8
|
function readFont(path, bundled) {
|
|
@@ -49,7 +50,7 @@ export async function renderPng(request, bundledFontPath) {
|
|
|
49
50
|
}
|
|
50
51
|
const scale = readScale(options);
|
|
51
52
|
const font = fontOf(request.settings, bundledFontPath);
|
|
52
|
-
const dot = await dotToSvg(
|
|
53
|
+
const dot = await dotToSvg(sourceText(request.source));
|
|
53
54
|
const bytes = await svgToPng(dot.svg, {
|
|
54
55
|
scale,
|
|
55
56
|
maxMemoryMb: request.settings.maxMemoryMb,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-png.js","sourceRoot":"","sources":["../../src/graph/backend-png.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-png.js","sourceRoot":"","sources":["../../src/graph/backend-png.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,SAAS,QAAQ,CAAC,IAAY,EAAE,OAAgB;IAC9C,IAAI,KAAa,CAAC;IAClB,IAAI,CAAC;QACH,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,OAAO;YACX,CAAC,CAAC,IAAI,WAAW,CAAC,iBAAiB,EAAE,sCAAsC,GAAG,IAAI,CAAC;YACnF,CAAC,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,6BAA6B,GAAG,IAAI,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,OAAO;YACX,CAAC,CAAC,IAAI,WAAW,CAAC,iBAAiB,EAAE,yCAAyC,GAAG,IAAI,CAAC;YACtF,CAAC,CAAC,IAAI,WAAW,CAAC,UAAU,EAAE,iDAAiD,GAAG,IAAI,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,4GAA4G;AAC5G,SAAS,MAAM,CAAC,QAA0C,EAAE,eAAuB;IACjF,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;IACvC,OAAO,QAAQ,CAAC,UAAU,IAAI,eAAe,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC;AAC3E,CAAC;AAED,kIAAkI;AAClI,MAAM,UAAU,SAAS,CAAC,OAAgC;IACxD,MAAM,KAAK,GAAY,OAAO,CAAC,KAAK,CAAC;IACrC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,CAAC,CAAC;IAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACnF,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,qDAAqD,CAAC,CAAC;AAC1F,CAAC;AAED,mKAAmK;AACnK,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,OAAO,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED,qJAAqJ;AACrJ,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,OAA6B,EAAE,eAAuB;IACpF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACvC,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;YACpB,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,6BAA6B,GAAG,GAAG,CAAC,CAAC;QACxE,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAEjC,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAEvD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE;QACpC,KAAK;QACL,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW;QACzC,IAAI;QACJ,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;KACtC,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;AAClF,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,GAAW,EAAE,OAA6B,EAAE,KAAK,GAAG,CAAC;IAC1F,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,GAAG,EAAE;QAChC,KAAK;QACL,WAAW,EAAE,OAAO,CAAC,QAAQ,CAAC,WAAW;QACzC,IAAI;QACJ,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,SAAS;KACtC,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { RenderError } from "../errors.js";
|
|
2
|
-
import {
|
|
2
|
+
import { dotToSvg } from "./dot.js";
|
|
3
|
+
import { sourceText } from "./text.js";
|
|
3
4
|
/** Renders dot to svg. The backend takes no options, so any option is an input error. */
|
|
4
5
|
export async function render(request) {
|
|
5
6
|
const names = Object.keys(request.options);
|
|
6
7
|
if (names.length > 0) {
|
|
7
8
|
throw new RenderError("E_INPUT", `dot to svg takes no options; got ${names.join(", ")}`);
|
|
8
9
|
}
|
|
9
|
-
const result = await dotToSvg(
|
|
10
|
+
const result = await dotToSvg(sourceText(request.source));
|
|
10
11
|
return { bytes: new TextEncoder().encode(result.svg), warnings: result.warnings };
|
|
11
12
|
}
|
|
12
13
|
//# sourceMappingURL=backend-svg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-svg.js","sourceRoot":"","sources":["../../src/graph/backend-svg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-svg.js","sourceRoot":"","sources":["../../src/graph/backend-svg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,oCAAoC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;IAC1D,OAAO,EAAE,KAAK,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;AACpF,CAAC"}
|
package/dist/graph/dot.d.ts
CHANGED
|
@@ -7,6 +7,4 @@ export interface DotSvgResult {
|
|
|
7
7
|
}
|
|
8
8
|
/** Renders a DOT source to SVG with the viz library. Image and stylesheet attributes are removed first. A syntax error rejects with E_INPUT. The viz instance is a parameter so that a test can fail it. */
|
|
9
9
|
export declare function dotToSvg(source: string, getViz?: () => Promise<Viz>): Promise<DotSvgResult>;
|
|
10
|
-
/** The text of a DOT request. The function reads a byte source as UTF-8. */
|
|
11
|
-
export declare function dotSourceText(source: string | Uint8Array): string;
|
|
12
10
|
export {};
|
package/dist/graph/dot.js
CHANGED
|
@@ -41,8 +41,4 @@ export async function dotToSvg(source, getViz = vizInstance) {
|
|
|
41
41
|
}
|
|
42
42
|
return { svg: sheets.svg, warnings };
|
|
43
43
|
}
|
|
44
|
-
/** The text of a DOT request. The function reads a byte source as UTF-8. */
|
|
45
|
-
export function dotSourceText(source) {
|
|
46
|
-
return typeof source === "string" ? source : new TextDecoder().decode(source);
|
|
47
|
-
}
|
|
48
44
|
//# sourceMappingURL=dot.js.map
|
package/dist/graph/dot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dot.js","sourceRoot":"","sources":["../../src/graph/dot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,MAAM,YAAY,CAAC;AAKjG,IAAI,kBAA4C,CAAC;AAEjD,KAAK,UAAU,iBAAiB;IAC9B,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACxC,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,WAAW;IAClB,IAAI,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACrC,kBAAkB,GAAG,iBAAiB,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AAQD,4MAA4M;AAC5M,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,MAAc,EAAE,MAAM,GAAuB,WAAW;IACrF,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACvC,QAAQ,CAAC,IAAI,CACX,OAAO,CAAC,GAAG,KAAK,OAAO;YACrB,CAAC,CAAC,QAAQ,OAAO,CAAC,IAAI,sBAAsB,OAAO,CAAC,IAAI,gDAAgD;YACxG,CAAC,CAAC,QAAQ,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,GAAG,eAAe,OAAO,CAAC,IAAI,0DAA0D,CAC9H,CAAC;IACJ,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,MAAM,EAAE,CAAC;IAC3B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;IAE9D,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzF,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,2CAA2C,CAAC;QAC9E,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7C,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC7G,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,QAAQ,CAAC,IAAI,CACX,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,oBAAoB,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,GAAG,KAAK,CAAC,OAAO,CACxG,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACxB,QAAQ,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACvD,IAAI,MAAM,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;IAChF,CAAC;IAED,OAAO,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC;AACvC,CAAC
|
|
1
|
+
{"version":3,"file":"dot.js","sourceRoot":"","sources":["../../src/graph/dot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/** The text helpers of the adapters that write DOT: the source text, the XML filter and the two DOT escapes. */
|
|
2
|
+
/** The text of a request. The function reads a byte source as UTF-8. */
|
|
3
|
+
export declare function sourceText(source: string | Uint8Array): string;
|
|
4
|
+
/**
|
|
5
|
+
* Replaces each code point that XML 1.0 forbids with U+FFFD.
|
|
6
|
+
* Valid text, including surrogate pairs, stays unchanged.
|
|
7
|
+
*/
|
|
8
|
+
export declare function xmlSafe(text: string): string;
|
|
9
|
+
/** Escapes text for a quoted DOT string: XML-safe, with each backslash and double quote escaped. */
|
|
10
|
+
export declare function escapeDot(text: string): string;
|
|
11
|
+
/** Escapes text for a field of a DOT record label: XML-safe, with each record symbol escaped. */
|
|
12
|
+
export declare function escapeRecord(text: string): string;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** The text helpers of the adapters that write DOT: the source text, the XML filter and the two DOT escapes. */
|
|
2
|
+
/** The text of a request. The function reads a byte source as UTF-8. */
|
|
3
|
+
export function sourceText(source) {
|
|
4
|
+
return typeof source === "string" ? source : new TextDecoder().decode(source);
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Replaces each code point that XML 1.0 forbids with U+FFFD.
|
|
8
|
+
* Valid text, including surrogate pairs, stays unchanged.
|
|
9
|
+
*/
|
|
10
|
+
export function xmlSafe(text) {
|
|
11
|
+
return text.replace(/[^\u{9}\u{A}\u{D}\u{20}-\u{D7FF}\u{E000}-\u{FFFD}\u{10000}-\u{10FFFF}]/gu, "\u{FFFD}");
|
|
12
|
+
}
|
|
13
|
+
/** Escapes text for a quoted DOT string: XML-safe, with each backslash and double quote escaped. */
|
|
14
|
+
export function escapeDot(text) {
|
|
15
|
+
return xmlSafe(text).replace(/\\/g, "\\\\").replace(/"/g, "\\\"");
|
|
16
|
+
}
|
|
17
|
+
/** Escapes text for a field of a DOT record label: XML-safe, with each record symbol escaped. */
|
|
18
|
+
export function escapeRecord(text) {
|
|
19
|
+
return xmlSafe(text).replace(/\\/g, "\\\\").replace(/[{}|<>"]/g, "\\$&");
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text.js","sourceRoot":"","sources":["../../src/graph/text.ts"],"names":[],"mappings":"AAAA,gHAAgH;AAEhH,wEAAwE;AACxE,MAAM,UAAU,UAAU,CAAC,MAA2B;IACpD,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAChF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,IAAI,CAAC,OAAO,CACjB,0EAA0E,EAC1E,UAAU,CACX,CAAC;AACJ,CAAC;AAED,oGAAoG;AACpG,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACpE,CAAC;AAED,iGAAiG;AACjG,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AAC3E,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { sourceText } from "../graph/text.js";
|
|
2
|
+
import { readLenient, routesToBrowser } from "./common.js";
|
|
2
3
|
import { drawMermaidInBrowser, drawSvgToPdf, MERMAID_NATIVE_PDF_BACKEND } from "./browser.js";
|
|
3
4
|
import { renderMermaidSvg } from "./render.js";
|
|
4
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-pdf.js","sourceRoot":"","sources":["../../src/mermaid/backend-pdf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-pdf.js","sourceRoot":"","sources":["../../src/mermaid/backend-pdf.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5D,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3D,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC;AACnH,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { MAX_SCALE } from "../browser/input.js";
|
|
2
2
|
import { RenderError } from "../errors.js";
|
|
3
3
|
import { readScale, svgDocumentToPng } from "../graph/backend-png.js";
|
|
4
|
-
import {
|
|
4
|
+
import { sourceText } from "../graph/text.js";
|
|
5
|
+
import { readLenient, routesToBrowser } from "./common.js";
|
|
5
6
|
import { drawMermaidInBrowser } from "./browser.js";
|
|
6
7
|
import { renderMermaidSvg } from "./render.js";
|
|
7
8
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-png.js","sourceRoot":"","sources":["../../src/mermaid/backend-png.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-png.js","sourceRoot":"","sources":["../../src/mermaid/backend-png.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IACnD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,KAAK,GAAG,SAAS;QAAE,MAAM,IAAI,WAAW,CAAC,SAAS,EAAE,sCAAsC,SAAS,EAAE,CAAC,CAAC;IAC3G,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC/E,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5D,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;AACpF,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { sourceText } from "../graph/text.js";
|
|
2
|
+
import { readLenient, routesToBrowser } from "./common.js";
|
|
2
3
|
import { drawMermaidInBrowser } from "./browser.js";
|
|
3
4
|
import { renderMermaidSvg } from "./render.js";
|
|
4
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backend-svg.js","sourceRoot":"","sources":["../../src/mermaid/backend-svg.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"backend-svg.js","sourceRoot":"","sources":["../../src/mermaid/backend-svg.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE/C;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAA6B;IACxD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5B,WAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QACxE,OAAO,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;IAC5E,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,EAAE,KAAK,EAAE,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;AACpF,CAAC"}
|
package/dist/mermaid/class.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import { inputError
|
|
1
|
+
import { inputError } from "../errors.js";
|
|
2
|
+
import { escapeDot, escapeRecord } from "../graph/text.js";
|
|
3
|
+
import { outside } from "./common.js";
|
|
2
4
|
const ARROW_SPECS = [
|
|
3
5
|
["<|--", { dashed: false, tail: "triangle", head: "none" }],
|
|
4
6
|
["*--", { dashed: false, tail: "filled-diamond", head: "none" }],
|
|
@@ -140,12 +142,6 @@ const DOT_MARKERS = {
|
|
|
140
142
|
diamond: "odiamond",
|
|
141
143
|
"filled-diamond": "diamond",
|
|
142
144
|
};
|
|
143
|
-
function escapeDot(text) {
|
|
144
|
-
return xmlSafe(text).replace(/\\/g, "\\\\").replace(/"/g, "\\\"");
|
|
145
|
-
}
|
|
146
|
-
function escapeRecord(text) {
|
|
147
|
-
return xmlSafe(text).replace(/\\/g, "\\\\").replace(/[{}|<>"]/g, "\\$&");
|
|
148
|
-
}
|
|
149
145
|
function memberDisplay(text) {
|
|
150
146
|
return escapeRecord(text.replace(/~([^~]*)~/g, "<$1>"));
|
|
151
147
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/mermaid/class.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAiC,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"class.js","sourceRoot":"","sources":["../../src/mermaid/class.ts"],"names":[],"mappings":"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"}
|
package/dist/mermaid/common.d.ts
CHANGED
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { RenderError } from "../errors.ts";
|
|
2
1
|
/** The three Mermaid diagram kinds that the native layouts draw. */
|
|
3
2
|
export type DiagramKind = "class" | "state" | "sequence";
|
|
4
3
|
/** One content line of a source: its one-based number and its trimmed text. */
|
|
@@ -22,15 +21,6 @@ export interface Source extends Context {
|
|
|
22
21
|
* An undefined value counts as an absent key.
|
|
23
22
|
*/
|
|
24
23
|
export declare function readLenient(options: Record<string, unknown>, extra: readonly string[]): boolean;
|
|
25
|
-
/** The text of a request. The source is text for every Mermaid request, and a byte source is read as UTF-8. */
|
|
26
|
-
export declare function sourceText(source: string | Uint8Array): string;
|
|
27
|
-
/**
|
|
28
|
-
* Replaces each code point that XML 1.0 forbids with U+FFFD.
|
|
29
|
-
* Valid text, including surrogate pairs, stays unchanged.
|
|
30
|
-
*/
|
|
31
|
-
export declare function xmlSafe(text: string): string;
|
|
32
|
-
/** An input error that names its source line. */
|
|
33
|
-
export declare function inputError(line: number, message: string): RenderError;
|
|
34
24
|
/**
|
|
35
25
|
* Handles a construct that the grammar does not accept. Without lenient it rejects with E_INPUT on its line.
|
|
36
26
|
* With lenient it records a warning on its line and returns, so that the caller can skip the construct.
|
package/dist/mermaid/common.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { RenderError } from "../errors.js";
|
|
1
|
+
import { inputError, RenderError } from "../errors.js";
|
|
2
|
+
import { xmlSafe } from "../graph/text.js";
|
|
2
3
|
const HEADERS = new Map([
|
|
3
4
|
["classDiagram", "class"],
|
|
4
5
|
["classDiagram-v2", "class"],
|
|
@@ -33,21 +34,6 @@ export function readLenient(options, extra) {
|
|
|
33
34
|
}
|
|
34
35
|
return lenient;
|
|
35
36
|
}
|
|
36
|
-
/** The text of a request. The source is text for every Mermaid request, and a byte source is read as UTF-8. */
|
|
37
|
-
export function sourceText(source) {
|
|
38
|
-
return typeof source === "string" ? source : new TextDecoder().decode(source);
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Replaces each code point that XML 1.0 forbids with U+FFFD.
|
|
42
|
-
* Valid text, including surrogate pairs, stays unchanged.
|
|
43
|
-
*/
|
|
44
|
-
export function xmlSafe(text) {
|
|
45
|
-
return text.replace(/[^\u{9}\u{A}\u{D}\u{20}-\u{D7FF}\u{E000}-\u{FFFD}\u{10000}-\u{10FFFF}]/gu, "\u{FFFD}");
|
|
46
|
-
}
|
|
47
|
-
/** An input error that names its source line. */
|
|
48
|
-
export function inputError(line, message) {
|
|
49
|
-
return new RenderError("E_INPUT", `line ${line}: ${message}`, { line });
|
|
50
|
-
}
|
|
51
37
|
/**
|
|
52
38
|
* Handles a construct that the grammar does not accept. Without lenient it rejects with E_INPUT on its line.
|
|
53
39
|
* With lenient it records a warning on its line and returns, so that the caller can skip the construct.
|