File size: 1,568 Bytes
214044a
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
48
49
50
51
52
53
54
55
56
import gradio as gr
from components import AITask, CodeTask

from examples import demo_buttons, demo_tasks


DEMO_ID = __name__
tasks = [
    CodeTask(
        0,
        "{your json key in here} See: https://developers.google.com/calendar/api/quickstart/python#authorize_credentials_for_a_desktop_application",
        visible=True,
        code_value="Authenticate to read my google calendar. Return credentials as a json. I will provide the client secrets config in a json (not a file).",
    ),
    CodeTask(
        1,
        "{t0}",
        visible=True,
        code_value="Given a credentials json, get my calendar events of tomorrow.",
    ),
    AITask(
        2,
        """Here are the events in my calendar for tomorrow:
{t1}

Which hours of my day are free?""",
        visible=True,
    ),
]
demo_tasks[DEMO_ID] = tasks


def render():
    with gr.Tab("Example: Authenticate to google"):
        with gr.Box():
            demo_id = gr.Textbox(DEMO_ID, visible=False)
            gr.Dropdown(
                value=CodeTask.name,
                label="Pick a new Task",
                interactive=False,
            )
            tasks[0].render()
            gr.Dropdown(
                value=CodeTask.name,
                label="Pick a new Task",
                interactive=False,
            )
            tasks[1].render()
            gr.Dropdown(
                value=CodeTask.name,
                label="Pick a new Task",
                interactive=False,
            )
            tasks[2].render()
        demo_buttons(demo_id, tasks)