metatext-app-ios-iphone-ipad/View Models/PreferencesViewModel.swift

33 lines
1019 B
Swift
Raw Normal View History

2020-08-07 12:59:48 +02:00
// Copyright © 2020 Metabolist. All rights reserved.
import Foundation
2020-08-31 12:21:01 +02:00
import Services
2020-08-07 12:59:48 +02:00
class PreferencesViewModel: ObservableObject {
let handle: String
let shouldShowNotificationTypePreferences: Bool
2020-08-07 12:59:48 +02:00
2020-08-09 01:08:47 +02:00
private let identityService: IdentityService
2020-08-07 12:59:48 +02:00
2020-08-09 01:08:47 +02:00
init(identityService: IdentityService) {
self.identityService = identityService
handle = identityService.identity.handle
shouldShowNotificationTypePreferences = identityService.identity.lastRegisteredDeviceToken != nil
2020-08-07 12:59:48 +02:00
}
}
extension PreferencesViewModel {
func postingReadingPreferencesViewModel() -> PostingReadingPreferencesViewModel {
2020-08-09 01:08:47 +02:00
PostingReadingPreferencesViewModel(identityService: identityService)
2020-08-07 12:59:48 +02:00
}
2020-08-14 23:41:55 +02:00
func notificationTypesPreferencesViewModel() -> NotificationTypesPreferencesViewModel {
NotificationTypesPreferencesViewModel(identityService: identityService)
}
2020-08-29 12:26:26 +02:00
func filtersViewModel() -> FiltersViewModel {
FiltersViewModel(identityService: identityService)
}
2020-08-07 12:59:48 +02:00
}