@blueking/chat-x 0.0.48-beta.1 → 0.0.49-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/dist/ag-ui/types/constants.d.ts +1 -0
  2. package/dist/ag-ui/types/file.d.ts +23 -0
  3. package/dist/ag-ui/types/index.d.ts +1 -0
  4. package/dist/ag-ui/types/messages.d.ts +2 -0
  5. package/dist/components/chat-message/assistant-message/assistant-message.vue.d.ts +12 -1
  6. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-file-card.vue.d.ts +12 -0
  7. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/artifact-preview-host.vue.d.ts +7 -0
  8. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/preview-strategy.d.ts +9 -0
  9. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/renderers/html-preview.vue.d.ts +6 -0
  10. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/renderers/markdown-preview.vue.d.ts +6 -0
  11. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/renderers/txt-preview.vue.d.ts +6 -0
  12. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/renderers/url-iframe-preview.vue.d.ts +6 -0
  13. package/dist/components/chat-message/assistant-message/message-artifacts/artifact-preview/use-artifact-preview-loader.d.ts +23 -0
  14. package/dist/components/chat-message/assistant-message/message-artifacts/file-artifact-panel.vue.d.ts +12 -0
  15. package/dist/components/chat-message/assistant-message/message-artifacts/file-icon.d.ts +29 -0
  16. package/dist/components/chat-message/assistant-message/message-artifacts/message-artifacts.vue.d.ts +9 -0
  17. package/dist/components/chat-message/interrupt-message/user-question/use-user-question.d.ts +7 -2
  18. package/dist/components/chat-message/user-message/user-message.vue.d.ts +14 -2
  19. package/dist/composables/index.d.ts +1 -0
  20. package/dist/composables/use-artifact-preview.d.ts +56 -0
  21. package/dist/composables/use-custom-tab.d.ts +2 -0
  22. package/dist/composables/use-message-group.d.ts +433 -0
  23. package/dist/icons/file.d.ts +24 -0
  24. package/dist/icons/index.d.ts +1 -0
  25. package/dist/index.css +1 -1
  26. package/dist/index.js +2217 -1689
  27. package/dist/index.js.map +1 -1
  28. package/dist/lang/lang.d.ts +8 -1
  29. package/dist/mcp/generated/docs/activity-message.md +122 -97
  30. package/dist/mcp/generated/docs/assistant-message.md +125 -62
  31. package/dist/mcp/generated/docs/chat-container.md +97 -18
  32. package/dist/mcp/generated/docs/chat-input.md +2 -10
  33. package/dist/mcp/generated/docs/constants.md +3 -1
  34. package/dist/mcp/generated/docs/content-render.md +2 -10
  35. package/dist/mcp/generated/docs/file-artifact-panel.md +275 -0
  36. package/dist/mcp/generated/docs/info-message.md +29 -12
  37. package/dist/mcp/generated/docs/interrupt.md +1 -0
  38. package/dist/mcp/generated/docs/loading-message.md +36 -17
  39. package/dist/mcp/generated/docs/message-container.md +4 -21
  40. package/dist/mcp/generated/docs/message-render.md +47 -59
  41. package/dist/mcp/generated/docs/messages.md +5 -0
  42. package/dist/mcp/generated/docs/reasoning-message.md +17 -20
  43. package/dist/mcp/generated/docs/tool-message.md +61 -45
  44. package/dist/mcp/generated/docs/toolcall-render.md +8 -8
  45. package/dist/mcp/generated/docs/use-artifact-preview.md +232 -0
  46. package/dist/mcp/generated/docs/use-custom-tab.md +18 -5
  47. package/dist/mcp/generated/docs/use-message-group.md +29 -0
  48. package/dist/mcp/generated/docs/user-message.md +185 -121
  49. package/dist/mcp/generated/docs/user-question-card.md +6 -3
  50. package/dist/mcp/generated/index.json +83 -13
  51. package/dist/mcp/index.js +0 -0
  52. package/package.json +20 -21
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2026-07-27T02:31:49.169Z",
3
+ "generatedAt": "2026-08-06T04:13:41.238Z",
4
4
  "domains": {
5
5
  "setup": {
6
6
  "label": "对话搭建",
@@ -14,6 +14,7 @@
14
14
  "components": [
15
15
  "activity-message",
16
16
  "assistant-message",
17
+ "file-artifact-panel",
17
18
  "info-message",
18
19
  "loading-message",
19
20
  "message-render",
@@ -361,8 +362,8 @@
361
362
  "name": "UserQuestionCard 用户问题中断",
362
363
  "slug": "user-question-card",
363
364
  "kind": "component",
364
- "description": "渲染 UserQuestion 中断的待回答面板,支持单选、多选、Others 与跳过。",
365
- "aiSummary": "渲染 UserQuestion 中断的待回答面板,支持单选、多选、Others 与跳过。 源码位置:src/components/chat-message/interrupt-message/user-question/user-question-card.vue。",
365
+ "description": "渲染 UserQuestion 中断的待回答面板;一次一题分页切换,支持单选/多选、Others、跳过与已完成进度。",
366
+ "aiSummary": "渲染 UserQuestion 中断的待回答面板:一次只展示一题,标题栏提供题号切换, Footer 展示已完成进度;支持单选自动跳下一题、多选/Others、完成与跳过。 源码位置:src/components/chat-message/interrupt-message/user-question/user-question-card.vue。",
366
367
  "relatedComponents": [
367
368
  {
368
369
  "slug": "interrupt-message",
@@ -1063,8 +1064,20 @@
1063
1064
  "relation": "由 MessageRender 在 role 为 activity 时创建"
1064
1065
  },
1065
1066
  {
1066
- "slug": "assistant-message",
1067
- "relation": "常与助手回复相邻,描述检索或执行背景"
1067
+ "slug": "flow-agent-content",
1068
+ "relation": "activityType 为 flow_agent 时渲染"
1069
+ },
1070
+ {
1071
+ "slug": "knowledge-rag-content",
1072
+ "relation": "activityType 为 knowledge_rag 时渲染"
1073
+ },
1074
+ {
1075
+ "slug": "reference-doc-content",
1076
+ "relation": "activityType 为 reference_document 时渲染"
1077
+ },
1078
+ {
1079
+ "slug": "chat-container",
1080
+ "relation": "uid / onInterruptResume / 侧栏 Tab 与 ChatContainer 联动"
1068
1081
  }
1069
1082
  ],
1070
1083
  "docFile": "docs/activity-message.md",
@@ -1074,8 +1087,8 @@
1074
1087
  "name": "AssistantMessage AI 助手消息",
1075
1088
  "slug": "assistant-message",
1076
1089
  "kind": "component",
1077
- "description": "渲染助手消息主体、工具调用与文件内容,默认插槽可覆盖正文渲染。",
1078
- "aiSummary": "渲染助手消息主体、工具调用与文件内容,默认插槽可覆盖正文渲染。 源码位置:src/components/chat-message/assistant-message/assistant-message.vue。",
1090
+ "description": "渲染助手消息主体、工具调用与文件产物,默认插槽可覆盖正文渲染。",
1091
+ "aiSummary": "渲染助手 Markdown 正文、ToolCallRender 工具调用列表,以及 property.artifacts 文件卡片; 默认插槽仅覆盖正文。源码位置:src/components/chat-message/assistant-message/assistant-message.vue。",
1079
1092
  "relatedComponents": [
1080
1093
  {
1081
1094
  "slug": "message-render",
@@ -1088,11 +1101,42 @@
1088
1101
  {
1089
1102
  "slug": "toolcall-render",
1090
1103
  "relation": "多条工具调用由 ToolcallRender 统一渲染"
1104
+ },
1105
+ {
1106
+ "slug": "file-artifact-panel",
1107
+ "relation": "property.artifacts 文件产物点击后在侧栏预览"
1091
1108
  }
1092
1109
  ],
1093
1110
  "docFile": "docs/assistant-message.md",
1094
1111
  "domain": "message"
1095
1112
  },
1113
+ {
1114
+ "name": "FileArtifactPanel 文件产物预览",
1115
+ "slug": "file-artifact-panel",
1116
+ "kind": "component",
1117
+ "description": "汇总当前会话全部文件产物,支持搜索、选中与分类型预览,挂载在 ChatContainer 侧栏「文件产物」Tab。",
1118
+ "aiSummary": "汇总当前会话所有 AssistantMessage 的 artifacts(按 outputId 去重),支持关键词搜索、列表选中与下载; 预览区委托 ArtifactPreviewHost:按类型走 text_from_download(html / markdown / md / txt / json) 或 preview_url_iframe(其余类型);download_url / preview_url 经 onArtifactClick 异步获取(TTL 缓存,重试 force); 预览重载键为 outputId:type;常规 resolveArtifactUrls 只传 file。 源码位置:src/components/chat-message/assistant-message/message-artifacts/file-artifact-panel.vue。",
1119
+ "relatedComponents": [
1120
+ {
1121
+ "slug": "assistant-message",
1122
+ "relation": "文件产物来源于 AssistantMessage.property.artifacts"
1123
+ },
1124
+ {
1125
+ "slug": "chat-container",
1126
+ "relation": "面板挂载在侧栏「文件产物」Tab(固定、不可关闭),并通过 onArtifactClick 异步取链"
1127
+ },
1128
+ {
1129
+ "slug": "execution-summary",
1130
+ "relation": "同为 ChatContainer 侧栏 Tab 面板,交互形态一致"
1131
+ },
1132
+ {
1133
+ "slug": "message-loading",
1134
+ "relation": "ArtifactPreviewHost 取链 / 拉取正文过程使用 MessageLoading"
1135
+ }
1136
+ ],
1137
+ "docFile": "docs/file-artifact-panel.md",
1138
+ "domain": "message"
1139
+ },
1096
1140
  {
1097
1141
  "name": "InfoMessage 信息消息",
1098
1142
  "slug": "info-message",
@@ -1189,8 +1233,8 @@
1189
1233
  "name": "ToolMessage 工具消息",
1190
1234
  "slug": "tool-message",
1191
1235
  "kind": "component",
1192
- "description": "渲染工具返回内容,JSON 场景交给 DescPanel 展示。",
1193
- "aiSummary": "渲染工具返回内容,JSON 场景交给 DescPanel 展示。 源码位置:src/components/chat-message/tool-message/tool-message.vue。",
1236
+ "description": "渲染工具返回内容,JSON 场景交给 DescPanel + HighlightKeyword 展示。",
1237
+ "aiSummary": "渲染工具返回内容;DescPanel 解析 JSON key-value,嵌套值 JSON.stringify 后经 HighlightKeyword 展示。 源码位置:src/components/chat-message/tool-message/tool-message.vue。",
1194
1238
  "relatedComponents": [
1195
1239
  {
1196
1240
  "slug": "assistant-message",
@@ -1212,8 +1256,8 @@
1212
1256
  "name": "UserMessage 用户消息",
1213
1257
  "slug": "user-message",
1214
1258
  "kind": "component",
1215
- "description": "渲染用户消息,支持文本、键值、Markdown、引用、文件和编辑态输入。",
1216
- "aiSummary": "渲染用户消息,支持文本、键值、Markdown、引用、文件和编辑态输入。 源码位置:src/components/chat-message/user-message/user-message.vue。",
1259
+ "description": "渲染用户消息,支持纯文本、键值引用、文件附件和编辑态输入。",
1260
+ "aiSummary": "渲染用户消息:纯文本(非 Markdown)、键值引用、二进制附件与编辑态 ChatInput / ShortcutRender; 工具栏含 copy / cite / edit / delete。源码位置:src/components/chat-message/user-message/user-message.vue。",
1217
1261
  "relatedComponents": [
1218
1262
  {
1219
1263
  "slug": "message-render",
@@ -1226,6 +1270,10 @@
1226
1270
  {
1227
1271
  "slug": "message-container",
1228
1272
  "relation": "嵌入列表时由 MessageContainer 管理分组与多选"
1273
+ },
1274
+ {
1275
+ "slug": "chat-input",
1276
+ "relation": "编辑态普通消息使用 ChatInput"
1229
1277
  }
1230
1278
  ],
1231
1279
  "docFile": "docs/user-message.md",
@@ -1533,6 +1581,28 @@
1533
1581
  ],
1534
1582
  "docFile": "docs/use-animation-text.md"
1535
1583
  },
1584
+ {
1585
+ "name": "useArtifactPreview",
1586
+ "slug": "use-artifact-preview",
1587
+ "kind": "composable",
1588
+ "description": "Provider/Consumer 模式的文件产物预览状态管理,用于 ChatContainer 侧栏「文件产物」Tab 的命中与切换。 Provider 在 ChatContainer 中创建,Consumer 在深层文件卡片中注入使用。",
1589
+ "aiSummary": "useArtifactPreviewProvider 维护 activeArtifactId(值为 outputId),openPreview 命中文件并触发 onOpen 打开侧栏 Tab; 并通过 getOnArtifactClick 封装 resolveArtifactUrls(TTL 8 分钟缓存;常规只传 file,force 可强制刷新,并发去重); useArtifactPreviewConsumer 在后代注入同一套 API。SessionArtifact 即 AIFileInfo,会话内以 outputId 为唯一键。 正文加载与分类型渲染不在本 composable,由 FileArtifactPanel 内 ArtifactPreviewHost 完成(重载键 outputId:type)。 FILE_ARTIFACT_TAB_NAME 标识固定「文件产物」Tab。",
1590
+ "relatedComponents": [
1591
+ {
1592
+ "slug": "chat-container",
1593
+ "relation": "Provider 主场景,聚合 sessionArtifacts 并挂载 FileArtifactPanel"
1594
+ },
1595
+ {
1596
+ "slug": "file-artifact-panel",
1597
+ "relation": "侧栏面板消费 activeArtifactId 与 setActiveArtifactId;预览加载在面板内 Host"
1598
+ },
1599
+ {
1600
+ "slug": "assistant-message",
1601
+ "relation": "文件产物来源 property.artifacts"
1602
+ }
1603
+ ],
1604
+ "docFile": "docs/use-artifact-preview.md"
1605
+ },
1536
1606
  {
1537
1607
  "name": "useClipboard",
1538
1608
  "slug": "use-clipboard",
@@ -1596,7 +1666,7 @@
1596
1666
  "slug": "use-custom-tab",
1597
1667
  "kind": "composable",
1598
1668
  "description": "Provider/Consumer 模式的自定义 Tab 管理,用于 `ChatContainer` 侧边栏的 Tab 动态管理。Provider 在 `ChatContainer` 中创建,Consumer 在任意后代组件中注入使用。",
1599
- "aiSummary": "useCustomTabProvider 返回 tabs、selectedTab、isCollapse 及 add/remove/selectCustomTab,并通过 provide 共享;可选 onTabChange 在切换时拉取数据。 useCustomTabConsumer 在后代注入同一套 API,常用于侧栏动态节点详情等。EXECUTION_TAB_NAME 标识默认「执行情况」Tab。 ChatContainer 侧栏集成 Provider 与 Tab UI。",
1669
+ "aiSummary": "useCustomTabProvider 返回 tabs、selectedTab、isCollapse 及 add/ensure/remove/selectCustomTab,并通过 provide 共享;可选 onTabChange 在切换时拉取数据。 ensureCustomTab 只挂载/合并元信息,不展开侧栏、不切换选中;addCustomTab 会展开并选中。 useCustomTabConsumer 在后代注入同一套 API,常用于侧栏动态节点详情等。EXECUTION_TAB_NAME 标识默认「执行情况」Tab。 ChatContainer 侧栏集成 Provider 与 Tab UI。",
1600
1670
  "relatedComponents": [
1601
1671
  {
1602
1672
  "slug": "chat-container",
@@ -1717,7 +1787,7 @@
1717
1787
  "slug": "constants",
1718
1788
  "kind": "type",
1719
1789
  "description": "`@blueking/chat-x` 导出的常量和枚举类型。",
1720
- "aiSummary": "汇总 MessageRole、MessageStatus(含 Fetching 请求中)、MessageContentType、MessageToolsStatus、MessageState、Z-Index 与 CONST_MESSAGE_TOOLS 等导出常量。 用于构造消息、配置 MessageContainer 工具栏与输入态,以及层级与默认快捷指令。与类型 messages 配套使用。",
1790
+ "aiSummary": "汇总 MessageRole、MessageStatus(含 Fetching 请求中、Complete/Completed 完成态兼容)、MessageContentType、MessageToolsStatus、MessageState、Z-Index 与 CONST_MESSAGE_TOOLS 等导出常量。 用于构造消息、配置 MessageContainer 工具栏与输入态,以及层级与默认快捷指令。与类型 messages 配套使用。",
1721
1791
  "relatedComponents": [
1722
1792
  {
1723
1793
  "slug": "message-tools",
package/dist/mcp/index.js CHANGED
File without changes
package/package.json CHANGED
@@ -1,26 +1,8 @@
1
1
  {
2
2
  "name": "@blueking/chat-x",
3
- "version": "0.0.48-beta.1",
3
+ "version": "0.0.49-beta.2",
4
4
  "description": "蓝鲸智云 AI Chat 组件库 —— 遵循 AG-UI,为 AI Agent 和人类开发者共同设计的对话 UI 组件库。",
5
5
  "main": "index.js",
6
- "scripts": {
7
- "prepublishOnly": "vite --config vite.config.ts build && pnpm dts && pnpm mcp:build",
8
- "dev": "vite --config vite.config.ts",
9
- "dts": "vue-tsc --project tsconfig.dts.json",
10
- "build": "vitest && vite --config vite.config.ts build && pnpm dts",
11
- "preview": "vite --config vite.config.ts build --mode preview && pnpm dts",
12
- "lint:script": "eslint . --ext .vue,.ts --fix",
13
- "lint:style": "stylelint \"**/*.{scss,css,vue}\" --fix",
14
- "lint:all": "pnpm lint:script && pnpm lint:style",
15
- "test": "vitest",
16
- "test:coverage": "vitest run --coverage",
17
- "wiki:dev": "vitepress dev wikis",
18
- "wiki:build": "vitepress build wikis",
19
- "mcp:build:index": "tsx mcp/scripts/build-index.ts",
20
- "mcp:build": "tsc -p mcp/tsconfig.json && pnpm mcp:build:index",
21
- "mcp:start": "node dist/mcp/index.js",
22
- "mcp:dev": "tsx mcp/src/index.ts"
23
- },
24
6
  "bin": {
25
7
  "chat-x-mcp": "dist/mcp/index.js"
26
8
  },
@@ -68,7 +50,6 @@
68
50
  "zod": "^4.3.6"
69
51
  },
70
52
  "devDependencies": {
71
- "@blueking/chat-helper": "workspace:*",
72
53
  "@types/katex": "^0.16.7",
73
54
  "@types/lodash": "^4.17.23",
74
55
  "@types/markdown-it": "^14.1.2",
@@ -97,6 +78,24 @@
97
78
  "vite-bundle-analyzer": "^1.3.2",
98
79
  "vitepress": "2.0.0-alpha.16",
99
80
  "vitest": "^4.0.18",
100
- "vue-tsc": "^3.1.4"
81
+ "vue-tsc": "^3.1.4",
82
+ "@blueking/chat-helper": "0.0.12-beta.14"
83
+ },
84
+ "scripts": {
85
+ "dev": "vite --config vite.config.ts",
86
+ "dts": "vue-tsc --project tsconfig.dts.json",
87
+ "build": "vitest && vite --config vite.config.ts build && pnpm dts",
88
+ "preview": "vite --config vite.config.ts build --mode preview && pnpm dts",
89
+ "lint:script": "eslint . --ext .vue,.ts --fix",
90
+ "lint:style": "stylelint \"**/*.{scss,css,vue}\" --fix",
91
+ "lint:all": "pnpm lint:script && pnpm lint:style",
92
+ "test": "vitest",
93
+ "test:coverage": "vitest run --coverage",
94
+ "wiki:dev": "vitepress dev wikis",
95
+ "wiki:build": "vitepress build wikis",
96
+ "mcp:build:index": "tsx mcp/scripts/build-index.ts",
97
+ "mcp:build": "tsc -p mcp/tsconfig.json && pnpm mcp:build:index",
98
+ "mcp:start": "node dist/mcp/index.js",
99
+ "mcp:dev": "tsx mcp/src/index.ts"
101
100
  }
102
101
  }