o
    h\                     @   s   d dl mZ d dlmZ dd ZdddZG dd	 d	eZG d
d deZG dd deZ	G dd deZ
G dd deZG dd deZG dd deZG dd deZG dd deZG dd deZdS )    )APIResponse)app_settingsc                 C   s   dt jt jdi}|S )Nmfa)supported_typespasskey_login_enabled)mfa_settingsSUPPORTED_TYPESPASSKEY_LOGIN_ENABLED)requestdata r   T/var/www/html/pos/venv/lib/python3.10/site-packages/allauth/headless/mfa/response.pyget_config_data   s   r   Fc                 C   s   | j | j | jr| j nd d}| j | jjkr	 |S | j | jjkrA|  }| }|	t
| t
|d |r?||d< |S | j | jjkra|  }| j|d< |j|d< |j}|d ura||d< |S )N)type
created_atlast_used_at)total_code_countunused_code_countunused_codesidnameis_passwordless)r   r   	timestampr   TypeTOTPRECOVERY_CODESwrapget_unused_codesupdatelengenerate_codesWEBAUTHNpkr   r   )authenticator	sensitiver   wrappedr   passwordlessr   r   r   _authenticator_data   s8   	


r'   c                   @      e Zd ZdS )AuthenticatorDeletedResponseN__name__
__module____qualname__r   r   r   r   r)   0       r)   c                   @   r(   )AuthenticatorsDeletedResponseNr*   r   r   r   r   r/   4   r.   r/   c                          e Zd Z fddZ  ZS )TOTPNotFoundResponsec                    s   t  j|||ddd d S )N)secrettotp_url  )metastatussuper__init__)selfr
   r2   r3   	__class__r   r   r9   9   s   
zTOTPNotFoundResponse.__init__r+   r,   r-   r9   __classcell__r   r   r;   r   r1   8       r1   c                       r0   )TOTPResponsec                    s   t |}t j||d d S )Nr   r'   r8   r9   r:   r
   r#   r   r;   r   r   r9   E   s   zTOTPResponse.__init__r=   r   r   r;   r   r@   D   r?   r@   c                       r0   )AuthenticatorsResponsec                    s"   dd |D }t  j||d d S )Nc                 S   s   g | ]}t |qS r   )r'   ).0r#   r   r   r   
<listcomp>L   s    z3AuthenticatorsResponse.__init__.<locals>.<listcomp>rA   r7   )r:   r
   authenticatorsr   r;   r   r   r9   K   s   zAuthenticatorsResponse.__init__r=   r   r   r;   r   rD   J   r?   rD   c                       s   e Zd Zd fdd	Z  ZS )AuthenticatorResponseNc                    s   t |}t j|||d d S )N)r   r5   rB   )r:   r
   r#   r5   r   r;   r   r   r9   Q   s   zAuthenticatorResponse.__init__)Nr=   r   r   r;   r   rH   P   s    rH   c                       r0   )RecoveryCodesNotFoundResponsec                    s   t  j|dd d S )Nr4   )r6   r7   )r:   r
   r;   r   r   r9   W   s   z&RecoveryCodesNotFoundResponse.__init__r=   r   r   r;   r   rI   V   r?   rI   c                       r0   )RecoveryCodesResponsec                    s    t |dd}t j||d d S )NT)r$   rA   rB   rC   r;   r   r   r9   \   s   zRecoveryCodesResponse.__init__r=   r   r   r;   r   rJ   [   r?   rJ   c                       r0   )AddWebAuthnResponsec                       t  j|d|id d S )Ncreation_optionsrA   r7   )r:   r
   registration_datar;   r   r   r9   b      zAddWebAuthnResponse.__init__r=   r   r   r;   r   rK   a   r?   rK   c                       r0   )WebAuthnRequestOptionsResponsec                    rL   )Nrequest_optionsrA   r7   )r:   r
   rQ   r;   r   r   r9   g   rO   z'WebAuthnRequestOptionsResponse.__init__r=   r   r   r;   r   rP   f   r?   rP   N)F)allauth.headless.base.responser   allauth.mfar   r   r   r'   r)   r/   r1   r@   rD   rH   rI   rJ   rK   rP   r   r   r   r   <module>   s    

!