run method

  1. @override
FutureOr run()
override

Runs this command.

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

Implementation

@override
FutureOr run() {
  final config = loadConfig();
  final sourceDir = CliHelper.pathToDir(config.parts, projectDir);
  final files = findParts(sourceDir);

  final arbPartGen = ArbPartGen();
  final outputDir = CliHelper.pathToDir(config.output, projectDir);
  final result = arbPartGen.delegate(
    root: sourceDir,
    files: files,
    locale: config.defaultLocale,
  );

  final filePath = p.join(outputDir.path, 'l10n_delegate.dart');
  final resultFile = File(filePath);

  resultFile.writeAsStringSync(result);
}