diff options
| author | Christian Cleberg <[email protected]> | 2026-04-01 23:54:01 -0500 |
|---|---|---|
| committer | Christian Cleberg <[email protected]> | 2026-04-01 23:54:01 -0500 |
| commit | fb103fbabd9865f711f5052f63816b35fc259585 (patch) | |
| tree | 3c6df1bb04c6d1e8e937e5bbc6f75725f5c6d926 /Hutch/Views/Lookup/LookupView.swift | |
| parent | 0bef9acc515cfcb4ac6e2530cd34cbdbc47c2c1d (diff) | |
| download | hutch-fb103fbabd9865f711f5052f63816b35fc259585.tar.gz hutch-fb103fbabd9865f711f5052f63816b35fc259585.tar.bz2 hutch-fb103fbabd9865f711f5052f63816b35fc259585.zip | |
feat: expand user profile in Look Up
Diffstat (limited to 'Hutch/Views/Lookup/LookupView.swift')
| -rw-r--r-- | Hutch/Views/Lookup/LookupView.swift | 47 |
1 files changed, 40 insertions, 7 deletions
diff --git a/Hutch/Views/Lookup/LookupView.swift b/Hutch/Views/Lookup/LookupView.swift index 9f42d9e..413ea12 100644 --- a/Hutch/Views/Lookup/LookupView.swift +++ b/Hutch/Views/Lookup/LookupView.swift @@ -1,4 +1,7 @@ import SwiftUI +import os + +private let lookupLogger = Logger(subsystem: "net.cleberg.Hutch", category: "Lookup") enum LookupType: String, CaseIterable, Identifiable { case user = "User" @@ -166,17 +169,47 @@ final class LookupViewModel { let query = """ query userLookup($username: String!) { user: userByName(username: $username) { - id username canonicalName email avatar + id + created + updated + canonicalName + username + email + url + location + bio + avatar + pronouns + userType } } """ - let result = try await client.execute( - service: .meta, - query: query, - variables: ["username": username], - responseType: Response.self - ) + lookupLogger.debug("Looking up user profile for username: \(username, privacy: .public)") + + let result: Response + do { + result = try await client.execute( + service: .meta, + query: query, + variables: ["username": username], + responseType: Response.self + ) + } catch { + lookupLogger.error( + """ + User lookup failed + username: \(username, privacy: .public) + query: + \(query, privacy: .public) + error: + \(String(describing: error), privacy: .public) + """ + ) + throw error + } + + lookupLogger.debug("User lookup succeeded for username: \(username, privacy: .public)") return .user(result.user) } |
