Coverage for polar/login_code/schemas.py: 93%
15 statements
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 17:15 +0000
« prev ^ index » next coverage.py v7.10.6, created at 2025-12-05 17:15 +0000
1from pydantic import field_validator 1a
3from polar.kit.email import EmailStrDNS 1a
4from polar.kit.http import get_safe_return_url 1a
5from polar.kit.schemas import Schema 1a
6from polar.user.schemas import UserSignupAttribution 1a
9class LoginCodeRequest(Schema): 1a
10 email: EmailStrDNS 1a
11 return_to: str | None = None 1a
12 attribution: UserSignupAttribution | None = None 1a
14 @field_validator("return_to") 1a
15 @classmethod 1a
16 def validate_return_to(cls, v: str | None) -> str: 1a
17 return get_safe_return_url(v)
20class LoginCodeAuthenticate(Schema): 1a
21 code: str 1a