jwt method

  1. @override
Future<String> jwt({
  1. bool forceRefresh = false,
})
override

Implementation

@override
Future<String> jwt({bool forceRefresh = false}) {
  Token token = tokenDetails();
  if (token == null) {
    debugPrint('Gotrue-js: failed getting jwt access token');
    return Future.error(Error());
  }
  final num expires_at = token.expires_at!;
  final refresh_token = token.refresh_token;
  final access_token = token.access_token;
  if (forceRefresh ||
      DateTime.now().isAfter(DateTime.fromMillisecondsSinceEpoch(
          expires_at.toInt() - ExpiryMargin))) {
    return _refreshToken(refresh_token!);
  }
  return Future.value(access_token);
}