Store default stars reaction anonymity globally

This commit is contained in:
Isaac
2024-08-16 22:17:02 +08:00
parent 4ceb3ac58b
commit 2086a5696c
4 changed files with 64 additions and 1 deletions

View File

@@ -2159,5 +2159,30 @@ public extension TelegramEngine.EngineData.Item {
}
}
}
public struct StarsReactionDefaultToPrivate: TelegramEngineDataItem, TelegramEngineMapKeyDataItem, PostboxViewDataItem {
public typealias Result = Bool
fileprivate var id: EnginePeer.Id
public var mapKey: EnginePeer.Id {
return self.id
}
public init(id: EnginePeer.Id) {
self.id = id
}
var key: PostboxViewKey {
return .cachedItem(ItemCacheEntryId(collectionId: Namespaces.CachedItemCollection.starsReactionDefaultToPrivate, key: StarsReactionDefaultToPrivateData.key(peerId: self.id)))
}
func extract(view: PostboxView) -> Result {
if let value = (view as? CachedItemView)?.value?.get(StarsReactionDefaultToPrivateData.self) {
return value.isPrivate
} else {
return false
}
}
}
}
}