Better identification system for virtual items (#1361)

* better identification system

* better handling for unknown
This commit is contained in:
Mauro
2023-07-19 16:29:56 +02:00
committed by GitHub
parent df58d8378e
commit caeb86e178
26 changed files with 82 additions and 75 deletions
@@ -349,16 +349,15 @@ class RoomTimelineController: RoomTimelineControllerProtocol {
}
return timelineItem
case .virtual(let virtualItem):
case .virtual(let virtualItem, let timelineID):
switch virtualItem {
case .dayDivider(let timestamp):
let date = Date(timeIntervalSince1970: TimeInterval(timestamp / 1000))
let dateString = date.formatted(date: .complete, time: .omitted)
let identifier = date.formatted(.iso8601.dateSeparator(.dash))
return SeparatorRoomTimelineItem(id: .init(timelineID: identifier), text: dateString)
return SeparatorRoomTimelineItem(id: .init(timelineID: timelineID), text: dateString)
case .readMarker:
return ReadMarkerRoomTimelineItem()
return ReadMarkerRoomTimelineItem(id: .init(timelineID: timelineID))
}
case .unknown:
return nil