run method

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

Runs this command.

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

Implementation

@override
Future<void> run() async {
  final subcommand = argResults!.rest.isNotEmpty ? argResults!.rest.first : null;

  switch (subcommand) {
    case 'app':
      await _createApp();
      break;
    case 'module':
      await _createModule();
      break;
    default:
      print('❌ Invalid subcommand. Use: dcf create app or dcf create module');
      printUsage();
      exit(1);
  }
}