initialize static method

Future<void> initialize({
  1. required String url,
  2. Dio? dio,
  3. StorageInterface? store,
})

Implementation

static Future<void> initialize({
  required String url,
  Dio? dio,
  StorageInterface? store,
}) async {
  if (_initialized) return;
  baseUrl = url;
  if (store == null && !kIsWeb) {
    await HiveStorage.init();
    storage = HiveStorage();
  } else {
    storage = store;
  }
  dioClient =
      dio ??
      Dio(
        BaseOptions(
          headers: {
            HttpHeaders.contentTypeHeader: 'application/json',
            HttpHeaders.userAgentHeader: 'FlutterBetterAuth/1.0.0',
            'flutter-origin': 'flutter://',
            'expo-origin': 'exp://',
            'x-skip-oauth-proxy': true,
          },
          validateStatus: (status) => status != null && status < 300,
        ),
      );
  final cookieJar = CustomPersistCookieJar(
    store: storage,
    storage: MemoryStorage(),
  );
  dioClient.interceptors.add(CookieManager(cookieJar));
  dioClient.interceptors.add(RemoveNullsInterceptor());
  _initialized = true;
}