mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-05 20:09:04 +00:00
Refactor theTimelineItemIdentifier handling; stop relying on optional EventOrTransactionIds and be explicit when setting composer modes from the draft service.
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
//
|
||||
|
||||
import Compound
|
||||
import MatrixRustSDK
|
||||
import SwiftUI
|
||||
import WysiwygComposer
|
||||
|
||||
@@ -283,9 +284,14 @@ extension FormatType {
|
||||
}
|
||||
|
||||
enum ComposerMode: Equatable {
|
||||
enum EditSource {
|
||||
case timeline
|
||||
case draftService
|
||||
}
|
||||
|
||||
case `default`
|
||||
case reply(itemID: TimelineItemIdentifier, replyDetails: TimelineItemReplyDetails, isThread: Bool)
|
||||
case edit(originalItemId: TimelineItemIdentifier)
|
||||
case reply(eventID: String, replyDetails: TimelineItemReplyDetails, isThread: Bool)
|
||||
case edit(originalEventOrTransactionID: EventOrTransactionId, source: EditSource)
|
||||
case recordVoiceMessage(state: AudioRecorderState)
|
||||
case previewVoiceMessage(state: AudioPlayerState, waveform: WaveformSource, isUploading: Bool)
|
||||
|
||||
@@ -323,8 +329,8 @@ enum ComposerMode: Equatable {
|
||||
|
||||
var replyEventID: String? {
|
||||
switch self {
|
||||
case .reply(let itemID, _, _):
|
||||
return itemID.eventID
|
||||
case .reply(let eventID, _, _):
|
||||
return eventID
|
||||
default:
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user