[ Package conformance ]

Auth & Payments · >=4.0.0

react-native-touch-id

native-seam: the pure-JS TouchID wrapper + errors.js + data/errors.js (TouchIDError classes + iOSErrors map) run from the real bundle; only NativeModules.TouchID is ours, mirroring TouchID.m on the reference iOS Simulator (Face ID device, no biometrics enrolled, no passcode): canEvaluatePolicy fails with LAErrorTouchIDNotEnrolled and passcodeFallback defaults false, so isSupported/authenticate call back with that error reason and the real wrapper rejects with the faithful NOT_ENROLLED TouchIDError — the exact value a guest gets on the reference device. same faithful tier as expo-local-authentication.
85%
API coverage
No visual conformance cases have been published for this package yet. The registry summary below describes what the compat layer implements.
Working (2)
isSupported(config) and authenticate(reasonconfig) — real upstream wrapper + TouchIDError/TouchIDUnifiedError + iOSErrors mapping run from the bundle off a faithful native callback; reference-simulator parity (rejects with LAErrorTouchIDNotEnrolled → NOT_ENROLLED)
Missing (2)
no real biometric prompt can succeed — but neither can the reference iOS Simulator (no enrolled biometrics); package is deprecated upstream (expo-local-authentication is the maintained successoralso a faithful native-seam here)