async def delete_source_connection(
    *,
    db: AsyncSession = Depends(deps.get_db),
    source_connection_id: UUID,
    delete_data: bool = False,
    user: schemas.User = Depends(deps.get_user),
) -> schemas.SourceConnection:
    """Delete a source connection and all related components.

    Args:
        db: The database session
        source_connection_id: The ID of the source connection to delete
        delete_data: Whether to delete the associated data in destinations
        user: The current user

    Returns:
        The deleted source connection
    """
    return await source_connection_service.delete_source_connection(
        db=db, source_connection_id=source_connection_id, current_user=user, delete_data=delete_data
    )
Delete a source connection and all related components.

    Args:
        db: The database session
        source_connection_id: The ID of the source connection to delete
        delete_data: Whether to delete the associated data in destinations
        user: The current user

    Returns:
        The deleted source connection
    
backend/airweave/api/v1/endpoints/source_connections.py