chore: remove menu data render
This commit is contained in:
+5
-6
@@ -14,9 +14,9 @@ export default [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'playground',
|
name: 'playground',
|
||||||
// icon: 'icon-experiment',
|
icon: 'icon-experiment',
|
||||||
// selectedIcon: 'icon-experiment-filled',
|
selectedIcon: 'icon-experiment-filled',
|
||||||
// defaultIcon: 'icon-experiment',
|
defaultIcon: 'icon-experiment',
|
||||||
path: '/playground',
|
path: '/playground',
|
||||||
key: 'playground',
|
key: 'playground',
|
||||||
routes: [
|
routes: [
|
||||||
@@ -84,7 +84,7 @@ export default [
|
|||||||
routes: [
|
routes: [
|
||||||
{
|
{
|
||||||
path: '/models',
|
path: '/models',
|
||||||
redirect: '/models/deployment'
|
redirect: '/models/deployments'
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'modelCatalog',
|
name: 'modelCatalog',
|
||||||
@@ -98,7 +98,7 @@ export default [
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: 'deployment',
|
name: 'deployment',
|
||||||
path: '/models/deployment',
|
path: '/models/deployments',
|
||||||
key: 'modelDeployments',
|
key: 'modelDeployments',
|
||||||
icon: 'icon-model',
|
icon: 'icon-model',
|
||||||
selectedIcon: 'icon-model-filled',
|
selectedIcon: 'icon-model-filled',
|
||||||
@@ -164,7 +164,6 @@ export default [
|
|||||||
icon: 'icon-users',
|
icon: 'icon-users',
|
||||||
selectedIcon: 'icon-users-filled',
|
selectedIcon: 'icon-users-filled',
|
||||||
defaultIcon: 'icon-users',
|
defaultIcon: 'icon-users',
|
||||||
access: 'canSeeAdmin',
|
|
||||||
component: './users'
|
component: './users'
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|||||||
@@ -326,14 +326,8 @@ export default (props: any) => {
|
|||||||
setCollapseKeys(new Set(collapseKeys));
|
setCollapseKeys(new Set(collapseKeys));
|
||||||
};
|
};
|
||||||
|
|
||||||
const onMenuItemClick = (menuItem) => {
|
|
||||||
navigate(menuItem.path);
|
|
||||||
};
|
|
||||||
|
|
||||||
const menuContentRender = (menuProps, defaultDom) => {
|
const menuContentRender = (menuProps, defaultDom) => {
|
||||||
return (
|
return <SiderMenu {...menuProps}></SiderMenu>;
|
||||||
<SiderMenu {...menuProps} onMenuItemClick={onMenuItemClick}></SiderMenu>
|
|
||||||
);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
const actionRender = (layoutProps) => {
|
const actionRender = (layoutProps) => {
|
||||||
@@ -531,8 +525,6 @@ export default (props: any) => {
|
|||||||
splitMenus={true}
|
splitMenus={true}
|
||||||
logo={collapsed ? SLogoIcon : LogoIcon}
|
logo={collapsed ? SLogoIcon : LogoIcon}
|
||||||
menuContentRender={menuContentRender}
|
menuContentRender={menuContentRender}
|
||||||
menuItemRender={menuItemRender}
|
|
||||||
menuDataRender={menuDataRender}
|
|
||||||
disableContentMargin
|
disableContentMargin
|
||||||
fixSiderbar
|
fixSiderbar
|
||||||
fixedHeader
|
fixedHeader
|
||||||
|
|||||||
@@ -341,7 +341,6 @@ export const getRightRenderContent = (opts: {
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Menu {...helpMenu} style={getMenuStyle(collapsed, siderWidth)} />
|
<Menu {...helpMenu} style={getMenuStyle(collapsed, siderWidth)} />
|
||||||
{/* <Menu {...langMenu} style={getMenuStyle(collapsed, siderWidth)} /> */}
|
|
||||||
<Menu
|
<Menu
|
||||||
{...userMenu}
|
{...userMenu}
|
||||||
style={getMenuStyle(collapsed, siderWidth, {
|
style={getMenuStyle(collapsed, siderWidth, {
|
||||||
|
|||||||
+36
-28
@@ -1,6 +1,6 @@
|
|||||||
import IconFont from '@/components/icon-font';
|
import IconFont from '@/components/icon-font';
|
||||||
import { CaretDownOutlined } from '@ant-design/icons';
|
import { CaretDownOutlined } from '@ant-design/icons';
|
||||||
import { useLocation } from '@umijs/max';
|
import { Link, useLocation } from '@umijs/max';
|
||||||
import { Divider, Tooltip } from 'antd';
|
import { Divider, Tooltip } from 'antd';
|
||||||
import { createStyles } from 'antd-style';
|
import { createStyles } from 'antd-style';
|
||||||
import React, { useMemo, useState } from 'react';
|
import React, { useMemo, useState } from 'react';
|
||||||
@@ -17,7 +17,6 @@ interface MenuItem {
|
|||||||
interface SiderMenuProps {
|
interface SiderMenuProps {
|
||||||
menuData: MenuItem[];
|
menuData: MenuItem[];
|
||||||
collapsed?: boolean;
|
collapsed?: boolean;
|
||||||
onMenuItemClick: (item: MenuItem) => void;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const useStyles = createStyles(({ css, token }) => {
|
const useStyles = createStyles(({ css, token }) => {
|
||||||
@@ -45,7 +44,6 @@ const useStyles = createStyles(({ css, token }) => {
|
|||||||
padding-bottom: 4px;
|
padding-bottom: 4px;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
height: 30px;
|
height: 30px;
|
||||||
transtion: all var(--ant-motion-duration-slow);
|
|
||||||
&:hover {
|
&:hover {
|
||||||
.group-title-text {
|
.group-title-text {
|
||||||
color: var(--ant-color-text);
|
color: var(--ant-color-text);
|
||||||
@@ -76,6 +74,8 @@ const useStyles = createStyles(({ css, token }) => {
|
|||||||
`,
|
`,
|
||||||
menuItemWrapper: css`
|
menuItemWrapper: css`
|
||||||
display: flex;
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: flex-start;
|
||||||
gap: 12px;
|
gap: 12px;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
position: relative;
|
position: relative;
|
||||||
@@ -92,6 +92,9 @@ const useStyles = createStyles(({ css, token }) => {
|
|||||||
&.menu-item-selected {
|
&.menu-item-selected {
|
||||||
background-color: ${Menu.itemSelectedBg};
|
background-color: ${Menu.itemSelectedBg};
|
||||||
color: ${Menu.itemSelectedColor};
|
color: ${Menu.itemSelectedColor};
|
||||||
|
.anticon {
|
||||||
|
color: ${Menu.itemSelectedColor};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
&:active {
|
&:active {
|
||||||
background-color: ${Menu.itemActiveBg};
|
background-color: ${Menu.itemActiveBg};
|
||||||
@@ -117,7 +120,7 @@ const useStyles = createStyles(({ css, token }) => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
||||||
const { menuData, collapsed, onMenuItemClick } = props;
|
const { menuData, collapsed } = props;
|
||||||
const { styles, cx } = useStyles();
|
const { styles, cx } = useStyles();
|
||||||
const location = useLocation();
|
const location = useLocation();
|
||||||
const [collapseKeys, setCollapseKeys] = useState<Set<string>>(new Set());
|
const [collapseKeys, setCollapseKeys] = useState<Set<string>>(new Set());
|
||||||
@@ -156,8 +159,9 @@ const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
|||||||
className={cx(styles.menuItemContent, 'menu-item-content')}
|
className={cx(styles.menuItemContent, 'menu-item-content')}
|
||||||
key={key}
|
key={key}
|
||||||
>
|
>
|
||||||
<div
|
<Link
|
||||||
onClick={() => onMenuItemClick(menuItem)}
|
to={menuItem.path.replace('/*', '')}
|
||||||
|
target={menuItem.target}
|
||||||
className={cx(styles.menuItemWrapper, 'menu-item', {
|
className={cx(styles.menuItemWrapper, 'menu-item', {
|
||||||
'menu-item-selected': location.pathname === menuItem.path
|
'menu-item-selected': location.pathname === menuItem.path
|
||||||
})}
|
})}
|
||||||
@@ -176,11 +180,17 @@ const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
|||||||
</Tooltip>
|
</Tooltip>
|
||||||
) : (
|
) : (
|
||||||
<>
|
<>
|
||||||
{menuItem.icon}
|
<IconFont
|
||||||
|
type={
|
||||||
|
location.pathname === menuItem.path
|
||||||
|
? menuItem.selectedIcon || ''
|
||||||
|
: menuItem.defaultIcon || ''
|
||||||
|
}
|
||||||
|
></IconFont>
|
||||||
<span>{menuItem.name}</span>
|
<span>{menuItem.name}</span>
|
||||||
</>
|
</>
|
||||||
)}
|
)}
|
||||||
</div>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
@@ -195,25 +205,23 @@ const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
|||||||
<div key={item.key}>
|
<div key={item.key}>
|
||||||
{item.children && item.children.length > 0 ? (
|
{item.children && item.children.length > 0 ? (
|
||||||
<>
|
<>
|
||||||
{
|
<div
|
||||||
<div
|
className={cx(styles.groupTitle, {
|
||||||
className={cx(styles.groupTitle, {
|
'menu-item-group-title-collapsed': collapsed
|
||||||
'menu-item-group-title-collapsed': collapsed
|
})}
|
||||||
})}
|
onClick={(e) => handleToggleGroup(e, item)}
|
||||||
onClick={(e) => handleToggleGroup(e, item)}
|
>
|
||||||
>
|
{!collapsed ? (
|
||||||
{!collapsed ? (
|
<span className="group-title-text">
|
||||||
<span className="group-title-text">
|
<span>{item.name}</span>
|
||||||
<span>{item.name}</span>
|
<CaretDownOutlined
|
||||||
<CaretDownOutlined
|
rotate={collapseKeys.has(item.key) ? -90 : 0}
|
||||||
rotate={collapseKeys.has(item.key) ? -90 : 0}
|
></CaretDownOutlined>
|
||||||
></CaretDownOutlined>
|
</span>
|
||||||
</span>
|
) : (
|
||||||
) : (
|
<Divider style={dividerStyles} />
|
||||||
<Divider style={dividerStyles} />
|
)}
|
||||||
)}
|
</div>
|
||||||
</div>
|
|
||||||
}
|
|
||||||
<div
|
<div
|
||||||
className={cx(styles.menuItemGroup, {
|
className={cx(styles.menuItemGroup, {
|
||||||
'menu-item-group-collapsed': collapsed,
|
'menu-item-group-collapsed': collapsed,
|
||||||
@@ -227,7 +235,7 @@ const SiderMenu: React.FC<SiderMenuProps> = (props) => {
|
|||||||
</div>
|
</div>
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<>{menuItemRender(item, item.key)}</>
|
menuItemRender(item, item.key)
|
||||||
)}
|
)}
|
||||||
</div>
|
</div>
|
||||||
))}
|
))}
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ export default {
|
|||||||
'menu.models.modelList': 'Deploy & Manage',
|
'menu.models.modelList': 'Deploy & Manage',
|
||||||
'menu.models.modelCatalog': 'Catalog',
|
'menu.models.modelCatalog': 'Catalog',
|
||||||
'menu.models.catalog': 'Model Catalog',
|
'menu.models.catalog': 'Model Catalog',
|
||||||
'menu.models.deployment': 'Deployment',
|
'menu.models.deployment': 'Deployments',
|
||||||
'menu.modelCatalog': 'Catalog',
|
'menu.modelCatalog': 'Catalog',
|
||||||
'menu.resources': 'Resources',
|
'menu.resources': 'Resources',
|
||||||
'menu.apikeys': 'API Keys',
|
'menu.apikeys': 'API Keys',
|
||||||
|
|||||||
@@ -753,7 +753,7 @@ const Models: React.FC<ModelsProps> = ({
|
|||||||
className="models-page-container"
|
className="models-page-container"
|
||||||
ghost
|
ghost
|
||||||
header={{
|
header={{
|
||||||
title: intl.formatMessage({ id: 'models.title' }),
|
title: intl.formatMessage({ id: 'menu.models.deployment' }),
|
||||||
style: {
|
style: {
|
||||||
paddingInline: 'var(--layout-content-header-inlinepadding)'
|
paddingInline: 'var(--layout-content-header-inlinepadding)'
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user