summaryrefslogtreecommitdiff
path: root/Hutch/Views/Tickets/TrackerListViewModel.swift
diff options
context:
space:
mode:
authorChristian Cleberg <[email protected]>2026-03-18 20:23:58 -0500
committerChristian Cleberg <[email protected]>2026-03-18 20:23:58 -0500
commitc41cd437acde4e4f4c0781cebd4d5f4bf9517bb9 (patch)
tree28bf13b89e36774720d015a26a8979b567ad0be9 /Hutch/Views/Tickets/TrackerListViewModel.swift
parent1745311950fd68ad81957b3ba64f8566cd86ce19 (diff)
parent4dd920558a1c7174c0e9a5b872325df36e363516 (diff)
downloadhutch-c41cd437acde4e4f4c0781cebd4d5f4bf9517bb9.tar.gz
hutch-c41cd437acde4e4f4c0781cebd4d5f4bf9517bb9.tar.bz2
hutch-c41cd437acde4e4f4c0781cebd4d5f4bf9517bb9.zip
v1.2: Merge branch 'dev'
Diffstat (limited to 'Hutch/Views/Tickets/TrackerListViewModel.swift')
-rw-r--r--Hutch/Views/Tickets/TrackerListViewModel.swift19
1 files changed, 18 insertions, 1 deletions
diff --git a/Hutch/Views/Tickets/TrackerListViewModel.swift b/Hutch/Views/Tickets/TrackerListViewModel.swift
index 9704071..978a610 100644
--- a/Hutch/Views/Tickets/TrackerListViewModel.swift
+++ b/Hutch/Views/Tickets/TrackerListViewModel.swift
@@ -139,7 +139,7 @@ final class TrackerListViewModel {
trackers.insert(tracker, at: 0)
return tracker
} catch {
- self.error = "Couldn’t create the tracker. \(error.localizedDescription)"
+ self.error = trackerCreationErrorMessage(for: error)
return nil
}
}
@@ -163,4 +163,21 @@ final class TrackerListViewModel {
private struct CreateTrackerResponse: Decodable, Sendable {
let createTracker: TrackerSummary
}
+
+ private func trackerCreationErrorMessage(for error: Error) -> String {
+ let message: String
+
+ if let srhtError = error as? SRHTError {
+ switch srhtError {
+ case .graphQLErrors(let errors):
+ message = errors.map(\.message).joined(separator: "\n")
+ default:
+ message = srhtError.localizedDescription
+ }
+ } else {
+ message = error.localizedDescription
+ }
+
+ return "Couldn’t create the tracker. \(message)"
+ }
}