This PR extracts the streaming markdown capabilities of ui.Chat() into another component: ui.MarkdownStream(). See the new files for example usage:
shiny/api-examples/MarkdownStream/app-express.py
shiny/api-examples/MarkdownStream/app-core.py
By pulling out the markdown rendering aspect of chat.ts into a more reusable web component, it not only allows us to fairly easily support an additional component, but I can also re-use it for chatlas, which will be a big improvement over the rich console for a web-based settings.
TODO
[ ] Fix streaming context with ui.Chat()
[ ] Does it make sense to replace server-side logic with ui.MarkdownStream()
[ ] If we do, we'll need an R equivalent for shinychat.
[ ] shinychat will need to be updated to pull in additional JS/CSS files
This PR extracts the streaming markdown capabilities of
ui.Chat()
into another component:ui.MarkdownStream()
. See the new files for example usage:shiny/api-examples/MarkdownStream/app-express.py
shiny/api-examples/MarkdownStream/app-core.py
By pulling out the markdown rendering aspect of
chat.ts
into a more reusable web component, it not only allows us to fairly easily support an additional component, but I can also re-use it forchatlas
, which will be a big improvement over therich
console for a web-based settings.TODO
ui.Chat()
ui.MarkdownStream()
shinychat
.shinychat
will need to be updated to pull in additional JS/CSS files