1package com.peachpasswords.passkeys23import android.app.PendingIntent4import android.content.Context5import android.content.Intent6import android.os.Build7import androidx.credentials.provider.BeginGetCredentialRequest8import com.peachpasswords.credentials.CredentialProviderUnlockActivity910object PasskeyUnlockIntent {11 fun pendingIntent(context: Context, request: BeginGetCredentialRequest): PendingIntent {12 val intent = Intent(context, CredentialProviderUnlockActivity::class.java)13 .putExtra(EXTRA_REQUEST, BeginGetCredentialRequest.asBundle(request))14 return PendingIntent.getActivity(15 context,16 PasskeyPendingIntentIds.next(),17 intent,18 PendingIntent.FLAG_UPDATE_CURRENT or PendingIntent.FLAG_ONE_SHOT or mutableFlag(),19 )20 }2122 private fun mutableFlag(): Int =23 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S) PendingIntent.FLAG_MUTABLE else 02425 const val EXTRA_REQUEST = "com.peachpasswords.passkeys.EXTRA_BEGIN_GET_REQUEST"26}