Fix SSE for workflow show page (#17582)
- Add SSE to workflow show page. Listens at workflow versions - Add a tool for creating trigger - Ensure step id is not used in params - Make AI adding step linked to the last node by default https://github.com/user-attachments/assets/41ee1835-9716-450e-82e8-54e1b63bd1ef
This commit is contained in:
+9
@@ -2,11 +2,17 @@ import { useTargetRecord } from '@/ui/layout/contexts/useTargetRecord';
|
||||
import { getWorkflowVisualizerComponentInstanceId } from '@/workflow/utils/getWorkflowVisualizerComponentInstanceId';
|
||||
import { WorkflowDiagramCanvasEditable } from '@/workflow/workflow-diagram/components/WorkflowDiagramCanvasEditable';
|
||||
import { WorkflowDiagramEffect } from '@/workflow/workflow-diagram/components/WorkflowDiagramEffect';
|
||||
import { WorkflowSSESubscribeEffect } from '@/workflow/workflow-diagram/components/WorkflowSSESubscribeEffect';
|
||||
import { WorkflowVisualizerEffect } from '@/workflow/workflow-diagram/components/WorkflowVisualizerEffect';
|
||||
import { WorkflowVisualizerComponentInstanceContext } from '@/workflow/workflow-diagram/states/contexts/WorkflowVisualizerComponentInstanceContext';
|
||||
import { useIsFeatureEnabled } from '@/workspace/hooks/useIsFeatureEnabled';
|
||||
import { FeatureFlagKey } from '~/generated/graphql';
|
||||
|
||||
export const WorkflowCard = () => {
|
||||
const targetRecord = useTargetRecord();
|
||||
const isSseDbEventsEnabled = useIsFeatureEnabled(
|
||||
FeatureFlagKey.IS_SSE_DB_EVENTS_ENABLED,
|
||||
);
|
||||
|
||||
return (
|
||||
<WorkflowVisualizerComponentInstanceContext.Provider
|
||||
@@ -17,6 +23,9 @@ export const WorkflowCard = () => {
|
||||
}}
|
||||
>
|
||||
<WorkflowVisualizerEffect workflowId={targetRecord.id} />
|
||||
{isSseDbEventsEnabled && (
|
||||
<WorkflowSSESubscribeEffect workflowId={targetRecord.id} />
|
||||
)}
|
||||
<WorkflowDiagramEffect />
|
||||
<WorkflowDiagramCanvasEditable />
|
||||
</WorkflowVisualizerComponentInstanceContext.Provider>
|
||||
|
||||
+24
@@ -0,0 +1,24 @@
|
||||
import { CoreObjectNameSingular } from '@/object-metadata/types/CoreObjectNameSingular';
|
||||
import { useListenToObjectRecordEventsForQuery } from '@/sse-db-event/hooks/useListenToObjectRecordEventsForQuery';
|
||||
|
||||
export const WorkflowSSESubscribeEffect = ({
|
||||
workflowId,
|
||||
}: {
|
||||
workflowId: string;
|
||||
}) => {
|
||||
const queryId = `workflow-versions-for-workflow-${workflowId}`;
|
||||
|
||||
useListenToObjectRecordEventsForQuery({
|
||||
queryId,
|
||||
operationSignature: {
|
||||
objectNameSingular: CoreObjectNameSingular.WorkflowVersion,
|
||||
variables: {
|
||||
filter: {
|
||||
workflowId: { eq: workflowId },
|
||||
},
|
||||
},
|
||||
},
|
||||
});
|
||||
|
||||
return null;
|
||||
};
|
||||
Reference in New Issue
Block a user