o
    Zhf	                     @   s`   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 ddlmZ G dd	 d	eZd
S )z[DEPRECATED] Zapier Toolkit.    )List)warn_deprecated)BaseTool)BaseToolkitZapierNLARunAction)ZapierNLAWrapperc                   @   s`   e Zd ZU dZg Zee ed< ede	dd fddZ
ede	dd fddZdee fd	d
ZdS )ZapierToolkitzxZapier Toolkit.

    Parameters:
        tools: List[BaseTool]. The tools in the toolkit. Default is an empty list.
    toolszapier_nla_wrapperreturnc                    s$      } fdd|D }| |dS )zCreate a toolkit from a ZapierNLAWrapper.

        Args:
            zapier_nla_wrapper: ZapierNLAWrapper. The Zapier NLA wrapper.

        Returns:
            ZapierToolkit. The Zapier toolkit.
        c                    (   g | ]}t |d  |d |d  dqS iddescriptionparams)Z	action_idZzapier_descriptionZparams_schemaZapi_wrapperr   .0actionr    h/var/www/html/lang_env/lib/python3.10/site-packages/langchain_community/agent_toolkits/zapier/toolkit.py
<listcomp>#       z9ZapierToolkit.from_zapier_nla_wrapper.<locals>.<listcomp>r
   )listclsr   actionsr
   r   r   r   from_zapier_nla_wrapper   s
   

	z%ZapierToolkit.from_zapier_nla_wrapperc                    s,      I dH } fdd|D }| |dS )zAsync create a toolkit from a ZapierNLAWrapper.

        Args:
            zapier_nla_wrapper: ZapierNLAWrapper. The Zapier NLA wrapper.

        Returns:
            ZapierToolkit. The Zapier toolkit.
        Nc                    r   r   r   r   r   r   r   r   ;   r   z?ZapierToolkit.async_from_zapier_nla_wrapper.<locals>.<listcomp>r   )alistr   r   r   r   async_from_zapier_nla_wrapper.   s   

	z+ZapierToolkit.async_from_zapier_nla_wrapperc                 C   s   t ddd | jS )zGet the tools in the toolkit.z0.0.319z\This tool will be deprecated on 2023-11-17. See <https://nla.zapier.com/sunset/> for details)Zsincemessage)r   r
   )selfr   r   r   	get_toolsF   s
   zZapierToolkit.get_toolsN)__name__
__module____qualname____doc__r
   r   r   __annotations__classmethodr   r   r!   r$   r   r   r   r   r	      s    
 r	   N)r(   typingr   Zlangchain_core._apir   Zlangchain_core.toolsr   Zlangchain_core.tools.baser   Z%langchain_community.tools.zapier.toolr   Z$langchain_community.utilities.zapierr   r	   r   r   r   r   <module>   s    