|
@@ -8,18 +8,33 @@ final class FrontPageViewModel {
|
|
|
private(set) var redditLoadURL = redditHomeURL
|
|
private(set) var redditLoadURL = redditHomeURL
|
|
|
var selectedNavItem: SidebarNavItem?
|
|
var selectedNavItem: SidebarNavItem?
|
|
|
var isRedditActive = true
|
|
var isRedditActive = true
|
|
|
|
|
+ var isSettingsActive = false
|
|
|
private(set) var redditReloadTrigger = 0
|
|
private(set) var redditReloadTrigger = 0
|
|
|
|
|
|
|
|
|
|
+ static let settingsItem = SidebarNavItem(
|
|
|
|
|
+ title: "Settings",
|
|
|
|
|
+ subtitle: "Preferences & API keys",
|
|
|
|
|
+ iconKind: .settings
|
|
|
|
|
+ )
|
|
|
|
|
+
|
|
|
func openReddit(at url: URL? = nil) {
|
|
func openReddit(at url: URL? = nil) {
|
|
|
selectedNavItem = nil
|
|
selectedNavItem = nil
|
|
|
isRedditActive = true
|
|
isRedditActive = true
|
|
|
|
|
+ isSettingsActive = false
|
|
|
redditLoadURL = url ?? Self.redditHomeURL
|
|
redditLoadURL = url ?? Self.redditHomeURL
|
|
|
redditReloadTrigger += 1
|
|
redditReloadTrigger += 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ func openSettings() {
|
|
|
|
|
+ selectedNavItem = nil
|
|
|
|
|
+ isRedditActive = false
|
|
|
|
|
+ isSettingsActive = true
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
func selectNavItem(_ item: SidebarNavItem) {
|
|
func selectNavItem(_ item: SidebarNavItem) {
|
|
|
selectedNavItem = item
|
|
selectedNavItem = item
|
|
|
isRedditActive = false
|
|
isRedditActive = false
|
|
|
|
|
+ isSettingsActive = false
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
let createItems: [SidebarNavItem] = [
|
|
let createItems: [SidebarNavItem] = [
|