Merge pull request #16 from langflow-ai/anonymous-user

feat: add users classes
This commit is contained in:
Sebastián Estévez 2025-09-04 17:02:40 -04:00 committed by GitHub
commit 25531ef80f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 18 additions and 28 deletions

View file

@ -30,15 +30,8 @@ def require_auth(session_manager):
from session_manager import User
from datetime import datetime
request.state.user = User(
user_id="anonymous",
email="anonymous@localhost",
name="Anonymous User",
picture=None,
provider="none",
created_at=datetime.now(),
last_login=datetime.now(),
)
from session_manager import AnonymousUser
request.state.user = AnonymousUser()
request.state.jwt_token = None # No JWT in no-auth mode
print(f"[DEBUG] Set user_id=anonymous, jwt_token=None")
return await handler(request)
@ -72,15 +65,8 @@ def optional_auth(session_manager):
from session_manager import User
from datetime import datetime
request.state.user = User(
user_id="anonymous",
email="anonymous@localhost",
name="Anonymous User",
picture=None,
provider="none",
created_at=datetime.now(),
last_login=datetime.now(),
)
from session_manager import AnonymousUser
request.state.user = AnonymousUser()
request.state.jwt_token = None # No JWT in no-auth mode
else:
user = get_current_user(request, session_manager)

View file

@ -26,6 +26,19 @@ class User:
if self.last_login is None:
self.last_login = datetime.now()
class AnonymousUser(User):
"""Anonymous user"""
def __init__(self):
super().__init__(
user_id="anonymous",
email="anonymous@localhost",
name="Anonymous User",
picture=None,
provider="none",
)
class SessionManager:
"""Manages user sessions and JWT tokens"""
@ -199,14 +212,5 @@ class SessionManager:
def _create_anonymous_jwt(self) -> str:
"""Create JWT token for anonymous user in no-auth mode"""
anonymous_user = User(
user_id="anonymous",
email="anonymous@localhost",
name="Anonymous User",
picture=None,
provider="none",
created_at=datetime.now(),
last_login=datetime.now(),
)
anonymous_user = AnonymousUser()
return self.create_jwt_token(anonymous_user)