run method

  1. @override
void run()
override

Runs this command.

The return value is wrapped in a Future if necessary and returned by CommandRunner.runCommand.

Implementation

@override
void run() async {
  if (argResults?.rest.isEmpty ?? true) {
    StatusHelper.failed(
        'Core package name is empty, add a new core package with "morpheme core <package-name>"');
  }

  final packageName = argResults?.rest.first ?? '';
  await addNewFeature(packageName);
  addNewFeatureInPubspec(packageName);
  addNewGitIgnore(packageName);
  addNewAnalysisOption(packageName);

  StatusHelper.success('generate package $packageName in core');
}