usePeriodicTimer<T> function

void usePeriodicTimer<T>({
  1. required Future<void> callback(),
  2. bool fireImmediately = false,
})

Implementation

void usePeriodicTimer<T>({
  required Future<void> Function() callback,
  bool fireImmediately = false,
}) {
  useEffect(
    () {
      if (fireImmediately) {
        callback();
      }
      final timer = Timer.periodic(const Duration(seconds: 30), (_) async {
        callback();
      });
      return () {
        timer.cancel();
      };
    },
    [],
  );
}