Repository navigation
feat: add graph-layout package - #21
Conversation
Layered layout of a projected flowchart, swimlane or state machine behind a pure async `layout(view, options)`. Positions come back keyed by notation and element id in the model's `views` shape, so layout stays apart from the semantic model and no projection reads a coordinate. elkjs sits behind a small engine port, run in the calling context from its bundled build so the package is isomorphic and testable without a Worker. Swimlane lanes are groups holding their nodes; sizes and gaps derive from one grid unit.
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
@codex security review |
🛡️ Codex Security ReviewSecurity review completed. No security issues were found in this pull request. Reviewed commit: Only the user who started this review can view the report in Codex. ℹ️ About Codex security reviews in GitHubThis is an experimental Codex feature. Security reviews are triggered when:
Once complete, Codex will leave suggestions, or a comment if no findings are found. |
|
🎉 This PR is included in version 1.0.0 🎉 The release is available on: Your semantic-release bot 📦🚀 |
Adds
@exadev/process-graph-layout, the layout layer of the plan: a pure asynclayout(view, options)over a flowchart, swimlane or state machine projection that returns positions in the model'sviewsshape.elkjs (layered, exact-pinned) sits behind a small
LayoutEngineport and runs in the calling context from its bundled build, so the package runs in a browser, a Worker or Node. Swimlane lanes are groups containing their nodes, andLaneBoundsare returned beside the positions. Direction, spacing and an abort signal are options; sizes and gaps derive from one grid unit.The name
@exadev/process-graph-layoutstill needs reserving on npm and its trusted publisher registering before the first release.