Swiftgram/submodules/TelegramCore/Sources/PeerContactSettings.swift
Ilya Laktyushin 03a84fda99 Update API
2020-06-16 11:43:15 +03:00

34 lines
1.1 KiB
Swift

import Foundation
import Postbox
import TelegramApi
import SyncCore
extension PeerStatusSettings {
init(apiSettings: Api.PeerSettings) {
switch apiSettings {
case let .peerSettings(flags, geoDistance):
var result = PeerStatusSettings.Flags()
if (flags & (1 << 1)) != 0 {
result.insert(.canAddContact)
}
if (flags & (1 << 0)) != 0 {
result.insert(.canReport)
}
if (flags & (1 << 2)) != 0 {
result.insert(.canBlock)
}
if (flags & (1 << 3)) != 0 {
result.insert(.canShareContact)
}
if (flags & (1 << 4)) != 0 {
result.insert(.addExceptionWhenAddingContact)
}
if (flags & (1 << 5)) != 0 {
result.insert(.canReportIrrelevantGeoLocation)
}
self = PeerStatusSettings(flags: result, geoDistance: geoDistance)
}
}
}