UNPKG

@react-native-firebase/perf

Version:

React Native Firebase - React Native Firebase provides native integration with Performance Monitoring to gain insight into key performance characteristics within your React Native application.

28 lines (25 loc) 961 B
import { ConfigPlugin, WarningAggregator, withAppBuildGradle } from '@expo/config-plugins'; import { perfMonitoringPlugin } from './constants'; /** * Update `app/build.gradle` by applying performance monitoring plugin */ export const withApplyPerfPlugin: ConfigPlugin = config => { return withAppBuildGradle(config, config => { if (config.modResults.language === 'groovy') { config.modResults.contents = applyPlugin(config.modResults.contents); } else { WarningAggregator.addWarningAndroid( 'react-native-firebase-perf', `Cannot automatically configure app build.gradle if it's not groovy`, ); } return config; }); }; export function applyPlugin(appBuildGradle: string) { const perfPattern = new RegExp(`apply\\s+plugin:\\s+['"]${perfMonitoringPlugin}['"]`); if (!appBuildGradle.match(perfPattern)) { appBuildGradle += `\napply plugin: '${perfMonitoringPlugin}'`; } return appBuildGradle; }