BloomFlavorConfig.fromMap constructor

BloomFlavorConfig.fromMap(
  1. String name,
  2. Map map
)

Constructs a BloomFlavorConfig from a parsed map and name identifier.

Extracts known keys (app_name, appName, app_id, appId, env_file, envFile) and places all other key-value pairs into the custom map.

Implementation

factory BloomFlavorConfig.fromMap(String name, Map<dynamic, dynamic> map) {
  const knownKeys = {'app_name', 'appName', 'app_id', 'appId', 'env_file', 'envFile'};
  final customMap = <String, dynamic>{};
  map.forEach((k, v) {
    if (!knownKeys.contains(k.toString())) {
      customMap[k.toString()] = v;
    }
  });

  return BloomFlavorConfig(
    name: name,
    appName: map['app_name']?.toString() ?? map['appName']?.toString(),
    appId: map['app_id']?.toString() ?? map['appId']?.toString(),
    envFile: map['env_file']?.toString() ?? map['envFile']?.toString(),
    custom: customMap,
  );
}