agent-Specialization/package.json
JOJO 2b84a7adf8 perf(chat): 对话区 virtua 窗口化渲染,解决挤压卡顿与全量渲染
- v-for 全量渲染改为 virtua Virtualizer 窗口化,只挂载可视区+buffer 消息块
- 追底引擎 resize 弹簧动画改 instant:拖拽挤压时逐帧瞬时吸底,内容向上生长
- 消息按对象身份(WeakMap)分配稳定 key,支撑 virtua 逐项高度缓存
- 用户气泡随滚动重挂载时补测量/补观察,保证折叠状态正确恢复
- 滚动追踪日志默认关闭(逐scroll事件日志本身是每帧开销),排障可显式开启
- 修复 2 处依赖 DOM 层级的 CSS 结构选择器
- 新增依赖 virtua(~3kB)
2026-07-23 00:21:49 +08:00

68 lines
2.0 KiB
JSON

{
"name": "astrion-frontend",
"version": "4.1.0",
"private": true,
"type": "module",
"scripts": {
"dev": "vite build --watch",
"build": "tsc --noEmit && stylelint \"static/src/**/*.{scss,vue}\" && vite build",
"lint": "eslint \"static/src/**/*.{ts,tsx,js,vue}\" --max-warnings=0",
"lint:css": "stylelint \"static/src/**/*.{scss,vue}\"",
"format": "prettier --write \"static/src/**/*.{ts,tsx,js,vue,css}\"",
"preview": "vite preview",
"cli": "npm --prefix cli run dev",
"cli:build": "npm --prefix cli run build",
"cli:typecheck": "npm --prefix cli run typecheck"
},
"dependencies": {
"@tiptap/extension-mention": "^3.23.6",
"@tiptap/extension-placeholder": "^3.23.6",
"@tiptap/starter-kit": "^3.23.6",
"@tiptap/suggestion": "^3.23.6",
"@tiptap/vue-3": "^3.23.6",
"@types/html2canvas": "^0.5.35",
"@xterm/addon-fit": "^0.11.0",
"@xterm/addon-web-links": "^0.12.0",
"diff": "^8.0.3",
"dompurify": "^3.2.7",
"enquirer": "^2.4.1",
"html2canvas": "^1.4.1",
"katex": "^0.16.9",
"marked": "^11.1.0",
"pdfjs-dist": "^6.0.227",
"pinia": "^3.0.4",
"prismjs": "^1.29.0",
"rehype-raw": "^7.0.0",
"rehype-sanitize": "^6.0.0",
"rehype-stringify": "^10.0.1",
"remark-breaks": "^4.0.0",
"remark-gfm": "^4.0.1",
"remark-parse": "^11.0.0",
"remark-rehype": "^11.1.2",
"sherpa-onnx": "^1.13.2",
"socket.io-client": "^4.7.5",
"unified": "^11.0.5",
"virtua": "^0.49.3",
"vue": "^3.4.15",
"vue-stick-to-bottom": "^1.0.0",
"xterm": "^5.3.0"
},
"devDependencies": {
"@playwright/test": "^1.61.1",
"@types/node": "^20.10.5",
"@vitejs/plugin-vue": "^5.0.3",
"@vue/eslint-config-prettier": "^9.0.0",
"@vue/eslint-config-typescript": "^12.0.0",
"eslint": "^8.56.0",
"eslint-plugin-vue": "^9.19.2",
"postcss-html": "^1.6.0",
"postcss-scss": "^4.0.9",
"prettier": "^3.1.1",
"sass": "^1.94.2",
"stylelint": "^16.10.0",
"typescript": "^5.3.3",
"vite": "^5.0.10",
"vue-tsc": "^1.8.22"
}
}