Sen descrición

SavedJobsStore.swift 745B

1234567891011121314151617181920212223242526272829
  1. //
  2. // SavedJobsStore.swift
  3. // App for Indeed
  4. //
  5. import Foundation
  6. enum SavedJobsStore {
  7. private static let defaultsKey = "com.appforindeed.savedJobListings.v1"
  8. static func load() -> [JobListing] {
  9. guard let data = UserDefaults.standard.data(forKey: defaultsKey) else { return [] }
  10. do {
  11. return try JSONDecoder().decode([JobListing].self, from: data)
  12. } catch {
  13. return []
  14. }
  15. }
  16. static func save(_ jobs: [JobListing]) {
  17. do {
  18. let data = try JSONEncoder().encode(jobs)
  19. UserDefaults.standard.set(data, forKey: defaultsKey)
  20. } catch {
  21. // Best-effort persistence; UI state remains in memory for this session.
  22. }
  23. }
  24. }