File size: 1,589 Bytes
677bddc
af7e87c
 
 
 
 
 
 
48c6048
af7e87c
7c77ea3
677bddc
 
1af0c3a
4825cfc
af7e87c
 
 
7fdea9e
677bddc
 
 
 
 
 
7fdea9e
 
677bddc
1af0c3a
677bddc
 
7fdea9e
677bddc
fbd9aef
677bddc
 
 
1af0c3a
af7e87c
 
677bddc
af7e87c
 
677bddc
1af0c3a
 
 
 
 
 
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
import gradio as gr

get_local_storage = """

    function() {

      globalThis.setStorage = (key, value)=>{

        localStorage.setItem(key, JSON.stringify(value))

      }

       globalThis.getStorage = (key, value)=>{

        return localStorage.getItem(key)

      }

       const text_inputAMLO =  getStorage('text_input')

       const dropdown =  getStorage('dropdown')

       const local_data =  getStorage('local_data')

       globalThis.MOI = "Moisés"

       return [text_inputAMLO, dropdown, local_data, MOI];

      }

    """


def predict(text_input, dropdown):
    return {
        "text": text_input,
        "dropdown": dropdown,
        "something_else": [text_input] * 3 + [dropdown],
    }


with gr.Blocks() as block:
    text_input = gr.Text(label="Input183")
    dropdown = gr.Dropdown(["first", "second", "third"], type="index")
    local_data = gr.JSON({}, label="Local Storage")

    dropdown.change(None, dropdown, None, _js="(v)=>{ setStorage('dropdown',v) }")
    text_input.change(None, text_input, None, _js="(v)=>{ getStorage('text_input') }")
    local_data.change(None, local_data, None, _js="(v)=>{ setStorage('local_data',v) }")
    btn = gr.Button("Set New Data")
    btn.click(fn=predict, inputs=[text_input, dropdown], outputs=[local_data])
    valores = block.load(
        None,
        inputs=None,
        outputs=[text_input, dropdown, local_data],
        _js=get_local_storage,
    )
block.launch(debug=True)

# Accede al valor de MOI
moi = valores[3]

# Imprime el valor de MOI
print(f"MOI: {moi}")