@deep-eye/core 0.6.0 → 0.7.0
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/CHANGELOG.md +22 -0
- package/README.md +91 -14
- package/dist/index.cjs +48 -64
- package/dist/index.js +7924 -14937
- package/dist/style.css +1 -1
- package/package.json +1 -1
- package/dist/components/chat/AiConversation.vue.d.ts +0 -28
- package/dist/components/chat/AiConversation.vue.d.ts.map +0 -1
- package/dist/components/chat/builtInToolRenderers.d.ts +0 -2
- package/dist/components/chat/builtInToolRenderers.d.ts.map +0 -1
- package/dist/components/chat/components/ChartToolRenderer.vue.d.ts +0 -7
- package/dist/components/chat/components/ChartToolRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/ChatActionbar.vue.d.ts +0 -24
- package/dist/components/chat/components/ChatActionbar.vue.d.ts.map +0 -1
- package/dist/components/chat/components/ChatMessage.vue.d.ts +0 -42
- package/dist/components/chat/components/ChatMessage.vue.d.ts.map +0 -1
- package/dist/components/chat/components/CodeToolRenderer.vue.d.ts +0 -9
- package/dist/components/chat/components/CodeToolRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/EmptyState.vue.d.ts +0 -11
- package/dist/components/chat/components/EmptyState.vue.d.ts.map +0 -1
- package/dist/components/chat/components/MessageBubble.vue.d.ts +0 -42
- package/dist/components/chat/components/MessageBubble.vue.d.ts.map +0 -1
- package/dist/components/chat/components/MindMapToolRenderer.vue.d.ts +0 -7
- package/dist/components/chat/components/MindMapToolRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/OpenGenUIToolRenderer.vue.d.ts +0 -7
- package/dist/components/chat/components/OpenGenUIToolRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/OpenGenerativeUiChartRenderer.vue.d.ts +0 -9
- package/dist/components/chat/components/OpenGenerativeUiChartRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/OpenGenerativeUiPlanRenderer.vue.d.ts +0 -9
- package/dist/components/chat/components/OpenGenerativeUiPlanRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/OpenGenerativeUiScheduleRenderer.vue.d.ts +0 -9
- package/dist/components/chat/components/OpenGenerativeUiScheduleRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/OpenGenerativeUiThemeRenderer.vue.d.ts +0 -7
- package/dist/components/chat/components/OpenGenerativeUiThemeRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/SearchToolRenderer.vue.d.ts +0 -7
- package/dist/components/chat/components/SearchToolRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/TextPartRenderer.vue.d.ts +0 -14
- package/dist/components/chat/components/TextPartRenderer.vue.d.ts.map +0 -1
- package/dist/components/chat/components/ToolCallPart.vue.d.ts +0 -11
- package/dist/components/chat/components/ToolCallPart.vue.d.ts.map +0 -1
- package/dist/components/chat/components/index.d.ts +0 -16
- package/dist/components/chat/components/index.d.ts.map +0 -1
- package/dist/components/chat/composables/index.d.ts +0 -3
- package/dist/components/chat/composables/index.d.ts.map +0 -1
- package/dist/components/chat/composables/useConversation.d.ts +0 -8
- package/dist/components/chat/composables/useConversation.d.ts.map +0 -1
- package/dist/components/chat/composables/useConversationStream.d.ts +0 -3
- package/dist/components/chat/composables/useConversationStream.d.ts.map +0 -1
- package/dist/components/chat/index.d.ts +0 -19
- package/dist/components/chat/index.d.ts.map +0 -1
- package/dist/components/chat/mdoc/AskUserForm.vue.d.ts +0 -33
- package/dist/components/chat/mdoc/AskUserForm.vue.d.ts.map +0 -1
- package/dist/components/chat/mdoc/ContentNodes.vue.d.ts +0 -11
- package/dist/components/chat/mdoc/ContentNodes.vue.d.ts.map +0 -1
- package/dist/components/chat/mdoc/MediaImageLightbox.vue.d.ts +0 -20
- package/dist/components/chat/mdoc/MediaImageLightbox.vue.d.ts.map +0 -1
- package/dist/components/chat/mdoc/MediaImageStack.vue.d.ts +0 -12
- package/dist/components/chat/mdoc/MediaImageStack.vue.d.ts.map +0 -1
- package/dist/components/chat/mdoc/builtInRegistry.d.ts +0 -7
- package/dist/components/chat/mdoc/builtInRegistry.d.ts.map +0 -1
- package/dist/components/chat/mdoc/extractAskForms.d.ts +0 -6
- package/dist/components/chat/mdoc/extractAskForms.d.ts.map +0 -1
- package/dist/components/chat/mdoc/index.d.ts +0 -8
- package/dist/components/chat/mdoc/index.d.ts.map +0 -1
- package/dist/components/chat/mdoc/parser.d.ts +0 -41
- package/dist/components/chat/mdoc/parser.d.ts.map +0 -1
- package/dist/components/chat/mdoc/prompt.d.ts +0 -6
- package/dist/components/chat/mdoc/prompt.d.ts.map +0 -1
- package/dist/components/chat/mdoc/registry.d.ts +0 -15
- package/dist/components/chat/mdoc/registry.d.ts.map +0 -1
- package/dist/components/chat/mdoc/sanitize.d.ts +0 -2
- package/dist/components/chat/mdoc/sanitize.d.ts.map +0 -1
- package/dist/components/chat/mdoc/textContent.d.ts +0 -38
- package/dist/components/chat/mdoc/textContent.d.ts.map +0 -1
- package/dist/components/chat/openGenerativeUi.d.ts +0 -25
- package/dist/components/chat/openGenerativeUi.d.ts.map +0 -1
- package/dist/components/chat/toolRenderers.d.ts +0 -8
- package/dist/components/chat/toolRenderers.d.ts.map +0 -1
- package/dist/components/chat/types.d.ts +0 -328
- package/dist/components/chat/types.d.ts.map +0 -1
- package/dist/components/index.d.ts +0 -3
- package/dist/components/index.d.ts.map +0 -1
- package/dist/components/visualization/D3MindMap.vue.d.ts +0 -83
- package/dist/components/visualization/D3MindMap.vue.d.ts.map +0 -1
- package/dist/components/visualization/index.d.ts +0 -5
- package/dist/components/visualization/index.d.ts.map +0 -1
- package/dist/components/visualization/themes.d.ts +0 -40
- package/dist/components/visualization/themes.d.ts.map +0 -1
- package/dist/components/visualization/types.d.ts +0 -291
- package/dist/components/visualization/types.d.ts.map +0 -1
- package/dist/components/visualization/utils.d.ts +0 -44
- package/dist/components/visualization/utils.d.ts.map +0 -1
- package/dist/composables/index.d.ts +0 -3
- package/dist/composables/index.d.ts.map +0 -1
- package/dist/composables/useMindMapLayout.d.ts +0 -16
- package/dist/composables/useMindMapLayout.d.ts.map +0 -1
- package/dist/composables/useMindMapTheme.d.ts +0 -43
- package/dist/composables/useMindMapTheme.d.ts.map +0 -1
- package/dist/index.d.ts +0 -5
- package/dist/index.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -12
- package/dist/types/index.d.ts.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
|
|
3
3
|
此文件记录 `@deep-eye/core` 的用户可见变更。新版本采用语义化版本,并按 `Added`、`Changed`、`Fixed`、`Removed` 分类记录。
|
|
4
4
|
|
|
5
|
+
## [0.7.0] - 2026-07-23
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
|
|
9
|
+
- `ChatSender` 组件新增文件附件功能,支持多文件上传和预览。
|
|
10
|
+
- 图片文件以 120x120 缩略图卡片显示,非图片文件显示文件名、类型标签和大小信息。
|
|
11
|
+
- 文件卡片支持悬浮显示删除按钮,支持累加上传多个文件。
|
|
12
|
+
- 新增截图功能,使用浏览器原生 `getDisplayMedia` API 支持屏幕、窗口或标签页截图,截图后自动添加到附件列表。
|
|
13
|
+
- `ChatSender` 导出 `AttachmentMenuItem` 类型,支持自定义附件菜单项。
|
|
14
|
+
|
|
15
|
+
### Changed
|
|
16
|
+
|
|
17
|
+
- 附件菜单从直接触发文件选择改为弹出菜单模式,与主流 AI 产品交互一致。
|
|
18
|
+
- 文件预览采用卡片化设计,统一尺寸和样式,提升视觉一致性。
|
|
19
|
+
|
|
5
20
|
## [0.6.0] - 2026-07-22
|
|
6
21
|
|
|
7
22
|
### Added
|
|
@@ -14,6 +29,13 @@
|
|
|
14
29
|
|
|
15
30
|
- 图片组改为可展开的图片堆叠,并支持查看原图。
|
|
16
31
|
- “返回最新消息”操作调整至会话右下角。
|
|
32
|
+
- 助手默认使用内置标识,并将标识尺寸调整为 26px。
|
|
33
|
+
|
|
34
|
+
### Fixed
|
|
35
|
+
|
|
36
|
+
- 流式回复在首个可见内容到达前显示加载状态;尾行扫光在高频 chunk 下保持可见。
|
|
37
|
+
- 混合流中的 `LLM Running`、`🛠️` 和 `<summary>` 运行标记不再进入正文或默认复制内容。
|
|
38
|
+
- 会话列表不再渲染结构化工具调用和工具结果。
|
|
17
39
|
|
|
18
40
|
## [0.2.0]
|
|
19
41
|
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @deep-eye/core
|
|
2
2
|
|
|
3
|
-
Vue 3
|
|
3
|
+
深瞳前端团队企业级 Vue 3 组件库,提供 AI 会话、思维导图等可视化组件。
|
|
4
4
|
|
|
5
5
|
## 安装
|
|
6
6
|
|
|
@@ -8,12 +8,18 @@ Vue 3 组件库,提供思维导图和 AI 会话渲染组件。
|
|
|
8
8
|
pnpm add @deep-eye/core
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
##
|
|
11
|
+
## 组件
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
### AI Conversation
|
|
14
|
+
|
|
15
|
+
完整的 AI 会话渲染方案,支持流式输出、多模态内容、用户交互表单等。
|
|
16
|
+
|
|
17
|
+
#### AiConversation
|
|
18
|
+
|
|
19
|
+
渲染完整的会话列表,内置自动滚动、流式动画和操作栏。
|
|
14
20
|
|
|
15
21
|
```vue
|
|
16
|
-
<script setup lang
|
|
22
|
+
<script setup lang=”ts”>
|
|
17
23
|
import { ref } from 'vue'
|
|
18
24
|
import {
|
|
19
25
|
AiConversation,
|
|
@@ -28,18 +34,18 @@ const messages = ref<ConversationMessage[]>([
|
|
|
28
34
|
])
|
|
29
35
|
|
|
30
36
|
function saveReply(message: ConversationMessage): void {
|
|
31
|
-
|
|
37
|
+
console.log('保存消息', message)
|
|
32
38
|
}
|
|
33
39
|
|
|
34
40
|
function onCopy(payload: ChatActionbarCopyPayload): void {
|
|
35
|
-
|
|
41
|
+
console.log('复制内容', payload.text)
|
|
36
42
|
}
|
|
37
43
|
</script>
|
|
38
44
|
|
|
39
45
|
<template>
|
|
40
|
-
<AiConversation :messages
|
|
41
|
-
<template #assistant-actionbar
|
|
42
|
-
<button type
|
|
46
|
+
<AiConversation :messages=”messages” auto-scroll=”smart” @copy=”onCopy”>
|
|
47
|
+
<template #assistant-actionbar=”{ message }”>
|
|
48
|
+
<button type=”button” @click=”saveReply(message)”>保存</button>
|
|
43
49
|
</template>
|
|
44
50
|
</AiConversation>
|
|
45
51
|
</template>
|
|
@@ -47,26 +53,97 @@ function onCopy(payload: ChatActionbarCopyPayload): void {
|
|
|
47
53
|
|
|
48
54
|
已完成的助手回复会显示默认复制操作。`#assistant-actionbar`、`ChatMessage` 的 `#actionbar` 与 `ChatActionbar` 默认插槽均为追加插槽,不会替换复制操作;流式输出期间不显示操作栏。
|
|
49
55
|
|
|
56
|
+
**流式渲染**
|
|
57
|
+
|
|
58
|
+
将后端的 OpenAI 兼容 `chat.completion.chunk` SSE 响应交给 `useConversationStream().consume(response)`,即可得到可传入 `AiConversation` 的消息列表。渲染会隐藏 `LLM Running`、`🛠️` 和 `<summary>` 运行标记,但不改写原始消息。
|
|
59
|
+
|
|
60
|
+
**用户交互表单**
|
|
61
|
+
|
|
62
|
+
AskUserForm 使用 `ASK_USER_FORM_SYSTEM_PROMPT`;单选自动提交,多选点击”确认”,`required=false` 可跳过。
|
|
63
|
+
|
|
64
|
+
#### ChatSender
|
|
65
|
+
|
|
66
|
+
支持文本输入、文件上传、语音录音和截图的聊天输入框。
|
|
67
|
+
|
|
68
|
+
```vue
|
|
69
|
+
<script setup lang=”ts”>
|
|
70
|
+
import { ref } from 'vue'
|
|
71
|
+
import { ChatSender } from '@deep-eye/core'
|
|
72
|
+
|
|
73
|
+
const message = ref('')
|
|
74
|
+
|
|
75
|
+
function handleSend(content: string, files?: File[]) {
|
|
76
|
+
console.log('发送消息', content, files)
|
|
77
|
+
message.value = ''
|
|
78
|
+
}
|
|
79
|
+
</script>
|
|
80
|
+
|
|
81
|
+
<template>
|
|
82
|
+
<ChatSender
|
|
83
|
+
v-model=”message”
|
|
84
|
+
:show-screenshot=”true”
|
|
85
|
+
placeholder=”输入消息...”
|
|
86
|
+
@send=”handleSend”
|
|
87
|
+
/>
|
|
88
|
+
</template>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
**文件附件功能**
|
|
92
|
+
|
|
93
|
+
- 支持多文件上传,文件累加而不是替换
|
|
94
|
+
- 图片文件显示为 120x120 缩略图卡片
|
|
95
|
+
- 非图片文件显示文件名、扩展名标签和大小
|
|
96
|
+
- 鼠标悬浮显示删除按钮
|
|
97
|
+
|
|
98
|
+
**截图功能**
|
|
99
|
+
|
|
100
|
+
设置 `show-screenshot` 启用截图选项。使用浏览器原生 `getDisplayMedia` API,支持截取屏幕、窗口或标签页,截图后自动添加到附件列表。
|
|
101
|
+
|
|
102
|
+
**语音录音**
|
|
103
|
+
|
|
104
|
+
内置语音录音功能,支持点击录音和长按录音两种模式,使用 Web Speech API 自动转换为文本。
|
|
105
|
+
|
|
106
|
+
#### 组件导出
|
|
107
|
+
|
|
50
108
|
| 组件 | 用途 |
|
|
51
109
|
| ---------------- | --------------------------------------------------------- |
|
|
52
110
|
| `AiConversation` | 会话列表、自动滚动、AskUserForm 与 `#assistant-actionbar` |
|
|
53
111
|
| `ChatMessage` | 单条 `ConversationMessage`,支持 `#actionbar` 与 `@copy` |
|
|
54
112
|
| `ChatActionbar` | 默认复制操作,支持默认插槽追加操作与 `@copy` |
|
|
113
|
+
| `ChatSender` | 聊天输入框,支持文本、文件、语音和截图 |
|
|
55
114
|
|
|
56
|
-
|
|
115
|
+
### D3MindMap
|
|
57
116
|
|
|
58
|
-
|
|
117
|
+
基于 D3.js 的思维导图可视化组件。
|
|
59
118
|
|
|
60
119
|
```vue
|
|
61
|
-
<script setup lang
|
|
120
|
+
<script setup lang=”ts”>
|
|
62
121
|
import { D3MindMap } from '@deep-eye/core'
|
|
122
|
+
import type { MindMapNode } from '@deep-eye/core'
|
|
123
|
+
|
|
124
|
+
const data: MindMapNode = {
|
|
125
|
+
name: '根节点',
|
|
126
|
+
children: [
|
|
127
|
+
{ name: '子节点 1' },
|
|
128
|
+
{ name: '子节点 2' },
|
|
129
|
+
],
|
|
130
|
+
}
|
|
63
131
|
</script>
|
|
64
132
|
|
|
65
|
-
<
|
|
133
|
+
<template>
|
|
134
|
+
<D3MindMap :data=”data” height=”600px” show-toolbar />
|
|
135
|
+
</template>
|
|
66
136
|
```
|
|
67
137
|
|
|
68
138
|
## Changelog
|
|
69
139
|
|
|
70
140
|
每个功能版本的用户可见变化记录在 [CHANGELOG.md](./CHANGELOG.md)。发布前在文件顶部新增版本,并使用 `Added`、`Changed`、`Fixed` 或 `Removed` 分类。
|
|
71
141
|
|
|
72
|
-
|
|
142
|
+
## 技术要求
|
|
143
|
+
|
|
144
|
+
- Node >= 22
|
|
145
|
+
- Vue >= 3.5
|
|
146
|
+
|
|
147
|
+
## License
|
|
148
|
+
|
|
149
|
+
MIT
|