Skip to content

Commit

Permalink
Addressed PR comment.
Browse files Browse the repository at this point in the history
  • Loading branch information
borut-t committed Sep 19, 2023
1 parent c5814c8 commit fc352c1
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 28 deletions.
2 changes: 1 addition & 1 deletion Sources/LinkedIn/LinkedInAuthenticator.swift
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ extension LinkedInAuthenticator: Authenticator {

storage.set(true, forKey: storageIsAuthenticatedKey)

let name = [profileResponse.localizedFirstName, profileResponse.localizedLastName].joined(separator: " ")
let name = "\(profileResponse.localizedFirstName) \(profileResponse.localizedLastName)"
return Response(
userId: profileResponse.id,
token: authResponse.accessToken,
Expand Down
59 changes: 32 additions & 27 deletions Sources/LinkedIn/WebView/LinkedInSheet.swift
Original file line number Diff line number Diff line change
@@ -1,35 +1,40 @@
//
// File.swift
//
//
//
// Created by Borut Tomazin on 04/09/2023.
//

import SwiftUI

//struct LinkedInSheet: ViewModifier {
// typealias SuccessHandler = (Bool) -> Void
// typealias ErrorHandler = (Error) -> Void
// let isPresented: Binding<Bool>
// let onSuccess: SuccessHandler?
// let onError: ErrorHandler?
//
// func body(content: Content) -> some View {
// content
// .sheet(isPresented: isPresented) {
// LinkedInWebView { data in
// // Task { await viewModel.signInWithLinkedIn() }
// } onFailure: {
// // viewModel.error = .general
// }
// }
// }
//}
//
//extension View {
// func linkedInSheet(isPresented: Binding<Bool>,
// onSuccess: LinkedInSheet.SuccessHandler? = nil,
// onError: LinkedInSheet.ErrorHandler? = nil) -> some View {
// modifier(LinkedInSheet(isPresented: isPresented, onSuccess: onSuccess, onError: onError))
// }
//}
@available(iOS 15.0, *)
struct LinkedInSheet: ViewModifier {
typealias SuccessHandler = LinkedInWebView.SuccessHandler // (Bool) -> Void
typealias ErrorHandler = LinkedInWebView.ErrorHandler // (Error) -> Void
let config: LinkedInAuthenticator.Configuration
let isPresented: Binding<Bool>
let onSuccess: SuccessHandler?
let onError: ErrorHandler?

func body(content: Content) -> some View {
content
.sheet(isPresented: isPresented) {
LinkedInWebView(with: config) { data in
onSuccess?(data)
} onFailure: {
onError?()
}
}
}
}

@available(iOS 15.0, *)
extension View {
/// ViewModifier to present `LinkedInWebView` in sheet
func linkedInSheet(with config: LinkedInAuthenticator.Configuration,
isPresented: Binding<Bool>,
onSuccess: LinkedInSheet.SuccessHandler? = nil,
onError: LinkedInSheet.ErrorHandler? = nil) -> some View {
modifier(LinkedInSheet(config: config, isPresented: isPresented, onSuccess: onSuccess, onError: onError))
}
}

0 comments on commit fc352c1

Please sign in to comment.