reflex/reflex/.templates/apps/demo/code/webui/components/navbar.py
2023-10-26 19:45:33 -07:00

69 lines
2.0 KiB
Python

import reflex as rx
from ...webui import styles
from ...webui.state import State
def navbar():
return rx.box(
rx.hstack(
rx.hstack(
rx.icon(
tag="hamburger",
mr=4,
on_click=State.toggle_drawer,
cursor="pointer",
),
rx.link(
rx.box(
rx.image(src="favicon.ico", width=30, height="auto"),
p="1",
border_radius="6",
bg="#F0F0F0",
mr="2",
),
href="/",
),
rx.breadcrumb(
rx.breadcrumb_item(
rx.heading("ReflexGPT", size="sm"),
),
rx.breadcrumb_item(
rx.text(State.current_chat, size="sm", font_weight="normal"),
),
),
),
rx.hstack(
rx.button(
"+ New chat",
bg=styles.accent_color,
px="4",
py="2",
h="auto",
on_click=State.toggle_modal,
),
rx.menu(
rx.menu_button(
rx.avatar(name="User", size="md"),
rx.box(),
),
rx.menu_list(
rx.menu_item("Help"),
rx.menu_divider(),
rx.menu_item("Settings"),
),
),
spacing="8",
),
justify="space-between",
),
bg=styles.bg_dark_color,
backdrop_filter="auto",
backdrop_blur="lg",
p="4",
border_bottom=f"1px solid {styles.border_color}",
position="sticky",
top="0",
z_index="100",
)