Script.fromYaml constructor

Script.fromYaml(
  1. String name,
  2. dynamic yaml
)

Implementation

factory Script.fromYaml(String name, dynamic yaml) {
  if (yaml is String) {
    return Script(
      name: name,
      command: yaml,
      runHooksFrom: null,
    );
  }

  if (yaml is! YamlMap) {
    throw StateError('Invalid script: $yaml');
  }

  final command = yaml['command'] as String;
  final runHooksFrom = yaml['runHooksFrom'] as String?;
  final runInPackages = (yaml['runInPackages'] as YamlList?)?.cast<String>();
  final env = (yaml['env'] as YamlMap?)?.cast<String, String>();

  return Script(
    name: name,
    command: command,
    runInPackages: runInPackages,
    runHooksFrom: runHooksFrom,
    env: env,
  );
}