Skip to content

Commit 8c15371

Browse files
refactor: Facebook provider
1 parent 855b96d commit 8c15371

File tree

3 files changed

+9
-13
lines changed

3 files changed

+9
-13
lines changed

FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/AccountService+Facebook.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,7 @@ extension FacebookOperationReauthentication {
3434
}
3535

3636
do {
37-
let credential = try await facebookProvider
38-
.signInWithFacebook(isLimitedLogin: facebookProvider.isLimitedLogin)
37+
let credential = try await facebookProvider.createAuthCredential()
3938
try await user.reauthenticate(with: credential)
4039

4140
return .firebase("")

FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Services/FacebookProviderAuthUI.swift

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,19 +44,19 @@ public class FacebookProviderAuthUI: AuthProviderSwift, AuthProviderUI, DeleteUs
4444

4545
public var provider: AuthProviderSwift { self }
4646

47-
@MainActor private static var _shared: FacebookProviderAuthUI =
48-
.init(scopes: kDefaultFacebookScopes)
47+
@MainActor private static var _shared: FacebookProviderAuthUI = FacebookProviderAuthUI(scopes: kDefaultFacebookScopes)
4948

5049
@MainActor public static var shared: FacebookProviderAuthUI {
5150
return _shared
5251
}
5352

54-
@MainActor public static func configureProvider(scopes: [String]? = nil) {
55-
_shared = FacebookProviderAuthUI(scopes: scopes)
53+
@MainActor public static func configureProvider(scopes: [String]? = nil, isLimitedLogin: Bool = true) {
54+
_shared = FacebookProviderAuthUI(scopes: scopes, isLimitedLogin: isLimitedLogin)
5655
}
5756

58-
private init(scopes: [String]? = nil) {
57+
public init(scopes: [String]? = nil, isLimitedLogin: Bool = true) {
5958
self.scopes = scopes ?? kDefaultFacebookScopes
59+
self.isLimitedLogin = isLimitedLogin
6060
}
6161

6262
@MainActor public func authButton() -> AnyView {
@@ -68,11 +68,8 @@ public class FacebookProviderAuthUI: AuthProviderSwift, AuthProviderUI, DeleteUs
6868
try await operation(on: user)
6969
}
7070

71-
@MainActor public func createAuthCredential() async throws -> AuthCredential {
72-
return try await signInWithFacebook(isLimitedLogin: true)
73-
}
7471

75-
@MainActor public func signInWithFacebook(isLimitedLogin: Bool) async throws -> AuthCredential {
72+
@MainActor public func createAuthCredential() async throws -> AuthCredential {
7673
let loginType: LoginTracking = isLimitedLogin ? .limited : .enabled
7774
self.isLimitedLogin = isLimitedLogin
7875

FirebaseSwiftUI/FirebaseFacebookSwiftUI/Sources/Views/SignInWithFacebookButton.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,8 @@ extension SignInWithFacebookButton: View {
6565
Button(action: {
6666
Task {
6767
do {
68-
let credential = try await FacebookProviderAuthUI.shared.signInWithFacebook(isLimitedLogin: limitedLogin)
69-
try await authService.signIn(credentials: credential)
68+
let facebookProvider = FacebookProviderAuthUI(isLimitedLogin: limitedLogin)
69+
try await authService.signInWithProvider(facebookProvider)
7070
} catch {
7171
switch error {
7272
case FacebookProviderError.signInCancelled:

0 commit comments

Comments
 (0)