withSpinner<T> method

Future<T> withSpinner<T>(
  1. String message,
  2. Future<T> action()
)

Implementation

Future<T> withSpinner<T>(String message, Future<T> Function() action) {
  if (!stderr.hasTerminal) return action();

  return CliSpin.async<T>(
    (_) => action(),
    text: message,
    spinnerData: CliSpinners.dots,
    color: CliSpinnerColor.cyan,
    onSuccess: (_, spinner) => spinner.success('Done'),
    onError: (error, spinner) => spinner.fail(error.toString()),
  );
}