kculculate / app.py
neoai-kterasawa
update
3fcb62a
raw
history blame
1.57 kB
from typing import Final
import gradio as gr # type: ignore
import src.func as func
DEFAULT_AMOUNT: Final[int] = 10_000
def clear(text: str) -> str:
return func.clear(text)
def calculate(budget: int, text: str) -> tuple[str, list[list]]:
try:
return func.calculate(budget, text)
except Exception as e:
raise gr.Error(e)
with gr.Blocks(
theme=gr.themes.Default(primary_hue="green", secondary_hue="lime")
) as demo:
# flontend ------------------------------
with gr.Row():
with gr.Column():
budget_input = gr.Number(value=DEFAULT_AMOUNT, label="ไบˆ็ฎ—")
text_input = gr.Textbox(label="netkeiba ่ฒทใ„็›ฎใ‚ณใƒ”ใƒš")
with gr.Row():
calculate_button = gr.Button(value="Calculate", variant="primary")
clear_button = gr.Button(value="Clear")
with gr.Column():
markdown_output = gr.Markdown()
df_output = gr.Dataframe(
value=[],
label=None,
headers=["", "", "ใ‚ชใƒƒใ‚บ", "่ณญใ‘้ก", "ๆ‰•ๆˆป"],
datatype=["str", "str", "number", "number", "number"],
col_count=(5, "fixed"),
)
# click ------------------------------
calculate_button.click(
calculate,
inputs=[budget_input, text_input],
outputs=[markdown_output, df_output],
)
clear_button.click(
clear,
inputs=[text_input],
outputs=[text_input],
)
if "__main__" == __name__:
demo.launch(debug=True)