import Foundation import Postbox import TelegramApi extension TelegramUserPresence { convenience init(apiStatus: Api.UserStatus) { switch apiStatus { case .userStatusEmpty: self.init(status: .none, lastActivity: 0) case .userStatusHidden: self.init(status: .hidden, lastActivity: 0) case let .userStatusOnline(expires): self.init(status: .present(until: expires), lastActivity: 0) case let .userStatusOffline(wasOnline): self.init(status: .present(until: wasOnline), lastActivity: 0) case .userStatusRecently: self.init(status: .recently, lastActivity: 0) case .userStatusLastWeek: self.init(status: .lastWeek, lastActivity: 0) case .userStatusLastMonth: self.init(status: .lastMonth, lastActivity: 0) } } convenience init?(apiUser: Api.User) { switch apiUser { case let .user(_, _, _, _, _, _, _, _, _, status, _, _, _, _, _, _, _, _, _): if let status = status { self.init(apiStatus: status) } else { self.init(status: .none, lastActivity: 0) } case .userEmpty: return nil } } }