fix: card view render (#28189)

This commit is contained in:
lyzno1
2025-11-14 14:16:11 +08:00
committed by GitHub
parent 15fbedfcad
commit 85b99580ea

View File

@ -37,18 +37,22 @@ const CardView: FC<ICardViewProps> = ({ appId, isInPanel, className }) => {
const appDetail = useAppStore(state => state.appDetail) const appDetail = useAppStore(state => state.appDetail)
const setAppDetail = useAppStore(state => state.setAppDetail) const setAppDetail = useAppStore(state => state.setAppDetail)
const isWorkflowApp = appDetail?.mode === AppModeEnum.WORKFLOW
const showMCPCard = isInPanel const showMCPCard = isInPanel
const showTriggerCard = isInPanel && appDetail?.mode === AppModeEnum.WORKFLOW const showTriggerCard = isInPanel && isWorkflowApp
const { data: currentWorkflow } = useAppWorkflow(appDetail?.mode === AppModeEnum.WORKFLOW ? appDetail.id : '') const { data: currentWorkflow } = useAppWorkflow(isWorkflowApp ? appDetail.id : '')
const hasTriggerNode = useMemo(() => { const hasTriggerNode = useMemo<boolean | null>(() => {
if (appDetail?.mode !== AppModeEnum.WORKFLOW) if (!isWorkflowApp)
return false return false
const nodes = currentWorkflow?.graph?.nodes || [] if (!currentWorkflow)
return null
const nodes = currentWorkflow.graph?.nodes || []
return nodes.some((node) => { return nodes.some((node) => {
const nodeType = node.data?.type as BlockEnum | undefined const nodeType = node.data?.type as BlockEnum | undefined
return !!nodeType && isTriggerNode(nodeType) return !!nodeType && isTriggerNode(nodeType)
}) })
}, [appDetail?.mode, currentWorkflow]) }, [isWorkflowApp, currentWorkflow])
const shouldRenderAppCards = !isWorkflowApp || hasTriggerNode === false
const updateAppDetail = async () => { const updateAppDetail = async () => {
try { try {
@ -123,7 +127,7 @@ const CardView: FC<ICardViewProps> = ({ appId, isInPanel, className }) => {
return ( return (
<div className={className || 'mb-6 grid w-full grid-cols-1 gap-6 xl:grid-cols-2'}> <div className={className || 'mb-6 grid w-full grid-cols-1 gap-6 xl:grid-cols-2'}>
{ {
!hasTriggerNode && ( shouldRenderAppCards && (
<> <>
<AppCard <AppCard
appInfo={appDetail} appInfo={appDetail}