import reflex as rx

from rxconfig import config
from myApp.auth.checklogin import *
from myApp.includes.functions import *
import  assets.db.db as db

from assets.lang.en.frontend import frontend 

class DashboardState(rx.State):
    login_id: str = lambda:rx.LocalStorage.get("login_id") or "Guest"

    def load_login_id(self):
        self.login_id = rx.LocalStorage.get("login_id") or "Guest"

#login_id = lambda: rx.LocalStorage.get("login_id")  # Get value first

@rx.page(route="/dashboard")
def dashboard() -> rx.Component:
    # Welcome Page (Index)
    
    return rx.container(
        #rx.color_mode.button(position="top-right"),
        rx.hstack(
            rx.spacer(),
            rx.spacer(),
            rx.button(
                frontend['logout'], 
                type="button",
                on_click=signout(),
                class_name='btn btn-primary', 
                color_scheme="red"
            ),
            padding="1rem",
            box_shadow="md",
            border_bottom="1px solid #ddd",
            width="100%",
        ),
        rx.vstack(
            rx.heading(frontend['my_app'], size="9"),
            #rx.heading(config, size="9"),
            spacing="5",
            justify="center",
            min_height="45vh",
        ),
        rx.vstack(
            rx.heading('ID: ', size="3"),
            rx.box(AuthState.user_id, size="3"),
            rx.box(AuthState.is_logged_in, size="3"),
            #rx.heading(check_session(), size="3"),
            #rx.heading(DashboardState.login_id, size="3"),
            #rx.heading(config, size="9"),
            spacing="5",
            justify="center",
            min_height="45vh",
        ),
        #rx.logo(),
        size="1",
    )
