Coverage for polar/product/auth.py: 100%
9 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 typing import Annotated
3from fastapi import Depends
5from polar.auth.dependencies import Authenticator
6from polar.auth.models import AuthSubject, Organization, User
7from polar.auth.scope import Scope
9_CreatorProductsRead = Authenticator(
10 required_scopes={
11 Scope.web_read,
12 Scope.web_write,
13 Scope.products_read,
14 Scope.products_write,
15 },
16 allowed_subjects={User, Organization},
17)
18CreatorProductsRead = Annotated[
19 AuthSubject[User | Organization], Depends(_CreatorProductsRead)
20]
22_CreatorProductsWrite = Authenticator(
23 required_scopes={
24 Scope.web_write,
25 Scope.products_write,
26 },
27 allowed_subjects={User, Organization},
28)
29CreatorProductsWrite = Annotated[
30 AuthSubject[User | Organization], Depends(_CreatorProductsWrite)
31]