Spaces:
Running
Running
File size: 1,231 Bytes
1ef4e10 0fb23b8 1ef4e10 f7ef7d3 1ef4e10 f7ef7d3 1ef4e10 f7ef7d3 1ef4e10 f7ef7d3 1ef4e10 c8c252f |
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 |
# components/header.py
import gradio as gr
from utils.auth import AuthService
class Header:
def __init__(self):
with gr.Row(variant="panel", elem_classes="header-row") as self.container:
self.welcome = gr.Markdown()
self.progress_display = gr.Markdown("") # New element for progress display
self.logout_btn = gr.Button("Log out", scale=0, min_width=90)
# ---------------- wiring ----------------
def register_callbacks(self, login_page, dashboard_page, session_state):
def logout_and_clear_progress_fn(current_session_state):
# AuthService.logout is expected to return 4 values for the original outputs
logout_outputs = AuthService.logout(current_session_state)
# Add an empty string to clear the progress_display
return list(logout_outputs) + [""]
self.logout_btn.click(
fn=logout_and_clear_progress_fn,
inputs=[session_state],
outputs=[
login_page.container,
dashboard_page.container,
self.welcome,
login_page.message,
self.progress_display, # Cleared on logout
],
) |