U
    ÔÉ>i>  ã                   @   s2   d dl mZmZ G dd„ dƒZedƒZdd„ ZdS )é    )ÚOptionalÚTuplec                   @   sê   e Zd Zdd„ Zdd„ Zedd„ ƒZedd„ ƒZeed	œd
d„ƒZ	ee
e d	œdd„ƒZeee d	œdd„ƒZedd„ ƒZeed	œdd„ƒZeed	œdd„ƒZeed	œdd„ƒZeed	œdd„ƒZeed	œdd„ƒZeed	œdd„ƒZdS )ÚAppSettingsc                 C   s
   || _ d S ©N)Úprefix)Úselfr   © r   úA/tmp/pip-unpacked-wheel-upujnpc2/allauth/headless/app_settings.pyÚ__init__   s    zAppSettings.__init__c                 C   s   ddl m} || j| |ƒS )Nr   )Úget_setting)Úallauth.utilsr   r   )r   ÚnameZdfltr   r   r   r	   Ú_setting   s    zAppSettings._settingc                 C   s   |   dd¡S )NÚADAPTERz/allauth.headless.adapter.DefaultHeadlessAdapter©r   ©r   r   r   r	   r      s     ÿzAppSettings.ADAPTERc                 C   s&   ddl m} |  dd¡}||ƒ}|ƒ S )Nr   )Úimport_attributeÚTOKEN_STRATEGYz@allauth.headless.tokens.strategies.sessions.SessionTokenStrategy)r   r   r   )r   r   ÚpathÚclsr   r   r	   r      s    þzAppSettings.TOKEN_STRATEGY)Úreturnc                 C   s   |   dd¡S )NÚSERVE_SPECIFICATIONFr   r   r   r   r	   r      s    zAppSettings.SERVE_SPECIFICATIONc                 C   s   |   dd¡S )NÚSPECIFICATION_TEMPLATE_NAMEzheadless/spec/redoc_cdn.htmlr   r   r   r   r	   r   "   s     ÿz'AppSettings.SPECIFICATION_TEMPLATE_NAMEc                 C   s   t |  dd¡ƒS )NÚCLIENTS)ZbrowserZapp)Útupler   r   r   r   r	   r   (   s    zAppSettings.CLIENTSc                 C   s   |   di ¡S )NÚFRONTEND_URLSr   r   r   r   r	   r   ,   s    zAppSettings.FRONTEND_URLSc                 C   s   |   dd¡S )NÚJWT_PRIVATE_KEYÚ r   r   r   r   r	   r   0   s    zAppSettings.JWT_PRIVATE_KEYc                 C   s   |   dd¡S )NÚJWT_ACCESS_TOKEN_EXPIRES_INi,  r   r   r   r   r	   r   4   s    z'AppSettings.JWT_ACCESS_TOKEN_EXPIRES_INc                 C   s   |   dd¡S )NÚJWT_REFRESH_TOKEN_EXPIRES_INi€Q r   r   r   r   r	   r   8   s    z(AppSettings.JWT_REFRESH_TOKEN_EXPIRES_INc                 C   s   dS )NZBearerr   r   r   r   r	   ÚJWT_AUTHORIZATION_HEADER_SCHEME<   s    z+AppSettings.JWT_AUTHORIZATION_HEADER_SCHEMEc                 C   s   |   dd¡S )NÚJWT_STATEFUL_VALIDATION_ENABLEDFr   r   r   r   r	   r!   @   s    z+AppSettings.JWT_STATEFUL_VALIDATION_ENABLEDc                 C   s   |   dd¡S )NÚJWT_ROTATE_REFRESH_TOKENTr   r   r   r   r	   r"   D   s    z$AppSettings.JWT_ROTATE_REFRESH_TOKENN)Ú__name__Ú
__module__Ú__qualname__r
   r   Úpropertyr   r   Úboolr   r   Ústrr   r   r   r   r   Úintr   r   r    r!   r"   r   r   r   r	   r      s4   



r   Z	HEADLESS_c                 C   s
   t t| ƒS r   )ÚgetattrÚ_app_settings)r   r   r   r	   Ú__getattr__L   s    r,   N)Útypingr   r   r   r+   r,   r   r   r   r	   Ú<module>   s   E