o
    œ¨Êhå  ã                   @   sp   d dl Z ddlmZ ddlmZ ddlmZ ddlmZ zddlm	Z
 W n	 ey-   Y nw G d	d
„ d
eƒZdS )é    Né   )ÚKeyringBackend)ÚPasswordSetError)ÚPasswordDeleteError)Ú
propertiesé   )Ú	_OS_X_APIc                   @   s@   e Zd ZdZdZ	 ejedd„ ƒƒZdd„ Z	dd„ Z
d	d
„ ZdS )ÚKeyringzMac OS X KeychainNc                 C   s   t  ¡ dkr
tdƒ‚dS )z6
        Preferred for all OS X environments.
        ÚDarwinzOS X requiredé   )ÚplatformÚsystemÚRuntimeError)Úcls© r   úG/var/www/html/env/lib/python3.10/site-packages/keyring/backends/OS_X.pyÚpriority   s   zKeyring.priorityc                 C   s>   |d u rd}zt  | j|||¡ W d S  t jy   tdƒ‚w )NÚ z Can't store password on keychain)ÚapiÚset_generic_passwordÚkeychainÚErrorr   )ÚselfÚserviceÚusernameÚpasswordr   r   r   Úset_password   s   

ÿÿzKeyring.set_passwordc                 C   s6   |d u rd}z	t  | j||¡W S  t jy   Y d S w )Nr   )r   Úfind_generic_passwordr   ÚNotFound©r   r   r   r   r   r   Úget_password(   s   ÿzKeyring.get_passwordc                 C   s8   |d u rd}z	t  | j||¡W S  t jy   tdƒ‚w )Nr   z!Can't delete password in keychain)r   Údelete_generic_passwordr   r   r   r   r   r   r   Údelete_password1   s   ÿÿzKeyring.delete_password)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   ÚClassPropertyÚclassmethodr   r   r    r"   r   r   r   r   r	      s    
	r	   )r   Úbackendr   Úerrorsr   r   Úutilr   r   r   r   Ú	Exceptionr	   r   r   r   r   Ú<module>   s    ÿ