@uipath/apollo-react 4.12.1-pr556.9394355 → 4.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/canvas/components/AddNodePanel/AddNodeManager.cjs +7 -26
  2. package/dist/canvas/components/AddNodePanel/AddNodeManager.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/AddNodeManager.js +7 -26
  4. package/dist/canvas/components/AddNodePanel/createAddNodePreview.cjs +2 -2
  5. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts +1 -8
  6. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts.map +1 -1
  7. package/dist/canvas/components/AddNodePanel/createAddNodePreview.js +2 -2
  8. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +0 -1
  9. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  10. package/dist/canvas/components/BaseNode/BaseNode.cjs +3 -8
  11. package/dist/canvas/components/BaseNode/BaseNode.d.ts +1 -2
  12. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  13. package/dist/canvas/components/BaseNode/BaseNode.js +3 -5
  14. package/dist/canvas/components/ButtonHandle/ButtonHandle.cjs +34 -115
  15. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts +2 -4
  16. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts.map +1 -1
  17. package/dist/canvas/components/ButtonHandle/ButtonHandle.js +36 -117
  18. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.cjs +1 -48
  19. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts +0 -4
  20. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts.map +1 -1
  21. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.js +1 -36
  22. package/dist/canvas/components/ButtonHandle/SmartHandle.cjs +1 -1
  23. package/dist/canvas/components/ButtonHandle/SmartHandle.js +1 -1
  24. package/dist/canvas/components/Edges/SequenceEdge.cjs +2 -3
  25. package/dist/canvas/components/Edges/SequenceEdge.d.ts +2 -11
  26. package/dist/canvas/components/Edges/SequenceEdge.d.ts.map +1 -1
  27. package/dist/canvas/components/Edges/SequenceEdge.js +3 -4
  28. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.cjs +10 -20
  29. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts +0 -2
  30. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts.map +1 -1
  31. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.js +11 -21
  32. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.cjs +8 -5
  33. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.d.ts.map +1 -1
  34. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.js +8 -5
  35. package/dist/canvas/components/StageNode/DraggableTask.cjs +3 -2
  36. package/dist/canvas/components/StageNode/DraggableTask.js +3 -2
  37. package/dist/canvas/components/StageNode/DraggableTask.types.d.ts +1 -1
  38. package/dist/canvas/components/StageNode/DraggableTask.types.d.ts.map +1 -1
  39. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.cjs +11 -25
  40. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.d.ts +5 -5
  41. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.d.ts.map +1 -1
  42. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.js +11 -25
  43. package/dist/canvas/components/StageNode/StageNodeAllTaskGroups.cjs +50 -7
  44. package/dist/canvas/components/StageNode/StageNodeAllTaskGroups.d.ts.map +1 -1
  45. package/dist/canvas/components/StageNode/StageNodeAllTaskGroups.js +50 -7
  46. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.cjs +11 -25
  47. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.d.ts +5 -5
  48. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.d.ts.map +1 -1
  49. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.js +11 -25
  50. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.cjs +27 -20
  51. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.d.ts +6 -5
  52. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.d.ts.map +1 -1
  53. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.js +28 -21
  54. package/dist/canvas/components/StageNode/StageNodeTaskUtilities.cjs +11 -11
  55. package/dist/canvas/components/StageNode/StageNodeTaskUtilities.d.ts +11 -1
  56. package/dist/canvas/components/StageNode/StageNodeTaskUtilities.d.ts.map +1 -1
  57. package/dist/canvas/components/StageNode/StageNodeTaskUtilities.js +11 -11
  58. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.cjs +18 -20
  59. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts +1 -2
  60. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts.map +1 -1
  61. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.js +19 -21
  62. package/dist/canvas/components/index.cjs +20 -27
  63. package/dist/canvas/components/index.d.ts +0 -1
  64. package/dist/canvas/components/index.d.ts.map +1 -1
  65. package/dist/canvas/components/index.js +0 -1
  66. package/dist/canvas/core/NodeTypeRegistry.cjs +23 -41
  67. package/dist/canvas/core/NodeTypeRegistry.d.ts +4 -8
  68. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  69. package/dist/canvas/core/NodeTypeRegistry.js +23 -41
  70. package/dist/canvas/core/useNodeTypeRegistry.cjs +3 -4
  71. package/dist/canvas/core/useNodeTypeRegistry.d.ts +1 -1
  72. package/dist/canvas/core/useNodeTypeRegistry.d.ts.map +1 -1
  73. package/dist/canvas/core/useNodeTypeRegistry.js +3 -4
  74. package/dist/canvas/hooks/useAddNodeOnConnectEnd.cjs +3 -4
  75. package/dist/canvas/hooks/useAddNodeOnConnectEnd.d.ts.map +1 -1
  76. package/dist/canvas/hooks/useAddNodeOnConnectEnd.js +3 -4
  77. package/dist/canvas/hooks/usePreviewNode.cjs +2 -4
  78. package/dist/canvas/hooks/usePreviewNode.d.ts.map +1 -1
  79. package/dist/canvas/hooks/usePreviewNode.js +2 -4
  80. package/dist/canvas/schema/node-definition/handle.cjs +2 -10
  81. package/dist/canvas/schema/node-definition/handle.d.ts +0 -9
  82. package/dist/canvas/schema/node-definition/handle.d.ts.map +1 -1
  83. package/dist/canvas/schema/node-definition/handle.js +1 -6
  84. package/dist/canvas/schema/node-definition/index.cjs +1 -4
  85. package/dist/canvas/schema/node-definition/index.d.ts +3 -3
  86. package/dist/canvas/schema/node-definition/index.d.ts.map +1 -1
  87. package/dist/canvas/schema/node-definition/index.js +2 -2
  88. package/dist/canvas/schema/node-definition/node-manifest.d.ts +0 -4
  89. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  90. package/dist/canvas/storybook-utils/manifests/index.d.ts +0 -1
  91. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  92. package/dist/canvas/storybook-utils/manifests/node-definitions.d.ts.map +1 -1
  93. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  94. package/dist/canvas/utils/createPreviewNode.cjs +13 -29
  95. package/dist/canvas/utils/createPreviewNode.d.ts +1 -5
  96. package/dist/canvas/utils/createPreviewNode.d.ts.map +1 -1
  97. package/dist/canvas/utils/createPreviewNode.js +13 -23
  98. package/dist/canvas/utils/index.cjs +26 -33
  99. package/dist/canvas/utils/index.d.ts +1 -2
  100. package/dist/canvas/utils/index.d.ts.map +1 -1
  101. package/dist/canvas/utils/index.js +1 -2
  102. package/package.json +1 -1
  103. package/dist/canvas/components/LoopNode/LoopCanvasNode.cjs +0 -80
  104. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts +0 -6
  105. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts.map +0 -1
  106. package/dist/canvas/components/LoopNode/LoopCanvasNode.js +0 -46
  107. package/dist/canvas/components/LoopNode/LoopNode.cjs +0 -440
  108. package/dist/canvas/components/LoopNode/LoopNode.constants.cjs +0 -77
  109. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts +0 -12
  110. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts.map +0 -1
  111. package/dist/canvas/components/LoopNode/LoopNode.constants.js +0 -13
  112. package/dist/canvas/components/LoopNode/LoopNode.d.ts +0 -5
  113. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +0 -1
  114. package/dist/canvas/components/LoopNode/LoopNode.helpers.cjs +0 -110
  115. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts +0 -19
  116. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts.map +0 -1
  117. package/dist/canvas/components/LoopNode/LoopNode.helpers.js +0 -70
  118. package/dist/canvas/components/LoopNode/LoopNode.js +0 -406
  119. package/dist/canvas/components/LoopNode/LoopNode.types.cjs +0 -18
  120. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts +0 -16
  121. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts.map +0 -1
  122. package/dist/canvas/components/LoopNode/LoopNode.types.js +0 -0
  123. package/dist/canvas/components/LoopNode/LoopNodePreview.cjs +0 -81
  124. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts +0 -8
  125. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts.map +0 -1
  126. package/dist/canvas/components/LoopNode/LoopNodePreview.js +0 -44
  127. package/dist/canvas/components/LoopNode/index.cjs +0 -72
  128. package/dist/canvas/components/LoopNode/index.d.ts +0 -4
  129. package/dist/canvas/components/LoopNode/index.d.ts.map +0 -1
  130. package/dist/canvas/components/LoopNode/index.js +0 -3
  131. package/dist/canvas/utils/createPreviewGraph.cjs +0 -94
  132. package/dist/canvas/utils/createPreviewGraph.d.ts +0 -24
  133. package/dist/canvas/utils/createPreviewGraph.d.ts.map +0 -1
  134. package/dist/canvas/utils/createPreviewGraph.js +0 -51
@@ -34,7 +34,7 @@ const index_cjs_namespaceObject = require("../../core/index.cjs");
34
34
  const canvasStore_cjs_namespaceObject = require("../../stores/canvasStore.cjs");
35
35
  const CanvasEventBus_cjs_namespaceObject = require("../../utils/CanvasEventBus.cjs");
36
36
  const icon_registry_cjs_namespaceObject = require("../../utils/icon-registry.cjs");
37
- const LoopNodePreview_cjs_namespaceObject = require("../LoopNode/LoopNodePreview.cjs");
37
+ const createAddNodePreview_cjs_namespaceObject = require("../AddNodePanel/createAddNodePreview.cjs");
38
38
  const external_HierarchicalCanvas_cjs_namespaceObject = require("./HierarchicalCanvas.cjs");
39
39
  const createDemoCanvases = ()=>{
40
40
  const rootCanvas = {
@@ -332,10 +332,13 @@ const CanvasWithControlsContent = ({ initialCanvases, initialPath, onCanvasesCha
332
332
  const removeEdge = (0, canvasStore_cjs_namespaceObject.useCanvasStore)(canvasStore_cjs_namespaceObject.selectRemoveEdge);
333
333
  const updateNodes = (0, canvasStore_cjs_namespaceObject.useCanvasStore)(canvasStore_cjs_namespaceObject.selectUpdateNodes);
334
334
  (0, external_react_namespaceObject.useEffect)(()=>{
335
- const unsubscribe = CanvasEventBus_cjs_namespaceObject.canvasEventBus.on('handle:action', (event)=>{
336
- (0, LoopNodePreview_cjs_namespaceObject.applyHandleActionAddPreview)(event, reactFlowInstance);
337
- });
338
- return unsubscribe;
335
+ const handleAction = (event)=>{
336
+ if (reactFlowInstance) (0, createAddNodePreview_cjs_namespaceObject.createAddNodePreview)(event.nodeId, event.handleId, reactFlowInstance);
337
+ };
338
+ CanvasEventBus_cjs_namespaceObject.canvasEventBus.on('handle:action', handleAction);
339
+ return ()=>{
340
+ CanvasEventBus_cjs_namespaceObject.canvasEventBus.off('handle:action', handleAction);
341
+ };
339
342
  }, [
340
343
  reactFlowInstance
341
344
  ]);
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchicalCanvasWithControls.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAwd/B,eAAO,MAAM,8BAA8B,EAAE,KAAK,CAAC,EA8BlD,CAAC"}
1
+ {"version":3,"file":"HierarchicalCanvasWithControls.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA6d/B,eAAO,MAAM,8BAA8B,EAAE,KAAK,CAAC,EA8BlD,CAAC"}
@@ -6,7 +6,7 @@ import { NodeRegistryProvider } from "../../core/index.js";
6
6
  import { selectAddNode, selectCurrentCanvas, selectCurrentPathLength, selectRemoveEdge, selectRemoveNode, selectUpdateNodes, useCanvasStore } from "../../stores/canvasStore.js";
7
7
  import { canvasEventBus } from "../../utils/CanvasEventBus.js";
8
8
  import { CanvasIcon } from "../../utils/icon-registry.js";
9
- import { applyHandleActionAddPreview } from "../LoopNode/LoopNodePreview.js";
9
+ import { createAddNodePreview } from "../AddNodePanel/createAddNodePreview.js";
10
10
  import { HierarchicalCanvas } from "./HierarchicalCanvas.js";
11
11
  const createDemoCanvases = ()=>{
12
12
  const rootCanvas = {
@@ -304,10 +304,13 @@ const CanvasWithControlsContent = ({ initialCanvases, initialPath, onCanvasesCha
304
304
  const removeEdge = useCanvasStore(selectRemoveEdge);
305
305
  const updateNodes = useCanvasStore(selectUpdateNodes);
306
306
  useEffect(()=>{
307
- const unsubscribe = canvasEventBus.on('handle:action', (event)=>{
308
- applyHandleActionAddPreview(event, reactFlowInstance);
309
- });
310
- return unsubscribe;
307
+ const handleAction = (event)=>{
308
+ if (reactFlowInstance) createAddNodePreview(event.nodeId, event.handleId, reactFlowInstance);
309
+ };
310
+ canvasEventBus.on('handle:action', handleAction);
311
+ return ()=>{
312
+ canvasEventBus.off('handle:action', handleAction);
313
+ };
311
314
  }, [
312
315
  reactFlowInstance
313
316
  ]);
@@ -50,11 +50,12 @@ const DraggableTaskComponent = ({ task, taskExecution, isSelected, isParallel, g
50
50
  }, []);
51
51
  const handleGetContextMenuItems = (0, external_react_namespaceObject.useCallback)(()=>{
52
52
  if (!getContextMenuItems) return [];
53
- return getContextMenuItems(groupIndex, taskIndex);
53
+ return getContextMenuItems(groupIndex, taskIndex, task.id);
54
54
  }, [
55
55
  getContextMenuItems,
56
56
  groupIndex,
57
- taskIndex
57
+ taskIndex,
58
+ task.id
58
59
  ]);
59
60
  const { attributes, listeners, setNodeRef, transition, transform, isDragging } = (0, sortable_namespaceObject.useSortable)({
60
61
  id: task.id,
@@ -22,11 +22,12 @@ const DraggableTaskComponent = ({ task, taskExecution, isSelected, isParallel, g
22
22
  }, []);
23
23
  const handleGetContextMenuItems = useCallback(()=>{
24
24
  if (!getContextMenuItems) return [];
25
- return getContextMenuItems(groupIndex, taskIndex);
25
+ return getContextMenuItems(groupIndex, taskIndex, task.id);
26
26
  }, [
27
27
  getContextMenuItems,
28
28
  groupIndex,
29
- taskIndex
29
+ taskIndex,
30
+ task.id
30
31
  ]);
31
32
  const { attributes, listeners, setNodeRef, transition, transform, isDragging } = useSortable({
32
33
  id: task.id,
@@ -7,7 +7,7 @@ export interface DraggableTaskProps {
7
7
  isParallel: boolean;
8
8
  groupIndex: number;
9
9
  taskIndex: number;
10
- getContextMenuItems?: (groupIndex: number, taskIndex: number) => NodeMenuItem[];
10
+ getContextMenuItems?: (groupIndex: number, taskIndex: number, taskId: string) => NodeMenuItem[];
11
11
  onTaskClick: (e: React.MouseEvent, taskId: string) => void;
12
12
  onTaskPlay?: (taskId: string) => Promise<void>;
13
13
  isDragDisabled?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"DraggableTask.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/DraggableTask.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE3E,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,YAAY,EAAE,CAAC;IAChF,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
1
+ {"version":3,"file":"DraggableTask.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/DraggableTask.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAE3E,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,OAAO,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,mBAAmB,CAAC,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,YAAY,EAAE,CAAC;IAChG,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB"}
@@ -28,34 +28,20 @@ __webpack_require__.d(__webpack_exports__, {
28
28
  });
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const external_react_namespaceObject = require("react");
31
- const GroupModificationUtils_cjs_namespaceObject = require("../../utils/GroupModificationUtils.cjs");
32
31
  const external_AdhocTask_cjs_namespaceObject = require("./AdhocTask.cjs");
33
32
  const external_StageNode_styles_cjs_namespaceObject = require("./StageNode.styles.cjs");
34
- const external_StageNodeTaskUtilities_cjs_namespaceObject = require("./StageNodeTaskUtilities.cjs");
35
- const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask })=>{
36
- const { execution, onTaskClick, onTaskGroupModification, onReplaceTaskFromToolbox, onTaskPlay, loadingTaskIds } = props;
37
- const getAdhocContextMenuItems = (0, external_react_namespaceObject.useCallback)((groupIndex, taskIndex, taskId)=>{
33
+ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask })=>{
34
+ const { execution, onTaskGroupModification, onReplaceTaskFromToolbox, onTaskPlay, loadingTaskIds } = props;
35
+ const getAdhocContextMenuItems = (0, external_react_namespaceObject.useCallback)((taskId)=>{
38
36
  const items = [];
39
- if (onReplaceTaskFromToolbox) items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('replace-task', 'Replace task', ()=>{
40
- taskStateReference.current = {
41
- isParallel: false,
42
- groupIndex,
43
- taskIndex
44
- };
45
- onTaskClick?.(taskId);
46
- setIsReplacingTask(true);
47
- }));
48
- if (onTaskGroupModification) {
49
- if (items.length > 0) items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getDivider)());
50
- items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('remove-task', 'Delete task', ()=>onTaskGroupModification(GroupModificationUtils_cjs_namespaceObject.GroupModificationType.REMOVE_TASK, groupIndex, taskIndex)));
51
- }
37
+ const replaceTaskMenuItem = generateReplaceTaskMenuItemForTask(taskId, false);
38
+ if (replaceTaskMenuItem) items.push(replaceTaskMenuItem);
39
+ const deleteTaskMenuItem = generateDeleteTaskMenuItemForTask(taskId);
40
+ if (deleteTaskMenuItem) items.push(deleteTaskMenuItem);
52
41
  return items;
53
42
  }, [
54
- onReplaceTaskFromToolbox,
55
- onTaskClick,
56
- onTaskGroupModification,
57
- setIsReplacingTask,
58
- taskStateReference
43
+ generateReplaceTaskMenuItemForTask,
44
+ generateDeleteTaskMenuItemForTask
59
45
  ]);
60
46
  if (0 === adhocTasks.length) return null;
61
47
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageAdditionalTasksSection, {
@@ -70,7 +56,7 @@ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selected
70
56
  })
71
57
  }),
72
58
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageTaskList, {
73
- children: adhocTasks.map(({ task, groupIndex, taskIndex })=>{
59
+ children: adhocTasks.map(({ task })=>{
74
60
  const taskExecution = execution?.taskStatus?.[task.id];
75
61
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_AdhocTask_cjs_namespaceObject.AdhocTaskItem, {
76
62
  task: task,
@@ -80,7 +66,7 @@ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selected
80
66
  onTaskPlay: onTaskPlay,
81
67
  isTaskLoading: loadingTaskIds?.has(task.id),
82
68
  ...(onTaskGroupModification || onReplaceTaskFromToolbox) && !isReadOnly && {
83
- getContextMenuItems: ()=>getAdhocContextMenuItems(groupIndex, taskIndex, task.id)
69
+ getContextMenuItems: ()=>getAdhocContextMenuItems(task.id)
84
70
  }
85
71
  }, task.id);
86
72
  })
@@ -1,13 +1,13 @@
1
- import { RefObject } from 'react';
2
- import type { StageNodeProps, StageTaskGroup, TaskStateReference } from './StageNode.types';
3
- export declare const StageNodeAdhocTaskGroups: import("react").MemoExoticComponent<({ props, adhocTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask, }: {
1
+ import type { NodeMenuItem } from '../NodeContextMenu';
2
+ import type { StageNodeProps, StageTaskGroup } from './StageNode.types';
3
+ export declare const StageNodeAdhocTaskGroups: import("react").MemoExoticComponent<({ props, adhocTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask, }: {
4
4
  props: StageNodeProps;
5
5
  adhocTasks: StageTaskGroup[];
6
6
  isReadOnly: boolean;
7
7
  selectedTaskId?: string;
8
- taskStateReference: RefObject<TaskStateReference>;
9
8
  marginTop: string;
10
9
  handleTaskClick: (e: React.MouseEvent, taskElementId: string) => void;
11
- setIsReplacingTask: (isReplacingTask: boolean) => void;
10
+ generateReplaceTaskMenuItemForTask: (taskId: string, isParallel: boolean) => NodeMenuItem | undefined;
11
+ generateDeleteTaskMenuItemForTask: (taskId: string) => NodeMenuItem | undefined;
12
12
  }) => import("react/jsx-runtime").JSX.Element | null>;
13
13
  //# sourceMappingURL=StageNodeAdhocTaskGroups.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StageNodeAdhocTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeAdhocTaskGroups.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,SAAS,EAAe,MAAM,OAAO,CAAC;AASrD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAwG5F,eAAO,MAAM,wBAAwB,+JA5FlC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,kBAAkB,EAAE,CAAC,eAAe,EAAE,OAAO,KAAK,IAAI,CAAC;CACxD,oDAmF0E,CAAC"}
1
+ {"version":3,"file":"StageNodeAdhocTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeAdhocTaskGroups.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOvD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAqFxE,eAAO,MAAM,wBAAwB,8LA1ElC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,cAAc,EAAE,CAAC;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,kCAAkC,EAAE,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,KAChB,YAAY,GAAG,SAAS,CAAC;IAC9B,iCAAiC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;CACjF,oDA8D0E,CAAC"}
@@ -1,33 +1,19 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { memo, useCallback } from "react";
3
- import { GroupModificationType } from "../../utils/GroupModificationUtils.js";
4
3
  import { AdhocTaskItem } from "./AdhocTask.js";
5
4
  import { StageAdditionalTasksHeaderSection, StageAdditionalTasksSection, StageTaskList } from "./StageNode.styles.js";
6
- import { getDivider, getMenuItem } from "./StageNodeTaskUtilities.js";
7
- const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask })=>{
8
- const { execution, onTaskClick, onTaskGroupModification, onReplaceTaskFromToolbox, onTaskPlay, loadingTaskIds } = props;
9
- const getAdhocContextMenuItems = useCallback((groupIndex, taskIndex, taskId)=>{
5
+ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask })=>{
6
+ const { execution, onTaskGroupModification, onReplaceTaskFromToolbox, onTaskPlay, loadingTaskIds } = props;
7
+ const getAdhocContextMenuItems = useCallback((taskId)=>{
10
8
  const items = [];
11
- if (onReplaceTaskFromToolbox) items.push(getMenuItem('replace-task', 'Replace task', ()=>{
12
- taskStateReference.current = {
13
- isParallel: false,
14
- groupIndex,
15
- taskIndex
16
- };
17
- onTaskClick?.(taskId);
18
- setIsReplacingTask(true);
19
- }));
20
- if (onTaskGroupModification) {
21
- if (items.length > 0) items.push(getDivider());
22
- items.push(getMenuItem('remove-task', 'Delete task', ()=>onTaskGroupModification(GroupModificationType.REMOVE_TASK, groupIndex, taskIndex)));
23
- }
9
+ const replaceTaskMenuItem = generateReplaceTaskMenuItemForTask(taskId, false);
10
+ if (replaceTaskMenuItem) items.push(replaceTaskMenuItem);
11
+ const deleteTaskMenuItem = generateDeleteTaskMenuItemForTask(taskId);
12
+ if (deleteTaskMenuItem) items.push(deleteTaskMenuItem);
24
13
  return items;
25
14
  }, [
26
- onReplaceTaskFromToolbox,
27
- onTaskClick,
28
- onTaskGroupModification,
29
- setIsReplacingTask,
30
- taskStateReference
15
+ generateReplaceTaskMenuItemForTask,
16
+ generateDeleteTaskMenuItemForTask
31
17
  ]);
32
18
  if (0 === adhocTasks.length) return null;
33
19
  return /*#__PURE__*/ jsxs(StageAdditionalTasksSection, {
@@ -42,7 +28,7 @@ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selected
42
28
  })
43
29
  }),
44
30
  /*#__PURE__*/ jsx(StageTaskList, {
45
- children: adhocTasks.map(({ task, groupIndex, taskIndex })=>{
31
+ children: adhocTasks.map(({ task })=>{
46
32
  const taskExecution = execution?.taskStatus?.[task.id];
47
33
  return /*#__PURE__*/ jsx(AdhocTaskItem, {
48
34
  task: task,
@@ -52,7 +38,7 @@ const StageNodeAdhocTaskGroupsInner = ({ props, adhocTasks, isReadOnly, selected
52
38
  onTaskPlay: onTaskPlay,
53
39
  isTaskLoading: loadingTaskIds?.has(task.id),
54
40
  ...(onTaskGroupModification || onReplaceTaskFromToolbox) && !isReadOnly && {
55
- getContextMenuItems: ()=>getAdhocContextMenuItems(groupIndex, taskIndex, task.id)
41
+ getContextMenuItems: ()=>getAdhocContextMenuItems(task.id)
56
42
  }
57
43
  }, task.id);
58
44
  })
@@ -31,11 +31,13 @@ const apollo_core_namespaceObject = require("@uipath/apollo-core");
31
31
  const index_cjs_namespaceObject = require("../../layouts/index.cjs");
32
32
  const apollo_wind_namespaceObject = require("@uipath/apollo-wind");
33
33
  const external_react_namespaceObject = require("react");
34
+ const external_utils_index_cjs_namespaceObject = require("../../utils/index.cjs");
34
35
  const useStageTasksByGroups_cjs_namespaceObject = require("./hooks/useStageTasksByGroups.cjs");
35
36
  const external_StageNode_styles_cjs_namespaceObject = require("./StageNode.styles.cjs");
36
37
  const external_StageNodeAdhocTaskGroups_cjs_namespaceObject = require("./StageNodeAdhocTaskGroups.cjs");
37
38
  const external_StageNodeEventDrivenTaskGroups_cjs_namespaceObject = require("./StageNodeEventDrivenTaskGroups.cjs");
38
39
  const external_StageNodeSequentialTaskGroups_cjs_namespaceObject = require("./StageNodeSequentialTaskGroups.cjs");
40
+ const external_StageNodeTaskUtilities_cjs_namespaceObject = require("./StageNodeTaskUtilities.cjs");
39
41
  const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskStateReference, setSelectedNodeId, handleTaskAddClick, setIsReplacingTask })=>{
40
42
  const { id, stageDetails, onTaskAdd, onAddTaskFromToolbox, onTaskClick, onTaskGroupModification, onTaskReorder, onReplaceTaskFromToolbox } = props;
41
43
  const allTasks = (0, external_react_namespaceObject.useMemo)(()=>stageDetails?.tasks || [], [
@@ -66,6 +68,47 @@ const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskSt
66
68
  setSelectedNodeId,
67
69
  id
68
70
  ]);
71
+ const generateReplaceTaskMenuItemForTask = (0, external_react_namespaceObject.useCallback)((taskId, isParallel)=>{
72
+ if (!onReplaceTaskFromToolbox) return;
73
+ let groupIndex;
74
+ let taskIndex;
75
+ for (const [allTasksGroupIndex, group] of allTasks.entries())for (const [allTasksTaskIndex, task] of group.entries())if (task.id === taskId) {
76
+ groupIndex = allTasksGroupIndex;
77
+ taskIndex = allTasksTaskIndex;
78
+ break;
79
+ }
80
+ if (void 0 === groupIndex || void 0 === taskIndex) return;
81
+ return (0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('replace-task', 'Replace task', ()=>{
82
+ taskStateReference.current = {
83
+ isParallel,
84
+ groupIndex,
85
+ taskIndex
86
+ };
87
+ onTaskClick?.(taskId);
88
+ setIsReplacingTask(true);
89
+ });
90
+ }, [
91
+ onReplaceTaskFromToolbox,
92
+ allTasks,
93
+ onTaskClick,
94
+ setIsReplacingTask,
95
+ taskStateReference
96
+ ]);
97
+ const generateDeleteTaskMenuItemForTask = (0, external_react_namespaceObject.useCallback)((taskId)=>{
98
+ if (!onTaskGroupModification) return;
99
+ let groupIndex;
100
+ let taskIndex;
101
+ for (const [allTasksGroupIndex, group] of allTasks.entries())for (const [allTasksTaskIndex, task] of group.entries())if (task.id === taskId) {
102
+ groupIndex = allTasksGroupIndex;
103
+ taskIndex = allTasksTaskIndex;
104
+ break;
105
+ }
106
+ if (void 0 === groupIndex || void 0 === taskIndex) return;
107
+ return (0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('remove-task', 'Delete task', ()=>onTaskGroupModification(external_utils_index_cjs_namespaceObject.GroupModificationType.REMOVE_TASK, groupIndex, taskIndex));
108
+ }, [
109
+ allTasks,
110
+ onTaskGroupModification
111
+ ]);
69
112
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageContent, {
70
113
  children: 0 === sequentialTaskGroups.length && 0 === adhocTaskGroups.length && 0 === eventDrivenTaskGroups.length ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.Column, {
71
114
  py: 2,
@@ -89,31 +132,31 @@ const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskSt
89
132
  isReadOnly: isReadOnly,
90
133
  selectedTaskId: selectedTaskId,
91
134
  taskWidthStyle: taskWidthStyle,
92
- taskStateReference: taskStateReference,
93
135
  hasContextMenu: hasContextMenu,
94
136
  handleTaskClick: handleTaskClick,
95
- setIsReplacingTask: setIsReplacingTask,
96
- handleReorderSequentialTasks: handleReorderSequentialTasks
137
+ handleReorderSequentialTasks: handleReorderSequentialTasks,
138
+ allTasks: allTasks,
139
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask
97
140
  }),
98
141
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNodeEventDrivenTaskGroups_cjs_namespaceObject.StageNodeEventDrivenTaskGroups, {
99
142
  props: props,
100
143
  eventDrivenTasks: eventDrivenTasks,
101
144
  isReadOnly: isReadOnly,
102
145
  selectedTaskId: selectedTaskId,
103
- taskStateReference: taskStateReference,
104
146
  marginTop: sequentialTaskGroups.length > 0 ? apollo_core_namespaceObject.Spacing.SpacingS : '0px',
105
147
  handleTaskClick: handleTaskClick,
106
- setIsReplacingTask: setIsReplacingTask
148
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask,
149
+ generateDeleteTaskMenuItemForTask: generateDeleteTaskMenuItemForTask
107
150
  }),
108
151
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNodeAdhocTaskGroups_cjs_namespaceObject.StageNodeAdhocTaskGroups, {
109
152
  props: props,
110
153
  adhocTasks: adhocTasks,
111
154
  isReadOnly: isReadOnly,
112
155
  selectedTaskId: selectedTaskId,
113
- taskStateReference: taskStateReference,
114
156
  marginTop: sequentialTaskGroups.length > 0 || eventDrivenTaskGroups.length > 0 ? apollo_core_namespaceObject.Spacing.SpacingS : '0px',
115
157
  handleTaskClick: handleTaskClick,
116
- setIsReplacingTask: setIsReplacingTask
158
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask,
159
+ generateDeleteTaskMenuItemForTask: generateDeleteTaskMenuItemForTask
117
160
  })
118
161
  ]
119
162
  })
@@ -1 +1 @@
1
- {"version":3,"file":"StageNodeAllTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeAllTaskGroups.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAQ,SAAS,EAAwB,MAAM,OAAO,CAAC;AAG7E,OAAO,KAAK,EAAE,cAAc,EAAiB,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAiI3F,eAAO,MAAM,sBAAsB,8JApHhC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAClD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,kBAAkB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACtD,kBAAkB,EAAE,CAAC,eAAe,EAAE,OAAO,KAAK,IAAI,CAAC;CACxD,6CA4GsE,CAAC"}
1
+ {"version":3,"file":"StageNodeAllTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeAllTaskGroups.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAQ,SAAS,EAAwB,MAAM,OAAO,CAAC;AAI7E,OAAO,KAAK,EAAE,cAAc,EAAiB,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAgM3F,eAAO,MAAM,sBAAsB,8JAlLhC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAClD,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,kBAAkB,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACtD,kBAAkB,EAAE,CAAC,eAAe,EAAE,OAAO,KAAK,IAAI,CAAC;CACxD,6CA0KsE,CAAC"}
@@ -3,11 +3,13 @@ import { Spacing } from "@uipath/apollo-core";
3
3
  import { Column } from "../../layouts/index.js";
4
4
  import { Button } from "@uipath/apollo-wind";
5
5
  import { memo, useCallback, useMemo } from "react";
6
+ import { GroupModificationType } from "../../utils/index.js";
6
7
  import { useStageTasksByGroups } from "./hooks/useStageTasksByGroups.js";
7
8
  import { StageContent } from "./StageNode.styles.js";
8
9
  import { StageNodeAdhocTaskGroups } from "./StageNodeAdhocTaskGroups.js";
9
10
  import { StageNodeEventDrivenTaskGroups } from "./StageNodeEventDrivenTaskGroups.js";
10
11
  import { StageNodeSequentialTaskGroups } from "./StageNodeSequentialTaskGroups.js";
12
+ import { getMenuItem } from "./StageNodeTaskUtilities.js";
11
13
  const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskStateReference, setSelectedNodeId, handleTaskAddClick, setIsReplacingTask })=>{
12
14
  const { id, stageDetails, onTaskAdd, onAddTaskFromToolbox, onTaskClick, onTaskGroupModification, onTaskReorder, onReplaceTaskFromToolbox } = props;
13
15
  const allTasks = useMemo(()=>stageDetails?.tasks || [], [
@@ -38,6 +40,47 @@ const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskSt
38
40
  setSelectedNodeId,
39
41
  id
40
42
  ]);
43
+ const generateReplaceTaskMenuItemForTask = useCallback((taskId, isParallel)=>{
44
+ if (!onReplaceTaskFromToolbox) return;
45
+ let groupIndex;
46
+ let taskIndex;
47
+ for (const [allTasksGroupIndex, group] of allTasks.entries())for (const [allTasksTaskIndex, task] of group.entries())if (task.id === taskId) {
48
+ groupIndex = allTasksGroupIndex;
49
+ taskIndex = allTasksTaskIndex;
50
+ break;
51
+ }
52
+ if (void 0 === groupIndex || void 0 === taskIndex) return;
53
+ return getMenuItem('replace-task', 'Replace task', ()=>{
54
+ taskStateReference.current = {
55
+ isParallel,
56
+ groupIndex,
57
+ taskIndex
58
+ };
59
+ onTaskClick?.(taskId);
60
+ setIsReplacingTask(true);
61
+ });
62
+ }, [
63
+ onReplaceTaskFromToolbox,
64
+ allTasks,
65
+ onTaskClick,
66
+ setIsReplacingTask,
67
+ taskStateReference
68
+ ]);
69
+ const generateDeleteTaskMenuItemForTask = useCallback((taskId)=>{
70
+ if (!onTaskGroupModification) return;
71
+ let groupIndex;
72
+ let taskIndex;
73
+ for (const [allTasksGroupIndex, group] of allTasks.entries())for (const [allTasksTaskIndex, task] of group.entries())if (task.id === taskId) {
74
+ groupIndex = allTasksGroupIndex;
75
+ taskIndex = allTasksTaskIndex;
76
+ break;
77
+ }
78
+ if (void 0 === groupIndex || void 0 === taskIndex) return;
79
+ return getMenuItem('remove-task', 'Delete task', ()=>onTaskGroupModification(GroupModificationType.REMOVE_TASK, groupIndex, taskIndex));
80
+ }, [
81
+ allTasks,
82
+ onTaskGroupModification
83
+ ]);
41
84
  return /*#__PURE__*/ jsx(StageContent, {
42
85
  children: 0 === sequentialTaskGroups.length && 0 === adhocTaskGroups.length && 0 === eventDrivenTaskGroups.length ? /*#__PURE__*/ jsx(Column, {
43
86
  py: 2,
@@ -61,31 +104,31 @@ const StageNodeAllTaskGroupsInner = ({ props, isReadOnly, taskWidthStyle, taskSt
61
104
  isReadOnly: isReadOnly,
62
105
  selectedTaskId: selectedTaskId,
63
106
  taskWidthStyle: taskWidthStyle,
64
- taskStateReference: taskStateReference,
65
107
  hasContextMenu: hasContextMenu,
66
108
  handleTaskClick: handleTaskClick,
67
- setIsReplacingTask: setIsReplacingTask,
68
- handleReorderSequentialTasks: handleReorderSequentialTasks
109
+ handleReorderSequentialTasks: handleReorderSequentialTasks,
110
+ allTasks: allTasks,
111
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask
69
112
  }),
70
113
  /*#__PURE__*/ jsx(StageNodeEventDrivenTaskGroups, {
71
114
  props: props,
72
115
  eventDrivenTasks: eventDrivenTasks,
73
116
  isReadOnly: isReadOnly,
74
117
  selectedTaskId: selectedTaskId,
75
- taskStateReference: taskStateReference,
76
118
  marginTop: sequentialTaskGroups.length > 0 ? Spacing.SpacingS : '0px',
77
119
  handleTaskClick: handleTaskClick,
78
- setIsReplacingTask: setIsReplacingTask
120
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask,
121
+ generateDeleteTaskMenuItemForTask: generateDeleteTaskMenuItemForTask
79
122
  }),
80
123
  /*#__PURE__*/ jsx(StageNodeAdhocTaskGroups, {
81
124
  props: props,
82
125
  adhocTasks: adhocTasks,
83
126
  isReadOnly: isReadOnly,
84
127
  selectedTaskId: selectedTaskId,
85
- taskStateReference: taskStateReference,
86
128
  marginTop: sequentialTaskGroups.length > 0 || eventDrivenTaskGroups.length > 0 ? Spacing.SpacingS : '0px',
87
129
  handleTaskClick: handleTaskClick,
88
- setIsReplacingTask: setIsReplacingTask
130
+ generateReplaceTaskMenuItemForTask: generateReplaceTaskMenuItemForTask,
131
+ generateDeleteTaskMenuItemForTask: generateDeleteTaskMenuItemForTask
89
132
  })
90
133
  ]
91
134
  })
@@ -28,34 +28,20 @@ __webpack_require__.d(__webpack_exports__, {
28
28
  });
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const external_react_namespaceObject = require("react");
31
- const GroupModificationUtils_cjs_namespaceObject = require("../../utils/GroupModificationUtils.cjs");
32
31
  const external_EventDrivenTask_cjs_namespaceObject = require("./EventDrivenTask.cjs");
33
32
  const external_StageNode_styles_cjs_namespaceObject = require("./StageNode.styles.cjs");
34
- const external_StageNodeTaskUtilities_cjs_namespaceObject = require("./StageNodeTaskUtilities.cjs");
35
- const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask })=>{
36
- const { execution, onTaskClick, onTaskGroupModification, onReplaceTaskFromToolbox, loadingTaskIds } = props;
37
- const getEventDrivenContextMenuItems = (0, external_react_namespaceObject.useCallback)((groupIndex, taskIndex, taskId)=>{
33
+ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask })=>{
34
+ const { execution, onTaskGroupModification, onReplaceTaskFromToolbox, loadingTaskIds } = props;
35
+ const getEventDrivenContextMenuItems = (0, external_react_namespaceObject.useCallback)((taskId)=>{
38
36
  const items = [];
39
- if (onReplaceTaskFromToolbox) items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('replace-task', 'Replace task', ()=>{
40
- taskStateReference.current = {
41
- isParallel: false,
42
- groupIndex,
43
- taskIndex
44
- };
45
- onTaskClick?.(taskId);
46
- setIsReplacingTask(true);
47
- }));
48
- if (onTaskGroupModification) {
49
- if (items.length > 0) items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getDivider)());
50
- items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('remove-task', 'Delete task', ()=>onTaskGroupModification(GroupModificationUtils_cjs_namespaceObject.GroupModificationType.REMOVE_TASK, groupIndex, taskIndex)));
51
- }
37
+ const replaceTaskMenuItem = generateReplaceTaskMenuItemForTask(taskId, false);
38
+ if (replaceTaskMenuItem) items.push(replaceTaskMenuItem);
39
+ const deleteTaskMenuItem = generateDeleteTaskMenuItemForTask(taskId);
40
+ if (deleteTaskMenuItem) items.push(deleteTaskMenuItem);
52
41
  return items;
53
42
  }, [
54
- onReplaceTaskFromToolbox,
55
- onTaskClick,
56
- onTaskGroupModification,
57
- setIsReplacingTask,
58
- taskStateReference
43
+ generateReplaceTaskMenuItemForTask,
44
+ generateDeleteTaskMenuItemForTask
59
45
  ]);
60
46
  if (0 === eventDrivenTasks.length) return null;
61
47
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageAdditionalTasksSection, {
@@ -70,7 +56,7 @@ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOn
70
56
  })
71
57
  }),
72
58
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageTaskList, {
73
- children: eventDrivenTasks.map(({ task, groupIndex, taskIndex })=>{
59
+ children: eventDrivenTasks.map(({ task })=>{
74
60
  const taskExecution = execution?.taskStatus?.[task.id];
75
61
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_EventDrivenTask_cjs_namespaceObject.EventDrivenTaskItem, {
76
62
  task: task,
@@ -79,7 +65,7 @@ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOn
79
65
  onTaskClick: handleTaskClick,
80
66
  isTaskLoading: loadingTaskIds?.has(task.id),
81
67
  ...(onTaskGroupModification || onReplaceTaskFromToolbox) && !isReadOnly && {
82
- getContextMenuItems: ()=>getEventDrivenContextMenuItems(groupIndex, taskIndex, task.id)
68
+ getContextMenuItems: ()=>getEventDrivenContextMenuItems(task.id)
83
69
  }
84
70
  }, task.id);
85
71
  })
@@ -1,13 +1,13 @@
1
- import { RefObject } from 'react';
2
- import type { StageNodeProps, StageTaskGroup, TaskStateReference } from './StageNode.types';
3
- export declare const StageNodeEventDrivenTaskGroups: import("react").MemoExoticComponent<({ props, eventDrivenTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask, }: {
1
+ import type { NodeMenuItem } from '../NodeContextMenu';
2
+ import type { StageNodeProps, StageTaskGroup } from './StageNode.types';
3
+ export declare const StageNodeEventDrivenTaskGroups: import("react").MemoExoticComponent<({ props, eventDrivenTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask, }: {
4
4
  props: StageNodeProps;
5
5
  eventDrivenTasks: StageTaskGroup[];
6
6
  isReadOnly: boolean;
7
7
  selectedTaskId?: string;
8
- taskStateReference: RefObject<TaskStateReference>;
9
8
  marginTop: string;
10
9
  handleTaskClick: (e: React.MouseEvent, taskElementId: string) => void;
11
- setIsReplacingTask: (isReplacingTask: boolean) => void;
10
+ generateReplaceTaskMenuItemForTask: (taskId: string, isParallel: boolean) => NodeMenuItem | undefined;
11
+ generateDeleteTaskMenuItemForTask: (taskId: string) => NodeMenuItem | undefined;
12
12
  }) => import("react/jsx-runtime").JSX.Element | null>;
13
13
  //# sourceMappingURL=StageNodeEventDrivenTaskGroups.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StageNodeEventDrivenTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAQ,SAAS,EAAe,MAAM,OAAO,CAAC;AASrD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAsG5F,eAAO,MAAM,8BAA8B,qKA1FxC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAClD,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,kBAAkB,EAAE,CAAC,eAAe,EAAE,OAAO,KAAK,IAAI,CAAC;CACxD,oDAiFsF,CAAC"}
1
+ {"version":3,"file":"StageNodeEventDrivenTaskGroups.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOvD,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AA8ExE,eAAO,MAAM,8BAA8B,oMAnExC;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,gBAAgB,EAAE,cAAc,EAAE,CAAC;IACnC,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,KAAK,IAAI,CAAC;IACtE,kCAAkC,EAAE,CAClC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,KAChB,YAAY,GAAG,SAAS,CAAC;IAC9B,iCAAiC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,YAAY,GAAG,SAAS,CAAC;CACjF,oDAuDsF,CAAC"}
@@ -1,33 +1,19 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { memo, useCallback } from "react";
3
- import { GroupModificationType } from "../../utils/GroupModificationUtils.js";
4
3
  import { EventDrivenTaskItem } from "./EventDrivenTask.js";
5
4
  import { StageAdditionalTasksHeaderSection, StageAdditionalTasksSection, StageTaskList } from "./StageNode.styles.js";
6
- import { getDivider, getMenuItem } from "./StageNodeTaskUtilities.js";
7
- const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOnly, selectedTaskId, taskStateReference, marginTop, handleTaskClick, setIsReplacingTask })=>{
8
- const { execution, onTaskClick, onTaskGroupModification, onReplaceTaskFromToolbox, loadingTaskIds } = props;
9
- const getEventDrivenContextMenuItems = useCallback((groupIndex, taskIndex, taskId)=>{
5
+ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOnly, selectedTaskId, marginTop, handleTaskClick, generateReplaceTaskMenuItemForTask, generateDeleteTaskMenuItemForTask })=>{
6
+ const { execution, onTaskGroupModification, onReplaceTaskFromToolbox, loadingTaskIds } = props;
7
+ const getEventDrivenContextMenuItems = useCallback((taskId)=>{
10
8
  const items = [];
11
- if (onReplaceTaskFromToolbox) items.push(getMenuItem('replace-task', 'Replace task', ()=>{
12
- taskStateReference.current = {
13
- isParallel: false,
14
- groupIndex,
15
- taskIndex
16
- };
17
- onTaskClick?.(taskId);
18
- setIsReplacingTask(true);
19
- }));
20
- if (onTaskGroupModification) {
21
- if (items.length > 0) items.push(getDivider());
22
- items.push(getMenuItem('remove-task', 'Delete task', ()=>onTaskGroupModification(GroupModificationType.REMOVE_TASK, groupIndex, taskIndex)));
23
- }
9
+ const replaceTaskMenuItem = generateReplaceTaskMenuItemForTask(taskId, false);
10
+ if (replaceTaskMenuItem) items.push(replaceTaskMenuItem);
11
+ const deleteTaskMenuItem = generateDeleteTaskMenuItemForTask(taskId);
12
+ if (deleteTaskMenuItem) items.push(deleteTaskMenuItem);
24
13
  return items;
25
14
  }, [
26
- onReplaceTaskFromToolbox,
27
- onTaskClick,
28
- onTaskGroupModification,
29
- setIsReplacingTask,
30
- taskStateReference
15
+ generateReplaceTaskMenuItemForTask,
16
+ generateDeleteTaskMenuItemForTask
31
17
  ]);
32
18
  if (0 === eventDrivenTasks.length) return null;
33
19
  return /*#__PURE__*/ jsxs(StageAdditionalTasksSection, {
@@ -42,7 +28,7 @@ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOn
42
28
  })
43
29
  }),
44
30
  /*#__PURE__*/ jsx(StageTaskList, {
45
- children: eventDrivenTasks.map(({ task, groupIndex, taskIndex })=>{
31
+ children: eventDrivenTasks.map(({ task })=>{
46
32
  const taskExecution = execution?.taskStatus?.[task.id];
47
33
  return /*#__PURE__*/ jsx(EventDrivenTaskItem, {
48
34
  task: task,
@@ -51,7 +37,7 @@ const StageNodeEventDrivenTaskGroupsInner = ({ props, eventDrivenTasks, isReadOn
51
37
  onTaskClick: handleTaskClick,
52
38
  isTaskLoading: loadingTaskIds?.has(task.id),
53
39
  ...(onTaskGroupModification || onReplaceTaskFromToolbox) && !isReadOnly && {
54
- getContextMenuItems: ()=>getEventDrivenContextMenuItems(groupIndex, taskIndex, task.id)
40
+ getContextMenuItems: ()=>getEventDrivenContextMenuItems(task.id)
55
41
  }
56
42
  }, task.id);
57
43
  })