
    k7i                     2    S SK Jr  S SKJr   " S S\5      rg)    )InvalidClaimError)	JWTClaimsc                      ^  \ rS rSr\R
                  / SQ-   rU 4S jrS rS rS r	S r
S rS	 rS
 rS rS rSrU =r$ )JWTAccessTokenClaims   )	client_id	auth_timeacramrscopegroupsrolesentitlementsc                 F  > U R                  5         [        TU ]  " S0 UD6  U R                  5         U R	                  5         U R                  5         U R                  5         U R                  5         U R                  5         U R                  5         U R                  5         g )N )validate_typsupervalidatevalidate_client_idvalidate_auth_timevalidate_acrvalidate_amrvalidate_scopevalidate_groupsvalidate_rolesvalidate_entitlements)selfkwargs	__class__s     W/home/james-whalen/.local/lib/python3.13/site-packages/authlib/oauth2/rfc9068/claims.pyr   JWTAccessTokenClaims.validate   s    "6"!!""$    c                     U R                   R                  S5      nU(       a   UR                  5       S;  a  [        S5      eg g )Ntyp)zat+jwtzapplication/at+jwt)headergetlowerr   )r   r$   s     r    r   !JWTAccessTokenClaims.validate_typ   s:     kkooe$399;&FF#E** G3r"   c                 $    U R                  S5      $ )Nr   _validate_claim_valuer   s    r    r   'JWTAccessTokenClaims.validate_client_id&   s    ))+66r"   c                     U R                  S5      nU(       a'  [        U[        [        45      (       d  [	        S5      eg g )Nr	   )r&   
isinstanceintfloatr   )r   r	   s     r    r   'JWTAccessTokenClaims.validate_auth_time)   s6    HH[)	Z	C<@@#K00 A9r"   c                 $    U R                  S5      $ )Nr
   r*   r,   s    r    r   !JWTAccessTokenClaims.validate_acr.   s    ))%00r"   c                 |    U R                  S5      nU(       a$  [        U S   [        5      (       d  [        S5      eg g )Nr   )r&   r/   listr   )r   r   s     r    r   !JWTAccessTokenClaims.validate_amr1   s4    hhuoz$u+t44#E** 53r"   c                 $    U R                  S5      $ )Nr   r*   r,   s    r    r   #JWTAccessTokenClaims.validate_scope6       ))'22r"   c                 $    U R                  S5      $ )Nr   r*   r,   s    r    r   $JWTAccessTokenClaims.validate_groups9   s    ))(33r"   c                 $    U R                  S5      $ )Nr   r*   r,   s    r    r   #JWTAccessTokenClaims.validate_roles<   r:   r"   c                 $    U R                  S5      $ )Nr   r*   r,   s    r    r   *JWTAccessTokenClaims.validate_entitlements?   s    )).99r"   r   )__name__
__module____qualname____firstlineno__r   REGISTERED_CLAIMSr   r   r   r   r   r   r   r   r   r   __static_attributes____classcell__)r   s   @r    r   r      sP    !33 	7 	%+71
1+
343: :r"   r   N)authlib.jose.errorsr   authlib.jose.rfc7519r   r   r   r"   r    <module>rJ      s    1 *;:9 ;:r"   