withGenerator static method

Future<Yt> withGenerator(
  1. RefreshTokenGenerator refreshTokenGenerator, {
  2. LogOptions logOptions = const LogOptions(LogLevel.error, stackTraceLevel: LogLevel.off),
})

Implementation

static Future<Yt> withGenerator(RefreshTokenGenerator refreshTokenGenerator,
    {LogOptions logOptions = const LogOptions(
      LogLevel.error,
      stackTraceLevel: LogLevel.off,
    )}) async {
  final yt = Yt(logOptions: logOptions);

  Token token = await refreshTokenGenerator.generate();

  addInterceptor(InterceptorsWrapper(onRequest: (options, handler) async {
    options.headers['Authorization'] = 'Bearer ${token.accessToken}';

    return handler.next(options);
  }));

  yt.setModules(useTokenAuth: true);

  dio.interceptors.addAll(_interceptors);

  return yt;
}