Coverage for polar/oauth2/constants.py: 100%
17 statements
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-07 12:42 +0000
« prev ^ index » next coverage.py v7.15.2, created at 2026-10-07 12:42 +0000
1from polar.config import settings
3from .sub_type import SubType
5CLIENT_ID_PREFIX = "polar_ci_"
6CLIENT_SECRET_PREFIX = "polar_cs_"
7CLIENT_REGISTRATION_TOKEN_PREFIX = "polar_crt_"
8AUTHORIZATION_CODE_PREFIX = "polar_ac_"
9ACCESS_TOKEN_PREFIX: dict[SubType, str] = {
10 SubType.user: "polar_at_u_",
11 SubType.organization: "polar_at_o_",
12}
13REFRESH_TOKEN_PREFIX: dict[SubType, str] = {
14 SubType.user: "polar_rt_u_",
15 SubType.organization: "polar_rt_o_",
16}
17WEBHOOK_SECRET_PREFIX = "polar_whs_"
19ISSUER = "https://polar.sh"
20SERVICE_DOCUMENTATION = "https://polar.sh/docs"
21SUBJECT_TYPES_SUPPORTED = ["public"]
22ID_TOKEN_SIGNING_ALG_VALUES_SUPPORTED = ["RS256"]
23CLAIMS_SUPPORTED = ["sub", "name", "email", "email_verified"]
25JWT_CONFIG = {
26 "key": settings.JWKS.find_by_kid(settings.CURRENT_JWK_KID),
27 "alg": "RS256",
28 "iss": ISSUER,
29 "exp": 3600,
30}
33def is_registration_token_prefix(value: str) -> bool:
34 return value.startswith(CLIENT_REGISTRATION_TOKEN_PREFIX)