UNPKG

react-native-expo-braintree

Version:

React native and expo wrapper around braintree sdk fro android and ios

49 lines (41 loc) 1.17 kB
import { type ConfigPlugin, createRunOncePlugin } from '@expo/config-plugins'; import { withExpoBraintreeAndroid } from './withExpoBraintree.android'; import { withExpoBraintreeAppDelegate, withExpoBraintreePlist, withSwiftBraintreeWrapperFile, withVenmoScheme, } from './withExpoBraintree.ios'; const pkg = require('react-native-expo-braintree/package.json'); export type ExpoBraintreePluginProps = { /** * xCode project name, used for importing the swift expo braintree config header */ xCodeProjectAppName: string; /** * Android AppLink host */ host: string; /** * Android AppLink pathPrefix */ pathPrefix?: string; }; export const withExpoBraintreePlugin: ConfigPlugin<ExpoBraintreePluginProps> = ( expoConfig, props ) => { // Android mods let config = withExpoBraintreeAndroid(expoConfig, props); // IOS mods config = withSwiftBraintreeWrapperFile(config); config = withExpoBraintreeAppDelegate(config, props); config = withExpoBraintreePlist(config); config = withVenmoScheme(config); return config; }; export default createRunOncePlugin( withExpoBraintreePlugin, pkg.name, pkg.version );