
    Ng                     |    d dl Z d dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
 d dlmZ dddd	d
ddZ G d de          ZdS )    N)ListOptional)Document)get_from_envstringify_dict)
BaseLoaderz.https://api.stripe.com/v1/balance_transactionsz!https://api.stripe.com/v1/chargesz#https://api.stripe.com/v1/customersz https://api.stripe.com/v1/eventsz!https://api.stripe.com/v1/refundsz"https://api.stripe.com/v1/disputes)balance_transactionscharges	customerseventsrefundsdisputesc                       e Zd ZdZddede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dS )StripeLoaderzLoad from `Stripe` API.Nresourceaccess_tokenreturnc                 P    || _         |pt          dd          }dd| i| _        dS )zInitialize with a resource and an access token.

        Args:
            resource: The resource.
            access_token: The access token.
        r   STRIPE_ACCESS_TOKENAuthorizationzBearer N)r   r   headers)selfr   r   s      g/var/www/html/ai-engine/env/lib/python3.11/site-packages/langchain_community/document_loaders/stripe.py__init__zStripeLoader.__init__   sB     !# 
|1(
 (
 ()A<)A)AB    urlc                 z   t           j                            || j                  }t           j                            |          5 }t          j        |                                                                          }t          |          }d|i}t          ||          gcd d d            S # 1 swxY w Y   d S )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StripeLoader._make_request$   s    .((dl(CC^##G,, 	D
8==??#9#9#;#;<<I!),,D #H$BBBC		D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	D 	Ds   AB00B47B4c                 r    t                               | j                  }|g S |                     |          S N)STRIPE_ENDPOINTSgetr   r,   )r   endpoints     r   _get_resourcezStripeLoader._get_resource-   s6    #''66I!!(+++r   c                 *    |                                  S r.   )r2   )r   s    r   loadzStripeLoader.load3   s    !!###r   r.   )__name__
__module____qualname____doc__strr   r   r   r   r,   r2   r4    r   r   r   r      s        !!C C CHSM CT C C C CD Dh D D D D,tH~ , , , ,$d8n $ $ $ $ $ $r   r   )r%   urllib.requestr!   typingr   r   langchain_core.documentsr   langchain_core.utilsr   r   )langchain_community.document_loaders.baser   r/   r   r:   r   r   <module>r@      s         ! ! ! ! ! ! ! ! - - - - - - = = = = = = = = @ @ @ @ @ @ M26024   $  $  $  $  $:  $  $  $  $  $r   