|
|
|
@ -1,9 +1,11 @@
|
|
|
|
|
import type { PluginCustomPanel } from '@/plugin/common';
|
|
|
|
|
import clsx from 'clsx';
|
|
|
|
|
import React from 'react';
|
|
|
|
|
import React, { useMemo } from 'react';
|
|
|
|
|
import { Icon } from 'tailchat-design';
|
|
|
|
|
import { NavbarNavItem } from './NavItem';
|
|
|
|
|
|
|
|
|
|
const defaultUseIsShow = () => true;
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 导航栏自定义选项
|
|
|
|
|
* 用于插件
|
|
|
|
@ -12,6 +14,14 @@ export const NavbarCustomNavItem: React.FC<{
|
|
|
|
|
panelInfo: PluginCustomPanel;
|
|
|
|
|
withBg: boolean;
|
|
|
|
|
}> = React.memo(({ panelInfo, withBg }) => {
|
|
|
|
|
const useIsShow = useMemo(() => panelInfo.useIsShow ?? defaultUseIsShow, []);
|
|
|
|
|
|
|
|
|
|
const isShow = useIsShow();
|
|
|
|
|
|
|
|
|
|
if (!isShow) {
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<NavbarNavItem
|
|
|
|
|
key={panelInfo.name}
|
|
|
|
|