# -*- coding: utf-8 -*- """ 框架状态 """ import reflex as rx from application.models import SidebarIconNavButtonKind, SidebarIconNavButton # 初始化侧边栏图标导航按钮字典 sidebar_icon_nav_buttons = { SidebarIconNavButtonKind.CONVERSATION: {"icon": "message-square", "name": "对话"}, SidebarIconNavButtonKind.KNOWLEDGE: {"icon": "book", "name": "知识库"}, } class FrameState(rx.State): """ 框架状态 """ # 初始化侧边栏图标导航按钮字典 SIDEBAR_ICON_NAV_BUTTONS = { SidebarIconNavButtonKind.CONVERSATION: SidebarIconNavButton( icon="message-circle-more", name="对话" ), SidebarIconNavButtonKind.KNOWLEDGE: SidebarIconNavButton( icon="book", name="知识库" ), } # 侧边栏图标导航按钮字典 # 当前侧边栏图标导航按钮 sidebar_icon_nav_button: SidebarIconNavButton = @rx.var def get_sidebar_icon_nav_button(self) -> SidebarIconNavButton: """获取当前侧边栏图标导航按钮""" return self.SIDEBAR_ICON_NAV_BUTTONS[self.sidebar_icon_nav_button] @rx.event def set_active_sidebar_tab(self, icon_id: str): """切换侧边栏当前标签名称""" self.sidebar_tab_name = icon_id