start method
void
start()
Implementation
void start() {
if (extendable) reset();
if (_timer == null) {
reset();
_onTick();
_timer = Timer.periodic(period, (_) {
if (countDown && _elapsed.value <= Duration.zero ||
!countDown &&
duration != Duration.zero &&
_elapsed.value >= duration) {
_onCancel();
} else {
_onTick();
}
});
}
}