run method
Run the CLI with provided arguments
Implementation
Future<void> run(List<String> arguments) async {
if (arguments.isEmpty || arguments.length < 2) {
_printUsage();
exit(1);
}
final filePath = arguments[0];
final outputDir = arguments[1];
String className = 'AppLocalizations';
bool includeFlutterDelegates = true;
// Parse optional arguments
for (int i = 2; i < arguments.length; i++) {
final arg = arguments[i];
if (arg.startsWith('--class-name=')) {
className = arg.substring('--class-name='.length);
} else if (arg == '--no-flutter-delegates') {
includeFlutterDelegates = false;
} else if (arg == '--help' || arg == '-h') {
_printUsage();
exit(0);
} else {
print('❌ Unknown argument: $arg');
_printUsage();
exit(1);
}
}
try {
await _translatorService.generateFromFile(
filePath: filePath,
outputDir: outputDir,
className: className,
includeFlutterDelegates: includeFlutterDelegates,
);
} catch (e) {
print('❌ Generation failed: $e');
exit(1);
}
}