feat: chat avatars + dark theme fix + text overflow fix
Avatars: - Robot icon (green circle) before each agent message - Person icon (dark circle) before each user message - New .chat-bubble wrapper with flex layout for avatar + message Dark theme fixes: - Panel background: #1e1e1e (not pure black) - Agent bubbles: #2d2d2d with light text (not dark/invisible) - Input area: #2d2d2d (not black) - Header stays green (--accent-green) in both themes - Chips, suggestions consistent with panel background Text overflow: - overflow-wrap + word-break on messages - min-width: 0 prevents flex overflow - User bubble properly right-aligned with avatar
This commit is contained in:
@@ -222,14 +222,14 @@ func (h *Handler) HandleChat(w http.ResponseWriter, r *http.Request) {
|
||||
return
|
||||
}
|
||||
|
||||
// User message bubble
|
||||
_, _ = fmt.Fprintf(w, `<div class="chat-message chat-user">%s</div>`, html.EscapeString(message))
|
||||
// User message bubble with avatar
|
||||
_, _ = fmt.Fprintf(w, `<div class="chat-bubble chat-user"><div class="chat-avatar chat-avatar-user"><iconify-icon icon="mdi:account"></iconify-icon></div><div class="chat-message">%s</div></div>`, html.EscapeString(message))
|
||||
|
||||
// Agent response bubble
|
||||
// Agent response bubble with avatar
|
||||
if response == "" {
|
||||
response = "I couldn't find an answer to that. Try asking about experience, projects, skills, or education."
|
||||
}
|
||||
_, _ = fmt.Fprintf(w, `<div class="chat-message chat-agent">%s</div>`, formatResponse(response))
|
||||
_, _ = fmt.Fprintf(w, `<div class="chat-bubble chat-bot"><div class="chat-avatar chat-avatar-bot"><iconify-icon icon="mdi:robot-happy-outline"></iconify-icon></div><div class="chat-message">%s</div></div>`, formatResponse(response))
|
||||
|
||||
// Session ID via OOB swap
|
||||
_, _ = fmt.Fprintf(w, `<input type="hidden" id="chat-session-id" name="session_id" value="%s" form="chat-form" hx-swap-oob="true"/>`, sessionID)
|
||||
|
||||
Reference in New Issue
Block a user