@@ -4,7 +4,7 @@ import WorkflowNodesPopoverMenu from '@/pages/platform/workflow-editor/component
44import { useWorkflowMutation } from '@/pages/platform/workflow-editor/providers/workflowMutationProvider' ;
55import { useGetWorkflowNodeDescriptionQuery } from '@/shared/queries/platform/workflowNodeDescriptions.queries' ;
66import { NodeDataType } from '@/shared/types' ;
7- import { HoverCard } from '@radix-ui/react-hover-card' ;
7+ import { HoverCard , HoverCardPortal } from '@radix-ui/react-hover-card' ;
88import { useQueryClient } from '@tanstack/react-query' ;
99import { Handle , Position } from '@xyflow/react' ;
1010import { PencilIcon , TrashIcon } from 'lucide-react' ;
@@ -87,6 +87,7 @@ const WorkflowNode = ({data, id}: {data: NodeDataType; id: string}) => {
8787 ) }
8888
8989 < HoverCard
90+ key = { id }
9091 onOpenChange = { ( open ) => {
9192 if ( open ) {
9293 setHoveredNodeName ( data . name ) ;
@@ -98,7 +99,7 @@ const WorkflowNode = ({data, id}: {data: NodeDataType; id: string}) => {
9899 < HoverCardTrigger >
99100 < Button
100101 className = { twMerge (
101- 'h-18 w -18 rounded-md border-2 border-gray-300 bg-white p-4 shadow hover:border-blue-200 hover:bg-blue-200 hover:shadow-none [&_svg]:size-9' ,
102+ 'size -18 rounded-md border-2 border-gray-300 bg-white p-4 shadow hover:border-blue-200 hover:bg-blue-200 hover:shadow-none [&_svg]:size-9' ,
102103 isSelected && workflowNodeDetailsPanelOpen && 'border-blue-300 bg-blue-100 shadow-none'
103104 ) }
104105 onClick = { handleNodeClick }
@@ -107,18 +108,25 @@ const WorkflowNode = ({data, id}: {data: NodeDataType; id: string}) => {
107108 </ Button >
108109 </ HoverCardTrigger >
109110
110- < HoverCardContent className = "w-fit min-w-72 max-w-[601px] text-sm" side = "right" >
111- { workflowNodeDescription ?. description && (
112- < div
113- className = "flex"
114- dangerouslySetInnerHTML = { {
115- __html : sanitize ( workflowNodeDescription . description , {
116- allowedAttributes : { div : [ 'class' ] , table : [ 'class' ] , td : [ 'class' ] , tr : [ 'class' ] } ,
117- } ) ,
118- } }
119- />
120- ) }
121- </ HoverCardContent >
111+ < HoverCardPortal >
112+ < HoverCardContent className = "w-fit min-w-72 max-w-xl text-sm" side = "right" >
113+ { workflowNodeDescription ?. description && (
114+ < div
115+ className = "flex"
116+ dangerouslySetInnerHTML = { {
117+ __html : sanitize ( workflowNodeDescription . description , {
118+ allowedAttributes : {
119+ div : [ 'class' ] ,
120+ table : [ 'class' ] ,
121+ td : [ 'class' ] ,
122+ tr : [ 'class' ] ,
123+ } ,
124+ } ) ,
125+ } }
126+ />
127+ ) }
128+ </ HoverCardContent >
129+ </ HoverCardPortal >
122130 </ HoverCard >
123131
124132 < div className = "ml-2 flex w-full min-w-max flex-col items-start" >
0 commit comments