+ {attachments.map((file, index) => {
+ const uploadState = uploadStates?.get(file);
+ const previewUrl = previewUrls?.get(file) ?? "";
+ return (
+
+ {file.type.startsWith("image/") && previewUrl ? (
+
+ ) : (
+
+ {file.name.split(".").pop()?.toUpperCase() || "FILE"}
+
+ )}
+ {uploadState?.status === "uploading" && (
+
+
+
+ )}
+ {uploadState?.status === "error" && (
+
+
+
+
+
+
+ {uploadState.error ?? "Upload failed"}
+
+
+
+ )}
+
+