Skip to content

Commit 04c3dce

Browse files
feat: user profile update methods
1 parent b3fd259 commit 04c3dce

File tree

1 file changed

+34
-0
lines changed

1 file changed

+34
-0
lines changed

FirebaseSwiftUI/FirebaseAuthSwiftUI/Sources/Services/AuthService.swift

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -484,3 +484,37 @@ public extension AuthService {
484484
try await signIn(credentials: credential)
485485
}
486486
}
487+
488+
// MARK: - User Profile Management
489+
490+
public extension AuthService {
491+
func updateUserPhotoURL(url: URL) async throws {
492+
guard let user = currentUser else {
493+
throw AuthServiceError.noCurrentUser
494+
}
495+
496+
do {
497+
let changeRequest = user.createProfileChangeRequest()
498+
changeRequest.photoURL = url
499+
try await changeRequest.commitChanges()
500+
} catch {
501+
errorMessage = string.localizedErrorMessage(for: error)
502+
throw error
503+
}
504+
}
505+
506+
func updateUserDisplayName(name: String) async throws {
507+
guard let user = currentUser else {
508+
throw AuthServiceError.noCurrentUser
509+
}
510+
511+
do {
512+
let changeRequest = user.createProfileChangeRequest()
513+
changeRequest.displayName = name
514+
try await changeRequest.commitChanges()
515+
} catch {
516+
errorMessage = string.localizedErrorMessage(for: error)
517+
throw error
518+
}
519+
}
520+
}

0 commit comments

Comments
 (0)