BloomModulePlatformSpec.fromYaml constructor

BloomModulePlatformSpec.fromYaml(
  1. dynamic value
)

Parses a BloomModulePlatformSpec from a YAML node or map value.

Implementation

factory BloomModulePlatformSpec.fromYaml(dynamic value) {
  if (value is Map || value is YamlMap) {
    final deps = <String>[];
    if (value['dependencies'] is List) {
      for (final d in value['dependencies']) {
        deps.add(d.toString());
      }
    }
    final fws = <String>[];
    if (value['frameworks'] is List) {
      for (final f in value['frameworks']) {
        fws.add(f.toString());
      }
    }

    return BloomModulePlatformSpec(
      minSdk: value['min_sdk'] is int ? value['min_sdk'] as int : int.tryParse(value['min_sdk']?.toString() ?? ''),
      targetSdk: value['target_sdk'] is int ? value['target_sdk'] as int : int.tryParse(value['target_sdk']?.toString() ?? ''),
      minVersion: value['min_version']?.toString(),
      dependencies: deps,
      frameworks: fws,
    );
  }
  return const BloomModulePlatformSpec();
}