Refactor SyncCore

This commit is contained in:
Peter
2019-10-21 16:58:00 +04:00
parent 75aa77faa8
commit 10692a323e
1162 changed files with 12205 additions and 10925 deletions

View File

@@ -0,0 +1,33 @@
import Postbox
public struct LocalizationListState: PreferencesEntry, Equatable {
public var availableOfficialLocalizations: [LocalizationInfo]
public var availableSavedLocalizations: [LocalizationInfo]
public static var defaultSettings: LocalizationListState {
return LocalizationListState(availableOfficialLocalizations: [], availableSavedLocalizations: [])
}
public init(availableOfficialLocalizations: [LocalizationInfo], availableSavedLocalizations: [LocalizationInfo]) {
self.availableOfficialLocalizations = availableOfficialLocalizations
self.availableSavedLocalizations = availableSavedLocalizations
}
public init(decoder: PostboxDecoder) {
self.availableOfficialLocalizations = decoder.decodeObjectArrayWithDecoderForKey("availableOfficialLocalizations")
self.availableSavedLocalizations = decoder.decodeObjectArrayWithDecoderForKey("availableSavedLocalizations")
}
public func encode(_ encoder: PostboxEncoder) {
encoder.encodeObjectArray(self.availableOfficialLocalizations, forKey: "availableOfficialLocalizations")
encoder.encodeObjectArray(self.availableSavedLocalizations, forKey: "availableSavedLocalizations")
}
public func isEqual(to: PreferencesEntry) -> Bool {
guard let to = to as? LocalizationListState else {
return false
}
return self == to
}
}