diff --git a/apps/sim/app/globals.css b/apps/sim/app/globals.css index 84891c0553..24dbca36cb 100644 --- a/apps/sim/app/globals.css +++ b/apps/sim/app/globals.css @@ -14,7 +14,8 @@ } .workflow-container .react-flow__node-loopNode, -.workflow-container .react-flow__node-parallelNode { +.workflow-container .react-flow__node-parallelNode, +.workflow-container .react-flow__node-subflowNode { z-index: -1 !important; } diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/index.ts b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/index.ts index fe1e8a2167..832d40c160 100644 --- a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/index.ts +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/index.ts @@ -2,8 +2,7 @@ export { ControlBar } from './control-bar/control-bar' export { ErrorBoundary } from './error/index' export { Panel } from './panel/panel' export { SkeletonLoading } from './skeleton-loading/skeleton-loading' -export { LoopNodeComponent } from './subflows/loop/loop-node' -export { ParallelNodeComponent } from './subflows/parallel/parallel-node' +export { SubflowNodeComponent } from './subflows/subflow-node' export { WandPromptBar } from './wand-prompt-bar/wand-prompt-bar' export { WorkflowBlock } from './workflow-block/workflow-block' export { WorkflowEdge } from './workflow-edge/workflow-edge' diff --git a/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/subflows/components/iteration-badges/iteration-badges.test.tsx b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/subflows/components/iteration-badges/iteration-badges.test.tsx new file mode 100644 index 0000000000..9071f63953 --- /dev/null +++ b/apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/subflows/components/iteration-badges/iteration-badges.test.tsx @@ -0,0 +1,388 @@ +import { beforeEach, describe, expect, it, vi } from 'vitest' + +// Mock hooks +const mockCollaborativeUpdates = { + collaborativeUpdateLoopType: vi.fn(), + collaborativeUpdateParallelType: vi.fn(), + collaborativeUpdateIterationCount: vi.fn(), + collaborativeUpdateIterationCollection: vi.fn(), +} + +const mockStoreData = { + loops: {}, + parallels: {}, +} + +vi.mock('@/hooks/use-collaborative-workflow', () => ({ + useCollaborativeWorkflow: () => mockCollaborativeUpdates, +})) + +vi.mock('@/stores/workflows/workflow/store', () => ({ + useWorkflowStore: () => mockStoreData, +})) + +vi.mock('@/components/ui/badge', () => ({ + Badge: ({ children, ...props }: any) => ( +
+ {children} +
+ ), +})) + +vi.mock('@/components/ui/input', () => ({ + Input: (props: any) => , +})) + +vi.mock('@/components/ui/popover', () => ({ + Popover: ({ children }: any) =>
{children}
, + PopoverContent: ({ children }: any) =>
{children}
, + PopoverTrigger: ({ children }: any) =>
{children}
, +})) + +vi.mock('@/components/ui/tag-dropdown', () => ({ + checkTagTrigger: vi.fn(() => ({ show: false })), + TagDropdown: ({ children }: any) =>
{children}
, +})) + +vi.mock('react-simple-code-editor', () => ({ + default: (props: any) =>