connect method

dynamic connect({
  1. required String customerId,
  2. required List<LeanPermissions> permissions,
  3. String? endUserId,
  4. String? accessTo,
  5. String? accessFrom,
  6. String? bankIdentifier,
  7. String? failRedirectUrl,
  8. String? successRedirectUrl,
  9. String? paymentDestinationId,
  10. String? accountType,
})

Implementation

connect({
  required String customerId,
  required List<LeanPermissions> permissions,
  String? endUserId,
  String? accessTo,
  String? accessFrom,
  String? bankIdentifier,
  String? failRedirectUrl,
  String? successRedirectUrl,
  String? paymentDestinationId,
  String? accountType,
}) {
  String permissionsParams = _convertPermissionsToURLString(permissions);
  String customizationParams = _convertCustomizationToURLString();

  var initializationURL =
      "$_getBaseUrl&method=${LeanMethods.connect.name}&${Params.customer_id.name}=$customerId$permissionsParams$customizationParams";

  // only include properties that are set
  if (bankIdentifier != null && bankIdentifier.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.bank_identifier.name}=$bankIdentifier";
  }

  if (paymentDestinationId != null && paymentDestinationId.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.payment_destination_id.name}=$paymentDestinationId";
  }

  if (endUserId != null && endUserId.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.end_user_id.name}=$endUserId";
  }

  if (accessTo != null && accessTo.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.access_to.name}=$accessTo";
  }

  if (accessFrom != null && accessFrom.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.access_from.name}=$accessFrom";
  }

  if (failRedirectUrl != null && failRedirectUrl.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.fail_redirect_url.name}=$failRedirectUrl";
  }

  if (successRedirectUrl != null && successRedirectUrl.isNotEmpty) {
    initializationURL =
        "$initializationURL&${Params.success_redirect_url.name}=$successRedirectUrl";
  }

  if (accountType != null && accountType.isNotEmpty) {
    initializationURL =
    "$initializationURL&${Params.account_type.name}=$accountType";
  }

  return initializationURL;
}