Swiftgram/submodules/TelegramCore/Sources/AppConfiguration.swift
2019-10-29 00:13:20 +04:00

19 lines
646 B
Swift

import Postbox
import SyncCore
public 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)
}
}