exchange apple token for omnivore token

This commit is contained in:
Satindar Dhillon 2022-08-28 22:42:34 -07:00
parent 8ca10ea75e
commit 3d78b4df44
2 changed files with 15 additions and 10 deletions

View file

@ -1,6 +1,7 @@
package app.omnivore.omnivore.ui.auth
import android.annotation.SuppressLint
import android.content.ContentValues
import android.net.Uri
import android.util.Log
import android.view.ViewGroup
@ -36,9 +37,9 @@ fun AppleAuthButton(viewModel: LoginViewModel) {
)
if (showDialog.value) {
AppleAuthDialog(onDismiss = { authToken ->
if (authToken != null ) {
viewModel.saveAuthToken(authToken)
AppleAuthDialog(onDismiss = { token ->
if (token != null ) {
viewModel.handleAppleToken(token)
}
showDialog.value = false
})

View file

@ -68,10 +68,10 @@ class LoginViewModel @Inject constructor(
}
}
fun saveAuthToken(authToken: String) {
viewModelScope.launch {
datastoreRepo.putString(DatastoreKeys.omnivoreAuthToken, authToken)
}
fun handleAppleToken(authToken: String) {
submitAuthProviderPayload(
params = SignInParams(token = authToken, provider = "APPLE")
)
}
fun logout() {
@ -98,15 +98,19 @@ class LoginViewModel @Inject constructor(
return
}
submitAuthProviderPayload(
params = SignInParams(token = googleIdToken, provider = "GOOGLE")
)
}
private fun submitAuthProviderPayload(params: SignInParams) {
val login = RetrofitHelper.getInstance().create(AuthProviderLoginSubmit::class.java)
viewModelScope.launch {
isLoading = true
errorMessage = null
val result = login.submitAuthProviderLogin(
SignInParams(token = googleIdToken, provider = "GOOGLE")
)
val result = login.submitAuthProviderLogin(params)
isLoading = false