BloomRuntimeFingerprint.fromConfig constructor

BloomRuntimeFingerprint.fromConfig(
  1. dynamic config, {
  2. Map<String, String> moduleFingerprints = const {},
  3. String? flutterRevision,
})

Creates a runtime fingerprint from a BloomConfig object and native module fingerprints.

Implementation

factory BloomRuntimeFingerprint.fromConfig(
  dynamic config, {
  Map<String, String> moduleFingerprints = const {},
  String? flutterRevision,
}) {
  final dartVer = getDartSdkVersion();
  var version = '1.0.0';
  final perms = <String>[];

  if (config != null) {
    try {
      version = config.version?.toString() ?? '1.0.0';
      if (config.plugins is Map) {
        perms.addAll((config.plugins as Map).keys.map((k) => k.toString()));
      }
    } catch (_) {}
  }

  return BloomRuntimeFingerprint(
    bloomVersion: version,
    flutterEngineRevision: flutterRevision ?? '3.27.0',
    dartSdkVersion: dartVer,
    nativeModuleFingerprints: moduleFingerprints,
    permissions: perms,
  );
}