Ë
    uPêj¥  ã                   ól   — d Z ddlmZmZmZ ddlmZ ddlmZ ddl	m
Z
 erddlmZ  G d„ dee   «      Zy	)
zO
Organization repository for database operations on LiteLLM_OrganizationTable.
é    )ÚTYPE_CHECKINGÚAnyÚFinal©ÚLiteLLM_OrganizationTable)ÚBaseRepository)ÚTableActions)Úmodelsc                   óz  ‡ — e Zd ZdZeded   fd„«       Zedee   fd„«       Z		 dde
de
dedz  fˆ fd	„Zd
e
dedz  fd„Z	 	 	 	 dd
e
de
de
de
dz  dee
ef   dz  dee
   dz  de
dz  defd„Z	 	 	 	 	 dde
de
d
e
dz  de
dz  dee
ef   dz  dee
   dz  de
dz  dedz  fd„Zde
dedz  fd„Zde
dededz  fd„Zˆ xZS )ÚOrganizationRepositoryz0Repository for organization database operations.Úreturnz'prisma_models.LiteLLM_OrganizationTablec                 óB   — | j                   j                  j                  S ©N)Úprisma_clientÚdbÚlitellm_organizationtable©Úselfs    úq/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/litellm/repositories/organization_repository.pyÚtablezOrganizationRepository.table   s   € à×!Ñ!×$Ñ$×>Ñ>Ð>ó    c                 ó   — t         S r   r   r   s    r   Úmodel_classz"OrganizationRepository.model_class   s   € ä(Ð(r   Úorganization_idÚid_fieldNc              ƒ   ó@   •K  — t         ‰| �  ||«      ƒ d {  –—† S 7 Œ­wr   )ÚsuperÚ
find_by_id)r   r   r   Ú	__class__s      €r   r   z!OrganizationRepository.find_by_id   s!   øè ø€ ô ‘WÑ'¨¸ÓB×BÐBÐBús   ƒ—˜Úorganization_aliasc              ƒ   óX   K  — | j                  d|i¬«      ƒ d{  –—† }|r|d   S dS 7 Œ­w)zFind an organization by alias.r    )ÚwhereNr   )Ú	find_many)r   r    Úorganizationss      r   Úfind_by_aliasz$OrganizationRepository.find_by_alias   s8   è ø€ à%)§^¡^Ð;OÐQcÐ:d ^Ó%e×eˆÙ#0ˆ}˜QÑÐ:°dÐ:ð  fús   ‚*š(›*Ú	budget_idÚ
created_byÚmetadatar
   Úobject_permission_idc              ƒ   ó†   K  — ||||dœ}|�||d<   |�||d<   |�||d<   |�||d<   | j                  |«      ƒ d{  –—† S 7 Œ­w)zCreate a new organization.)r    r&   r'   Ú
updated_byNr   r(   r
   r)   )Úcreate)	r   r    r&   r'   r   r(   r
   r)   Údatas	            r   Úcreate_organizationz*OrganizationRepository.create_organization$   ss   è ø€ ð #5Ø"Ø$Ø$ñ	'
ˆð Ð&Ø&5ˆDÐ"Ñ#ØÐØ'ˆD�ÑØÐØ#ˆD�‰NØÐ+Ø+?ˆDÐ'Ñ(à—[‘[ Ó&×&Ð&Ð&ús   ‚8Aº?»Ar+   c              ƒ   ó”   K  — d|i}|�||d<   |�||d<   |�||d<   |�||d<   |�||d<   | j                  ||d¬	«      ƒ d{  –—† S 7 Œ­w)
zUpdate an organization.r+   Nr    r&   r(   r
   r)   r   ©r   ©Úupdate)	r   r   r+   r    r&   r(   r
   r)   r-   s	            r   Úupdate_organizationz*OrganizationRepository.update_organization@   s   è ø€ ð (4°ZÐ&@ˆØÐ)Ø);ˆDÐ%Ñ&ØÐ Ø )ˆD�ÑØÐØ'ˆD�ÑØÐØ#ˆD�‰NØÐ+Ø+?ˆDÐ'Ñ(à—[‘[ °$ÐAR�[ÓS×SÐSÐSús   ‚?AÁAÁAc              ƒ   óD   K  — | j                  |d¬«      ƒ d{  –—† S 7 Œ­w)zDelete an organization.r   r0   N)Údelete)r   r   s     r   Údelete_organizationz*OrganizationRepository.delete_organizationY   s    è ø€ à—[‘[ Ð;L�[ÓM×MÐMÐMús   ‚ ™š Úspendc              ƒ   óJ   K  — | j                  |d|id¬«      ƒ d{  –—† S 7 Œ­w)zUpdate organization spend.r7   r   r0   Nr1   )r   r   r7   s      r   Úupdate_spendz#OrganizationRepository.update_spend]   s'   è ø€ à—[‘[ °7¸EÐ2BÐM^�[Ó_×_Ð_Ð_ús   ‚#œ!�#)r   )NNNN)NNNNN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Úpropertyr	   r   Útyper   r   Ústrr   r%   Údictr   Úlistr.   r3   r6   Úfloatr9   Ú__classcell__)r   s   @r   r   r      sâ  ø„ Ù:àð?�|Ð$MÑNò ?ó ð?ð ð)˜TÐ";Ñ<ò )ó ð)ð 5FñCØ"ðCØ.1ðCà	" TÑ	)õCð
;°cð ;Ð>WÐZ^Ñ>^ó ;ð '+Ø*.Ø#'Ø+/ñ'àð'ð ð'ð ð	'ð
 ˜t™ð'ð �s˜C�x‘. 4Ñ'ð'ð �S‘	˜DÑ ð'ð " D™jð'ð 
#ó'ð@ *.Ø $Ø*.Ø#'Ø+/ñTàðTð ðTð   $™Jð	Tð
 ˜‘:ðTð �s˜C�x‘. 4Ñ'ðTð �S‘	˜DÑ ðTð " D™jðTð 
# TÑ	)óTð2N¸ð NÐAZÐ]aÑAaó Nð`°#ð `¸eð `ÐHaÐdhÑHh÷ `r   r   N)r=   Útypingr   r   r   Úlitellm.models.organizationr   Ú$litellm.repositories.base_repositoryr   Ú%litellm.repositories.prisma_protocolsr	   Úprismar
   Úprisma_modelsr   © r   r   ú<module>rL      s7   ðñ÷ -Ñ ,å AÝ ?Ý >áÝ.ôP`˜^Ð,EÑFõ P`r   