loop method
Loops the loading bar.
Implementation
Timer loop() {
final width = console.columns - 2;
bool go_forward = true;
bool is_done = true;
return Timer.periodic(
const Duration(milliseconds: 50),
(final timer) async {
if (is_done) {
is_done = false;
for (int i = 1; i <= width; i++) {
position = i;
await Future<void>.delayed(const Duration(milliseconds: 5));
if (go_forward) {
forward();
} else {
backward();
}
}
go_forward = !go_forward;
is_done = true;
}
},
);
}