connect static method

Future<OneDriveProvider?> connect({
  1. required String clientId,
  2. required String redirectUri,
  3. required BuildContext context,
})

Implementation

static Future<OneDriveProvider?> connect({
  required String clientId,
  required String redirectUri,
  required BuildContext context,
}) async {
  if (clientId.trim().isEmpty) {
    throw ArgumentError(
        'App registration required: https://portal.azure.com/#view/Microsoft_AAD_RegisteredApps/ApplicationsListBlade');
  }
  if (redirectUri.isEmpty) {
    redirectUri =
        'https://login.microsoftonline.com/common/oauth2/nativeclient'; //fallback: use native redirect
  }
  final provider = OneDriveProvider._create(
      clientId: clientId, redirectUri: redirectUri, context: context);
  provider.client = OneDrive(
    clientID: clientId,
    redirectURL: redirectUri,
  );
  final success = await provider.client.connect(context);
  if (success == false) {
    return null;
  }
  provider._isAuthenticated = true;
  return provider;
}