a
    bg	                     @   sp   d dl mZmZ d dlmZ d dlmZ d dlmZm	Z	m
Z
mZmZ d dlmZ d dlmZ G dd deZd	S )
    )DictList)BaseTool)BaseToolkit)JIRA_CATCH_ALL_PROMPT"JIRA_CONFLUENCE_PAGE_CREATE_PROMPTJIRA_GET_ALL_PROJECTS_PROMPTJIRA_ISSUE_CREATE_PROMPTJIRA_JQL_PROMPT
JiraAction)JiraAPIWrapperc                   @   sH   e Zd ZU dZg Zee ed< ee	d dddZ
ee dddZd	S )
JiraToolkitaz  Jira Toolkit.

    *Security Note*: This toolkit contains tools that can read and modify
        the state of a service; e.g., by creating, deleting, or updating,
        reading underlying data.

        See https://python.langchain.com/docs/security for more information.

    Parameters:
        tools: List[BaseTool]. The tools in the toolkit. Default is an empty list.
    tools)jira_api_wrapperreturnc                    sR   ddt dddtdddtddd	tdd
dtdg} fdd|D }| |dS )zCreate a JiraToolkit from a JiraAPIWrapper.

        Args:
            jira_api_wrapper: JiraAPIWrapper. The Jira API wrapper.

        Returns:
            JiraToolkit. The Jira toolkit.
        Zjqlz	JQL Query)modenamedescriptionZget_projectszGet ProjectsZcreate_issuezCreate IssueotherzCatch all Jira API callZcreate_pagezCreate confluence pagec                    s(   g | ] }t |d  |d |d  dqS )r   r   r   )r   r   r   Zapi_wrapperr   ).0actionr    }/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/langchain_community/agent_toolkits/jira/toolkit.py
<listcomp>F   s   z5JiraToolkit.from_jira_api_wrapper.<locals>.<listcomp>r   )r
   r   r	   r   r   )clsr   
operationsr   r   r   r   from_jira_api_wrapper    s2    
	z!JiraToolkit.from_jira_api_wrapper)r   c                 C   s   | j S )zGet the tools in the toolkit.r   )selfr   r   r   	get_toolsQ   s    zJiraToolkit.get_toolsN)__name__
__module____qualname____doc__r   r   r   __annotations__classmethodr   r   r!   r   r   r   r   r      s
   
0r   N)typingr   r   Zlangchain_core.toolsr   Zlangchain_core.tools.baser   Z%langchain_community.tools.jira.promptr   r   r   r	   r
   Z#langchain_community.tools.jira.toolr   Z"langchain_community.utilities.jirar   r   r   r   r   r   <module>   s   