Update app.py
Browse files
app.py
CHANGED
|
@@ -7,7 +7,6 @@ from file_utils import save_nickname_to_db, load_latest_nickname
|
|
| 7 |
def main_app():
|
| 8 |
with gr.Blocks(css="light_mode_chatter_owl.css") as app:
|
| 9 |
current_mode = gr.State("spoken")
|
| 10 |
-
nickname = gr.State(load_latest_nickname()) # Load from DB on start
|
| 11 |
|
| 12 |
with gr.Row():
|
| 13 |
# === Sidebar ===
|
|
@@ -24,9 +23,9 @@ def main_app():
|
|
| 24 |
|
| 25 |
def handle_nickname(name):
|
| 26 |
save_nickname_to_db(name)
|
| 27 |
-
return gr.update(value=f"✅ Hi, {name}!", visible=True)
|
| 28 |
|
| 29 |
-
nickname_input.change(fn=handle_nickname, inputs=[nickname_input], outputs=[nickname_display
|
| 30 |
|
| 31 |
gr.Markdown("---")
|
| 32 |
|
|
@@ -41,14 +40,15 @@ def main_app():
|
|
| 41 |
|
| 42 |
# === Main View Panels ===
|
| 43 |
with gr.Column(scale=4, elem_classes=["main-content"]):
|
| 44 |
-
nickname_display #
|
|
|
|
| 45 |
with gr.Column(visible=True, elem_id="module-wrapper") as spoken_panel:
|
| 46 |
-
spoken_dashboard(
|
| 47 |
|
| 48 |
with gr.Column(visible=False, elem_id="module-wrapper") as written_panel:
|
| 49 |
-
written_dashboard(
|
| 50 |
|
| 51 |
-
file_router, switch_view, study_panel, file_panel = file_based_learning_router(
|
| 52 |
|
| 53 |
# === Mode Visibility Logic ===
|
| 54 |
def switch_mode(mode):
|
|
@@ -76,4 +76,4 @@ def main_app():
|
|
| 76 |
return app
|
| 77 |
|
| 78 |
if __name__ == "__main__":
|
| 79 |
-
main_app().launch(server_name="0.0.0.0", server_port=7860)
|
|
|
|
| 7 |
def main_app():
|
| 8 |
with gr.Blocks(css="light_mode_chatter_owl.css") as app:
|
| 9 |
current_mode = gr.State("spoken")
|
|
|
|
| 10 |
|
| 11 |
with gr.Row():
|
| 12 |
# === Sidebar ===
|
|
|
|
| 23 |
|
| 24 |
def handle_nickname(name):
|
| 25 |
save_nickname_to_db(name)
|
| 26 |
+
return gr.update(value=f"✅ Hi, {name}!", visible=True)
|
| 27 |
|
| 28 |
+
nickname_input.change(fn=handle_nickname, inputs=[nickname_input], outputs=[nickname_display])
|
| 29 |
|
| 30 |
gr.Markdown("---")
|
| 31 |
|
|
|
|
| 40 |
|
| 41 |
# === Main View Panels ===
|
| 42 |
with gr.Column(scale=4, elem_classes=["main-content"]):
|
| 43 |
+
nickname_display # Optional name confirmation message
|
| 44 |
+
|
| 45 |
with gr.Column(visible=True, elem_id="module-wrapper") as spoken_panel:
|
| 46 |
+
spoken_dashboard(nickname_input) # ✅ pass textbox directly
|
| 47 |
|
| 48 |
with gr.Column(visible=False, elem_id="module-wrapper") as written_panel:
|
| 49 |
+
written_dashboard(nickname_input) # ✅ pass textbox directly
|
| 50 |
|
| 51 |
+
file_router, switch_view, study_panel, file_panel = file_based_learning_router(nickname_input)
|
| 52 |
|
| 53 |
# === Mode Visibility Logic ===
|
| 54 |
def switch_mode(mode):
|
|
|
|
| 76 |
return app
|
| 77 |
|
| 78 |
if __name__ == "__main__":
|
| 79 |
+
main_app().launch(server_name="0.0.0.0", server_port=7860)
|