|
|
@@ -39,8 +39,6 @@ const props = withDefaults(defineProps<{
|
|
|
loading?: boolean
|
|
|
loadingOlder?: boolean
|
|
|
hasOlder?: boolean
|
|
|
- connected?: boolean
|
|
|
- synced?: boolean
|
|
|
showTools?: boolean
|
|
|
showAssistantIdentity?: boolean
|
|
|
interaction?: UiInteraction | null
|
|
|
@@ -69,8 +67,6 @@ const props = withDefaults(defineProps<{
|
|
|
loading: false,
|
|
|
loadingOlder: false,
|
|
|
hasOlder: false,
|
|
|
- connected: false,
|
|
|
- synced: false,
|
|
|
showTools: true,
|
|
|
showAssistantIdentity: true,
|
|
|
interaction: null,
|
|
|
@@ -318,10 +314,6 @@ defineExpose({ scrollToMessage, scrollToAnchor, scrollToBottom, isFollowingBotto
|
|
|
<AgentAvatar v-else-if="headerAvatarName" class="timeline-header__avatar" :name="headerAvatarName" :avatar="headerAvatar" :state="headerAvatarState" :activity-key="headerAvatarActivityKey" :size="34" />
|
|
|
<div class="timeline-heading"><h2>{{ title }}</h2><p v-if="subtitle">{{ subtitle }}</p></div>
|
|
|
</div>
|
|
|
- <div v-if="!transparentHeader" class="timeline-state" :title="connected ? (synced ? '实时连接与历史均已同步' : '实时连接已就绪,历史同步中') : '实时连接未就绪'">
|
|
|
- <span class="status-dot" :class="connected ? (synced ? 'status-dot--online' : 'status-dot--working') : ''" />
|
|
|
- {{ connected ? (synced ? '已同步' : '同步中') : '离线' }}
|
|
|
- </div>
|
|
|
<slot name="header-actions" />
|
|
|
</header>
|
|
|
|
|
|
@@ -517,7 +509,6 @@ defineExpose({ scrollToMessage, scrollToAnchor, scrollToBottom, isFollowingBotto
|
|
|
.timeline-header--transparent { position: absolute; top: 0; right: 0; left: 0; min-height: 0; justify-content: flex-end; padding: 11px 14px; border: 0; background: transparent; backdrop-filter: none; pointer-events: none; }
|
|
|
.timeline-header--transparent > * { pointer-events: auto; }
|
|
|
.timeline-identity { display: flex; min-width: 0; flex: 1; align-items: center; gap: 10px; }.timeline-heading { min-width: 0; }.timeline-header h2 { overflow: hidden; margin: 0; font-size: 14px; font-weight: 630; letter-spacing: -.02em; text-overflow: ellipsis; white-space: nowrap; }.timeline-header p { overflow: hidden; margin: 3px 0 0; color: var(--text-muted); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
|
|
|
-.timeline-state { display: flex; align-items: center; gap: 6px; color: var(--text-muted); font-size: 9px; }
|
|
|
.timeline { min-height: 0; flex: 1; overflow-y: auto; overflow-anchor: none; overscroll-behavior: contain; background: var(--conversation-canvas); }
|
|
|
.message-stack { width: min(780px, 100%); min-height: 100%; margin: 0 auto; padding: 24px 24px 36px; }
|
|
|
.message-stack--interaction { padding-bottom: 10px; }
|
|
|
@@ -562,7 +553,7 @@ defineExpose({ scrollToMessage, scrollToAnchor, scrollToBottom, isFollowingBotto
|
|
|
@keyframes shimmer { to { background-position: -200% 0; } }
|
|
|
|
|
|
@media (max-width: 768px) {
|
|
|
- .timeline-header { min-height: 54px; padding: 8px 12px; }.timeline-state { font-size: 0; }.timeline-state .status-dot { width: 7px; height: 7px; }
|
|
|
+ .timeline-header { min-height: 54px; padding: 8px 12px; }
|
|
|
.new-chat-empty { gap: 15px; padding-block: 9vh; }.new-chat-empty__logo { width: min(150px, 42vw); }.new-chat-empty p { font-size: 16px; }
|
|
|
.message-stack { padding: 18px 14px 30px; }.message-stack--interaction { padding-bottom: 8px; }.message { margin-bottom: 18px; }.message__body { max-width: calc(100% - 37px); }.message--user .message__body { max-width: 88%; }
|
|
|
.message--system .message__body { max-width: 100%; }
|