promiseToFuture<T> function

Future<T> promiseToFuture<T>(
  1. dynamic jsPromise
)

Converts a JavaScript Promise to a Dart Future.

@JS()
external Promise<num> get threePromise; // Resolves to 3

final Future<num> threeFuture = promiseToFuture(threePromise);

final three = await threeFuture; // == 3

Implementation

Future<T> promiseToFuture<T>(dynamic jsPromise) {
  if (jsPromise is Future<T>) {
    return jsPromise;
  }
  return Future<T>.value(jsPromise as T);
}