@blueking/chat-x 0.0.7 → 0.0.8

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 (28) hide show
  1. package/dist/components/chat-content/content-render/content-render.vue.d.ts +8 -2
  2. package/dist/components/chat-content/markdown-content/markdown-content.vue.d.ts +16 -2
  3. package/dist/components/chat-message/message-render/message-render.vue.d.ts +5 -0
  4. package/dist/components/markdown-token/code-content/code-content.vue.d.ts +14 -1
  5. package/dist/composables/use-global-config.d.ts +6 -8
  6. package/dist/index.css +1 -1
  7. package/dist/index.js +1914 -1900
  8. package/dist/index.js.map +1 -1
  9. package/dist/lang/lang.d.ts +1 -4
  10. package/dist/mcp/generated/docs/activity-message.md +0 -2
  11. package/dist/mcp/generated/docs/chat-container.md +6 -5
  12. package/dist/mcp/generated/docs/code-content.md +7 -0
  13. package/dist/mcp/generated/docs/content-render.md +4 -3
  14. package/dist/mcp/generated/docs/markdown-content.md +25 -10
  15. package/dist/mcp/generated/docs/message-render.md +4 -3
  16. package/dist/mcp/generated/docs/use-global-config.md +66 -95
  17. package/dist/mcp/generated/docs/user-message.md +4 -0
  18. package/dist/mcp/generated/index.json +4 -36
  19. package/package.json +2 -2
  20. package/dist/components/chat-message/flow-message/flow-detail.vue.d.ts +0 -11
  21. package/dist/components/chat-message/flow-message/flow-message.vue.d.ts +0 -4
  22. package/dist/components/chat-message/flow-message/flow-node-group.vue.d.ts +0 -12
  23. package/dist/components/chat-message/flow-message/flow-node-item.vue.d.ts +0 -11
  24. package/dist/components/chat-message/flow-message/flow-status-icons.d.ts +0 -36
  25. package/dist/components/chat-message/flow-message/index.d.ts +0 -6
  26. package/dist/components/chat-message/flow-message/mock.d.ts +0 -13
  27. package/dist/components/chat-message/flow-message/types.d.ts +0 -132
  28. package/dist/mcp/generated/docs/flow-message.md +0 -305
@@ -1,13 +0,0 @@
1
- import type { FlowMessageContent } from './types';
2
- /**
3
- * 流程消息 Mock 数据
4
- */
5
- export declare const mockFlowMessageContent: FlowMessageContent;
6
- /**
7
- * 简单的流程消息 Mock 数据(用于快速测试)
8
- */
9
- export declare const mockSimpleFlowContent: FlowMessageContent;
10
- /**
11
- * 空数据 Mock(用于测试边界情况)
12
- */
13
- export declare const mockEmptyFlowContent: FlowMessageContent;
@@ -1,132 +0,0 @@
1
- import type { BaseMessage } from '../../../ag-ui/types/messages';
2
- /**
3
- * 流程节点执行状态
4
- */
5
- export declare enum FlowNodeStatus {
6
- /** 失败 */
7
- Failed = "failed",
8
- /** 挂起 */
9
- Pending = "pending",
10
- /** 执行中 */
11
- Running = "running",
12
- /** 成功 */
13
- Success = "success"
14
- }
15
- /**
16
- * 详情面板 Tab 类型
17
- */
18
- export type DetailTabType = 'execution' | 'nodeDetail';
19
- /**
20
- * 流程执行统计
21
- */
22
- export interface FlowExecutionStats {
23
- /** 失败数量 */
24
- failed: number;
25
- /** 挂起数量 */
26
- pending: number;
27
- /** 执行中数量 */
28
- running: number;
29
- /** 成功数量 */
30
- success: number;
31
- }
32
- /**
33
- * 流程消息类型
34
- */
35
- export type FlowMessage = BaseMessage<'flow', FlowMessageContent>;
36
- /**
37
- * 流程消息内容
38
- */
39
- export interface FlowMessageContent {
40
- /** 额外文本内容 */
41
- extraContent?: string;
42
- /** 节点组列表 */
43
- groups: FlowNodeGroup[];
44
- /** 执行统计 */
45
- stats: FlowExecutionStats;
46
- }
47
- /**
48
- * 流程节点
49
- */
50
- export interface FlowNode {
51
- /** 节点详情 */
52
- detail?: FlowNodeDetail;
53
- /** 耗时(秒) */
54
- duration?: number;
55
- /** 节点 ID */
56
- id: string;
57
- /** 节点名称 */
58
- name: string;
59
- /** 节点状态 */
60
- status: FlowNodeStatus;
61
- }
62
- /**
63
- * 流程节点基础信息
64
- */
65
- export interface FlowNodeBaseInfo {
66
- /** 执行方案 */
67
- executePlan: string;
68
- /** 失败处理 */
69
- failureHandler: string;
70
- /** 流程模板 */
71
- flowTemplate: string;
72
- /** 是否可选 */
73
- isOptional: boolean;
74
- /** 节点名称 */
75
- nodeName: string;
76
- /** 步骤名称 */
77
- stepName: string;
78
- /** 超时控制 */
79
- timeoutControl: string;
80
- /** 总是使用最新版本 */
81
- useLatestVersion: boolean;
82
- }
83
- /**
84
- * 流程节点详情
85
- */
86
- export interface FlowNodeDetail {
87
- /** 基础信息 */
88
- baseInfo: FlowNodeBaseInfo;
89
- /** 输入参数 */
90
- inputParams: FlowNodeParam[];
91
- /** 输出参数 */
92
- outputParams: FlowNodeOutput[];
93
- }
94
- /**
95
- * 流程节点组
96
- */
97
- export interface FlowNodeGroup {
98
- /** 总耗时(秒) */
99
- duration?: number;
100
- /** 组 ID */
101
- id: string;
102
- /** 组名称 */
103
- name: string;
104
- /** 节点列表 */
105
- nodes: FlowNode[];
106
- /** 组状态 */
107
- status: FlowNodeStatus;
108
- }
109
- /**
110
- * 流程节点输出参数
111
- */
112
- export interface FlowNodeOutput {
113
- /** 变量说明 */
114
- description: string;
115
- /** KEY */
116
- key: string;
117
- /** 名称 */
118
- name: string;
119
- }
120
- /**
121
- * 流程节点参数
122
- */
123
- export interface FlowNodeParam {
124
- /** 参数名 */
125
- name: string;
126
- /** 参数值 */
127
- value: string;
128
- }
129
- /**
130
- * 节点配置 Tab 类型
131
- */
132
- export type NodeConfigTabType = 'config' | 'output';
@@ -1,305 +0,0 @@
1
- <!-- AI SUMMARY -->
2
- ## 快速了解
3
-
4
- FlowMessage 用于展示 BkFlow/流水线类流程的执行统计、节点分组与节点详情(含 Tab 详情)。消息类型为 flow,需在业务布局中显式嵌入; 标准 MessageRender 角色分发未包含 flow。与 Activity 的 FlowAgent 模式同属流程可视化但组件与数据模型不同。
5
-
6
- ### 关联组件
7
- - **activity-message** — Activity 的 flow-agent 模式同样展示流程执行,场景互补
8
- - **message-container** — 嵌入对话列表时需与消息容器等配合布局
9
- - **execution-summary** — 对话级执行摘要与单条流程消息可共同构成执行态 UI
10
-
11
- ---
12
- <!-- FULL DOC -->
13
-
14
- # FlowMessage 流程消息
15
-
16
- > **层级**:分子组件 · **功能域**:消息展示
17
-
18
- 流程消息组件,用于展示流程编排(如标准运维 / CI/CD 流水线)的执行状态和节点详情。包含执行统计摘要、节点组列表、节点详情面板,提供完整的流程执行可视化能力。
19
-
20
- ## 组件结构
21
-
22
- ```
23
- flow-message
24
- ├── flow-message__stats(执行情况摘要栏)
25
- │ ├── 执行中:N (蓝色)
26
- │ ├── 成功:N (绿色)
27
- │ ├── 失败:N (红色)
28
- │ └── 挂起:N (橙色)
29
- ├── flow-message__groups
30
- │ └── FlowNodeGroup × N(可折叠的节点组)
31
- │ ├── 组标题栏(折叠图标 + 状态图标 + 名称 + 耗时)
32
- │ └── FlowNodeItem × N(节点列表)
33
- │ ├── 状态图标 + 名称 + 耗时
34
- │ └── 详情入口(点击 → Teleport FlowDetail)
35
- ├── flow-message__extra(额外文本,可选)
36
- └── <Teleport>
37
- └── FlowDetail(节点详情面板)
38
- ├── 基础信息 Tab
39
- └── 输入/输出参数 Tab
40
- ```
41
-
42
- ## 基础用法
43
-
44
- ```vue
45
- <template>
46
- <FlowMessage :content="content" />
47
- </template>
48
-
49
- <script setup lang="ts">
50
- const content = {
51
- stats: { running: 1, success: 3, failed: 0, pending: 2 },
52
- groups: [
53
- {
54
- id: 'group-1',
55
- name: '部署阶段',
56
- status: 'running',
57
- duration: 120,
58
- nodes: [
59
- { id: 'node-1', name: '代码拉取', status: 'success', duration: 30 },
60
- { id: 'node-2', name: '编译构建', status: 'success', duration: 60 },
61
- { id: 'node-3', name: '部署上线', status: 'running', duration: 30 },
62
- ],
63
- },
64
- ],
65
- };
66
- </script>
67
- ```
68
-
69
- **渲染效果**
70
-
71
- ## 执行统计
72
-
73
- 顶部摘要栏展示四种状态的节点数量,数量 ≥ 100 时显示为 `99+`:
74
-
75
- | 状态 | 颜色 | 说明 |
76
- | ------ | ---- | --------------- |
77
- | 执行中 | 蓝色 | `stats.running` |
78
- | 成功 | 绿色 | `stats.success` |
79
- | 失败 | 红色 | `stats.failed` |
80
- | 挂起 | 橙色 | `stats.pending` |
81
-
82
- ## 带额外内容
83
-
84
- `extraContent` 以灰色背景文本块显示在节点组下方,适合展示执行总结或错误提示:
85
-
86
- ```vue
87
- <script setup lang="ts">
88
- const content = {
89
- stats: { running: 0, success: 5, failed: 1, pending: 0 },
90
- groups: [
91
- {
92
- id: 'group-1',
93
- name: '测试阶段',
94
- status: 'failed',
95
- nodes: [
96
- { id: 'node-1', name: '单元测试', status: 'success', duration: 45 },
97
- { id: 'node-2', name: '集成测试', status: 'failed', duration: 120 },
98
- ],
99
- },
100
- ],
101
- extraContent: '流程执行失败,请检查集成测试节点的错误日志。',
102
- };
103
- </script>
104
- ```
105
-
106
- **渲染效果**
107
-
108
- ## 节点详情
109
-
110
- 节点数据包含 `detail` 字段时,点击节点右侧入口可打开详情面板。详情面板通过 `<Teleport>` 渲染到 `ChatContainer` 的侧边栏插槽区域(`#ai-blueking-message-slot`),包含:
111
-
112
- - **基础信息**:流程模板、节点名称、步骤名称、执行方案、失败处理、超时控制等
113
- - **输入参数**:`name` + `value` 键值对列表
114
- - **输出参数**:`name` + `description` + `key` 列表
115
-
116
- ```vue
117
- <script setup lang="ts">
118
- const content = {
119
- stats: { running: 0, success: 1, failed: 0, pending: 0 },
120
- groups: [
121
- {
122
- id: 'group-1',
123
- name: '部署阶段',
124
- status: 'success',
125
- duration: 90,
126
- nodes: [
127
- {
128
- id: 'node-1',
129
- name: '部署上线',
130
- status: 'success',
131
- duration: 90,
132
- detail: {
133
- baseInfo: {
134
- flowTemplate: '标准部署流程',
135
- nodeName: '部署上线',
136
- stepName: '执行部署',
137
- executePlan: '蓝绿部署',
138
- isOptional: false,
139
- failureHandler: '自动回滚',
140
- timeoutControl: '600s',
141
- useLatestVersion: true,
142
- },
143
- inputParams: [
144
- { name: 'env', value: 'production' },
145
- { name: 'version', value: 'v1.2.3' },
146
- ],
147
- outputParams: [{ name: '部署结果', description: '部署是否成功', key: 'deploy_result' }],
148
- },
149
- },
150
- ],
151
- },
152
- ],
153
- };
154
- </script>
155
- ```
156
-
157
- **渲染效果**
158
-
159
- ## 节点状态图标
160
-
161
- 每个节点根据 `status` 渲染不同的状态图标:
162
-
163
- | 状态 | 图标 | 颜色 |
164
- | --------- | -------- | ---- |
165
- | `running` | 旋转加载 | 蓝色 |
166
- | `success` | 对勾 | 绿色 |
167
- | `failed` | 叉号 | 红色 |
168
- | `pending` | 时钟 | 橙色 |
169
-
170
- ## 在 MessageContainer 中的使用
171
-
172
- `FlowMessage` 由 `MessageRender` 根据 `role: 'flow'` 自动调度渲染,通常不需要手动引入:
173
-
174
- ```vue
175
- <script setup lang="ts">
176
- import { MessageContainer, type Message } from '@blueking/chat-x';
177
-
178
- const messages: Message[] = [
179
- {
180
- id: '1',
181
- messageId: '1',
182
- role: 'flow',
183
- status: 'complete',
184
- content: {
185
- stats: { running: 0, success: 2, failed: 0, pending: 0 },
186
- groups: [
187
- {
188
- id: 'g1',
189
- name: '构建阶段',
190
- status: 'success',
191
- duration: 180,
192
- nodes: [
193
- { id: 'n1', name: '代码编译', status: 'success', duration: 120 },
194
- { id: 'n2', name: '单元测试', status: 'success', duration: 60 },
195
- ],
196
- },
197
- ],
198
- },
199
- },
200
- ];
201
- </script>
202
- ```
203
-
204
- ## API
205
-
206
- ### Props
207
-
208
- 组件 Props 继承自 `Partial<FlowMessage>` 类型:
209
-
210
- | 属性名 | 类型 | 说明 |
211
- | --------- | -------------------- | ------------ |
212
- | content | `FlowMessageContent` | 流程消息内容 |
213
- | status | `MessageStatus` | 消息状态 |
214
- | id | `string` | 客户端 ID |
215
- | messageId | `number \| string` | 消息唯一标识 |
216
-
217
- ## 类型定义
218
-
219
- ```typescript
220
- // 流程消息内容
221
- interface FlowMessageContent {
222
- stats: FlowExecutionStats;
223
- groups: FlowNodeGroup[];
224
- extraContent?: string;
225
- }
226
-
227
- // 执行统计
228
- interface FlowExecutionStats {
229
- running: number;
230
- success: number;
231
- failed: number;
232
- pending: number;
233
- }
234
-
235
- // 节点组
236
- interface FlowNodeGroup {
237
- id: string;
238
- name: string;
239
- status: FlowNodeStatus;
240
- duration?: number;
241
- nodes: FlowNode[];
242
- }
243
-
244
- // 节点
245
- interface FlowNode {
246
- id: string;
247
- name: string;
248
- status: FlowNodeStatus;
249
- duration?: number;
250
- detail?: FlowNodeDetail;
251
- }
252
-
253
- // 节点状态
254
- enum FlowNodeStatus {
255
- Running = 'running',
256
- Success = 'success',
257
- Failed = 'failed',
258
- Pending = 'pending',
259
- }
260
-
261
- // 节点详情
262
- interface FlowNodeDetail {
263
- baseInfo: FlowNodeBaseInfo;
264
- inputParams: FlowNodeParam[];
265
- outputParams: FlowNodeOutput[];
266
- }
267
-
268
- // 节点基础信息
269
- interface FlowNodeBaseInfo {
270
- flowTemplate: string;
271
- nodeName: string;
272
- stepName: string;
273
- executePlan: string;
274
- isOptional: boolean;
275
- failureHandler: string;
276
- timeoutControl: string;
277
- useLatestVersion: boolean;
278
- }
279
-
280
- // 节点参数
281
- interface FlowNodeParam {
282
- name: string;
283
- value: string;
284
- }
285
-
286
- // 节点输出
287
- interface FlowNodeOutput {
288
- name: string;
289
- description: string;
290
- key: string;
291
- }
292
- ```
293
-
294
- ## 使用场景
295
-
296
- - 展示标准运维(SOPS)流程的执行过程和状态
297
- - 展示 CI/CD 流水线的节点执行情况
298
- - 可视化任务编排的执行进度和结果
299
- - 查看流程节点的详细配置、输入参数和输出参数
300
-
301
- ## 关联组件
302
-
303
- - [ActivityMessage](./activity-message.md) — FlowAgent 活动消息与流程编排展示场景相近
304
- - [MessageContainer](./message-container.md) — 嵌入消息列表时的容器
305
- - [ExecutionSummary](./execution-summary.md) — 对话级执行摘要