You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
155 lines
5.9 KiB
155 lines
5.9 KiB
from dash import html
|
|
import feffery_utils_components as fuc
|
|
import feffery_antd_components as fac
|
|
|
|
from views.layout.components.head import render_head_content
|
|
from views.layout.components.content import render_main_content
|
|
from views.layout.components.aside import render_aside_content
|
|
import callbacks.layout_c.fold_side_menu
|
|
import callbacks.layout_c.index_c
|
|
|
|
|
|
def render_content(menu_info):
|
|
|
|
return fuc.FefferyTopProgress(
|
|
html.Div(
|
|
[
|
|
# 全局重载
|
|
fuc.FefferyReload(id='trigger-reload-output'),
|
|
|
|
html.Div(id='idle-placeholder-container'),
|
|
|
|
# 布局设置抽屉
|
|
fac.AntdDrawer(
|
|
[
|
|
fac.AntdText(
|
|
'主题颜色',
|
|
style={
|
|
'fontSize': 16,
|
|
'fontWeight': 500
|
|
}
|
|
),
|
|
fuc.FefferyHexColorPicker(
|
|
id='hex-color-picker',
|
|
color='#1890ff',
|
|
showAlpha=True,
|
|
style={
|
|
'width': '100%',
|
|
'marginTop': '10px'
|
|
}
|
|
),
|
|
fac.AntdInput(
|
|
id='selected-color-input',
|
|
value='#1890ff',
|
|
readOnly=True,
|
|
style={
|
|
'marginTop': '15px',
|
|
'background': '#1890ff'
|
|
}
|
|
),
|
|
fac.AntdSpace(
|
|
[
|
|
fac.AntdButton(
|
|
[
|
|
fac.AntdIcon(
|
|
icon='antd-save'
|
|
),
|
|
'保存配置',
|
|
],
|
|
id='save-setting',
|
|
type='primary'
|
|
),
|
|
fac.AntdButton(
|
|
[
|
|
fac.AntdIcon(
|
|
icon='antd-sync'
|
|
),
|
|
'重置配置',
|
|
],
|
|
id='reset-setting',
|
|
),
|
|
],
|
|
style={
|
|
'marginTop': '15px'
|
|
}
|
|
)
|
|
],
|
|
id='layout-setting-drawer',
|
|
visible=False,
|
|
title='布局设置',
|
|
width=320
|
|
),
|
|
|
|
# 退出登录对话框提示
|
|
fac.AntdModal(
|
|
html.Div(
|
|
[
|
|
fac.AntdIcon(icon='fc-info', style={'font-size': '28px'}),
|
|
fac.AntdText('确定注销并退出系统吗?', style={'margin-left': '5px'}),
|
|
]
|
|
),
|
|
id='logout-modal',
|
|
visible=False,
|
|
title='提示',
|
|
renderFooter=True,
|
|
centered=True
|
|
),
|
|
|
|
# 平台主页面
|
|
fac.AntdRow(
|
|
[
|
|
# 左侧固定菜单区域
|
|
fac.AntdCol(
|
|
fac.AntdAffix(
|
|
html.Div(
|
|
render_aside_content(menu_info),
|
|
id='side-menu',
|
|
style={
|
|
'height': '100vh',
|
|
'overflowY': 'auto',
|
|
'transition': 'width 1s',
|
|
'background': '#001529'
|
|
}
|
|
),
|
|
),
|
|
id='left-side-menu-container',
|
|
# style={
|
|
# 'flex': '1'
|
|
# }
|
|
),
|
|
|
|
# 右侧区域
|
|
fac.AntdCol(
|
|
[
|
|
fac.AntdRow(
|
|
render_head_content(),
|
|
style={
|
|
'height': '50px',
|
|
'boxShadow': 'rgb(240 241 242) 0px 2px 14px',
|
|
'background': 'white',
|
|
'marginBottom': '10px',
|
|
'position': 'sticky',
|
|
'top': 0,
|
|
'zIndex': 999
|
|
}
|
|
),
|
|
fac.AntdRow(
|
|
render_main_content(),
|
|
wrap=False
|
|
)
|
|
],
|
|
style={
|
|
'flex': '6',
|
|
'width': '300px'
|
|
}
|
|
),
|
|
],
|
|
)
|
|
],
|
|
id='index-main-content-container',
|
|
),
|
|
listenPropsMode='include',
|
|
includeProps=[
|
|
'tabs-container.items'
|
|
]
|
|
)
|
|
|