o
    z­jÏ  ã                   @   sˆ   d dl Z d dlmZ d dlmZ eeƒ ¡ jd Zej	Z
eed ƒ ee
d dd� eƒ  defd	d
„ZG dd„ dƒZdefdd„ZdS )é    N)ÚPath)Úload_dotenvé   ú.envT©ÚoverrideÚreturnc                   C   s(   t  d¡pd ¡ pt  d¡pd ¡ pdS )NÚGEMINI_API_KEYÚ ÚGOOGLE_API_KEYÚYOUR_GEMINI_API_KEY_NOT_SET)ÚosÚgetenvÚstrip© r   r   ú2/var/www/html/CropPilot/backend/app/core/config.pyÚ_gemini_key   s
   ÿýr   c                   @   s4   e Zd ZU dZdZeed< dZeed< d
dd	„Z	dS )ÚSettingszGInstantiate via get_settings() so values reflect the current .env file.zCropPilot BackendÚPROJECT_NAMEé   ÚMAX_FILE_SIZE_MBr   Nc                 C   sh   t td ƒ t td dd� t ƒ  tƒ | _t d¡pd ¡ | _t d¡p%d ¡ }|r/|| _	d S d| _	d S )	Nr   Tr   ÚGEMINI_MODELzgemini-2.5-flashÚGROQ_API_KEYr
   ÚYOUR_GROQ_API_KEY_NOT_SET)
r   Ú_backend_rootÚ
_repo_rootr   r	   r   r   r   r   r   )ÚselfÚgroqr   r   r   Ú__init__   s   zSettings.__init__)r   N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚstrÚ__annotations__r   Úintr   r   r   r   r   r      s
   
 r   c                   C   s   t ƒ S )zJFresh settings each call so .env edits work without guessing import order.)r   r   r   r   r   Úget_settings)   s   r&   )r   Úpathlibr   Údotenvr   Ú__file__ÚresolveÚparentsr   Úparentr   r#   r   r   r&   r   r   r   r   Ú<module>   s    