feat(session): track user notification settings
Same pattern as language/preferences — Notifications settings page reads current subscribed state from here.
This commit is contained in:
@@ -17,6 +17,7 @@ final class SessionStore {
|
|||||||
var userAvatarURL: URL?
|
var userAvatarURL: URL?
|
||||||
var userLanguage: String?
|
var userLanguage: String?
|
||||||
var userPreferences: OutlineUserPreferences?
|
var userPreferences: OutlineUserPreferences?
|
||||||
|
var userNotificationSettings: [String: Bool]?
|
||||||
var teamName: String?
|
var teamName: String?
|
||||||
var teamAvatarURL: URL?
|
var teamAvatarURL: URL?
|
||||||
private(set) var apiClient: OutlineAPIClient?
|
private(set) var apiClient: OutlineAPIClient?
|
||||||
@@ -77,6 +78,7 @@ final class SessionStore {
|
|||||||
userAvatarURL = nil
|
userAvatarURL = nil
|
||||||
userLanguage = nil
|
userLanguage = nil
|
||||||
userPreferences = nil
|
userPreferences = nil
|
||||||
|
userNotificationSettings = nil
|
||||||
teamName = nil
|
teamName = nil
|
||||||
teamAvatarURL = nil
|
teamAvatarURL = nil
|
||||||
apiClient = nil
|
apiClient = nil
|
||||||
@@ -101,6 +103,7 @@ final class SessionStore {
|
|||||||
userAvatarURL = user.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
userAvatarURL = user.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
||||||
userLanguage = user.language
|
userLanguage = user.language
|
||||||
userPreferences = user.preferences
|
userPreferences = user.preferences
|
||||||
|
userNotificationSettings = user.notificationSettings
|
||||||
}
|
}
|
||||||
|
|
||||||
private func apply(user: OutlineUser, team: OutlineTeam, serverURL: URL) {
|
private func apply(user: OutlineUser, team: OutlineTeam, serverURL: URL) {
|
||||||
@@ -113,6 +116,7 @@ final class SessionStore {
|
|||||||
userAvatarURL = user.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
userAvatarURL = user.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
||||||
userLanguage = user.language
|
userLanguage = user.language
|
||||||
userPreferences = user.preferences
|
userPreferences = user.preferences
|
||||||
|
userNotificationSettings = user.notificationSettings
|
||||||
teamName = team.name
|
teamName = team.name
|
||||||
teamAvatarURL = team.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
teamAvatarURL = team.avatarUrl.flatMap { URL(string: $0, relativeTo: serverURL)?.absoluteURL }
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user