Repository navigation
Conversation
|
Thanks for the contribution! What happens next:
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Pele (Obsidian's from-scratch Mermaid renderer) as a second renderer for Visimer's WYSIWYG canvas. An app passes
peleAdapter(pele)from@visimer/dominstead of itsmermaidinstance and gets the full point-editing experience over Pele-rendered SVG. Core, CodeMirror, and Monaco are untouched (one exception: a type-union widening forDiagnostic.source); the Mermaid path is preserved call-for-call and proven by the unmodified existing suites.Try it:
pnpm dev→ playground → toggle Mermaid | Pele in the top bar.What's in it
Renderer seam (PoC):
RendererAdapter+mermaidAdapter/peleAdapterin@visimer/dom;MermaidCanvasViewroutes render/validate/diagnostics through it; optionalrendererprop on the React components; pele stays a peer-level dependency (packages never import it —PeleLikeis a hand-written structural interface).Correlators (full coverage): every diagram type that is editable under Mermaid is now editable under Pele — state, class, ER, pie, gantt, sequence, and the 15 line-item types, joining the flowchart correlator from the initial seam. Each maps Pele's documented
data-id/pele-*SVG contract onto the existingCorrelation/SequenceCorrelationshapes, so gestures, popovers, and shared undo work unchanged.[*]states, sequence activations/fragments, gantt gridlines) is never taggedanimation-*); class-member editing gains an overlay-editor fallback under Peledocs/superpowers/(spec, plan, and per-task review trail)Known limitations (documented in README/TESTING.md, deliberate)
firstBracketedextractor fix (affects both renderers — follow-up)<text>, so in-place contenteditable becomes the overlay editor under PeleTesting
Every task was implemented and reviewed by separate agents (task-scoped reviews + a whole-branch review); mis-pairing paths found during review are pinned by adversarial fixtures, not just fixed.