
    kKj                         d dl Z d dlmZ ddlmZ dZ e j                  dj                  g d      e j                        Z	de
eef   d	dfd
Zy)    N)Any   )InsecureClaimError)passwordtokensecret
secret_keyapi_key|)z1\b(?:3[47]\d|(?:4\d|5[1-5]|65)\d{2}|6011)\d{12}\bzB-----BEGIN[A-Z ]+PRIVATE KEY-----.+-----END[A-Z ]+PRIVATE KEY-----z3^\b(?!(000|666|9))\d{3}-(?!00)\d{2}-(?!0000)\d{4}\bclaimsreturnc                     | D ]K  }|t         v rt        |      | |   }t        |t              s,t        j                  |      sBt        |       y)a  
    Checks for sensitive data within a dictionary of claims and raises an
    error if any sensitive names or values are detected.

    :param claims: JWT claims to check for sensitive data
    :raises InsecureClaimError: if any sensitive names or values are detected
    N)SENSITIVE_NAMESr   
isinstancestrSENSITIVE_VALUESsearch)r   kvs      j/Users/ahmed/devFolder/Ultron/claude-voice/.venv/lib/python3.12/site-packages/joserfc/_rfc7519/security.pycheck_sensitive_datar      sO     $Q'' 1Ia"2"9"9!"<$Q''     )retypingr   errorsr   r   compilejoinDOTALLr   dictr   r    r   r   <module>r!      s\    	  ' K2::II	
	 II (c3h (D (r   