start method

void start()

Implementation

void start() {
  if (_running) return;
  _running = true;

  stderr.write('\x1B[?25l'); // Hide cursor

  onStart();
  tick();

  _timer = Timer.periodic(speed, (_) {
    if (!_running) return;
    tick();
  });

  if (duration != null) {
    _durationTimer = Timer(duration!, stop);
  }
}