plus-ui/src/chat-ui/components/ConversationDivider.vue
i548450 5c8b6dc014 feat(customerservice): chat-core + chat-ui + workbench 三栏
- chat-core: 类型定义(Message/Conversation/SsePayload) + SseSubscriber
  订阅共享 sseEventBus 'customerservice' event,按 msgType 分发
- chat-core utils: formatRelativeTime / extractUrlsAsLinks + 19 个 vitest 单测
- chat-ui: MessageStream/MessageBubble/MessageInput/MessageStateBadge/
  DateDivider/ConversationDivider 组件 + useSseConversation/useMessageStream
  composables;CSS variable 暴露主题色
- api/customerservice: conversation/message/agent/mediaUser HTTP 客户端
  按 spec 04-api.md endpoint 形态先行,后端 Task 5-13 完成后无需改前端
- views/customerservice/workbench: 三栏布局 + Pinia store 处理 6 种 SSE
  payload + 自动重连后全量对齐(spec 05-sse.md §6)
- vitest.config.ts: 独立 standalone 配置,跳过 dev server 的 unocss 链
2026-06-09 21:45:34 +08:00

28 lines
572 B
Vue

<template>
<div class="chat-conversation-divider">
<span class="chat-conversation-divider-line"></span>
<span class="chat-conversation-divider-text"> 会话已结束 </span>
<span class="chat-conversation-divider-line"></span>
</div>
</template>
<style scoped lang="scss">
.chat-conversation-divider {
display: flex;
align-items: center;
margin: 16px 12px;
gap: 8px;
&-line {
flex: 1;
height: 1px;
background: var(--chat-border-color);
}
&-text {
font-size: 12px;
color: var(--chat-divider-color);
}
}
</style>