minWait method
Ensures the future takes at least duration to complete.
This is useful for UI to prevent loading spinners from flickering (showing for only a few ms).
Example:
await apiCall().minWait(const Duration(milliseconds: 500));
Implementation
Future<T> minWait(Duration duration) async {
final results = await Future.wait([this, Future<void>.delayed(duration)]);
return results[0] as T;
}