Bug gixes, features added, GUI updates and more
This commit is contained in:
@@ -21,7 +21,9 @@ struct Message: Identifiable, Codable, Equatable {
|
||||
var cost: Double?
|
||||
let timestamp: Date
|
||||
let attachments: [FileAttachment]?
|
||||
|
||||
var responseTime: TimeInterval? // Time taken to generate response in seconds
|
||||
var wasInterrupted: Bool = false // Whether generation was cancelled
|
||||
|
||||
// Streaming state (not persisted)
|
||||
var isStreaming: Bool = false
|
||||
|
||||
@@ -36,6 +38,8 @@ struct Message: Identifiable, Codable, Equatable {
|
||||
cost: Double? = nil,
|
||||
timestamp: Date = Date(),
|
||||
attachments: [FileAttachment]? = nil,
|
||||
responseTime: TimeInterval? = nil,
|
||||
wasInterrupted: Bool = false,
|
||||
isStreaming: Bool = false,
|
||||
generatedImages: [Data]? = nil
|
||||
) {
|
||||
@@ -46,12 +50,14 @@ struct Message: Identifiable, Codable, Equatable {
|
||||
self.cost = cost
|
||||
self.timestamp = timestamp
|
||||
self.attachments = attachments
|
||||
self.responseTime = responseTime
|
||||
self.wasInterrupted = wasInterrupted
|
||||
self.isStreaming = isStreaming
|
||||
self.generatedImages = generatedImages
|
||||
}
|
||||
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case id, role, content, tokens, cost, timestamp, attachments
|
||||
case id, role, content, tokens, cost, timestamp, attachments, responseTime, wasInterrupted
|
||||
}
|
||||
|
||||
static func == (lhs: Message, rhs: Message) -> Bool {
|
||||
@@ -59,6 +65,8 @@ struct Message: Identifiable, Codable, Equatable {
|
||||
lhs.content == rhs.content &&
|
||||
lhs.tokens == rhs.tokens &&
|
||||
lhs.cost == rhs.cost &&
|
||||
lhs.responseTime == rhs.responseTime &&
|
||||
lhs.wasInterrupted == rhs.wasInterrupted &&
|
||||
lhs.isStreaming == rhs.isStreaming &&
|
||||
lhs.generatedImages == rhs.generatedImages
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user