react-native-app-auth
Version:
React Native bridge for AppAuth for supporting any OAuth 2 provider
30 lines (29 loc) • 1.21 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const config_plugins_1 = require("@expo/config-plugins");
const ios_1 = require("./ios");
const android_1 = require("./android");
const packageJson = require('../../package.json');
const withAppAuth = (config, props) => {
// Transform redirectUrls configuration to platform-specific format
const transformedProps = props?.redirectUrls ? {
ios: {
urlScheme: props.redirectUrls[0]?.split('://')[0], // Extract scheme from first URL
},
android: {
appAuthRedirectScheme: props.redirectUrls[0]?.split('://')[0], // Extract scheme from first URL
},
...props,
} : (props || {});
return (0, config_plugins_1.withPlugins)(config, [
// iOS
ios_1.withBridgingHeader,
ios_1.withXcodeBuildSettings,
ios_1.withAppAuthAppDelegate,
ios_1.withAppAuthAppDelegateHeader,
[ios_1.withUrlSchemes, transformedProps],
// Android
[android_1.withAppAuthAppBuildGradle, transformedProps],
]);
};
exports.default = (0, config_plugins_1.createRunOncePlugin)(withAppAuth, packageJson.name, packageJson.version);