CommandConfigs.fromYaml constructor

CommandConfigs.fromYaml(
  1. Map<Object?, Object?> yaml, {
  2. required String workspacePath,
})

Implementation

factory CommandConfigs.fromYaml(
  Map<Object?, Object?> yaml, {
  required String workspacePath,
}) {
  final bootstrapMap = assertKeyIsA<Map<Object?, Object?>?>(
    key: 'bootstrap',
    map: yaml,
    path: 'command',
  );

  final versionMap = assertKeyIsA<Map<Object?, Object?>?>(
    key: 'version',
    map: yaml,
    path: 'command',
  );

  return CommandConfigs(
    bootstrap: BootstrapCommandConfigs.fromYaml(bootstrapMap ?? const {}),
    version: VersionCommandConfigs.fromYaml(
      versionMap ?? const {},
      workspacePath: workspacePath,
    ),
  );
}