* sidv/viz:
Fix Lodash import
fix: Viz build
feat: Add package visualization
Ignore stats.html
feat: Add bundle visualization
style(docs): use `github-dark` hightlight theme
refactor(docs): use default vitepress highlighter
fix: Move redirection to router
chore: Add docs to redirect.ts
feat: Redirect old documentation links.
comments in states are skipped now
Remove extra arrow and adjust cross position
* develop: (233 commits)
style(docs): use `github-dark` hightlight theme
refactor(docs): use default vitepress highlighter
fix: Move redirection to router
ci(renovate): disable pinning dependencies
Revert "chore(deps): pin dependencies"
change shiki getHighlighter import
create separate spec for stateRenderer-v2
diagramStates should not be global; pass it into functions; minor comment fixes
diagramClasses no longer needs to be cached; mermaidAPI no longer calls it repeatedly
(minor) import expectTypeOf in spec
(minor) fix JSdoc tag
+ spec stateRenderer-v2.js getClasses() to verify it returns a {}
(minor) fix JSdoc types in comments
(minor) add comments, remove duplicated line
chore: Add master to link checker
chore: Add docs to redirect.ts
stateDB classes must be a {} not []
feat: Redirect old documentation links.
add stateDiagram-v2 to list of graphs with classDefs
fix(docs): ClassDiagram table
...
Replace the dagre and dagre-d3 libraries with dagre-d3-es.
Both dagre and dagre-d3 are deprecated and unmaintained,
and haven't been updated for more than 3 years.
Since dagre-d3 still requires an old version of d3, this causes
a bunch of security warnings,
e.g. https://github.com/advisories/GHSA-36jr-mh4h-2g58
The [dagre-d3-es](https://github.com/tbo47/dagre-es) package is a fork
that contains support for `"d3": "^7.6.1"`. Also, it's ESM, so we will
hopefully get smaller bundle sizes too. The only issue is that this
fork isn't very well used (only has 3000 weekly downloads),
compared to `dagre-d3`'s 250,000 weekly downloads.
(although to be fair, a large proportion of dagre-d3's downloads
probably come from mermaid)
Since it's is a less popular package,
**I've pinned `dagre-d3-es` to `"7.0.2"` instead of `"^7.0.2"`**.
This does mean if there is a bug in `dagre-d3-es`, we will have to
manually bump it ourselves, but it also means we won't accidentally
be sending a buggy version of `dagre-d3-es` out to users in cases
something changes (it might be worth disabling renovate for this
if we're feeling paranoid!)