@react-native-firebase/app
Version:
A well tested, feature rich Firebase implementation for React Native, supporting iOS & Android. Individual module support for Admob, Analytics, Auth, Crash Reporting, Cloud Firestore, Database, Dynamic Links, Functions, Messaging (FCM), Remote Config, Sto
32 lines (31 loc) • 1.35 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.withBuildscriptDependency = void 0;
exports.setBuildscriptDependency = setBuildscriptDependency;
const config_plugins_1 = require("@expo/config-plugins");
const constants_1 = require("./constants");
/**
* Update `<project>/build.gradle` by adding google-services dependency to buildscript
*/
const withBuildscriptDependency = config => {
return (0, config_plugins_1.withProjectBuildGradle)(config, config => {
if (config.modResults.language === 'groovy') {
config.modResults.contents = setBuildscriptDependency(config.modResults.contents);
}
else {
config_plugins_1.WarningAggregator.addWarningAndroid('react-native-firebase-app', `Cannot automatically configure project build.gradle if it's not groovy`);
}
return config;
});
};
exports.withBuildscriptDependency = withBuildscriptDependency;
function setBuildscriptDependency(buildGradle) {
if (!buildGradle.includes(constants_1.googleServicesClassPath)) {
// TODO: Find a more stable solution for this
return buildGradle.replace(/dependencies\s?{/, `dependencies {
classpath '${constants_1.googleServicesClassPath}:${constants_1.googleServicesVersion}'`);
}
else {
return buildGradle;
}
}
;