unijoh commited on
Commit
1e18e80
·
verified ·
1 Parent(s): 3711ce8

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +25 -2
app.py CHANGED
@@ -745,6 +745,21 @@ with gr.Blocks(css=CSS, title="Marka") as demo:
745
  with overview_acc:
746
  overview_md = gr.Markdown(build_overview("fo"))
747
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
748
  def on_tag(text, lang_current):
749
  rows = run_model_multisentence(text)
750
  df_main, df_mean, overview = render(rows, lang_current)
@@ -769,6 +784,7 @@ with gr.Blocks(css=CSS, title="Marka") as demo:
769
  gr.update(value=dl_main_path, visible=have_rows),
770
  gr.update(value=dl_exp_path, visible=have_rows),
771
  lang_current,
 
772
  )
773
 
774
  def on_set_lang(rows, lang_value):
@@ -799,12 +815,19 @@ with gr.Blocks(css=CSS, title="Marka") as demo:
799
  def on_set_en(rows):
800
  return on_set_lang(rows, "en")
801
 
802
- btn.click(
 
 
 
 
 
 
 
803
  on_tag,
804
  inputs=[inp, lang_state],
805
  outputs=[state, out_df, out_mean_df, overview_md, expanded_acc,
806
  btn_lang_fo_on, btn_lang_fo_off, btn_lang_en_on, btn_lang_en_off,
807
- btn_dl_main, btn_dl_exp, lang_state],
808
  queue=False,
809
  )
810
 
 
745
  with overview_acc:
746
  overview_md = gr.Markdown(build_overview("fo"))
747
 
748
+ def show_loading(lang_current):
749
+ """Show the results table immediately so Gradio can display its built-in loading indicator.
750
+
751
+ Also disables the button + changes its label while the model runs.
752
+ """
753
+ lang_current = "fo" if lang_current == "fo" else "en"
754
+ cols_main = [UI[lang_current]["w"], UI[lang_current]["t"], UI[lang_current]["s"]]
755
+ shell = _make_html_table(cols_main, [])
756
+ return (
757
+ gr.update(value=shell, visible=True),
758
+ gr.update(visible=False), # hide main download while processing
759
+ gr.update(visible=False), # hide expanded download while processing
760
+ gr.update(value="Markar... / Tagging...", interactive=False),
761
+ )
762
+
763
  def on_tag(text, lang_current):
764
  rows = run_model_multisentence(text)
765
  df_main, df_mean, overview = render(rows, lang_current)
 
784
  gr.update(value=dl_main_path, visible=have_rows),
785
  gr.update(value=dl_exp_path, visible=have_rows),
786
  lang_current,
787
+ gr.update(value="Marka / Tag", interactive=True),
788
  )
789
 
790
  def on_set_lang(rows, lang_value):
 
815
  def on_set_en(rows):
816
  return on_set_lang(rows, "en")
817
 
818
+ _evt = btn.click(
819
+ show_loading,
820
+ inputs=[lang_state],
821
+ outputs=[out_df, btn_dl_main, btn_dl_exp, btn],
822
+ queue=False,
823
+ )
824
+
825
+ _evt.then(
826
  on_tag,
827
  inputs=[inp, lang_state],
828
  outputs=[state, out_df, out_mean_df, overview_md, expanded_acc,
829
  btn_lang_fo_on, btn_lang_fo_off, btn_lang_en_on, btn_lang_en_off,
830
+ btn_dl_main, btn_dl_exp, lang_state, btn],
831
  queue=False,
832
  )
833