Bladeren bron

fix(ui/chat): display names of all attached files (#706)

Ayyan 3 maanden geleden
bovenliggende
commit
8723e87682
2 gewijzigde bestanden met toevoegingen van 23 en 1 verwijderingen
  1. 6 1
      internal/ui/chat/message_input.go
  2. 17 0
      internal/ui/chat/util.go

+ 6 - 1
internal/ui/chat/message_input.go

@@ -658,5 +658,10 @@ func (mi *messageInput) openFilePicker() {
 
 func (mi *messageInput) attach(name string, reader io.Reader) {
 	mi.sendMessageData.Files = append(mi.sendMessageData.Files, sendpart.File{Name: name, Reader: reader})
-	mi.SetFooter("Attached " + name)
+
+	var names []string
+	for _, file := range mi.sendMessageData.Files {
+		names = append(names, file.Name)
+	}
+	mi.SetFooter("Attached " + humanJoin(names))
 }

+ 17 - 0
internal/ui/chat/util.go

@@ -0,0 +1,17 @@
+package chat
+
+import "strings"
+
+func humanJoin(items []string) string {
+	count := len(items)
+	switch count {
+	case 0:
+		return ""
+	case 1:
+		return items[0]
+	case 2:
+		return items[0] + " and " + items[1]
+	default:
+		return strings.Join(items[:count-1], ", ") + ", and " + items[count-1]
+	}
+}