Files
openclaw/ui/package.json
Peter Steinberger fcb45b4400 feat(ui): render streaming chat markdown live instead of plain text (#106062)
Streaming assistant replies in the Control UI now render markdown live: the in-flight tail is repaired with remend (zero-dep, Apache-2.0, extracted from Vercel's Streamdown) before the existing markdown-it + DOMPurify pipeline, and open code fences stream as live-highlighted code blocks. Deletes the plain-text streaming tail path (toStreamingPlainTextHtml) and extracts an uncached render core so tail deltas stop churning the markdown LRU cache. Closes #106053
2026-07-12 23:11:45 -07:00

46 lines
1.2 KiB
JSON

{
"name": "openclaw-control-ui",
"private": true,
"type": "module",
"scripts": {
"build": "vite build",
"dev": "vite",
"preview": "vite preview",
"test": "vitest run --config vitest.config.ts"
},
"dependencies": {
"@codemirror/commands": "6.10.4",
"@codemirror/language": "6.12.4",
"@codemirror/language-data": "6.5.2",
"@codemirror/state": "6.7.1",
"@codemirror/view": "6.43.6",
"@create-markdown/preview": "2.0.3",
"@lezer/highlight": "1.2.3",
"@lit/context": "1.1.6",
"@modelcontextprotocol/ext-apps": "1.7.4",
"@modelcontextprotocol/sdk": "1.29.0",
"@noble/ed25519": "3.1.0",
"@openclaw/libterminal": "0.3.1",
"@openclaw/media-core": "workspace:*",
"@openclaw/normalization-core": "workspace:*",
"@openclaw/uirouter": "0.1.0",
"dompurify": "3.4.11",
"ghostty-web": "0.4.0",
"highlight.js": "11.11.1",
"json5": "2.2.3",
"lit": "3.3.3",
"markdown-it": "14.3.0",
"markdown-it-task-lists": "2.1.1",
"marked": "18.0.5",
"remend": "1.3.0"
},
"devDependencies": {
"@types/markdown-it": "14.1.2",
"@vitest/browser-playwright": "4.1.9",
"jsdom": "29.1.1",
"playwright": "1.61.1",
"vite": "8.1.3",
"vitest": "4.1.9"
}
}