run method

  1. @override
String run(
  1. ParsedInputs inputs,
  2. List<String> args
)
override

Implementation

@override
String run(ParsedInputs inputs, List<String> args) {
  final name = inputs.valueOf(packageName);
  final description = inputs.valueOf(projectDescription);

  // A flag answers its own step, so the prompt is only reached when the
  // answer is still open.
  final installsDependencies =
      inputs.valueOf(install) || _installPrompt.confirmsInstallation();
  final initializesGitRepository =
      inputs.valueOf(initializeGit) || _gitPrompt.confirmsInitialization();

  _projectScaffolder.scaffold(
    name,
    description,
    installDependencies: installsDependencies,
    initializeGitRepository: initializesGitRepository,
  );

  final projectPath = name == _currentDirectoryToken
      ? _parentDirectory.path
      : '${_parentDirectory.path}${Platform.pathSeparator}$name';

  return [
    'Created Mamba command-line application in $projectPath.',
    if (!installsDependencies)
      'Run `dart pub get` in $projectPath to install its dependencies.',
  ].join('\n');
}