run method

  1. @override
Future<void> run()
override

Runs the command

Implementation

@override
Future<void> run() async {
  // Get the output directory
  final tmp = (argResults?['output'] as String).trim();
  final outputDir = tmp == '.' ? checkoutDirectory() : tmp;

  final packageName = (argResults?['name'] as String).trim();
  final description = (argResults?['description'] as String).trim();

  var homeDirectory = Platform.environment['HOME'] ??
      Platform.environment['USERPROFILE'] ?? // coverage:ignore-line
      ''; // coverage:ignore-line
  final isOpenSource = argResults?['open-source'] as bool;
  final pushToGitHub = argResults?['prepare-github'] as bool;
  final force = argResults?['force'] as bool;
  final createCli = argResults?['cli'] as bool;
  final createExample = argResults?['example'] as bool;
  final createFlutterPackage = argResults?['flutter'] as bool;
  final dryRun = argResults?['dry-run'] as bool;
  final githubOrg = argResults?['github-org'] as String;

  final updatedOutputDir = outputDir.replaceAll('~', homeDirectory);

  if (!testReallyExecute) {
    return;
  }

  await _CreateDartPackage(
    outputDir: updatedOutputDir,
    packageDir: join(updatedOutputDir, packageName),
    packageName: packageName,
    description: description,
    ggLog: ggLog,
    isOpenSource: isOpenSource,
    prepareGitHub: pushToGitHub,
    force: force,
    createCli: createCli,
    createExample: createExample,
    createFlutterPackage: createFlutterPackage,
    dryRun: dryRun,
    githubOrg: githubOrg,
  ).run();
}