iOS client for Grain grain.social
ios photography atproto
7
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: show error state with Bluesky link for missing profiles

Instead of a black screen when a profile fails to load, show a
"Profile Not Found" message with a link to view on Bluesky.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

+18
+18
Grain/Views/Profile/ProfileView.swift
··· 189 189 } else if viewModel.isLoading { 190 190 ProgressView() 191 191 .padding(.top, 100) 192 + } else if viewModel.error != nil { 193 + VStack(spacing: 16) { 194 + ContentUnavailableView( 195 + "Profile Not Found", 196 + systemImage: "person.slash", 197 + description: Text("This user doesn't have a Grain profile yet.") 198 + ) 199 + if let url = URL(string: "https://bsky.app/profile/\(actor)") { 200 + Link(destination: url) { 201 + HStack(spacing: 6) { 202 + Image(systemName: "arrow.up.right") 203 + Text("View on Bluesky") 204 + } 205 + .font(.subheadline.weight(.medium)) 206 + } 207 + } 208 + } 209 + .padding(.top, 40) 192 210 } 193 211 } 194 212 .environment(zoomState)