feat(markdown): streamdown style ownership, code plugin, chip-parse perf - #49
Open
rpvilo wants to merge 1 commit into
Open
feat(markdown): streamdown style ownership, code plugin, chip-parse perf#49rpvilo wants to merge 1 commit into
rpvilo wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
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.
Takes full ownership of markdown styling and speeds up message text rendering.
streamdown/styles.cssand the@sourcescans — all Streamdown element styling now lives in our[data-streamdown]rules in globals.css@streamdown/codeplugin withshikiTheme={["github-light", "vesper"]}for syntax highlightingparseChipSegments: fast-pathincludes()bail before the regex scan — the streaming row was re-scanning its full accumulated text per token (O(n²) over a long answer)Message.Text: memoize the parse + segment tree on the text and renderers, so settled rows skip the work on unrelated re-rendersKnown gap: with the
@sourcescan removed, Shiki's token-color utilities (text-[var(--sdm-c)]etc.) no longer compile — highlighting needs a follow-up (either restore the@sourceline or add explicit token styles).