Previously the plan explain was sent as Mermaid; this is now instead sent as JSON and then converted to Mermaid on the client. (This allows us to provide alternative renderers in future.) planToMermaid(plan) from grafast/mermaid enables converting a plan JSON object into a mermaid diagram, this diagram is very close to what was previously generated.
Ruru now loads Mermaid from CDN because it's so big, over time we might migrate away to our own renderer, which would allow better interactivity.
Basically everything has been upgraded. A few things were held back because they require ESM or because they have undeclared breaking changes that I couldn't figure out how to fix.
Withheld:
@localrepo/pretter2-for-jest - it's prettier2... for Jest ;)
@mdx-js/react - Docusaurus wants v1 currently
@mermaid-js/mermaid-cli - v10 is ESM-only
chalk - v5 is ESM-only
codemirror - GraphiQL uses v5
graphql - still using old defer/stream rn
mermaid - sticking to v9 as v10 is ESM-only
pluralize - don't want to change pluralization, that would be a breaking change
Previously the plan explain was sent as Mermaid; this is now instead sent as JSON and then converted to Mermaid on the client. (This allows us to provide alternative renderers in future.)
planToMermaid(plan)
fromgrafast/mermaid
enables converting a plan JSON object into a mermaid diagram, this diagram is very close to what was previously generated.Ruru now loads Mermaid from CDN because it's so big, over time we might migrate away to our own renderer, which would allow better interactivity.
Basically everything has been upgraded. A few things were held back because they require ESM or because they have undeclared breaking changes that I couldn't figure out how to fix.
Withheld: