o
    h                     @   sx   d dl mZ d dlmZmZmZ d dlmZ d dlm	Z	 d dl
mZ d dlmZmZ G dd de	ZG d	d
 d
eZdS )    )
HTTPStatus)AnyDictOptional)	ErrorList)JsonResponse)add_never_cache_headers)authkit
sessionkitc                       sP   e Zd Zdddejfdee def fddZdee dee fddZ	  Z
S )	APIResponseNmetastatusc                    s\   d|i}|d ur||d< |  ||}|d ur||d< |r ||d< t j||d t|  d S )Nr   datar   errors)r   )_add_session_metasuper__init__r   )selfrequestr   r   r   r   d	__class__ a/var/www/html/pos/venv/lib/python3.10/site-packages/allauth/headless/internal/restkit/response.pyr      s   zAPIResponse.__init__returnc                 C   sB   t |}t|}|r|pi }||d< |r|pi }|| |S )Nsession_token)r
   expose_session_tokenr	   expose_access_tokenupdate)r   r   r   r   access_token_payloadr   r   r   r      s   


zAPIResponse._add_session_meta)__name__
__module____qualname__r   OKr   r   intr   r   __classcell__r   r   r   r   r      s    "r   c                       s   e Zd Zd fdd	Z  ZS )ErrorResponseN  c           
         s   g }|d urt |j }|| |d ur6|j D ]\}}| }|D ]
}	|dkr/||	d< q%|| qt j|||d d S )N__all__param)r   r   )r   
error_listget_json_dataextendr   itemsr   r   )
r   r   	exceptioninputr   r   error_datasfieldr*   
error_datar   r   r   r   ,   s   
zErrorResponse.__init__)NNr'   )r    r!   r"   r   r%   r   r   r   r   r&   +   s    r&   N)httpr   typingr   r   r   django.forms.utilsr   django.httpr   django.utils.cacher   allauth.headless.internalr	   r
   r   r&   r   r   r   r   <module>   s     