patch
This commit is contained in:
		
							parent
							
								
									3f0543aa3a
								
							
						
					
					
						commit
						3e9d6696b0
					
				@ -24,8 +24,11 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
                emptyState
 | 
					                emptyState
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                usersSection
 | 
					                usersSection
 | 
				
			||||||
                if hasMore {
 | 
					                if isLoading && !blockedUsers.isEmpty {
 | 
				
			||||||
                    loadMoreState
 | 
					                    Section {
 | 
				
			||||||
 | 
					                        ProgressView()
 | 
				
			||||||
 | 
					                            .frame(maxWidth: .infinity, alignment: .center)
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -82,7 +85,8 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    private var usersSection: some View {
 | 
					    private var usersSection: some View {
 | 
				
			||||||
        Section(header: Text(NSLocalizedString("Заблокированные", comment: ""))) {
 | 
					        Section(header: Text(NSLocalizedString("Заблокированные", comment: ""))) {
 | 
				
			||||||
            ForEach(blockedUsers) { user in
 | 
					            ForEach(blockedUsers) {
 | 
				
			||||||
 | 
					                user in
 | 
				
			||||||
                HStack(spacing: 12) {
 | 
					                HStack(spacing: 12) {
 | 
				
			||||||
                    Circle()
 | 
					                    Circle()
 | 
				
			||||||
                        .fill(Color.accentColor.opacity(0.15))
 | 
					                        .fill(Color.accentColor.opacity(0.15))
 | 
				
			||||||
@ -113,6 +117,11 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
                    }
 | 
					                    }
 | 
				
			||||||
                    .disabled(removingUserIds.contains(user.id))
 | 
					                    .disabled(removingUserIds.contains(user.id))
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					                .task {
 | 
				
			||||||
 | 
					                    if user == blockedUsers.last, hasMore, !isLoading {
 | 
				
			||||||
 | 
					                        await loadBlockedUsers()
 | 
				
			||||||
 | 
					                    }
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
@ -139,18 +148,6 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private var loadMoreState: some View {
 | 
					 | 
				
			||||||
        Section {
 | 
					 | 
				
			||||||
            ProgressView()
 | 
					 | 
				
			||||||
                .frame(maxWidth: .infinity, alignment: .center)
 | 
					 | 
				
			||||||
                .onAppear {
 | 
					 | 
				
			||||||
                    Task {
 | 
					 | 
				
			||||||
                        await loadBlockedUsers()
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    private func errorState(_ message: String) -> some View {
 | 
					    private func errorState(_ message: String) -> some View {
 | 
				
			||||||
        Section {
 | 
					        Section {
 | 
				
			||||||
            Text(message)
 | 
					            Text(message)
 | 
				
			||||||
@ -166,6 +163,8 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        isLoading = true
 | 
					        isLoading = true
 | 
				
			||||||
 | 
					        defer { isLoading = false }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        if offset == 0 {
 | 
					        if offset == 0 {
 | 
				
			||||||
            loadError = nil
 | 
					            loadError = nil
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
@ -183,8 +182,6 @@ struct BlockedUsersView: View {
 | 
				
			|||||||
            activeAlert = .error(message: message)
 | 
					            activeAlert = .error(message: message)
 | 
				
			||||||
            if AppConfig.DEBUG { print("[BlockedUsersView] load blocked users failed: \(error)") }
 | 
					            if AppConfig.DEBUG { print("[BlockedUsersView] load blocked users failed: \(error)") }
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					 | 
				
			||||||
        isLoading = false
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @MainActor
 | 
					    @MainActor
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user