                     ).wrapped)
                 }
             case .textAttachment where attachment.fields.count > 0:
-                if object.message.text.isEmpty && shouldAppendMessageHeader {
+                if sanitizedMessage.isEmpty && shouldAppendMessageHeader {
                     cells.append(TextAttachmentChatItem(
                         attachment: attachment,
                         hasText: false,

        // needs to go last.
        var cells: [AnyChatItem] = []
        var shouldAppendMessageHeader = true

        if !object.message.reactions.isEmpty {
            cells.append(ReactionsChatItem(

                    ).wrapped)
                }
            case .textAttachment where !attachment.isFile:
                if sanitizedMessage.isEmpty && shouldAppendMessageHeader {
                    cells.append(QuoteChatItem(
                        attachment: attachment,
                        hasText: false,
                        user: user,
                        message: object.message
                    ).wrapped)

                    shouldAppendMessageHeader = false
                } else {
                    cells.append(QuoteChatItem(
                        attachment: attachment,
                        hasText: true,
                        user: nil,
                        message: nil
                    ).wrapped)
                }
            case .image:
                if sanitizedMessage.isEmpty && shouldAppendMessageHeader {
                    cells.append(ImageMessageChatItem(
                        identifier: attachment.identifier,
                        title: attachment.title,
