summaryrefslogtreecommitdiffhomepage
path: root/packages/browser/src/helpers/platformAuthenticatorIsAvailable.ts
blob: d1886691c84eba425568165178e502f01fc3cb75 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import { browserSupportsWebAuthn } from "./browserSupportsWebAuthn";

/**
 * Determine whether the browser can communicate with a built-in authenticator, like
 * Touch ID, Android fingerprint scanner, or Windows Hello.
 *
 * This method will _not_ be able to tell you the name of the platform authenticator.
 */
export function platformAuthenticatorIsAvailable(): Promise<boolean> {
  if (!browserSupportsWebAuthn()) {
    return new Promise((resolve) => resolve(false));
  }

  return PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable();
}