1import { AndroidConfig, ConfigPlugin, createRunOncePlugin } from 'expo/config-plugins'; 2 3const pkg = require('expo-local-authentication/package.json'); 4const FACE_ID_USAGE = 'Allow $(PRODUCT_NAME) to use Face ID'; 5 6const withLocalAuthentication: ConfigPlugin<{ faceIDPermission?: string } | void> = ( 7 config, 8 { faceIDPermission } = {} 9) => { 10 if (!config.ios) config.ios = {}; 11 if (!config.ios.infoPlist) config.ios.infoPlist = {}; 12 config.ios.infoPlist.NSFaceIDUsageDescription = 13 faceIDPermission || config.ios.infoPlist.NSFaceIDUsageDescription || FACE_ID_USAGE; 14 15 return AndroidConfig.Permissions.withPermissions(config, [ 16 'android.permission.USE_BIOMETRIC', 17 'android.permission.USE_FINGERPRINT', 18 ]); 19}; 20 21export default createRunOncePlugin(withLocalAuthentication, pkg.name, pkg.version); 22