mirror of
https://github.com/GLEGram/GLEGram-iOS.git
synced 2026-04-24 11:56:18 +02:00
4647310322
Based on Swiftgram 12.5 (Telegram iOS 12.5). All GLEGram features ported and organized in GLEGram/ folder. Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass, Font Replacement, Fake Profile, Chat Export, Plugin System, and more. See CHANGELOG_12.5.md for full details.
33 lines
947 B
Swift
33 lines
947 B
Swift
import Foundation
|
|
import Postbox
|
|
|
|
final class MutableNoticeEntryView<Types: AccountManagerTypes> {
|
|
private let key: NoticeEntryKey
|
|
fileprivate var value: CodableEntry?
|
|
|
|
init(accountManagerImpl: AccountManagerImpl<Types>, key: NoticeEntryKey) {
|
|
self.key = key
|
|
self.value = accountManagerImpl.noticeTable.get(key: key)
|
|
}
|
|
|
|
func replay(accountManagerImpl: AccountManagerImpl<Types>, updatedKeys: Set<NoticeEntryKey>) -> Bool {
|
|
if updatedKeys.contains(self.key) {
|
|
self.value = accountManagerImpl.noticeTable.get(key: self.key)
|
|
return true
|
|
}
|
|
return false
|
|
}
|
|
|
|
func immutableView() -> NoticeEntryView<Types> {
|
|
return NoticeEntryView(self)
|
|
}
|
|
}
|
|
|
|
public final class NoticeEntryView<Types: AccountManagerTypes> {
|
|
public let value: CodableEntry?
|
|
|
|
init(_ view: MutableNoticeEntryView<Types>) {
|
|
self.value = view.value
|
|
}
|
|
}
|