run method
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);
}
}