run method

Future<void> run(
  1. List<String> args
)

Runs the CLI tool with parsed arguments and error handling.

Implementation

Future<void> run(List<String> args) async {
  final verbose = args.contains('--verbose') || args.contains('-v');
  final logger = Logger(verbose: verbose);

  final filteredArgs = args.where((arg) => arg != '--verbose' && arg != '-v').toList();

  try {
    await _router.route(filteredArgs, logger: logger);
  } on DeepLinkException catch (e) {
    logger.error(e.message, e.details);
  } catch (e, stackTrace) {
    logger.error('An unexpected error occurred.', e);
    if (verbose) {
      logger.println(stackTrace.toString());
    }
  }
}