@next-bricks/ai-portal 0.70.0 → 0.70.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.
- package/dist/bricks.json +42 -42
- package/dist/chunks/7202.a893b0e6.js.map +1 -1
- package/dist/chunks/action-buttons.68666920.js.map +1 -1
- package/dist/chunks/activity-timeline.96e7aaea.js.map +1 -1
- package/dist/chunks/ai-agents.cffd08a0.js.map +1 -1
- package/dist/chunks/ai-employees.267c3626.js.map +1 -1
- package/dist/chunks/blank-state.648eea95.js.map +1 -1
- package/dist/chunks/chat-input.444c80bb.js.map +1 -1
- package/dist/chunks/chat-panel-welcome.2f7c6c8b.js.map +1 -1
- package/dist/chunks/chat-panel.3160f2e8.js.map +1 -1
- package/dist/chunks/chat-stream.393c8241.js.map +1 -1
- package/dist/chunks/cruise-canvas.bfae3138.js.map +1 -1
- package/dist/chunks/dropdown-select.336442ba.js.map +1 -1
- package/dist/chunks/elevo-card.49b42ed0.js.map +1 -1
- package/dist/chunks/elevo-logo.25e3b889.js.map +1 -1
- package/dist/chunks/elevo-sidebar.a197a77f.js.map +1 -1
- package/dist/chunks/flow-tabs.ee1290c2.js.map +1 -1
- package/dist/chunks/goal-card-list.74ab5767.js.map +1 -1
- package/dist/chunks/home-container.f1829834.js.map +1 -1
- package/dist/chunks/icon-button.545ffb24.js.map +1 -1
- package/dist/chunks/mcp-tools.f132c502.js.map +1 -1
- package/dist/chunks/notice-dropdown.63cb2415.js.map +1 -1
- package/dist/chunks/page-container.2185f2e0.js.map +1 -1
- package/dist/chunks/preview-container.a0ca6e2f.js.map +1 -1
- package/dist/chunks/project-knowledges.51731410.js.map +1 -1
- package/dist/chunks/running-flow.37a428cf.js.map +1 -1
- package/dist/chunks/show-case.44e995fc.js.map +1 -1
- package/dist/chunks/show-cases.c3921ea0.js.map +1 -1
- package/dist/chunks/space-chat-guide.84f4a1e7.js.map +1 -1
- package/dist/chunks/space-logo.994f7a25.js.map +1 -1
- package/dist/chunks/space-workbench.8c064898.js.map +1 -1
- package/dist/chunks/stage-flow.9b6fad93.js.map +1 -1
- package/dist/chunks/stat-with-mini-chart.1509cf8c.js.map +1 -1
- package/dist/chunks/sticky-container.d3f7054e.js.map +1 -1
- package/dist/chunks/tab-list.ee97567f.js.map +1 -1
- package/dist/examples.json +52 -40
- package/dist/{index.8e0adc27.js → index.94998c36.js} +2 -2
- package/dist/{index.8e0adc27.js.map → index.94998c36.js.map} +1 -1
- package/dist/manifest.json +594 -313
- package/dist/types.json +796 -796
- package/dist-types/action-buttons/index.d.ts +10 -1
- package/dist-types/activity-timeline/index.d.ts +10 -1
- package/dist-types/ai-agents/index.d.ts +10 -1
- package/dist-types/ai-employees/index.d.ts +16 -1
- package/dist-types/blank-state/index.d.ts +10 -1
- package/dist-types/chat-input/index.d.ts +37 -1
- package/dist-types/chat-panel/index.d.ts +45 -3
- package/dist-types/chat-stream/index.d.ts +62 -1
- package/dist-types/cruise-canvas/index.d.ts +71 -1
- package/dist-types/dropdown-select/index.d.ts +3 -1
- package/dist-types/elevo-card/index.d.ts +5 -1
- package/dist-types/elevo-logo/index.d.ts +3 -1
- package/dist-types/elevo-sidebar/index.d.ts +19 -2
- package/dist-types/flow-tabs/index.d.ts +5 -1
- package/dist-types/gantt-chart/index.d.ts +3 -1
- package/dist-types/goal-card-list/index.d.ts +8 -1
- package/dist-types/home-container/index.d.ts +4 -1
- package/dist-types/icon-button/index.d.ts +4 -1
- package/dist-types/mcp-tools/index.d.ts +3 -1
- package/dist-types/page-container/index.d.ts +7 -0
- package/dist-types/preview-container/index.d.ts +4 -0
- package/dist-types/project-knowledges/index.d.ts +5 -0
- package/dist-types/running-flow/index.d.ts +3 -0
- package/dist-types/show-case/index.d.ts +5 -0
- package/dist-types/show-cases/index.d.ts +4 -0
- package/dist-types/space-workbench/chat-panel-welcome/index.d.ts +3 -0
- package/dist-types/space-workbench/index.d.ts +7 -0
- package/dist-types/space-workbench/space-chat-guide/index.d.ts +3 -0
- package/dist-types/space-workbench/space-logo/index.d.ts +1 -0
- package/dist-types/stage-flow/index.d.ts +21 -0
- package/dist-types/stat-with-mini-chart/index.d.ts +10 -0
- package/dist-types/sticky-container/index.d.ts +3 -0
- package/dist-types/tab-list/index.d.ts +4 -0
- package/docs/action-buttons.md +59 -10
- package/docs/action-buttons.react.md +80 -0
- package/docs/activity-timeline.md +51 -7
- package/docs/activity-timeline.react.md +109 -0
- package/docs/ai-agents.md +62 -2
- package/docs/ai-agents.react.md +73 -0
- package/docs/ai-employees.md +76 -2
- package/docs/ai-employees.react.md +106 -0
- package/docs/blank-state.md +62 -2
- package/docs/blank-state.react.md +77 -0
- package/docs/chat-box.md +134 -52
- package/docs/chat-box.react.md +142 -0
- package/docs/chat-input.md +117 -1
- package/docs/chat-input.react.md +117 -0
- package/docs/chat-panel-welcome.md +39 -0
- package/docs/chat-panel-welcome.react.md +41 -0
- package/docs/chat-panel.md +86 -3
- package/docs/chat-panel.react.md +109 -0
- package/docs/chat-stream.md +149 -2
- package/docs/chat-stream.react.md +155 -0
- package/docs/cruise-canvas.md +159 -0
- package/docs/cruise-canvas.react.md +159 -0
- package/docs/dropdown-select.md +37 -8
- package/docs/dropdown-select.react.md +144 -0
- package/docs/elevo-card.md +75 -1
- package/docs/elevo-card.react.md +104 -0
- package/docs/elevo-logo.md +13 -1
- package/docs/elevo-logo.react.md +27 -0
- package/docs/elevo-sidebar.md +150 -1
- package/docs/elevo-sidebar.react.md +149 -0
- package/docs/flow-tabs.md +97 -2
- package/docs/flow-tabs.react.md +102 -0
- package/docs/gantt-chart.md +101 -0
- package/docs/gantt-chart.react.md +125 -0
- package/docs/goal-card-list.md +149 -13
- package/docs/goal-card-list.react.md +185 -0
- package/docs/home-container.md +48 -2
- package/docs/home-container.react.md +51 -0
- package/docs/icon-button.md +128 -2
- package/docs/icon-button.react.md +120 -0
- package/docs/mcp-tools.md +105 -2
- package/docs/mcp-tools.react.md +117 -0
- package/docs/notice-dropdown.md +53 -10
- package/docs/notice-dropdown.react.md +167 -0
- package/docs/notice-list.md +53 -5
- package/docs/notice-list.react.md +121 -0
- package/docs/page-container.md +80 -3
- package/docs/page-container.react.md +83 -0
- package/docs/preview-container.md +22 -32
- package/docs/preview-container.react.md +71 -0
- package/docs/project-conversations.md +85 -4
- package/docs/project-conversations.react.md +110 -0
- package/docs/project-knowledges.md +73 -8
- package/docs/project-knowledges.react.md +85 -0
- package/docs/running-flow.md +57 -2
- package/docs/running-flow.react.md +90 -0
- package/docs/show-case.md +48 -3
- package/docs/show-case.react.md +60 -0
- package/docs/show-cases.md +52 -2
- package/docs/show-cases.react.md +92 -0
- package/docs/space-chat-guide.md +32 -0
- package/docs/space-chat-guide.react.md +39 -0
- package/docs/space-logo.md +53 -0
- package/docs/space-logo.react.md +46 -0
- package/docs/space-workbench.md +45 -2
- package/docs/space-workbench.react.md +102 -0
- package/docs/stage-flow.md +122 -26
- package/docs/stage-flow.react.md +112 -0
- package/docs/stat-with-mini-chart.md +64 -159
- package/docs/stat-with-mini-chart.react.md +113 -0
- package/docs/sticky-container.md +56 -3
- package/docs/sticky-container.react.md +60 -0
- package/docs/tab-list.md +74 -3
- package/docs/tab-list.react.md +73 -0
- package/package.json +2 -2
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: ai-portal.icon-button
|
|
3
|
+
displayName: WrappedAiPortalIconButton
|
|
4
|
+
description: 图标按钮,支持多种视觉变体、禁用状态、Tooltip 提示及文字插槽。
|
|
5
|
+
category: interact-basic
|
|
6
|
+
source: "@next-bricks/ai-portal"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedAiPortalIconButton
|
|
10
|
+
|
|
11
|
+
> 图标按钮,支持多种视觉变体、禁用状态、Tooltip 提示及文字插槽。
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedAiPortalIconButton } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| -------------- | -------------------------------------------------------------- | ---- | ------ | -------------------------------------------------------------------------------------- |
|
|
23
|
+
| icon | `GeneralIconProps` | 否 | - | 按钮图标配置 |
|
|
24
|
+
| tooltip | `string` | 否 | - | 悬停时显示的 Tooltip 文本 |
|
|
25
|
+
| tooltipHoist | `boolean` | 否 | - | 是否将 Tooltip 挂载到顶层,避免被父容器裁剪 |
|
|
26
|
+
| active | `boolean` | 否 | - | 是否为激活状态,通过 CSS 属性选择器控制样式,不触发重新渲染 |
|
|
27
|
+
| disabled | `boolean` | 否 | - | 是否禁用按钮 |
|
|
28
|
+
| variant | `"default" \| "light" \| "mini" \| "mini-light" \| "bordered"` | 否 | - | 按钮视觉变体,通过 CSS 属性选择器控制样式,不触发重新渲染 |
|
|
29
|
+
| reduceIconSize | `boolean` | 否 | - | 是否缩小图标尺寸(部分 easyops 图标过大),通过 CSS 属性选择器控制样式,不触发重新渲染 |
|
|
30
|
+
|
|
31
|
+
## Slots
|
|
32
|
+
|
|
33
|
+
| 名称 | 说明 |
|
|
34
|
+
| ------- | -------------------------- |
|
|
35
|
+
| default | 图标旁边的文字内容(可选) |
|
|
36
|
+
|
|
37
|
+
## Examples
|
|
38
|
+
|
|
39
|
+
### Basic
|
|
40
|
+
|
|
41
|
+
基础图标按钮,配置图标和 Tooltip 提示。
|
|
42
|
+
|
|
43
|
+
```tsx
|
|
44
|
+
<WrappedAiPortalIconButton
|
|
45
|
+
icon={{ lib: "antd", icon: "download" }}
|
|
46
|
+
tooltip="下载"
|
|
47
|
+
/>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### Variants
|
|
51
|
+
|
|
52
|
+
展示不同视觉变体的图标按钮。
|
|
53
|
+
|
|
54
|
+
```tsx
|
|
55
|
+
<div style={{ display: "flex", gap: 8, alignItems: "center", padding: 8 }}>
|
|
56
|
+
<WrappedAiPortalIconButton
|
|
57
|
+
variant="default"
|
|
58
|
+
icon={{ lib: "antd", icon: "setting" }}
|
|
59
|
+
tooltip="默认样式"
|
|
60
|
+
/>
|
|
61
|
+
<WrappedAiPortalIconButton
|
|
62
|
+
variant="light"
|
|
63
|
+
icon={{ lib: "antd", icon: "heart" }}
|
|
64
|
+
tooltip="轻量样式"
|
|
65
|
+
/>
|
|
66
|
+
<WrappedAiPortalIconButton
|
|
67
|
+
variant="mini"
|
|
68
|
+
icon={{ lib: "antd", icon: "star" }}
|
|
69
|
+
tooltip="迷你样式"
|
|
70
|
+
/>
|
|
71
|
+
<WrappedAiPortalIconButton
|
|
72
|
+
variant="mini-light"
|
|
73
|
+
icon={{ lib: "antd", icon: "bell" }}
|
|
74
|
+
tooltip="迷你轻量"
|
|
75
|
+
/>
|
|
76
|
+
<WrappedAiPortalIconButton
|
|
77
|
+
variant="bordered"
|
|
78
|
+
icon={{ lib: "antd", icon: "plus" }}
|
|
79
|
+
tooltip="边框样式"
|
|
80
|
+
/>
|
|
81
|
+
</div>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
### Disabled State
|
|
85
|
+
|
|
86
|
+
展示禁用状态的图标按钮。
|
|
87
|
+
|
|
88
|
+
```tsx
|
|
89
|
+
<WrappedAiPortalIconButton
|
|
90
|
+
icon={{ lib: "antd", icon: "delete" }}
|
|
91
|
+
tooltip="无法删除"
|
|
92
|
+
disabled
|
|
93
|
+
/>
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### With Text Slot
|
|
97
|
+
|
|
98
|
+
图标按钮配合文字内容插槽。
|
|
99
|
+
|
|
100
|
+
```tsx
|
|
101
|
+
<WrappedAiPortalIconButton
|
|
102
|
+
icon={{ lib: "easyops", icon: "new-chat" }}
|
|
103
|
+
active
|
|
104
|
+
reduceIconSize
|
|
105
|
+
>
|
|
106
|
+
<span>新建对话</span>
|
|
107
|
+
</WrappedAiPortalIconButton>
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
### With Tooltip Hoist
|
|
111
|
+
|
|
112
|
+
配置 tooltipHoist 防止 Tooltip 被父容器裁剪。
|
|
113
|
+
|
|
114
|
+
```tsx
|
|
115
|
+
<WrappedAiPortalIconButton
|
|
116
|
+
icon={{ lib: "antd", icon: "info-circle" }}
|
|
117
|
+
tooltip="这是一条提示信息"
|
|
118
|
+
tooltipHoist
|
|
119
|
+
/>
|
|
120
|
+
```
|
package/docs/mcp-tools.md
CHANGED
|
@@ -1,11 +1,114 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
tagName: ai-portal.mcp-tools
|
|
3
|
+
displayName: WrappedAiPortalMcpTools
|
|
4
|
+
description: MCP 工具列表组件,按服务分组展示工具信息,支持按平台分类过滤和吸顶标签栏。
|
|
5
|
+
category: display-component
|
|
6
|
+
source: "@next-bricks/ai-portal"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# ai-portal.mcp-tools
|
|
10
|
+
|
|
11
|
+
> MCP 工具列表组件,按服务分组展示工具信息,支持按平台分类过滤和吸顶标签栏。
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
16
|
+
| --------- | ----------- | ---- | ------ | -------------------------------------------------------------------------- |
|
|
17
|
+
| list | `McpTool[]` | 否 | - | MCP 工具列表数据,按 server.id 自动分组并归属平台分类 |
|
|
18
|
+
| stickyTop | `number` | 否 | - | 平台过滤标签栏的吸顶偏移量(px),设置后标签栏使用吸顶容器,未设置则不吸顶 |
|
|
2
19
|
|
|
3
20
|
## Examples
|
|
4
21
|
|
|
5
22
|
### Basic
|
|
6
23
|
|
|
24
|
+
展示基础 MCP 工具列表,按服务分组展示。
|
|
25
|
+
|
|
26
|
+
```yaml preview
|
|
27
|
+
brick: ai-portal.mcp-tools
|
|
28
|
+
properties:
|
|
29
|
+
list:
|
|
30
|
+
- name: list_hosts
|
|
31
|
+
title: 查询主机列表
|
|
32
|
+
description: 查询 CMDB 中的主机资源列表,支持按条件过滤。
|
|
33
|
+
server:
|
|
34
|
+
id: cmdb
|
|
35
|
+
name: CMDB
|
|
36
|
+
- name: get_host_detail
|
|
37
|
+
title: 获取主机详情
|
|
38
|
+
description: 根据主机实例 ID 获取主机的详细信息,包括配置、状态等。
|
|
39
|
+
server:
|
|
40
|
+
id: cmdb
|
|
41
|
+
name: CMDB
|
|
42
|
+
- name: list_alerts
|
|
43
|
+
title: 查询告警列表
|
|
44
|
+
description: 获取当前活跃告警列表,支持按严重性筛选。
|
|
45
|
+
server:
|
|
46
|
+
id: alert
|
|
47
|
+
name: 监控事件
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
### With Custom Icons
|
|
51
|
+
|
|
52
|
+
为工具配置自定义图标,增强视觉区分。
|
|
53
|
+
|
|
54
|
+
```yaml preview
|
|
55
|
+
brick: ai-portal.mcp-tools
|
|
56
|
+
properties:
|
|
57
|
+
list:
|
|
58
|
+
- name: deploy_app
|
|
59
|
+
title: 部署应用
|
|
60
|
+
description: 向 Kubernetes 集群部署应用,支持指定命名空间和镜像版本。
|
|
61
|
+
icon:
|
|
62
|
+
lib: antd
|
|
63
|
+
icon: cloud-upload
|
|
64
|
+
server:
|
|
65
|
+
id: kubernetes
|
|
66
|
+
name: Kubernetes
|
|
67
|
+
- name: scale_deployment
|
|
68
|
+
title: 弹性伸缩
|
|
69
|
+
description: 调整 Kubernetes Deployment 的副本数量。
|
|
70
|
+
icon:
|
|
71
|
+
lib: antd
|
|
72
|
+
icon: apartment
|
|
73
|
+
server:
|
|
74
|
+
id: kubernetes
|
|
75
|
+
name: Kubernetes
|
|
76
|
+
- name: execute_llm
|
|
77
|
+
title: 调用大模型
|
|
78
|
+
description: 向大模型发送请求并获取响应。
|
|
79
|
+
icon:
|
|
80
|
+
lib: antd
|
|
81
|
+
icon: robot
|
|
82
|
+
server:
|
|
83
|
+
id: llm
|
|
84
|
+
name: 大模型
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### With Sticky Tabs
|
|
88
|
+
|
|
89
|
+
启用吸顶平台过滤标签栏,适合内容较多的场景。
|
|
90
|
+
|
|
7
91
|
```yaml preview
|
|
8
92
|
brick: ai-portal.mcp-tools
|
|
9
93
|
properties:
|
|
10
|
-
|
|
94
|
+
stickyTop: 0
|
|
95
|
+
list:
|
|
96
|
+
- name: list_hosts
|
|
97
|
+
title: 查询主机列表
|
|
98
|
+
description: 查询 CMDB 中的主机资源列表,支持按条件过滤。
|
|
99
|
+
server:
|
|
100
|
+
id: cmdb
|
|
101
|
+
name: CMDB
|
|
102
|
+
- name: create_page
|
|
103
|
+
title: 创建页面
|
|
104
|
+
description: 在低代码平台中创建一个新的页面。
|
|
105
|
+
server:
|
|
106
|
+
id: web-builder
|
|
107
|
+
name: 低代码
|
|
108
|
+
- name: list_dashboards
|
|
109
|
+
title: 查询仪表盘
|
|
110
|
+
description: 获取 Grafana 中所有仪表盘列表。
|
|
111
|
+
server:
|
|
112
|
+
id: grafana
|
|
113
|
+
name: Grafana
|
|
11
114
|
```
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: ai-portal.mcp-tools
|
|
3
|
+
displayName: WrappedAiPortalMcpTools
|
|
4
|
+
description: MCP 工具列表组件,按服务分组展示工具信息,支持按平台分类过滤和吸顶标签栏。
|
|
5
|
+
category: display-component
|
|
6
|
+
source: "@next-bricks/ai-portal"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedAiPortalMcpTools
|
|
10
|
+
|
|
11
|
+
> MCP 工具列表组件,按服务分组展示工具信息,支持按平台分类过滤和吸顶标签栏。
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedAiPortalMcpTools } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| --------- | ----------- | ---- | ------ | -------------------------------------------------------------------------- |
|
|
23
|
+
| list | `McpTool[]` | 否 | - | MCP 工具列表数据,按 server.id 自动分组并归属平台分类 |
|
|
24
|
+
| stickyTop | `number` | 否 | - | 平台过滤标签栏的吸顶偏移量(px),设置后标签栏使用吸顶容器,未设置则不吸顶 |
|
|
25
|
+
|
|
26
|
+
## Examples
|
|
27
|
+
|
|
28
|
+
### Basic
|
|
29
|
+
|
|
30
|
+
展示基础 MCP 工具列表,按服务分组展示。
|
|
31
|
+
|
|
32
|
+
```tsx
|
|
33
|
+
<WrappedAiPortalMcpTools
|
|
34
|
+
list={[
|
|
35
|
+
{
|
|
36
|
+
name: "list_hosts",
|
|
37
|
+
title: "查询主机列表",
|
|
38
|
+
description: "查询 CMDB 中的主机资源列表,支持按条件过滤。",
|
|
39
|
+
server: { id: "cmdb", name: "CMDB" },
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: "get_host_detail",
|
|
43
|
+
title: "获取主机详情",
|
|
44
|
+
description: "根据主机实例 ID 获取主机的详细信息,包括配置、状态等。",
|
|
45
|
+
server: { id: "cmdb", name: "CMDB" },
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: "list_alerts",
|
|
49
|
+
title: "查询告警列表",
|
|
50
|
+
description: "获取当前活跃告警列表,支持按严重性筛选。",
|
|
51
|
+
server: { id: "alert", name: "监控事件" },
|
|
52
|
+
},
|
|
53
|
+
]}
|
|
54
|
+
/>
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
### With Custom Icons
|
|
58
|
+
|
|
59
|
+
为工具配置自定义图标,增强视觉区分。
|
|
60
|
+
|
|
61
|
+
```tsx
|
|
62
|
+
<WrappedAiPortalMcpTools
|
|
63
|
+
list={[
|
|
64
|
+
{
|
|
65
|
+
name: "deploy_app",
|
|
66
|
+
title: "部署应用",
|
|
67
|
+
description: "向 Kubernetes 集群部署应用,支持指定命名空间和镜像版本。",
|
|
68
|
+
icon: { lib: "antd", icon: "cloud-upload" },
|
|
69
|
+
server: { id: "kubernetes", name: "Kubernetes" },
|
|
70
|
+
},
|
|
71
|
+
{
|
|
72
|
+
name: "scale_deployment",
|
|
73
|
+
title: "弹性伸缩",
|
|
74
|
+
description: "调整 Kubernetes Deployment 的副本数量。",
|
|
75
|
+
icon: { lib: "antd", icon: "apartment" },
|
|
76
|
+
server: { id: "kubernetes", name: "Kubernetes" },
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
name: "execute_llm",
|
|
80
|
+
title: "调用大模型",
|
|
81
|
+
description: "向大模型发送请求并获取响应。",
|
|
82
|
+
icon: { lib: "antd", icon: "robot" },
|
|
83
|
+
server: { id: "llm", name: "大模型" },
|
|
84
|
+
},
|
|
85
|
+
]}
|
|
86
|
+
/>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### With Sticky Tabs
|
|
90
|
+
|
|
91
|
+
启用吸顶平台过滤标签栏,适合内容较多的场景。
|
|
92
|
+
|
|
93
|
+
```tsx
|
|
94
|
+
<WrappedAiPortalMcpTools
|
|
95
|
+
stickyTop={0}
|
|
96
|
+
list={[
|
|
97
|
+
{
|
|
98
|
+
name: "list_hosts",
|
|
99
|
+
title: "查询主机列表",
|
|
100
|
+
description: "查询 CMDB 中的主机资源列表,支持按条件过滤。",
|
|
101
|
+
server: { id: "cmdb", name: "CMDB" },
|
|
102
|
+
},
|
|
103
|
+
{
|
|
104
|
+
name: "create_page",
|
|
105
|
+
title: "创建页面",
|
|
106
|
+
description: "在低代码平台中创建一个新的页面。",
|
|
107
|
+
server: { id: "web-builder", name: "低代码" },
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
name: "list_dashboards",
|
|
111
|
+
title: "查询仪表盘",
|
|
112
|
+
description: "获取 Grafana 中所有仪表盘列表。",
|
|
113
|
+
server: { id: "grafana", name: "Grafana" },
|
|
114
|
+
},
|
|
115
|
+
]}
|
|
116
|
+
/>
|
|
117
|
+
```
|
package/docs/notice-dropdown.md
CHANGED
|
@@ -1,11 +1,48 @@
|
|
|
1
|
-
|
|
1
|
+
---
|
|
2
|
+
tagName: ai-portal.notice-dropdown
|
|
3
|
+
displayName: WrappedAiPortalNoticeDropdown
|
|
4
|
+
description: 消息通知下拉框构件,用于展示消息列表
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/ai-portal"
|
|
7
|
+
---
|
|
2
8
|
|
|
3
|
-
|
|
9
|
+
# ai-portal.notice-dropdown
|
|
10
|
+
|
|
11
|
+
> 消息通知下拉框构件,用于展示消息列表
|
|
12
|
+
|
|
13
|
+
## Props
|
|
14
|
+
|
|
15
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
16
|
+
| ---------------------- | --------------------- | ---- | ------ | ------------------------ |
|
|
17
|
+
| dataSource | `NoticeItem[]` | 否 | - | 消息数据列表 |
|
|
18
|
+
| popoverPlacement | `Placement` | 否 | - | 弹窗位置 |
|
|
19
|
+
| emptyText | `string` | 否 | - | 空状态文案 |
|
|
20
|
+
| notifyCenterUrl | `string` | 否 | - | 通知中心URL |
|
|
21
|
+
| urlTemplate | `string` | 否 | - | 详情链接 |
|
|
22
|
+
| urlTarget | `Target` | 否 | - | 详情链接目标 |
|
|
23
|
+
| dropdownMaxWidth | `string \| number` | 否 | - | 下拉框最大宽度 |
|
|
24
|
+
| dropdownContentStyle | `React.CSSProperties` | 否 | - | 下拉框内容样式 |
|
|
25
|
+
| hideNotifyCenterButton | `boolean` | 否 | - | 是否隐藏进入消息中心按钮 |
|
|
26
|
+
|
|
27
|
+
## Events
|
|
28
|
+
|
|
29
|
+
| 事件 | detail | 说明 |
|
|
30
|
+
| ------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------- |
|
|
31
|
+
| notice.click | `NoticeItem` — { id: 消息ID, type: 消息类型, isRead: 是否已读, title: 标题, description: 描述, time: 时间戳, url: 详情链接 } | 消息项点击事件 |
|
|
32
|
+
| mark.all.read | `void` | 全部已读点击事件 |
|
|
33
|
+
|
|
34
|
+
## Slots
|
|
35
|
+
|
|
36
|
+
| 名称 | 说明 |
|
|
37
|
+
| ------- | ---------------------------------------- |
|
|
38
|
+
| trigger | 自定义触发器,默认为带角标的铃铛图标按钮 |
|
|
4
39
|
|
|
5
40
|
## Examples
|
|
6
41
|
|
|
7
42
|
### 基础使用(带消息列表)
|
|
8
43
|
|
|
44
|
+
展示包含多条不同类型消息的下拉通知列表。
|
|
45
|
+
|
|
9
46
|
```yaml preview
|
|
10
47
|
brick: ai-portal.notice-dropdown
|
|
11
48
|
properties:
|
|
@@ -26,31 +63,30 @@ properties:
|
|
|
26
63
|
type: "system"
|
|
27
64
|
isRead: true
|
|
28
65
|
title: "Samuel在项目【项目A】@了你"
|
|
29
|
-
- id: "msg-
|
|
66
|
+
- id: "msg-5"
|
|
30
67
|
type: "account"
|
|
31
68
|
isRead: false
|
|
32
69
|
title: "协作流【协作流名称】 - 【活动名称】需要人工确认"
|
|
33
|
-
- id: "msg-
|
|
70
|
+
- id: "msg-6"
|
|
34
71
|
type: "system"
|
|
35
72
|
isRead: true
|
|
36
73
|
title: "【项目协作功能】已发布"
|
|
37
|
-
- id: "msg-
|
|
74
|
+
- id: "msg-7"
|
|
38
75
|
type: "project"
|
|
39
76
|
isRead: true
|
|
40
77
|
title: "Samuel在项目【项目A】@了你"
|
|
41
|
-
- id: "msg-
|
|
78
|
+
- id: "msg-8"
|
|
42
79
|
type: "space"
|
|
43
80
|
isRead: false
|
|
44
81
|
title: "协作流【协作流名称】 - 【活动名称】需要人工确认"
|
|
45
|
-
- id: "msg-
|
|
82
|
+
- id: "msg-9"
|
|
46
83
|
type: "space"
|
|
47
84
|
isRead: true
|
|
48
85
|
title: "【项目协作功能】已发布"
|
|
49
|
-
- id: "msg-
|
|
86
|
+
- id: "msg-10"
|
|
50
87
|
type: "system"
|
|
51
88
|
isRead: true
|
|
52
89
|
title: "Samuel在项目【项目A】@了你"
|
|
53
|
-
|
|
54
90
|
events:
|
|
55
91
|
notice.click:
|
|
56
92
|
action: console.log
|
|
@@ -65,13 +101,18 @@ events:
|
|
|
65
101
|
|
|
66
102
|
### 空状态
|
|
67
103
|
|
|
104
|
+
当没有消息时展示空状态提示文案。
|
|
105
|
+
|
|
68
106
|
```yaml preview
|
|
69
107
|
brick: ai-portal.notice-dropdown
|
|
70
108
|
properties:
|
|
71
109
|
dataSource: []
|
|
110
|
+
emptyText: "暂无新消息"
|
|
72
111
|
```
|
|
73
112
|
|
|
74
|
-
###
|
|
113
|
+
### 自定义触发器
|
|
114
|
+
|
|
115
|
+
使用 trigger 插槽放置自定义触发器元素(如按钮)。
|
|
75
116
|
|
|
76
117
|
```yaml preview
|
|
77
118
|
brick: ai-portal.notice-dropdown
|
|
@@ -89,6 +130,8 @@ properties:
|
|
|
89
130
|
type: "account"
|
|
90
131
|
isRead: true
|
|
91
132
|
title: "【项目协作功能】已发布"
|
|
133
|
+
hideNotifyCenterButton: true
|
|
134
|
+
dropdownMaxWidth: 400
|
|
92
135
|
children:
|
|
93
136
|
- brick: eo-button
|
|
94
137
|
slot: trigger
|
|
@@ -0,0 +1,167 @@
|
|
|
1
|
+
---
|
|
2
|
+
tagName: ai-portal.notice-dropdown
|
|
3
|
+
displayName: WrappedAiPortalNoticeDropdown
|
|
4
|
+
description: 消息通知下拉框构件,用于展示消息列表
|
|
5
|
+
category: ""
|
|
6
|
+
source: "@next-bricks/ai-portal"
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# WrappedAiPortalNoticeDropdown
|
|
10
|
+
|
|
11
|
+
> 消息通知下拉框构件,用于展示消息列表
|
|
12
|
+
|
|
13
|
+
## 导入
|
|
14
|
+
|
|
15
|
+
```tsx
|
|
16
|
+
import { WrappedAiPortalNoticeDropdown } from "@easyops/wrapped-components";
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Props
|
|
20
|
+
|
|
21
|
+
| 属性 | 类型 | 必填 | 默认值 | 说明 |
|
|
22
|
+
| ---------------------- | --------------------- | ---- | ------ | ------------------------ |
|
|
23
|
+
| dataSource | `NoticeItem[]` | 否 | - | 消息数据列表 |
|
|
24
|
+
| popoverPlacement | `Placement` | 否 | - | 弹窗位置 |
|
|
25
|
+
| emptyText | `string` | 否 | - | 空状态文案 |
|
|
26
|
+
| notifyCenterUrl | `string` | 否 | - | 通知中心URL |
|
|
27
|
+
| urlTemplate | `string` | 否 | - | 详情链接 |
|
|
28
|
+
| urlTarget | `Target` | 否 | - | 详情链接目标 |
|
|
29
|
+
| dropdownMaxWidth | `string \| number` | 否 | - | 下拉框最大宽度 |
|
|
30
|
+
| dropdownContentStyle | `React.CSSProperties` | 否 | - | 下拉框内容样式 |
|
|
31
|
+
| hideNotifyCenterButton | `boolean` | 否 | - | 是否隐藏进入消息中心按钮 |
|
|
32
|
+
|
|
33
|
+
## Events
|
|
34
|
+
|
|
35
|
+
| 事件 | detail | 说明 |
|
|
36
|
+
| ------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------- |
|
|
37
|
+
| onNoticeClick | `NoticeItem` — { id: 消息ID, type: 消息类型, isRead: 是否已读, title: 标题, description: 描述, time: 时间戳, url: 详情链接 } | 消息项点击事件 |
|
|
38
|
+
| onMarkAllRead | `void` | 全部已读点击事件 |
|
|
39
|
+
|
|
40
|
+
## Slots
|
|
41
|
+
|
|
42
|
+
| 名称 | 说明 |
|
|
43
|
+
| ------- | ---------------------------------------- |
|
|
44
|
+
| trigger | 自定义触发器,默认为带角标的铃铛图标按钮 |
|
|
45
|
+
|
|
46
|
+
## Examples
|
|
47
|
+
|
|
48
|
+
### 基础使用(带消息列表)
|
|
49
|
+
|
|
50
|
+
展示包含多条不同类型消息的下拉通知列表。
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
<WrappedAiPortalNoticeDropdown
|
|
54
|
+
dataSource={[
|
|
55
|
+
{
|
|
56
|
+
id: "msg-1",
|
|
57
|
+
isRead: false,
|
|
58
|
+
type: "project",
|
|
59
|
+
title:
|
|
60
|
+
"协作流【研发设计】已完成【项目协作功能】已发布【项目协作功能】已发布【项目协作功能】已发布【项目协作功能】已发布",
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
id: "msg-2",
|
|
64
|
+
isRead: false,
|
|
65
|
+
type: "space",
|
|
66
|
+
title: "协作流【协作流名称】 - 【活动名称】需要人工确认",
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
id: "msg-3",
|
|
70
|
+
type: "account",
|
|
71
|
+
isRead: true,
|
|
72
|
+
title: "【项目协作功能】已发布",
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
id: "msg-4",
|
|
76
|
+
type: "system",
|
|
77
|
+
isRead: true,
|
|
78
|
+
title: "Samuel在项目【项目A】@了你",
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
id: "msg-5",
|
|
82
|
+
type: "account",
|
|
83
|
+
isRead: false,
|
|
84
|
+
title: "协作流【协作流名称】 - 【活动名称】需要人工确认",
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
id: "msg-6",
|
|
88
|
+
type: "system",
|
|
89
|
+
isRead: true,
|
|
90
|
+
title: "【项目协作功能】已发布",
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
id: "msg-7",
|
|
94
|
+
type: "project",
|
|
95
|
+
isRead: true,
|
|
96
|
+
title: "Samuel在项目【项目A】@了你",
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
id: "msg-8",
|
|
100
|
+
type: "space",
|
|
101
|
+
isRead: false,
|
|
102
|
+
title: "协作流【协作流名称】 - 【活动名称】需要人工确认",
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
id: "msg-9",
|
|
106
|
+
type: "space",
|
|
107
|
+
isRead: true,
|
|
108
|
+
title: "【项目协作功能】已发布",
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
id: "msg-10",
|
|
112
|
+
type: "system",
|
|
113
|
+
isRead: true,
|
|
114
|
+
title: "Samuel在项目【项目A】@了你",
|
|
115
|
+
},
|
|
116
|
+
]}
|
|
117
|
+
onNoticeClick={(e) => console.log("点击了消息:", e.detail)}
|
|
118
|
+
onMarkAllRead={(e) => console.log("点击了全部已读")}
|
|
119
|
+
/>
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### 空状态
|
|
123
|
+
|
|
124
|
+
当没有消息时展示空状态提示文案。
|
|
125
|
+
|
|
126
|
+
```tsx
|
|
127
|
+
<WrappedAiPortalNoticeDropdown dataSource={[]} emptyText="暂无新消息" />
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### 自定义触发器
|
|
131
|
+
|
|
132
|
+
使用 trigger 插槽放置自定义触发器元素(如按钮)。
|
|
133
|
+
|
|
134
|
+
```tsx
|
|
135
|
+
<WrappedAiPortalNoticeDropdown
|
|
136
|
+
dataSource={[
|
|
137
|
+
{
|
|
138
|
+
id: "msg-1",
|
|
139
|
+
isRead: false,
|
|
140
|
+
type: "project",
|
|
141
|
+
title: "协作流【研发设计】已完成",
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
id: "msg-2",
|
|
145
|
+
isRead: false,
|
|
146
|
+
type: "space",
|
|
147
|
+
title: "协作流【协作流名称】需要人工确认",
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
id: "msg-3",
|
|
151
|
+
type: "account",
|
|
152
|
+
isRead: true,
|
|
153
|
+
title: "【项目协作功能】已发布",
|
|
154
|
+
},
|
|
155
|
+
]}
|
|
156
|
+
hideNotifyCenterButton={true}
|
|
157
|
+
dropdownMaxWidth={400}
|
|
158
|
+
>
|
|
159
|
+
<WrappedEoButton
|
|
160
|
+
slot="trigger"
|
|
161
|
+
type="primary"
|
|
162
|
+
icon={{ lib: "antd", icon: "bell" }}
|
|
163
|
+
>
|
|
164
|
+
查看通知
|
|
165
|
+
</WrappedEoButton>
|
|
166
|
+
</WrappedAiPortalNoticeDropdown>
|
|
167
|
+
```
|