Ë
    ðLqj5  ã                   óÜ  — d dl Z d dlZd dlZd dlZd dlmZ d dlmZmZm	Z	m
Z
mZmZ ej                  dk(  rd dlmZ 	 d dlZddlmZmZmZ dd	lmZ d
ee   fd„Z ej:                  «        ej<                  dd e«        ej>                  d¬«      d¬«       ej<                  ddd ej@                  g d¢«      d¬«       ej<                  dddejB                  d¬«       ejD                  e¬«      ejF                  dejH                  dededed
df
d „«       «       «       «       «       «       Z%ed!ejL                  d
e
e	e      fd"„«       Z'e%jQ                  «       ejF                   ej<                  d#d$ ej@                  g d%¢«      d&¬«      dejH                  d'e)d
dfd(„«       «       «       Z*e%jQ                  «       ejF                   ejV                  d)d¬*«       ejV                  d+d¬*«      dejH                  d)ed+ed
dfd,„«       «       «       «       Z,e%jQ                  «       ejF                   ejV                  d)d¬*«      dejH                  d)ed
dfd-„«       «       «       Z-e%jQ                  «       ejF                   ejV                  d)d¬*«      dejH                  d)ed
dfd.„«       «       «       Z.e%jQ                  d/di¬0«      ejF                   ej<                  d1dd2¬3«       ejV                  d4d5ej^                  ¬6«      dejH                  d7e)d4ee   d
dfd8„«       «       «       «       Z0d9ee   d:eeef   d
dfd;„Z1y# e$ r1 ej$                  j'                  d«        ej(                  d«       Y �Œ)w xY w)<é    N)Úcontextmanager)ÚAnyÚDictÚIOÚIteratorÚListÚOptionalÚwin32)ÚPopenzkIt seems python-dotenv is not installed with cli option. 
Run pip install "python-dotenv[cli]" to fix this.é   )Údotenv_valuesÚset_keyÚ	unset_key)Ú__version__Úreturnc                  óŽ   — 	 t        j                  «       } t         j                  j	                  | d«      }|S # t        $ r Y yw xY w)zZ
    Return a path for the ${pwd}/.env file.

    If pwd does not exist, return None.
    Nz.env)ÚosÚgetcwdÚFileNotFoundErrorÚpathÚjoin)Úcwdr   s     úV/var/www/html/ai-menu-system/python-ai/venv/lib/python3.12/site-packages/dotenv/cli.pyÚenumerate_envr      sA   € ðÜ�i‰i‹kˆô �7‰7�<‰<˜˜VÓ$€DØ€Køô ò Ùðús   ‚8 ¸	AÁAz-fz--fileT)Ú	file_okayzNLocation of the .env file, defaults to .env file in current working directory.)ÚdefaultÚtypeÚhelpz-qz--quoteÚalways)r   ÚneverÚautozbWhether to quote or not the variable values. Default mode is always. This does not affect parsing.z-ez--exportFz;Whether to write the dot file as an executable bash script.)ÚversionÚctxÚfileÚquoteÚexportc                 ó   — |||dœ| _         y)zAThis script is used to set, get or unset values from a .env file.)ÚQUOTEÚEXPORTÚFILEN)Úobj)r#   r$   r%   r&   s       r   Úclir,   $   s   € ð ¨¸Ñ>€C…Gó    r   c              #   óÔ   K  — 	 t        | «      5 }|–— ddd«       y# 1 sw Y   yxY w# t        $ r3}t        d|› �t        j                  ¬«       t        d«       Y d}~yd}~ww xY w­w)z~
    Open a file and yield the corresponding (decoded) stream.

    Exits with error code 2 if the file cannot be opened.
    NzError opening env file: )r$   é   )ÚopenÚOSErrorÚprintÚsysÚstderrÚexit)r   ÚstreamÚexcs      r   Ústream_filer8   5   s[   è ø€ ðÜ�$‹Zð 	˜6ØŠL÷	÷ 	ñ 	ûäò ÜÐ(¨¨Ð.´S·Z±ZÕ@ÜˆQ�‰ûðüsC   ‚A(„) �”) œA(�&¢) ¥A(¦) ©	A%²)A ÁA(Á A%Á%A(z--formatÚsimple)r9   ÚjsonÚshellr&   zlThe format in which to display the list. Default format is simple, which displays name=value without quotes.Úformatc                 óˆ  — | j                   d   }t        |«      5 }t        |¬«      }ddd«       |dk(  r,t        j                  t        j                  dd¬«      «       y|dk(  rd	nd
}t        «      D ]?  }||   }|€Œ|dv rt        j                  |«      }t        j                  |› |› d|› �«       ŒA y# 1 sw Y   Œ‘xY w)z!Display all the stored key/value.r*   ©r6   Nr:   r/   T)ÚindentÚ	sort_keysr&   zexport Ú )r&   r;   ú=)
r+   r8   r   ÚclickÚechor:   ÚdumpsÚsortedÚshlexr%   )r#   r<   r$   r6   ÚvaluesÚprefixÚkÚvs           r   ÚlistrL   E   s½   € ð �7‰7�6‰?€Dä	�TÓ	ð .˜fÜ fÔ-ˆ÷.ð �ÒÜ�
‰
”4—:‘:˜f¨Q¸$Ô?Õ@à$¨Ò0‘°bˆÜ˜“ò 	/ˆAØ�q‘	ˆAØ‰}ØÐ0Ñ0ÜŸ™ A›�AÜ—
‘
˜f˜X a S¨¨!¨Ð-Õ.ñ	/÷.ð .ús   ›B8Â8CÚkey)ÚrequiredÚvaluec                 óÔ   — | j                   d   }| j                   d   }| j                   d   }t        |||||«      \  }}}|rt        j                  |› d|› �«       yt	        d«       y)zStore the given key/value.r*   r(   r)   rB   r   N)r+   r   rC   rD   r5   )r#   rM   rO   r$   r%   r&   Úsuccesss          r   ÚsetrR   ^   sg   € ð �7‰7�6‰?€DØ�G‰G�GÑ€EØ�W‰W�XÑ€FÜ! $¨¨U°E¸6ÓBÑ€GˆS�%ÙÜ�
‰
�c�U˜!˜E˜7Ð#Õ$äˆQ�r-   c                 óâ   — | j                   d   }t        |«      5 }t        |¬«      }ddd«       j                  |«      }|rt	        j
                  |«       yt        d«       y# 1 sw Y   Œ>xY w)z%Retrieve the value for the given key.r*   r>   Nr   )r+   r8   r   ÚgetrC   rD   r5   )r#   rM   r$   r6   rH   Ústored_values         r   rT   rT   n   s_   € ð
 �7‰7�6‰?€Dä	�TÓ	ð .˜fÜ fÔ-ˆ÷.ð —:‘:˜c“?€LÙÜ�
‰
�<Õ äˆQ�÷.ð .ús   ›A%Á%A.c                 ó¬   — | j                   d   }| j                   d   }t        |||«      \  }}|rt        j                  d|› �«       yt	        d«       y)zRemoves the given key.r*   r(   zSuccessfully removed r   N)r+   r   rC   rD   r5   )r#   rM   r$   r%   rQ   s        r   ÚunsetrW      sO   € ð
 �7‰7�6‰?€DØ�G‰G�GÑ€EÜ˜T 3¨Ó.�L€GˆSÙÜ�
‰
Ð*¨3¨%Ð0Õ1äˆQ�r-   Úignore_unknown_options)Úcontext_settingsz--override/--no-overridezKOverride variables from the environment file with those from the .env file.)r   r   Úcommandlineéÿÿÿÿ)Únargsr   Úoverridec                 ó‚  — | j                   d   }t        j                  j                  |«      st	        j
                  d|› d�| ¬«      ‚t        |«      j                  «       D ��ci c]  \  }}|�|s|t        j                  vr||“Œ  }}}|s t	        j                  d«       t        d«       t        ||«       yc c}}w )z/Run command with environment variables present.r*   zInvalid value for '-f' "z" does not exist.)r#   NzNo command given.r   )r+   r   r   ÚisfilerC   ÚBadParameterr   ÚitemsÚenvironrD   r5   Úrun_command)r#   r]   rZ   r$   rJ   rK   Údotenv_as_dicts          r   Úrunre   �   s³   € ð �7‰7�6‰?€DÜ�7‰7�>‰>˜$ÔÜ× Ñ Ø(¨¨Ð.?Ð@Øô
ð 	
ô $ DÓ)×/Ñ/Ó1÷áˆQ�Øˆ=™h¨!´2·:±:Ñ*=ð 	
ˆ1‰ð€Nñ ñ Ü�
‰
Ð&Ô'ÜˆQŒÜ�˜^Õ,ùós   Á&#B;ÚcommandÚenvc                 ó0  — t         j                  j                  «       }|j                  |«       t        j
                  dk(  r9t        | ddd|¬«      }|j                  «       \  }}t        |j                  «       yt        j                  | d   | |¬«       y)aå  Replace the current process with the specified command.

    Replaces the current process with the specified command and the variables from `env`
    added in the current environment variables.

    Parameters
    ----------
    command: List[str]
        The command and it's parameters
    env: Dict
        The additional environment variables

    Returns
    -------
    None
        This function does not return any value. It replaces the current process with the new one.

    r
   Tr   F)Úuniversal_newlinesÚbufsizer;   rg   )Úargsrg   N)r   rb   ÚcopyÚupdater3   Úplatformr   Úcommunicater5   Ú
returncodeÚexecvpe)rf   rg   Úcmd_envÚpÚ_s        r   rc   rc   ©   sw   € ô* �j‰j�o‰oÓ€GØ‡N�N�3Ôä
‡|�|�wÒô �'Ø%)ØØØô	ˆð
 �}‰}‹‰ˆˆ1äˆQ�\‰\Õä
�
‰
�7˜1‘: G°Ö9r-   )2r:   r   rG   r3   Ú
contextlibr   Útypingr   r   r   r   r   r	   rn   Ú
subprocessr   rC   ÚImportErrorr4   Úwriter5   Úmainr   r   r   r"   r   Ústrr   ÚgroupÚoptionÚPathÚChoiceÚBOOLÚversion_optionÚpass_contextÚContextr,   ÚPathLiker8   rf   ÚboolrL   ÚargumentrR   rT   rW   ÚUNPROCESSEDre   rc   © r-   r   ú<module>r‰      så  ðÛ Û 	Û Û 
Ý %ß :× :à‡<�<�7ÒÝ ðÛ÷ 4Ñ 3Ý  ð�x ‘}ó ð €‡�ƒØ€‡�ˆd�H¡m£oØ�5—:‘:¨Ô-Øcôeð €‡�ˆd�I xØ�5—<‘<Ò ;Ó<Øwôyð €‡�ˆd�J¨Ø—:‘:ØPôRð €×Ñ˜kÔ*Ø×Ñð?ˆU�]‰]ð ? #ð ?¨cð ?¸3ð ?À4ò ?ó ó +óRóyóeó ð?ð
 ð�b—k‘kð  h¨r°#©wÑ&7ò ó ðð ‡�ƒØ×ÑØ€‡�ˆj (Ø�5—<‘<Ò EÓFð?ô@ð/ˆe�m‰mð / Tð /¨dò /ó	@ó ó ð/ð& ‡�ƒØ×ÑØ€‡�� Ô%Ø€‡�� $Ô'ð	ˆU�]‰]ð 	 ð 	¨Sð 	°Tò 	ó (ó &ó ó ð	ð ‡�ƒØ×ÑØ€‡�� Ô%ðˆU�]‰]ð  ð ¨ò ó &ó ó ðð ‡�ƒØ×ÑØ€‡�� Ô%ðˆu�}‰}ð  3ð ¨4ò ó &ó ó ðð ‡�Ð7¸Ð>€Ó?Ø×ÑØ€‡�ØØØ	Vôð
 €‡�� R¨e×.?Ñ.?Ô@ð-ˆU�]‰]ð - dð -¸¸c¹ð -Àtò -ó Aóó ó @ð-ð($:˜˜c™ð $:¨¨c°3¨h©ð $:¸Dô $:øðy ò Ø‡J�J×Ñð Iô Jà€C‡H�HˆQ‡Kðús   ½L5 Ì52M+Í*M+