o
    yi                     @   sN   d dl mZ d dlmZ ddlmZmZ eree ZneZG dd deZdS )    )UserList)TYPE_CHECKING   )AbstractJWKBasejwk_from_dictc                   @   s,   e Zd Zd	ddZd
ddZedd ZdS )JWKSetNc                    sX    rr fdd| j D S  r fdd| j D S r'fdd| j D S | j  S )Nc                    s(   g | ]}|  kr|  kr|qS  )get_ktyget_kid.0keykidktyr   j/var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/env/lib/python3.10/site-packages/jwt/jwkset.py
<listcomp>'   s
    z&JWKSet.filter_keys.<locals>.<listcomp>c                       g | ]
}|   kr|qS r   )r
   r   )r   r   r   r   -       c                    r   r   )r	   r   )r   r   r   r   /   r   )datacopy)selfr   r   r   r   r   filter_keys   s   
zJWKSet.filter_keysTc                    s    fdd| j D }d|iS )Nc                    s   g | ]}|j  d qS )public_only)to_dictr   r   r   r   r   4   s    z"JWKSet.to_dict.<locals>.<listcomp>keys)r   )r   r   r   r   r   r   r   3   s   zJWKSet.to_dictc                 C   s   dd | dg D }| |S )Nc                 S   s   g | ]}t |qS r   )r   )r   key_dctr   r   r   r   9   s    z$JWKSet.from_dict.<locals>.<listcomp>r   )get)clsdctr   r   r   r   	from_dict7   s   zJWKSet.from_dict)NN)T)__name__
__module____qualname__r   r   classmethodr!   r   r   r   r   r      s
    

r   N)	collectionsr   typingr   jwkr   r   UserListBaser   r   r   r   r   <module>   s   
