feat: 使用 Semi AI 组件升级研究助手与研究入口

This commit is contained in:
yuxuanhui
2026-09-10 12:22:26 +08:00
parent 9334b6f651
commit d403008f9b
16 changed files with 974 additions and 174 deletions
+97 -1
View File
@@ -41,8 +41,12 @@
height: 56px;
padding: 0 var(--space-4);
border-bottom: 1px solid var(--line);
background: var(--semi-color-ai-background-top);
}
.ai-header h2 {
display: flex;
align-items: center;
gap: 8px;
font-size: 16px;
font-weight: 500;
}
@@ -67,8 +71,8 @@
padding: var(--space-3) var(--space-4) var(--space-4);
}
.ai-message {
margin-bottom: 24px;
overflow-wrap: anywhere;
min-width: 0;
}
.ai-role {
display: block;
@@ -214,9 +218,101 @@
margin-bottom: var(--space-2);
}
.ai-card-title strong {
display: flex;
align-items: center;
gap: 6px;
font-size: 14px;
font-weight: 500;
}
/* Semi owns the controls; local constraints keep the research rail usable at 360px. */
.research-ai-input {
min-width: 0;
}
.research-ai-editor.semi-aiChatInput {
padding: 12px;
background: var(--semi-color-ai-background-bottom);
border-color: rgba(var(--semi-ai-purple-2), 0.65);
}
.research-ai-editor:focus-within {
border-color: var(--semi-color-ai-purple);
}
.research-ai-editor .tiptap {
min-height: 72px;
max-height: 180px;
overflow-y: auto;
overscroll-behavior: contain;
overflow-wrap: anywhere;
}
.research-ai-editor .semi-aiChatInput-references {
max-height: 100px;
overflow-y: auto;
overscroll-behavior: contain;
}
.research-ai-reference {
max-width: 100%;
min-width: 0;
}
.research-ai-reference .semi-tag {
max-width: 100%;
}
.research-ai-reference .semi-tag-content {
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
}
.research-ai-editor .semi-aiChatInput-footer {
gap: 8px;
flex-wrap: wrap;
margin-top: 12px;
}
.research-ai-shortcut,
.research-ai-hint {
font-size: 12px;
line-height: 18px;
color: var(--semi-color-text-2);
}
.research-ai-hint {
margin-top: 8px;
}
.research-ai-prompts {
display: flex;
flex-wrap: wrap;
gap: 4px;
margin-top: 8px;
}
.research-ai-prompts .semi-button {
height: auto;
white-space: normal;
text-align: left;
max-width: 100%;
}
.research-ai-section {
min-width: 0;
}
.research-ai-section h4 {
display: flex;
align-items: center;
gap: 6px;
margin: 12px 0;
font-weight: 500;
}
.ai-avatar {
width: 28px;
height: 28px;
display: inline-flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
border-radius: 8px;
background: var(--semi-color-ai-background-top);
}
.ai-messages .semi-ai-chat-dialogue {
min-height: 0;
}
.ai-messages .semi-ai-chat-dialogue-inner {
min-width: 0;
}
.ai-tool-card p {
margin: var(--space-2) 0;
}