mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-12-22 22:25:57 +00:00
Refactoring
This commit is contained in:
18
submodules/TelegramCore/Sources/State/AppConfiguration.swift
Normal file
18
submodules/TelegramCore/Sources/State/AppConfiguration.swift
Normal file
@@ -0,0 +1,18 @@
|
||||
import Postbox
|
||||
import SyncCore
|
||||
|
||||
private func currentAppConfiguration(transaction: Transaction) -> AppConfiguration {
|
||||
if let entry = transaction.getPreferencesEntry(key: PreferencesKeys.appConfiguration) as? AppConfiguration {
|
||||
return entry
|
||||
} else {
|
||||
return AppConfiguration.defaultValue
|
||||
}
|
||||
}
|
||||
|
||||
func updateAppConfiguration(transaction: Transaction, _ f: (AppConfiguration) -> AppConfiguration) {
|
||||
let current = currentAppConfiguration(transaction: transaction)
|
||||
let updated = f(current)
|
||||
if updated != current {
|
||||
transaction.setPreferencesEntry(key: PreferencesKeys.appConfiguration, value: updated)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user