Team Ai
Apppublic

ruby2210/todo-manager

sourceHugging Facemitupdated 9mo agoView on Hugging Face
0likes
utils.cpython-311.pyc22 linesDownload Raw Back to __pycache__
1�

21�mi�����ddlmZmZddlZddlmZddlmZmZddlm	Z	ddl3mZddlm
Z
ddlmZmZddlZd	ed4eefd�Zd	ed5eefd�Zdd
edeefd�Zdeded6efd�Zded7efd�ZdS)�)�datetime�	timedeltaN)�Optional)�JWTError�jwt)�settings)�Session)�Task)�
HTTPException�status�token�returnc���	tj|tjtjg���}|�d��}|r|t
j��krdS|S#t$rYdSt$rYdSwxYw)zL8    Verify JWT token from Better Auth using shared BETTER_AUTH_SECRET.9    )�10algorithms�expN)	r�decoder�BETTER_AUTH_SECRET�
JWT_ALGORITHM�get�timer�	Exception)r
�payloadrs   �WC:\Users\Dell\OneDrive\Desktop\final-todo\full-stack-todo-app\backend\src\auth\utils.py�verify_tokenrs�����*��8�.�H�<R�;S�11�12�13��14�k�k�%� � ���	�3�����$�$��4���������t�t������t�t����s�AA �A � 15A:�-	A:�9A:c��t|��}|r,|�d��p|�d��}|SdS)z)16    Extract user ID from JWT token.17    �sub�user_idN)rr)r
rrs   r�get_current_user_idr!sE���5�!�!�G����+�+�e�$�$�>����I�(>�(>�����4��data�
expires_deltac�0�|���}tj��}|r||���z}n|tjdzz}|�d|i��t
j|tjtj	���}|S)z18    Create access token.19    �<r)�	algorithm)20�copyr�
total_secondsr�ACCESS_TOKEN_EXPIRE_MINUTES�updater�encoderr)r r!�	to_encode�now�expire�encoded_jwts      r�create_access_tokenr.-s����	�	���I�21�)�+�+�C��C��}�2�2�4�4�4�����<�r�A�B��
���e�V�_�%�%�%��*��8�.�(�:P����K��r�plain_password�hashed_passwordc�x�tj|�d��|�d����S�Nzutf-8)�bcrypt�checkpwr))r/r0s  r�verify_passwordr5?s7���>����g�&�&��(>�(>�w�(G�(G���r�passwordc��tj|�d��tj�����d��Sr2)r3�hashpwr)�gensaltr)r6s r�get_password_hashr:Es6���=�����1�1�6�>�3C�3C�D�D�K�K�G�T�T�Tr)N)rrr�typingr�joserr�src.core.configr�sqlmodelr	�src.models.taskr22�fastapirrr3�str�dictrrr.�boolr5r:�rr�<module>rEs|��(�(�(�(�(�(�(�(�������������������$�$�$�$�$�$������� � � � � � �)�)�)�)�)�)�)�)�
�
�
�
�����������*	�s�	�x��}�	�	�	�	���d��8�I�3F�����$�C��#��$�����U��U��U�U�U�U�U�Ur