feat(chat-room) AI 메시지에 이미지를 표시할 수 있도록 수정

This commit is contained in:
Yu Sung
2025-09-03 23:46:36 +09:00
parent d251bd50d8
commit 3ca85b248e
@@ -87,7 +87,24 @@ struct AiMessageItemView: View {
.foregroundColor(.white) .foregroundColor(.white)
} }
// 메시지 버블 // 메시지 내용 (텍스트 또는 이미지)
if message.messageType.lowercased() == "image", let imageUrl = message.imageUrl, !imageUrl.isEmpty {
// 이미지 메시지
let maxWidth = (UIScreen.main.bounds.width - 48) * 0.7
let imageHeight = maxWidth * 5 / 4 // 4:5 비율
KFImage(URL(string: imageUrl))
.placeholder {
Rectangle()
.fill(Color.gray.opacity(0.3))
.frame(width: maxWidth, height: imageHeight)
}
.resizable()
.aspectRatio(4/5, contentMode: .fit)
.frame(width: maxWidth, height: imageHeight)
.cornerRadius(10)
} else {
// 텍스트 메시지 버블
HStack(spacing: 10) { HStack(spacing: 10) {
styledMessageText(message.message) styledMessageText(message.message)
.lineLimit(nil) .lineLimit(nil)
@@ -101,6 +118,7 @@ struct AiMessageItemView: View {
.clipShape(AiMessageBubbleShape()) .clipShape(AiMessageBubbleShape())
} }
} }
}
// 시간 표시 // 시간 표시
VStack { VStack {
@@ -165,12 +183,12 @@ struct AiMessageItemView: View {
AiMessageItemView( AiMessageItemView(
message: ServerChatMessage( message: ServerChatMessage(
messageId: 1, messageId: 1,
message: "(언제부턴가) 너랑 노는게 제일 재밌고\n너랑 이야기 하는게 제일 신나더라,\n앞으로도 그럴 것 같아❤️", message: "",
profileImageUrl: "https://example.com/profile.jpg", profileImageUrl: "https://example.com/profile.jpg",
mine: false, mine: false,
createdAt: Date().currentTimeMillis(), createdAt: Date().currentTimeMillis(),
messageType: "text", messageType: "IMAGE",
imageUrl: nil, imageUrl: "https://picsum.photos/1000",
price: nil, price: nil,
hasAccess: true hasAccess: true
), ),