
    ih              	       p    d dl Z d dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 dddd	d
ddddZ G d de
      Zy)    N)List)Document)stringify_dict)
BaseLoaderz2https://core.spreedly.com/v1/gateways_options.jsonz*https://core.spreedly.com/v1/gateways.jsonz3https://core.spreedly.com/v1/receivers_options.jsonz+https://core.spreedly.com/v1/receivers.jsonz1https://core.spreedly.com/v1/payment_methods.jsonz.https://core.spreedly.com/v1/certificates.jsonz.https://core.spreedly.com/v1/transactions.jsonz.https://core.spreedly.com/v1/environments.json)gateways_optionsgatewaysreceivers_options	receiverspayment_methodscertificatestransactionsenvironmentsc                   ^    e Zd ZdZdededdfdZdedee   fdZdee   fd	Z	dee   fd
Z
y)SpreedlyLoaderzLoad from `Spreedly` API.access_tokenresourcereturnNc                 N    || _         || _        d| j                    dd| _        y)zInitialize with an access token and a resource.

        Args:
            access_token: The access token.
            resource: The resource.
        zBearer zapplication/json)AuthorizationAcceptN)r   r   headers)selfr   r   s      k/var/www/html/dev/engine/venv/lib/python3.12/site-packages/langchain_community/document_loaders/spreedly.py__init__zSpreedlyLoader.__init__   s0     ) &t'8'8&9:(
    urlc                 ^   t         j                  j                  || j                        }t         j                  j	                  |      5 }t        j                  |j                         j                               }t        |      }d|i}t        ||      gcd d d        S # 1 sw Y   y xY w)N)r   source)page_contentmetadata)urllibrequestRequestr   urlopenjsonloadsreaddecoder   r   )r   r   r"   response	json_datatextr    s          r   _make_requestzSpreedlyLoader._make_request'   s    ..((dll(C^^##G, 	D

8==?#9#9#;<I!),D #H$BC		D 	D 	Ds   AB##B,c                 j    t         j                  | j                        }|g S | j                  |      S N)SPREEDLY_ENDPOINTSgetr   r,   )r   endpoints     r   _get_resourcezSpreedlyLoader._get_resource0   s2    %))$--8I!!(++r   c                 "    | j                         S r.   )r2   )r   s    r   loadzSpreedlyLoader.load6   s    !!##r   )__name__
__module____qualname____doc__strr   r   r   r,   r2   r4    r   r   r   r      sY    #
S 
C 
D 
D Dh D,tH~ ,$d8n $r   r   )r%   urllib.requestr!   typingr   langchain_core.documentsr   langchain_core.utilsr   )langchain_community.document_loaders.baser   r/   r   r:   r   r   <module>r@      sF       - / @ M<N>JDDD	 !$Z !$r   