debounce method

AuthRepository debounce(
  1. Duration duration
)

debounce implementation

wrap an AuthRepository with debouncing to disallow too many token refresh calls in a timed window.

it should be wrapped first with lock then debounce.

Implementation

AuthRepository debounce(Duration duration) => AuthRepositoryDebounceImpl(
      this,
      duration: duration,
    );