File size: 1,804 Bytes
4ad5efa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import gradio as gr
import logging

logger = logging.getLogger("jira_assistant_interface")

def test_jira_connection_handler(url, username, api_token, app):
    if not url or not username or not api_token:
        return "Помилка: необхідно заповнити всі поля (URL, користувач, API токен)"

    success = app.test_jira_connection(url, username, api_token)
    if success:
        return "✅ Успішне підключення до Jira API"
    else:
        return "❌ Помилка підключення до Jira. Перевірте введені дані."

def create_jira_api_tab(app):
    """
    Створює вкладку 'Jira API' у Gradio інтерфейсі.
    """
    with gr.Tab("Jira API"):
        gr.Markdown("## Підключення до Jira API")

        with gr.Row():
            jira_url = gr.Textbox(
                label="Jira URL",
                placeholder="https://your-company.atlassian.net"
            )
            jira_username = gr.Textbox(
                label="Ім'я користувача Jira",
                placeholder="email@example.com"
            )
            jira_api_token = gr.Textbox(
                label="Jira API Token",
                type="password"
            )

        test_connection_btn = gr.Button("Тестувати з'єднання")
        connection_status = gr.Textbox(label="Статус підключення")

        test_connection_btn.click(
            lambda u, usr, tkn: test_jira_connection_handler(u, usr, tkn, app),
            inputs=[jira_url, jira_username, jira_api_token],
            outputs=[connection_status]
        )

        gr.Markdown("## ⚠️ Ця функція буде доступна у наступних версіях")