§
    æ˜ºhØ  ã                   ó^   — d dl Z d dlZd dlmZmZmZ d dlmZ d dl	m
Z
  G d„ de
¦  «        ZdS )é    N)ÚAnyÚIteratorÚList)ÚDocument)Ú
BaseLoaderc                   óf   — e Zd ZdZdededefd„Zdedefd„Zdee	         fd	„Z
dee	         fd
„ZdS )ÚLarkSuiteDocLoaderz!Load from `LarkSuite` (`FeiShu`).ÚdomainÚaccess_tokenÚdocument_idc                 ó0   — || _         || _        || _        dS )zùInitialize with domain, access_token (tenant / user), and document_id.

        Args:
            domain: The domain to load the LarkSuite.
            access_token: The access_token to use.
            document_id: The document_id to load.
        N)r
   r   r   )Úselfr
   r   r   s       úv/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/langchain_community/document_loaders/larksuite.pyÚ__init__zLarkSuiteDocLoader.__init__   s!   € ð ˆŒØ(ˆÔØ&ˆÔÐÐó    Úapi_urlÚreturnc                 óB  — dd| j         › �i}t          j                             ||¬¦  «        }t          j                             |¦  «        5 }t          j        |                     ¦   «                              ¦   «         ¦  «        }|cddd¦  «         S # 1 swxY w Y   dS )z.Get LarkSuite (FeiShu) API response json data.ÚAuthorizationzBearer )ÚheadersN)	r   ÚurllibÚrequestÚRequestÚurlopenÚjsonÚloadsÚreadÚdecode)r   r   r   r   ÚresponseÚ	json_datas         r   Ú_get_larksuite_api_json_dataz/LarkSuiteDocLoader._get_larksuite_api_json_data   sÏ   € à"Ð$A¨dÔ.?Ð$AÐ$AÐBˆÝ”.×(Ò(¨¸'Ð(ÑBÔBˆÝŒ^×#Ò# GÑ,Ô,ð 	°Ýœ
 8§=¢=¡?¤?×#9Ò#9Ñ#;Ô#;Ñ<Ô<ˆIØð	ð 	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s   Á:BÂBÂBc              #   ó<  K  — | j         › d�}|                      |› d| j        › �¦  «        }|                      |› d| j        › d�¦  «        }|d         d         }| j        |d         d         d         |d         d         d         d	œ}t          ||¬
¦  «        V — dS )z&Lazy load LarkSuite (FeiShu) document.z/open-apis/docx/v1/documentsú/z/raw_contentÚdataÚcontentÚdocumentÚrevision_idÚtitle)r   r'   r(   )Úpage_contentÚmetadataN)r
   r!   r   r   )r   Úapi_url_prefixÚmetadata_jsonÚraw_content_jsonÚtextr*   s         r   Ú	lazy_loadzLarkSuiteDocLoader.lazy_load!   sÖ   è è € à œKÐEÐEÐEˆØ×9Ò9ØÐ2Ð2 Ô 0Ð2Ð2ñ
ô 
ˆð  ×<Ò<ØÐ>Ð> Ô 0Ð>Ð>Ð>ñ
ô 
Ðð   Ô'¨	Ô2ˆàÔ+Ø(¨Ô0°Ô<¸]ÔKØ" 6Ô*¨:Ô6°wÔ?ð
ð 
ˆõ
  D°8Ð<Ñ<Ô<Ð<Ð<Ð<Ð<Ð<r   c                 óD   — t          |                      ¦   «         ¦  «        S )z!Load LarkSuite (FeiShu) document.)Úlistr/   )r   s    r   ÚloadzLarkSuiteDocLoader.load2   s   € å�D—N’NÑ$Ô$Ñ%Ô%Ð%r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   r!   r   r   r/   r   r2   © r   r   r	   r	   
   s¤   € € € € € Ø+Ð+ð
'˜sð 
'°#ð 
'ÀCð 
'ð 
'ð 
'ð 
'ð°Cð ¸Cð ð ð ð ð=˜8 HÔ-ð =ð =ð =ð =ð"&�d˜8”nð &ð &ð &ð &ð &ð &r   r	   )r   Úurllib.requestr   Útypingr   r   r   Úlangchain_core.documentsr   Ú)langchain_community.document_loaders.baser   r	   r8   r   r   ú<module>r=      s�   ðØ €€€Ø Ð Ð Ð Ø &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &à -Ð -Ð -Ð -Ð -Ð -à @Ð @Ð @Ð @Ð @Ð @ð*&ð *&ð *&ð *&ð *&˜ñ *&ô *&ð *&ð *&ð *&r   