FrontPageViewModel.swift 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. import SwiftUI
  2. @MainActor
  3. @Observable
  4. final class FrontPageViewModel {
  5. let redditURL = URL(string: "https://www.reddit.com")!
  6. var selectedNavItem: SidebarNavItem?
  7. var isRedditActive = true
  8. private(set) var redditReloadTrigger = 0
  9. func openReddit() {
  10. selectedNavItem = nil
  11. isRedditActive = true
  12. redditReloadTrigger += 1
  13. }
  14. func selectNavItem(_ item: SidebarNavItem) {
  15. selectedNavItem = item
  16. isRedditActive = false
  17. }
  18. let createItems: [SidebarNavItem] = [
  19. SidebarNavItem(title: "Post Generator", subtitle: "Generate engaging posts", iconKind: .postGenerator),
  20. SidebarNavItem(title: "Title Optimizer", subtitle: "Create viral titles", iconKind: .titleOptimizer),
  21. SidebarNavItem(title: "Comment Writer", subtitle: "Write smart replies", iconKind: .commentWriter),
  22. ]
  23. let analyzeItems: [SidebarNavItem] = [
  24. SidebarNavItem(title: "Post Analyzer", subtitle: "Analyze any post", iconKind: .postAnalyzer),
  25. SidebarNavItem(title: "Subreddit Insights", subtitle: "Understand any subreddit", iconKind: .subredditInsights),
  26. ]
  27. }