hasFirebaseFiles static method

bool hasFirebaseFiles()

Checks if Firebase files or dependencies actually exist in the project.

Implementation

static bool hasFirebaseFiles() {
  try {
    final pubspec = File(p.join(root, 'pubspec.yaml'));
    if (pubspec.existsSync()) {
      final content = pubspec.readAsStringSync();
      if (content.contains('firebase_core:')) return true;
    }

    if (File(p.join(root, 'android/app/google-services.json')).existsSync()) {
      return true;
    }
    if (File(
      p.join(root, 'ios/Runner/GoogleService-Info.plist'),
    ).existsSync()) {
      return true;
    }

    // Check for flavored options in lib/
    final libDir = Directory(p.join(root, 'lib'));
    if (libDir.existsSync()) {
      final files = libDir.listSync();
      if (files.any(
        (f) => p.basename(f.path).startsWith('firebase_options'),
      )) {
        return true;
      }
    }
  } catch (_) {}
  return false;
}