Spaces:
Runtime error
Runtime error
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", "number", "number", "number"], | |
col_count=(4, "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) | |