Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,7 @@ live outside the repository and are passed through `MXBLOCKS_PRIVATE_PATTERNS`.
Never commit their actual values or an unsanitized match report. Current-tree
privacy checks do not remove material from Git history, PRs, tags, or artifacts.
Review those separately before changing repository visibility.

The Element build uses Nix esbuild 0.27.2; keep its npm version matched to
the Nix binary. The newer npm 0.28 line cannot be combined with this Nix binary.
Node type definitions track the supported Node 24 runtime.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ fallback for clients without the module.

## Development

Use Rust 1.88+, Node 24+, and the pnpm version pinned in `packageManager`.
Use Rust 1.88+, Node 24.21+, and the pnpm version pinned in `packageManager`.
`nix develop` supplies the Rust/Node tools, pnpm, resvg, and fonts.

```sh
Expand Down
2 changes: 1 addition & 1 deletion docs/integration.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ pnpm add @talaagent/mxblocks-math
pnpm exec mxblocks-math render --out formula.png 'x^2 + y^2 = z^2'
```

The npm CLI requires Node 24+, `resvg`, and fonts. Configure
The npm CLI requires Node 24.21+, `resvg`, and fonts. Configure
`MXBLOCKS_MATH_RESVG` and `MXBLOCKS_MATH_FONT_DIR` explicitly in a service. It reads
TeX from stdin when the last argument is `-` and returns one JSON line containing
`mimetype`, `w`, `h`, and `size`. `mxblocks_tex::Renderer` consumes this contract.
Expand Down
6 changes: 3 additions & 3 deletions flake.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
version = "0.1.0";
src = jsSrc;
fetcherVersion = 5;
hash = "sha256-oPzRUen72Wz9k2zO9hyLViLl5A9UO4p0Vw5p5XStrUY=";
hash = "sha256-Js1HHFXMXO9B+UwCgDv9tNjaWxONpqEAEik+EDRngC4=";
};
in
{
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"private": true,
"packageManager": "pnpm@12.9.0",
"engines": {
"node": ">=24"
"node": ">=24.21.0"
},
"scripts": {
"build": "turbo run build",
Expand Down
8 changes: 4 additions & 4 deletions packages/mxblocks-element/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,14 @@
"build": "esbuild src/index.tsx --bundle --format=esm --target=es2022 --minify --sourcemap --jsx=transform --jsx-factory=React.createElement --jsx-fragment=React.Fragment --loader:.css=text --outfile=dist/mxblocks-rich.js && mkdir -p dist/fonts && cp node_modules/katex/dist/fonts/*.woff2 dist/fonts/"
},
"devDependencies": {
"@types/node": "^24.0.0",
"@types/node": "^24.19.2",
"@types/react": "^19.1.0",
"katex": "^0.18.10",
"typescript": "^5.9.0",
"katex": "^0.19.1",
"typescript": "^7.0.2",
"esbuild": "0.27.2"
},
"engines": {
"node": ">=24"
"node": ">=24.21.0"
},
"files": [
"dist",
Expand Down
2 changes: 1 addition & 1 deletion packages/mxblocks-math/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ mxblocks-math render --out formula.png 'x^2 + y^2 = z^2'
printf '%s' '\frac{a}{b}' | mxblocks-math render --inline --out fraction.png -
```

Node 24 or newer, `resvg`, and fonts are required. Set `MXBLOCKS_MATH_RESVG` and
Node 24.21 or newer, `resvg`, and fonts are required. Set `MXBLOCKS_MATH_RESVG` and
`MXBLOCKS_MATH_FONT_DIR` when they are not available through the environment.
`nix build .#mxblocks-math` provides a wrapper with pinned dependencies, fonts,
and a wall-clock timeout. For development, `nix develop` supplies the same tools.
Expand Down
2 changes: 1 addition & 1 deletion packages/mxblocks-math/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"mathjax-full": "3.2.2"
},
"engines": {
"node": ">=24"
"node": ">=24.21.0"
},
"files": [
"src",
Expand Down
225 changes: 213 additions & 12 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion scripts/package-artifacts
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ metadata = {
"schema": 1,
"packages": versions,
"element": {"entrypoint": "mxblocks-rich.js", "fonts": "fonts/", "moduleApi": "^2.2.0"},
"math": {"command": "mxblocks-math", "node": ">=24", "externalRequirements": ["resvg", "fonts"]},
"math": {"command": "mxblocks-math", "node": json.loads((root / "packages/mxblocks-math/package.json").read_text())["engines"]["node"], "externalRequirements": ["resvg", "fonts"]},
"files": {p.name: hashlib.sha256(p.read_bytes()).hexdigest() for p in artifacts},
}
manifest = out / "manifest.json"
Expand Down
Loading