@uipath/apollo-react 3.63.1 → 3.64.0-pr431.cb6b0b8
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.
- package/dist/canvas/components/CanvasPerformance.stories.cjs +361 -0
- package/dist/canvas/components/CanvasPerformance.stories.d.ts +6 -0
- package/dist/canvas/components/CanvasPerformance.stories.d.ts.map +1 -0
- package/dist/canvas/components/CanvasPerformance.stories.js +324 -0
- package/dist/canvas/components/NodePropertiesPanel/hooks/index.cjs +4 -1
- package/dist/canvas/components/NodePropertiesPanel/hooks/index.d.ts +1 -1
- package/dist/canvas/components/NodePropertiesPanel/hooks/index.d.ts.map +1 -1
- package/dist/canvas/components/NodePropertiesPanel/hooks/index.js +2 -2
- package/dist/canvas/components/NodePropertiesPanel/hooks/useNodeSelection.cjs +27 -6
- package/dist/canvas/components/NodePropertiesPanel/hooks/useNodeSelection.d.ts +3 -0
- package/dist/canvas/components/NodePropertiesPanel/hooks/useNodeSelection.d.ts.map +1 -1
- package/dist/canvas/components/NodePropertiesPanel/hooks/useNodeSelection.js +23 -5
- package/dist/canvas/components/StageNode/DraggableTask.cjs +14 -5
- package/dist/canvas/components/StageNode/DraggableTask.d.ts +1 -1
- package/dist/canvas/components/StageNode/DraggableTask.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/DraggableTask.js +14 -5
- package/dist/canvas/components/StageNode/DraggableTask.types.d.ts +3 -3
- package/dist/canvas/components/StageNode/DraggableTask.types.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageEdge.cjs +34 -11
- package/dist/canvas/components/StageNode/StageEdge.d.ts +2 -1
- package/dist/canvas/components/StageNode/StageEdge.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageEdge.js +35 -12
- package/dist/canvas/components/StageNode/StageNode.cjs +100 -47
- package/dist/canvas/components/StageNode/StageNode.d.ts +1 -1
- package/dist/canvas/components/StageNode/StageNode.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageNode.js +106 -53
- package/dist/canvas/components/StageNode/StageNode.stories.cjs +321 -158
- package/dist/canvas/components/StageNode/StageNode.stories.d.ts +1 -0
- package/dist/canvas/components/StageNode/StageNode.stories.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageNode.stories.js +314 -154
- package/dist/canvas/components/StageNode/StageNode.stories.utils.cjs +42 -0
- package/dist/canvas/components/StageNode/StageNode.stories.utils.d.ts +3 -0
- package/dist/canvas/components/StageNode/StageNode.stories.utils.d.ts.map +1 -0
- package/dist/canvas/components/StageNode/StageNode.stories.utils.js +8 -0
- package/dist/canvas/components/StageNode/StageNode.styles.cjs +35 -2
- package/dist/canvas/components/StageNode/StageNode.styles.d.ts +8 -0
- package/dist/canvas/components/StageNode/StageNode.styles.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageNode.styles.js +28 -1
- package/dist/canvas/components/StageNode/StageNode.types.cjs +26 -1
- package/dist/canvas/components/StageNode/StageNode.types.d.ts +23 -1
- package/dist/canvas/components/StageNode/StageNode.types.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/StageNode.types.js +9 -0
- package/dist/canvas/components/StageNode/StageTaskDragOverlay.cjs +68 -0
- package/dist/canvas/components/StageNode/StageTaskDragOverlay.d.ts +3 -0
- package/dist/canvas/components/StageNode/StageTaskDragOverlay.d.ts.map +1 -0
- package/dist/canvas/components/StageNode/StageTaskDragOverlay.js +34 -0
- package/dist/canvas/components/StageNode/TaskMenu.cjs +13 -17
- package/dist/canvas/components/StageNode/TaskMenu.d.ts +1 -2
- package/dist/canvas/components/StageNode/TaskMenu.d.ts.map +1 -1
- package/dist/canvas/components/StageNode/TaskMenu.js +14 -18
- package/dist/canvas/icons/ExitConditionIcon.cjs +49 -0
- package/dist/canvas/icons/ExitConditionIcon.d.ts +5 -0
- package/dist/canvas/icons/ExitConditionIcon.d.ts.map +1 -0
- package/dist/canvas/icons/ExitConditionIcon.js +15 -0
- package/dist/canvas/icons/ReturnToOriginIcon.cjs +50 -0
- package/dist/canvas/icons/ReturnToOriginIcon.d.ts +5 -0
- package/dist/canvas/icons/ReturnToOriginIcon.d.ts.map +1 -0
- package/dist/canvas/icons/ReturnToOriginIcon.js +16 -0
- package/dist/canvas/icons/index.cjs +8 -0
- package/dist/canvas/icons/index.d.ts +2 -0
- package/dist/canvas/icons/index.d.ts.map +1 -1
- package/dist/canvas/icons/index.js +3 -1
- package/package.json +2 -2
|
@@ -40,6 +40,7 @@ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
|
|
|
40
40
|
const styled_namespaceObject = require("@emotion/styled");
|
|
41
41
|
var styled_default = /*#__PURE__*/ __webpack_require__.n(styled_namespaceObject);
|
|
42
42
|
const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
|
|
43
|
+
const external_react_namespaceObject = require("react");
|
|
43
44
|
const StageEdgeLabel = styled_default().div`
|
|
44
45
|
position: absolute;
|
|
45
46
|
color: var(--uix-canvas-foreground);
|
|
@@ -57,6 +58,9 @@ const StageEdgeLabel = styled_default().div`
|
|
|
57
58
|
border-color: var(--uix-canvas-border-hover);
|
|
58
59
|
}
|
|
59
60
|
`;
|
|
61
|
+
function stageEdgeGeometryEquality(previous, next) {
|
|
62
|
+
return previous.sourceX === next.sourceX && previous.sourceY === next.sourceY && previous.targetX === next.targetX && previous.targetY === next.targetY;
|
|
63
|
+
}
|
|
60
64
|
function getArrowFromBezier(path, arrowSize) {
|
|
61
65
|
const pathEl = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
|
62
66
|
pathEl.setAttribute('d', path);
|
|
@@ -70,19 +74,13 @@ function getArrowFromBezier(path, arrowSize) {
|
|
|
70
74
|
angle
|
|
71
75
|
};
|
|
72
76
|
}
|
|
73
|
-
function
|
|
74
|
-
const sourceNode = (0, react_cjs_namespaceObject.useInternalNode)(rest.source);
|
|
75
|
-
const targetNode = (0, react_cjs_namespaceObject.useInternalNode)(rest.target);
|
|
76
|
-
const sourceNodeX = sourceNode ? sourceNode.position.x + (sourceNode.measured?.width ?? 0) : sourceX;
|
|
77
|
-
const sourceNodeY = sourceNode?.position.y ? sourceNode.position.y + 32 : sourceY;
|
|
78
|
-
const targetNodeX = targetNode?.position.x ?? targetX;
|
|
79
|
-
const targetNodeY = targetNode?.position.y ? targetNode.position.y + 32 : targetY;
|
|
77
|
+
function StageEdgeInner({ geometry, sourcePosition, targetPosition, selected, style, stroke = 'var(--uix-canvas-foreground-emp)', strokeWidth = 2, arrowSize = 8, ...rest }) {
|
|
80
78
|
const [pathData, labelX, labelY, _ex, _ey] = (0, react_cjs_namespaceObject.getSmoothStepPath)({
|
|
81
|
-
sourceX:
|
|
82
|
-
sourceY:
|
|
79
|
+
sourceX: geometry.sourceX,
|
|
80
|
+
sourceY: geometry.sourceY,
|
|
83
81
|
sourcePosition,
|
|
84
|
-
targetX:
|
|
85
|
-
targetY:
|
|
82
|
+
targetX: geometry.targetX - 1,
|
|
83
|
+
targetY: geometry.targetY,
|
|
86
84
|
targetPosition,
|
|
87
85
|
borderRadius: 40
|
|
88
86
|
});
|
|
@@ -141,6 +139,31 @@ function StageEdge({ sourceX, sourceY, targetX, targetY, sourcePosition, targetP
|
|
|
141
139
|
]
|
|
142
140
|
});
|
|
143
141
|
}
|
|
142
|
+
const StageEdgeInnerMemo = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(StageEdgeInner);
|
|
143
|
+
function StageEdgeComponent({ sourceX, sourceY, targetX, targetY, sourcePosition, targetPosition, selected, style, stroke, strokeWidth, arrowSize, ...rest }) {
|
|
144
|
+
const geometry = (0, react_cjs_namespaceObject.useStore)((state)=>{
|
|
145
|
+
const sourceNode = state.nodeLookup.get(rest.source);
|
|
146
|
+
const targetNode = state.nodeLookup.get(rest.target);
|
|
147
|
+
return {
|
|
148
|
+
sourceX: sourceNode ? sourceNode.position.x + (sourceNode.measured?.width ?? 0) : sourceX,
|
|
149
|
+
sourceY: sourceNode ? sourceNode.position.y + 32 : sourceY,
|
|
150
|
+
targetX: targetNode?.position.x ?? targetX,
|
|
151
|
+
targetY: targetNode ? targetNode.position.y + 32 : targetY
|
|
152
|
+
};
|
|
153
|
+
}, stageEdgeGeometryEquality);
|
|
154
|
+
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(StageEdgeInnerMemo, {
|
|
155
|
+
geometry: geometry,
|
|
156
|
+
sourcePosition: sourcePosition,
|
|
157
|
+
targetPosition: targetPosition,
|
|
158
|
+
selected: selected,
|
|
159
|
+
style: style,
|
|
160
|
+
stroke: stroke,
|
|
161
|
+
strokeWidth: strokeWidth,
|
|
162
|
+
arrowSize: arrowSize,
|
|
163
|
+
...rest
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
const StageEdge = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(StageEdgeComponent);
|
|
144
167
|
exports.StageEdge = __webpack_exports__.StageEdge;
|
|
145
168
|
exports.StageEdgeLabel = __webpack_exports__.StageEdgeLabel;
|
|
146
169
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
@@ -8,6 +8,7 @@ type Props = EdgeProps & {
|
|
|
8
8
|
strokeWidth?: number;
|
|
9
9
|
arrowSize?: number;
|
|
10
10
|
};
|
|
11
|
-
|
|
11
|
+
declare function StageEdgeComponent({ sourceX, sourceY, targetX, targetY, sourcePosition, targetPosition, selected, style, stroke, strokeWidth, arrowSize, ...rest }: Props): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export declare const StageEdge: import("react").MemoExoticComponent<typeof StageEdgeComponent>;
|
|
12
13
|
export {};
|
|
13
14
|
//# sourceMappingURL=StageEdge.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageEdge.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageEdge.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"StageEdge.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageEdge.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAkB,MAAM,0CAA0C,CAAC;AAQ1F,eAAO,MAAM,cAAc;;;yGAgB1B,CAAC;AAEF,KAAK,KAAK,GAAG,SAAS,GAAG;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AA4HF,iBAAS,kBAAkB,CAAC,EAC1B,OAAO,EACP,OAAO,EACP,OAAO,EACP,OAAO,EACP,cAAc,EACd,cAAc,EACd,QAAQ,EACR,KAAK,EACL,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,IAAI,EACR,EAAE,KAAK,2CA0BP;AAED,eAAO,MAAM,SAAS,gEAA2B,CAAC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
2
2
|
import styled from "@emotion/styled";
|
|
3
|
-
import { EdgeLabelRenderer, getSmoothStepPath,
|
|
3
|
+
import { EdgeLabelRenderer, getSmoothStepPath, useStore } from "../../xyflow/react.js";
|
|
4
|
+
import { memo } from "react";
|
|
4
5
|
const StageEdgeLabel = styled.div`
|
|
5
6
|
position: absolute;
|
|
6
7
|
color: var(--uix-canvas-foreground);
|
|
@@ -18,6 +19,9 @@ const StageEdgeLabel = styled.div`
|
|
|
18
19
|
border-color: var(--uix-canvas-border-hover);
|
|
19
20
|
}
|
|
20
21
|
`;
|
|
22
|
+
function stageEdgeGeometryEquality(previous, next) {
|
|
23
|
+
return previous.sourceX === next.sourceX && previous.sourceY === next.sourceY && previous.targetX === next.targetX && previous.targetY === next.targetY;
|
|
24
|
+
}
|
|
21
25
|
function getArrowFromBezier(path, arrowSize) {
|
|
22
26
|
const pathEl = document.createElementNS('http://www.w3.org/2000/svg', 'path');
|
|
23
27
|
pathEl.setAttribute('d', path);
|
|
@@ -31,19 +35,13 @@ function getArrowFromBezier(path, arrowSize) {
|
|
|
31
35
|
angle
|
|
32
36
|
};
|
|
33
37
|
}
|
|
34
|
-
function
|
|
35
|
-
const sourceNode = useInternalNode(rest.source);
|
|
36
|
-
const targetNode = useInternalNode(rest.target);
|
|
37
|
-
const sourceNodeX = sourceNode ? sourceNode.position.x + (sourceNode.measured?.width ?? 0) : sourceX;
|
|
38
|
-
const sourceNodeY = sourceNode?.position.y ? sourceNode.position.y + 32 : sourceY;
|
|
39
|
-
const targetNodeX = targetNode?.position.x ?? targetX;
|
|
40
|
-
const targetNodeY = targetNode?.position.y ? targetNode.position.y + 32 : targetY;
|
|
38
|
+
function StageEdgeInner({ geometry, sourcePosition, targetPosition, selected, style, stroke = 'var(--uix-canvas-foreground-emp)', strokeWidth = 2, arrowSize = 8, ...rest }) {
|
|
41
39
|
const [pathData, labelX, labelY, _ex, _ey] = getSmoothStepPath({
|
|
42
|
-
sourceX:
|
|
43
|
-
sourceY:
|
|
40
|
+
sourceX: geometry.sourceX,
|
|
41
|
+
sourceY: geometry.sourceY,
|
|
44
42
|
sourcePosition,
|
|
45
|
-
targetX:
|
|
46
|
-
targetY:
|
|
43
|
+
targetX: geometry.targetX - 1,
|
|
44
|
+
targetY: geometry.targetY,
|
|
47
45
|
targetPosition,
|
|
48
46
|
borderRadius: 40
|
|
49
47
|
});
|
|
@@ -102,4 +100,29 @@ function StageEdge({ sourceX, sourceY, targetX, targetY, sourcePosition, targetP
|
|
|
102
100
|
]
|
|
103
101
|
});
|
|
104
102
|
}
|
|
103
|
+
const StageEdgeInnerMemo = /*#__PURE__*/ memo(StageEdgeInner);
|
|
104
|
+
function StageEdgeComponent({ sourceX, sourceY, targetX, targetY, sourcePosition, targetPosition, selected, style, stroke, strokeWidth, arrowSize, ...rest }) {
|
|
105
|
+
const geometry = useStore((state)=>{
|
|
106
|
+
const sourceNode = state.nodeLookup.get(rest.source);
|
|
107
|
+
const targetNode = state.nodeLookup.get(rest.target);
|
|
108
|
+
return {
|
|
109
|
+
sourceX: sourceNode ? sourceNode.position.x + (sourceNode.measured?.width ?? 0) : sourceX,
|
|
110
|
+
sourceY: sourceNode ? sourceNode.position.y + 32 : sourceY,
|
|
111
|
+
targetX: targetNode?.position.x ?? targetX,
|
|
112
|
+
targetY: targetNode ? targetNode.position.y + 32 : targetY
|
|
113
|
+
};
|
|
114
|
+
}, stageEdgeGeometryEquality);
|
|
115
|
+
return /*#__PURE__*/ jsx(StageEdgeInnerMemo, {
|
|
116
|
+
geometry: geometry,
|
|
117
|
+
sourcePosition: sourcePosition,
|
|
118
|
+
targetPosition: targetPosition,
|
|
119
|
+
selected: selected,
|
|
120
|
+
style: style,
|
|
121
|
+
stroke: stroke,
|
|
122
|
+
strokeWidth: strokeWidth,
|
|
123
|
+
arrowSize: arrowSize,
|
|
124
|
+
...rest
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
const StageEdge = /*#__PURE__*/ memo(StageEdgeComponent);
|
|
105
128
|
export { StageEdge, StageEdgeLabel };
|
|
@@ -34,7 +34,7 @@ const index_cjs_namespaceObject = require("../../layouts/index.cjs");
|
|
|
34
34
|
const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
|
|
35
35
|
const external_material_index_cjs_namespaceObject = require("../../../material/index.cjs");
|
|
36
36
|
const external_react_namespaceObject = require("react");
|
|
37
|
-
const
|
|
37
|
+
const external_icons_index_cjs_namespaceObject = require("../../icons/index.cjs");
|
|
38
38
|
const ConnectedHandlesContext_cjs_namespaceObject = require("../BaseCanvas/ConnectedHandlesContext.cjs");
|
|
39
39
|
const useButtonHandles_cjs_namespaceObject = require("../ButtonHandle/useButtonHandles.cjs");
|
|
40
40
|
const external_ExecutionStatusIcon_index_cjs_namespaceObject = require("../ExecutionStatusIcon/index.cjs");
|
|
@@ -44,9 +44,33 @@ const hooks_index_cjs_namespaceObject = require("../NodePropertiesPanel/hooks/in
|
|
|
44
44
|
const external_Toolbox_index_cjs_namespaceObject = require("../Toolbox/index.cjs");
|
|
45
45
|
const external_DraggableTask_cjs_namespaceObject = require("./DraggableTask.cjs");
|
|
46
46
|
const external_StageNode_styles_cjs_namespaceObject = require("./StageNode.styles.cjs");
|
|
47
|
+
const external_StageNode_types_cjs_namespaceObject = require("./StageNode.types.cjs");
|
|
47
48
|
const external_StageNode_utils_cjs_namespaceObject = require("./StageNode.utils.cjs");
|
|
48
49
|
const external_StageNodeTaskUtilities_cjs_namespaceObject = require("./StageNodeTaskUtilities.cjs");
|
|
49
|
-
const
|
|
50
|
+
const external_StageTaskDragOverlay_cjs_namespaceObject = require("./StageTaskDragOverlay.cjs");
|
|
51
|
+
const CHIP_ICONS = {
|
|
52
|
+
[external_StageNode_types_cjs_namespaceObject.StageHeaderChipType.Entry]: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_icons_index_cjs_namespaceObject.EntryConditionIcon, {
|
|
53
|
+
w: apollo_core_namespaceObject.Icon.IconXs,
|
|
54
|
+
h: apollo_core_namespaceObject.Icon.IconXs
|
|
55
|
+
}),
|
|
56
|
+
[external_StageNode_types_cjs_namespaceObject.StageHeaderChipType.Exit]: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_icons_index_cjs_namespaceObject.ExitConditionIcon, {
|
|
57
|
+
w: apollo_core_namespaceObject.Icon.IconXs,
|
|
58
|
+
h: apollo_core_namespaceObject.Icon.IconXs
|
|
59
|
+
}),
|
|
60
|
+
[external_StageNode_types_cjs_namespaceObject.StageHeaderChipType.ReturnToOrigin]: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_icons_index_cjs_namespaceObject.ReturnToOriginIcon, {
|
|
61
|
+
w: apollo_core_namespaceObject.Icon.IconXs,
|
|
62
|
+
h: apollo_core_namespaceObject.Icon.IconXs
|
|
63
|
+
}),
|
|
64
|
+
[external_StageNode_types_cjs_namespaceObject.StageHeaderChipType.CaseExit]: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_material_index_cjs_namespaceObject.ApIcon, {
|
|
65
|
+
name: "close",
|
|
66
|
+
size: apollo_core_namespaceObject.Icon.IconXs
|
|
67
|
+
}),
|
|
68
|
+
[external_StageNode_types_cjs_namespaceObject.StageHeaderChipType.CaseCompletion]: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_material_index_cjs_namespaceObject.ApIcon, {
|
|
69
|
+
name: "check-mark",
|
|
70
|
+
size: apollo_core_namespaceObject.Icon.IconXs
|
|
71
|
+
})
|
|
72
|
+
};
|
|
73
|
+
const StageNodeInner = (props)=>{
|
|
50
74
|
const { dragging, selected, id, width, execution, stageDetails, addTaskLabel = 'Add task', addTaskLoading = false, replaceTaskLabel = 'Replace task', taskOptions = [], menuItems, pendingReplaceTask, onStageClick, onTaskAdd, onAddTaskFromToolbox, onTaskToolboxSearch, onTaskClick, onTaskGroupModification, onStageTitleChange, onTaskReorder, onReplaceTaskFromToolbox, onTaskPlay } = props;
|
|
51
75
|
const taskWidth = width ? width - external_StageNode_styles_cjs_namespaceObject.STAGE_CONTENT_INSET : void 0;
|
|
52
76
|
const tasks = (0, external_react_namespaceObject.useMemo)(()=>stageDetails?.tasks || [], [
|
|
@@ -66,9 +90,6 @@ const StageNodeComponent = (props)=>{
|
|
|
66
90
|
const status = execution?.stageStatus?.status;
|
|
67
91
|
const statusLabel = execution?.stageStatus?.label;
|
|
68
92
|
const stageDuration = execution?.stageStatus?.duration;
|
|
69
|
-
const reGroupTaskFunction = (0, external_react_namespaceObject.useMemo)(()=>onTaskGroupModification || (()=>{}), [
|
|
70
|
-
onTaskGroupModification
|
|
71
|
-
]);
|
|
72
93
|
const isStageTitleEditable = !!onStageTitleChange && !isReadOnly;
|
|
73
94
|
const [isHovered, setIsHovered] = (0, external_react_namespaceObject.useState)(false);
|
|
74
95
|
const [label, setLabel] = (0, external_react_namespaceObject.useState)(props.stageDetails.label);
|
|
@@ -85,6 +106,7 @@ const StageNodeComponent = (props)=>{
|
|
|
85
106
|
taskIndex: -1
|
|
86
107
|
});
|
|
87
108
|
const isConnecting = (0, react_cjs_namespaceObject.useStore)((state)=>!!state.connectionClickStartHandle);
|
|
109
|
+
const storeApi = (0, react_cjs_namespaceObject.useStoreApi)();
|
|
88
110
|
const connectedHandleIds = (0, ConnectedHandlesContext_cjs_namespaceObject.useConnectedHandles)(id);
|
|
89
111
|
const [isAddingTask, setIsAddingTask] = (0, external_react_namespaceObject.useState)(false);
|
|
90
112
|
const [isReplacingTask, setIsReplacingTask] = (0, external_react_namespaceObject.useState)(false);
|
|
@@ -124,7 +146,6 @@ const StageNodeComponent = (props)=>{
|
|
|
124
146
|
tasks,
|
|
125
147
|
activeDragId
|
|
126
148
|
]);
|
|
127
|
-
const { zoom } = (0, react_cjs_namespaceObject.useViewport)();
|
|
128
149
|
const projected = (0, external_react_namespaceObject.useMemo)(()=>{
|
|
129
150
|
if (!activeDragId || !overId) return null;
|
|
130
151
|
return (0, external_StageNode_utils_cjs_namespaceObject.getProjection)(tasks, activeDragId, overId, offsetLeft);
|
|
@@ -207,18 +228,26 @@ const StageNodeComponent = (props)=>{
|
|
|
207
228
|
handleStageTitleClickToSave,
|
|
208
229
|
isStageTitleEditing
|
|
209
230
|
]);
|
|
210
|
-
const
|
|
231
|
+
const hasContextMenu = !!(onReplaceTaskFromToolbox || onTaskGroupModification);
|
|
232
|
+
const buildContextMenuItems = (0, external_react_namespaceObject.useCallback)((groupIndex, taskIndex)=>{
|
|
233
|
+
const taskGroup = tasks[groupIndex] ?? [];
|
|
234
|
+
const isParallel = taskGroup.length > 1;
|
|
211
235
|
const items = [];
|
|
212
236
|
if (onReplaceTaskFromToolbox) {
|
|
213
237
|
items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getMenuItem)('replace-task', 'Replace task', ()=>{
|
|
214
|
-
|
|
238
|
+
taskStateReference.current = {
|
|
239
|
+
isParallel,
|
|
240
|
+
groupIndex,
|
|
241
|
+
taskIndex
|
|
242
|
+
};
|
|
243
|
+
const taskId = taskGroup[taskIndex]?.id;
|
|
215
244
|
if (taskId) onTaskClick?.(taskId);
|
|
216
245
|
setIsReplacingTask(true);
|
|
217
246
|
}));
|
|
218
247
|
items.push((0, external_StageNodeTaskUtilities_cjs_namespaceObject.getDivider)());
|
|
219
248
|
}
|
|
220
249
|
if (onTaskGroupModification) {
|
|
221
|
-
const reGroupOptions = (0, external_StageNodeTaskUtilities_cjs_namespaceObject.getContextMenuItems)(isParallel, groupIndex,
|
|
250
|
+
const reGroupOptions = (0, external_StageNodeTaskUtilities_cjs_namespaceObject.getContextMenuItems)(isParallel, groupIndex, tasks.length, taskIndex, taskGroup.length, (tasks[groupIndex - 1]?.length ?? 0) > 1, (tasks[groupIndex + 1]?.length ?? 0) > 1, onTaskGroupModification);
|
|
222
251
|
return [
|
|
223
252
|
...items,
|
|
224
253
|
...reGroupOptions
|
|
@@ -229,10 +258,9 @@ const StageNodeComponent = (props)=>{
|
|
|
229
258
|
onReplaceTaskFromToolbox,
|
|
230
259
|
onTaskClick,
|
|
231
260
|
onTaskGroupModification,
|
|
232
|
-
reGroupTaskFunction,
|
|
233
261
|
tasks
|
|
234
262
|
]);
|
|
235
|
-
const { setSelectedNodeId } = (0, hooks_index_cjs_namespaceObject.
|
|
263
|
+
const { setSelectedNodeId } = (0, hooks_index_cjs_namespaceObject.useSetNodeSelection)();
|
|
236
264
|
const handleStageClick = (0, external_react_namespaceObject.useCallback)(()=>{
|
|
237
265
|
onStageClick?.();
|
|
238
266
|
}, [
|
|
@@ -355,9 +383,9 @@ const StageNodeComponent = (props)=>{
|
|
|
355
383
|
setActiveDragId(event.active.id);
|
|
356
384
|
}, []);
|
|
357
385
|
const handleDragMove = (0, external_react_namespaceObject.useCallback)((event)=>{
|
|
358
|
-
setOffsetLeft(event.delta.x /
|
|
386
|
+
setOffsetLeft(event.delta.x / storeApi.getState().transform[2]);
|
|
359
387
|
}, [
|
|
360
|
-
|
|
388
|
+
storeApi
|
|
361
389
|
]);
|
|
362
390
|
const handleDragOver = (0, external_react_namespaceObject.useCallback)((event)=>{
|
|
363
391
|
setOverId(event.over?.id ?? null);
|
|
@@ -393,12 +421,6 @@ const StageNodeComponent = (props)=>{
|
|
|
393
421
|
} : void 0, [
|
|
394
422
|
taskWidth
|
|
395
423
|
]);
|
|
396
|
-
const dragOverlayStyle = (0, external_react_namespaceObject.useMemo)(()=>({
|
|
397
|
-
transform: `scale(${zoom})`,
|
|
398
|
-
transformOrigin: 'top left'
|
|
399
|
-
}), [
|
|
400
|
-
zoom
|
|
401
|
-
]);
|
|
402
424
|
return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
|
|
403
425
|
"data-testid": `stage-${id}`,
|
|
404
426
|
style: {
|
|
@@ -459,6 +481,31 @@ const StageNodeComponent = (props)=>{
|
|
|
459
481
|
variant: apollo_core_namespaceObject.FontVariantToken.fontSizeS,
|
|
460
482
|
color: "var(--uix-canvas-foreground-de-emp)",
|
|
461
483
|
children: stageDuration
|
|
484
|
+
}),
|
|
485
|
+
stageDetails.headerChips && stageDetails.headerChips.length > 0 && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageHeaderChipsRow, {
|
|
486
|
+
children: stageDetails.headerChips.map((chip)=>{
|
|
487
|
+
const button = /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(external_StageNode_styles_cjs_namespaceObject.StageChip, {
|
|
488
|
+
type: "button",
|
|
489
|
+
"aria-label": 'string' == typeof chip.tooltip ? chip.tooltip : chip.type,
|
|
490
|
+
onClick: (e)=>{
|
|
491
|
+
e.stopPropagation();
|
|
492
|
+
chip.onClick?.();
|
|
493
|
+
},
|
|
494
|
+
children: [
|
|
495
|
+
CHIP_ICONS[chip.type],
|
|
496
|
+
void 0 !== chip.count && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_material_index_cjs_namespaceObject.ApTypography, {
|
|
497
|
+
variant: apollo_core_namespaceObject.FontVariantToken.fontSizeS,
|
|
498
|
+
children: chip.count
|
|
499
|
+
})
|
|
500
|
+
]
|
|
501
|
+
}, chip.type);
|
|
502
|
+
if (chip.tooltip) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_material_index_cjs_namespaceObject.ApTooltip, {
|
|
503
|
+
placement: "bottom",
|
|
504
|
+
content: chip.tooltip,
|
|
505
|
+
children: button
|
|
506
|
+
}, chip.type);
|
|
507
|
+
return button;
|
|
508
|
+
})
|
|
462
509
|
})
|
|
463
510
|
]
|
|
464
511
|
})
|
|
@@ -538,20 +585,14 @@ const StageNodeComponent = (props)=>{
|
|
|
538
585
|
taskExecution: taskExecution,
|
|
539
586
|
isSelected: selectedTaskId === task.id,
|
|
540
587
|
isParallel: isParallel,
|
|
541
|
-
|
|
588
|
+
groupIndex: groupIndex,
|
|
589
|
+
taskIndex: taskIndex,
|
|
542
590
|
onTaskClick: handleTaskClick,
|
|
543
591
|
projectedDepth: task.id === activeDragId && projected ? projected.depth : void 0,
|
|
544
592
|
onTaskPlay: onTaskPlay,
|
|
545
593
|
isDragDisabled: !onTaskReorder,
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
onMenuOpen: ()=>{
|
|
549
|
-
taskStateReference.current = {
|
|
550
|
-
isParallel,
|
|
551
|
-
groupIndex,
|
|
552
|
-
taskIndex
|
|
553
|
-
};
|
|
554
|
-
}
|
|
594
|
+
...hasContextMenu && {
|
|
595
|
+
getContextMenuItems: buildContextMenuItems
|
|
555
596
|
}
|
|
556
597
|
}, task.id);
|
|
557
598
|
})
|
|
@@ -562,23 +603,11 @@ const StageNodeComponent = (props)=>{
|
|
|
562
603
|
})
|
|
563
604
|
})
|
|
564
605
|
}),
|
|
565
|
-
/*#__PURE__*/ (0,
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
isParallel: isActiveTaskParallel,
|
|
571
|
-
style: {
|
|
572
|
-
cursor: 'grabbing',
|
|
573
|
-
...taskWidthStyle
|
|
574
|
-
},
|
|
575
|
-
children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_DraggableTask_cjs_namespaceObject.TaskContent, {
|
|
576
|
-
task: activeTask,
|
|
577
|
-
isDragging: true
|
|
578
|
-
})
|
|
579
|
-
})
|
|
580
|
-
}) : null
|
|
581
|
-
}), document.body)
|
|
606
|
+
/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageTaskDragOverlay_cjs_namespaceObject.StageTaskDragOverlay, {
|
|
607
|
+
activeTask: activeTask,
|
|
608
|
+
isActiveTaskParallel: isActiveTaskParallel,
|
|
609
|
+
taskWidthStyle: taskWidthStyle
|
|
610
|
+
})
|
|
582
611
|
]
|
|
583
612
|
}) : /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.Column, {
|
|
584
613
|
py: 2,
|
|
@@ -632,7 +661,31 @@ const StageNodeComponent = (props)=>{
|
|
|
632
661
|
]
|
|
633
662
|
});
|
|
634
663
|
};
|
|
635
|
-
const
|
|
664
|
+
const StageNodeInnerMemo = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(StageNodeInner);
|
|
665
|
+
const StageNode = ({ dragging, selected, id, width, execution, stageDetails, addTaskLabel, addTaskLoading, replaceTaskLabel, taskOptions, menuItems, pendingReplaceTask, onStageClick, onTaskAdd, onAddTaskFromToolbox, onTaskToolboxSearch, onTaskClick, onTaskGroupModification, onStageTitleChange, onTaskReorder, onReplaceTaskFromToolbox, onTaskPlay })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(StageNodeInnerMemo, {
|
|
666
|
+
dragging: dragging,
|
|
667
|
+
selected: selected,
|
|
668
|
+
id: id,
|
|
669
|
+
width: width,
|
|
670
|
+
execution: execution,
|
|
671
|
+
stageDetails: stageDetails,
|
|
672
|
+
addTaskLabel: addTaskLabel,
|
|
673
|
+
addTaskLoading: addTaskLoading,
|
|
674
|
+
replaceTaskLabel: replaceTaskLabel,
|
|
675
|
+
taskOptions: taskOptions,
|
|
676
|
+
menuItems: menuItems,
|
|
677
|
+
pendingReplaceTask: pendingReplaceTask,
|
|
678
|
+
onStageClick: onStageClick,
|
|
679
|
+
onTaskAdd: onTaskAdd,
|
|
680
|
+
onAddTaskFromToolbox: onAddTaskFromToolbox,
|
|
681
|
+
onTaskToolboxSearch: onTaskToolboxSearch,
|
|
682
|
+
onTaskClick: onTaskClick,
|
|
683
|
+
onTaskGroupModification: onTaskGroupModification,
|
|
684
|
+
onStageTitleChange: onStageTitleChange,
|
|
685
|
+
onTaskReorder: onTaskReorder,
|
|
686
|
+
onReplaceTaskFromToolbox: onReplaceTaskFromToolbox,
|
|
687
|
+
onTaskPlay: onTaskPlay
|
|
688
|
+
});
|
|
636
689
|
exports.StageNode = __webpack_exports__.StageNode;
|
|
637
690
|
for(var __rspack_i in __webpack_exports__)if (-1 === [
|
|
638
691
|
"StageNode"
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { StageNodeProps } from './StageNode.types';
|
|
2
|
-
export declare const StageNode:
|
|
2
|
+
export declare const StageNode: ({ dragging, selected, id, width, execution, stageDetails, addTaskLabel, addTaskLoading, replaceTaskLabel, taskOptions, menuItems, pendingReplaceTask, onStageClick, onTaskAdd, onAddTaskFromToolbox, onTaskToolboxSearch, onTaskClick, onTaskGroupModification, onStageTitleChange, onTaskReorder, onReplaceTaskFromToolbox, onTaskPlay, }: StageNodeProps) => import("react/jsx-runtime").JSX.Element;
|
|
3
3
|
//# sourceMappingURL=StageNode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StageNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNode.tsx"],"names":[],"mappings":"AAqDA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"StageNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageNode.tsx"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAuB,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAyqB7E,eAAO,MAAM,SAAS,GAAI,4UAuBvB,cAAc,4CA2BhB,CAAC"}
|