mirror of
https://github.com/Xevion/paperless-mobile.git
synced 2025-12-15 00:12:22 -06:00
WIP - Redesigned login flow
This commit is contained in:
@@ -1,18 +1,14 @@
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:dio/adapter.dart';
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:paperless_mobile/core/interceptor/retry_on_connection_change_interceptor.dart';
|
||||
import 'package:paperless_mobile/extensions/security_context_extension.dart';
|
||||
import 'package:paperless_mobile/features/login/model/client_certificate.dart';
|
||||
|
||||
class AuthenticationAwareDioManager {
|
||||
final Dio client;
|
||||
final List<Interceptor> interceptors;
|
||||
|
||||
/// Some dependencies require an [HttpClient], therefore this is also maintained here.
|
||||
|
||||
AuthenticationAwareDioManager([this.interceptors = const []])
|
||||
: client = _initDio(interceptors);
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
import 'dart:async';
|
||||
import 'dart:io';
|
||||
|
||||
import 'package:dio/dio.dart';
|
||||
import 'package:http/io_client.dart';
|
||||
import 'package:http_interceptor/http_interceptor.dart';
|
||||
import 'package:paperless_mobile/features/login/model/client_certificate.dart';
|
||||
import 'package:rxdart/rxdart.dart';
|
||||
|
||||
extension SecurityContextAwareBaseClientSubjectExtension
|
||||
on BehaviorSubject<BaseClient> {
|
||||
///
|
||||
/// Registers new security context in a new [HttpClient].
|
||||
///
|
||||
|
||||
BaseClient _createSecurityContextAwareHttpClient(
|
||||
SecurityContext context, {
|
||||
List<InterceptorContract> interceptors = const [],
|
||||
}) {
|
||||
Dio(BaseOptions());
|
||||
return InterceptedClient.build(
|
||||
client: IOClient(HttpClient(context: context)),
|
||||
interceptors: interceptors,
|
||||
);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user