feat: 优化前端 UI 与交互体验
This commit is contained in:
@@ -280,16 +280,6 @@ class ChatBloc extends Cubit<ChatState> {
|
||||
sender: MessageSender.ai,
|
||||
),
|
||||
);
|
||||
} else if (event.resultSummary.isNotEmpty) {
|
||||
_upsertById(
|
||||
items,
|
||||
TextMessageItem(
|
||||
id: event.messageId,
|
||||
content: event.resultSummary,
|
||||
timestamp: timestamp,
|
||||
sender: MessageSender.ai,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
emit(state.copyWith(items: items));
|
||||
@@ -311,7 +301,10 @@ class ChatBloc extends Cubit<ChatState> {
|
||||
List<ChatListItem> _convertHistoryMessages(List<HistoryMessage> messages) {
|
||||
final converted = <ChatListItem>[];
|
||||
for (final msg in messages) {
|
||||
final sender = msg.role == 'user' ? MessageSender.user : MessageSender.ai;
|
||||
final normalizedRole = msg.role.toLowerCase();
|
||||
final isUser = normalizedRole == 'user';
|
||||
final isTool = normalizedRole == 'tool' || normalizedRole == 'tools';
|
||||
final sender = isUser ? MessageSender.user : MessageSender.ai;
|
||||
final attachments = msg.attachments
|
||||
.map(
|
||||
(attachment) => <String, dynamic>{
|
||||
@@ -321,7 +314,7 @@ class ChatBloc extends Cubit<ChatState> {
|
||||
)
|
||||
.toList();
|
||||
|
||||
if (msg.content.isNotEmpty || sender == MessageSender.user) {
|
||||
if (!isTool && (msg.content.isNotEmpty || isUser)) {
|
||||
converted.add(
|
||||
TextMessageItem(
|
||||
id: msg.id,
|
||||
|
||||
Reference in New Issue
Block a user