@uipath/apollo-react 4.45.0 → 4.46.0

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 (109) hide show
  1. package/dist/canvas/components/Edges/CanvasEdge.cjs +197 -0
  2. package/dist/canvas/components/Edges/CanvasEdge.d.ts +3 -0
  3. package/dist/canvas/components/Edges/CanvasEdge.d.ts.map +1 -0
  4. package/dist/canvas/components/Edges/CanvasEdge.js +163 -0
  5. package/dist/canvas/components/Edges/SequenceEdge.cjs +18 -200
  6. package/dist/canvas/components/Edges/SequenceEdge.d.ts +2 -2
  7. package/dist/canvas/components/Edges/SequenceEdge.d.ts.map +1 -1
  8. package/dist/canvas/components/Edges/SequenceEdge.js +19 -201
  9. package/dist/canvas/components/Edges/index.cjs +32 -3
  10. package/dist/canvas/components/Edges/index.d.ts +4 -0
  11. package/dist/canvas/components/Edges/index.d.ts.map +1 -1
  12. package/dist/canvas/components/Edges/index.js +3 -0
  13. package/dist/canvas/components/Edges/shared/areEdgePropsEqual.cjs +54 -0
  14. package/dist/canvas/components/Edges/shared/areEdgePropsEqual.d.ts +3 -0
  15. package/dist/canvas/components/Edges/shared/areEdgePropsEqual.d.ts.map +1 -0
  16. package/dist/canvas/components/Edges/shared/areEdgePropsEqual.js +20 -0
  17. package/dist/canvas/components/Edges/shared/constants.cjs +107 -0
  18. package/dist/canvas/components/Edges/shared/constants.d.ts +33 -0
  19. package/dist/canvas/components/Edges/shared/constants.d.ts.map +1 -0
  20. package/dist/canvas/components/Edges/shared/constants.js +55 -0
  21. package/dist/canvas/components/Edges/shared/geometry.cjs +489 -0
  22. package/dist/canvas/components/Edges/shared/geometry.d.ts +20 -0
  23. package/dist/canvas/components/Edges/shared/geometry.d.ts.map +1 -0
  24. package/dist/canvas/components/Edges/shared/geometry.js +416 -0
  25. package/dist/canvas/components/Edges/shared/hooks/index.cjs +48 -0
  26. package/dist/canvas/components/Edges/shared/hooks/index.d.ts +5 -0
  27. package/dist/canvas/components/Edges/shared/hooks/index.d.ts.map +1 -0
  28. package/dist/canvas/components/Edges/shared/hooks/index.js +5 -0
  29. package/dist/canvas/components/Edges/shared/hooks/useEdgeGeometry.cjs +103 -0
  30. package/dist/canvas/components/Edges/shared/hooks/useEdgeGeometry.d.ts +30 -0
  31. package/dist/canvas/components/Edges/shared/hooks/useEdgeGeometry.d.ts.map +1 -0
  32. package/dist/canvas/components/Edges/shared/hooks/useEdgeGeometry.js +69 -0
  33. package/dist/canvas/components/Edges/shared/hooks/useEdgeWaypointWriter.cjs +69 -0
  34. package/dist/canvas/components/Edges/shared/hooks/useEdgeWaypointWriter.d.ts +3 -0
  35. package/dist/canvas/components/Edges/shared/hooks/useEdgeWaypointWriter.d.ts.map +1 -0
  36. package/dist/canvas/components/Edges/shared/hooks/useEdgeWaypointWriter.js +35 -0
  37. package/dist/canvas/components/Edges/shared/hooks/useExecutionEdge.cjs +57 -0
  38. package/dist/canvas/components/Edges/shared/hooks/useExecutionEdge.d.ts +13 -0
  39. package/dist/canvas/components/Edges/shared/hooks/useExecutionEdge.d.ts.map +1 -0
  40. package/dist/canvas/components/Edges/shared/hooks/useExecutionEdge.js +23 -0
  41. package/dist/canvas/components/Edges/shared/hooks/useNodeDragRebalance.cjs +98 -0
  42. package/dist/canvas/components/Edges/shared/hooks/useNodeDragRebalance.d.ts +18 -0
  43. package/dist/canvas/components/Edges/shared/hooks/useNodeDragRebalance.d.ts.map +1 -0
  44. package/dist/canvas/components/Edges/shared/hooks/useNodeDragRebalance.js +64 -0
  45. package/dist/canvas/components/Edges/shared/hooks/useWaypointEditor.cjs +184 -0
  46. package/dist/canvas/components/Edges/shared/hooks/useWaypointEditor.d.ts +23 -0
  47. package/dist/canvas/components/Edges/shared/hooks/useWaypointEditor.d.ts.map +1 -0
  48. package/dist/canvas/components/Edges/shared/hooks/useWaypointEditor.js +150 -0
  49. package/dist/canvas/components/Edges/shared/primitives/EdgeArrow.cjs +57 -0
  50. package/dist/canvas/components/Edges/shared/primitives/EdgeArrow.d.ts +10 -0
  51. package/dist/canvas/components/Edges/shared/primitives/EdgeArrow.d.ts.map +1 -0
  52. package/dist/canvas/components/Edges/shared/primitives/EdgeArrow.js +23 -0
  53. package/dist/canvas/components/Edges/shared/primitives/EdgeLabel.cjs +66 -0
  54. package/dist/canvas/components/Edges/shared/primitives/EdgeLabel.d.ts +8 -0
  55. package/dist/canvas/components/Edges/shared/primitives/EdgeLabel.d.ts.map +1 -0
  56. package/dist/canvas/components/Edges/shared/primitives/EdgeLabel.js +32 -0
  57. package/dist/canvas/components/Edges/shared/primitives/EdgePath.cjs +84 -0
  58. package/dist/canvas/components/Edges/shared/primitives/EdgePath.d.ts +16 -0
  59. package/dist/canvas/components/Edges/shared/primitives/EdgePath.d.ts.map +1 -0
  60. package/dist/canvas/components/Edges/shared/primitives/EdgePath.js +50 -0
  61. package/dist/canvas/components/Edges/shared/primitives/SegmentDragHandle.cjs +117 -0
  62. package/dist/canvas/components/Edges/shared/primitives/SegmentDragHandle.d.ts +9 -0
  63. package/dist/canvas/components/Edges/shared/primitives/SegmentDragHandle.d.ts.map +1 -0
  64. package/dist/canvas/components/Edges/shared/primitives/SegmentDragHandle.js +83 -0
  65. package/dist/canvas/components/Edges/shared/primitives/WaypointHandle.cjs +75 -0
  66. package/dist/canvas/components/Edges/shared/primitives/WaypointHandle.d.ts +10 -0
  67. package/dist/canvas/components/Edges/shared/primitives/WaypointHandle.d.ts.map +1 -0
  68. package/dist/canvas/components/Edges/shared/primitives/WaypointHandle.js +41 -0
  69. package/dist/canvas/components/Edges/shared/primitives/index.cjs +52 -0
  70. package/dist/canvas/components/Edges/shared/primitives/index.d.ts +11 -0
  71. package/dist/canvas/components/Edges/shared/primitives/index.d.ts.map +1 -0
  72. package/dist/canvas/components/Edges/shared/primitives/index.js +6 -0
  73. package/dist/canvas/components/Edges/shared/resolveEdgeColor.cjs +46 -0
  74. package/dist/canvas/components/Edges/shared/resolveEdgeColor.d.ts +11 -0
  75. package/dist/canvas/components/Edges/shared/resolveEdgeColor.d.ts.map +1 -0
  76. package/dist/canvas/components/Edges/shared/resolveEdgeColor.js +12 -0
  77. package/dist/canvas/components/Edges/shared/routing/defaultEdgeRouter.cjs +51 -0
  78. package/dist/canvas/components/Edges/shared/routing/defaultEdgeRouter.d.ts +3 -0
  79. package/dist/canvas/components/Edges/shared/routing/defaultEdgeRouter.d.ts.map +1 -0
  80. package/dist/canvas/components/Edges/shared/routing/defaultEdgeRouter.js +17 -0
  81. package/dist/canvas/components/Edges/shared/routing/index.cjs +43 -0
  82. package/dist/canvas/components/Edges/shared/routing/index.d.ts +4 -0
  83. package/dist/canvas/components/Edges/shared/routing/index.d.ts.map +1 -0
  84. package/dist/canvas/components/Edges/shared/routing/index.js +3 -0
  85. package/dist/canvas/components/Edges/shared/routing/types.cjs +18 -0
  86. package/dist/canvas/components/Edges/shared/routing/types.d.ts +33 -0
  87. package/dist/canvas/components/Edges/shared/routing/types.d.ts.map +1 -0
  88. package/dist/canvas/components/Edges/shared/routing/types.js +0 -0
  89. package/dist/canvas/components/Edges/shared/routing/useGraphRouter.cjs +175 -0
  90. package/dist/canvas/components/Edges/shared/routing/useGraphRouter.d.ts +5 -0
  91. package/dist/canvas/components/Edges/shared/routing/useGraphRouter.d.ts.map +1 -0
  92. package/dist/canvas/components/Edges/shared/routing/useGraphRouter.js +138 -0
  93. package/dist/canvas/components/Edges/shared/types.cjs +18 -0
  94. package/dist/canvas/components/Edges/shared/types.d.ts +36 -0
  95. package/dist/canvas/components/Edges/shared/types.d.ts.map +1 -0
  96. package/dist/canvas/components/Edges/shared/types.js +0 -0
  97. package/dist/canvas/components/Edges/shared/waypoints.cjs +216 -0
  98. package/dist/canvas/components/Edges/shared/waypoints.d.ts +17 -0
  99. package/dist/canvas/components/Edges/shared/waypoints.d.ts.map +1 -0
  100. package/dist/canvas/components/Edges/shared/waypoints.js +158 -0
  101. package/dist/canvas/controls/NodePropertyTrigger/NodePropertyTrigger.cjs +60 -49
  102. package/dist/canvas/controls/NodePropertyTrigger/NodePropertyTrigger.d.ts.map +1 -1
  103. package/dist/canvas/controls/NodePropertyTrigger/NodePropertyTrigger.js +60 -49
  104. package/dist/canvas/hooks/useEdgePath.cjs +6 -22
  105. package/dist/canvas/hooks/useEdgePath.d.ts +1 -1
  106. package/dist/canvas/hooks/useEdgePath.d.ts.map +1 -1
  107. package/dist/canvas/hooks/useEdgePath.js +5 -21
  108. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  109. package/package.json +1 -1
@@ -0,0 +1,197 @@
1
+ "use strict";
2
+ var __webpack_require__ = {};
3
+ (()=>{
4
+ __webpack_require__.d = (exports1, definition)=>{
5
+ for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
6
+ enumerable: true,
7
+ get: definition[key]
8
+ });
9
+ };
10
+ })();
11
+ (()=>{
12
+ __webpack_require__.o = (obj, prop)=>Object.prototype.hasOwnProperty.call(obj, prop);
13
+ })();
14
+ (()=>{
15
+ __webpack_require__.r = (exports1)=>{
16
+ if ("u" > typeof Symbol && Symbol.toStringTag) Object.defineProperty(exports1, Symbol.toStringTag, {
17
+ value: 'Module'
18
+ });
19
+ Object.defineProperty(exports1, '__esModule', {
20
+ value: true
21
+ });
22
+ };
23
+ })();
24
+ var __webpack_exports__ = {};
25
+ __webpack_require__.r(__webpack_exports__);
26
+ __webpack_require__.d(__webpack_exports__, {
27
+ CanvasEdge: ()=>CanvasEdge_CanvasEdge
28
+ });
29
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
+ const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
31
+ const external_react_namespaceObject = require("react");
32
+ const createPreviewNode_cjs_namespaceObject = require("../../utils/createPreviewNode.cjs");
33
+ const BaseCanvasModeProvider_cjs_namespaceObject = require("../BaseCanvas/BaseCanvasModeProvider.cjs");
34
+ const index_cjs_namespaceObject = require("../Toolbar/index.cjs");
35
+ const areEdgePropsEqual_cjs_namespaceObject = require("./shared/areEdgePropsEqual.cjs");
36
+ const constants_cjs_namespaceObject = require("./shared/constants.cjs");
37
+ const geometry_cjs_namespaceObject = require("./shared/geometry.cjs");
38
+ const hooks_index_cjs_namespaceObject = require("./shared/hooks/index.cjs");
39
+ const primitives_index_cjs_namespaceObject = require("./shared/primitives/index.cjs");
40
+ const resolveEdgeColor_cjs_namespaceObject = require("./shared/resolveEdgeColor.cjs");
41
+ const CanvasEdge_CanvasEdge = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(function({ id, selected, animated, source, target, sourceX, sourceY, sourcePosition = react_cjs_namespaceObject.Position.Right, targetX, targetY, targetPosition = react_cjs_namespaceObject.Position.Left, sourceHandleId, targetHandleId, style, data }) {
42
+ const isReadOnly = 'readonly' === (0, BaseCanvasModeProvider_cjs_namespaceObject.useBaseCanvasMode)().mode;
43
+ const [isHovered, setIsHovered] = (0, external_react_namespaceObject.useState)(false);
44
+ const onMouseEnter = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(true), []);
45
+ const onMouseLeave = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(false), []);
46
+ const pathRef = (0, external_react_namespaceObject.useRef)(null);
47
+ const routing = data?.routing ?? 'waypoint';
48
+ const storedWaypoints = data?.waypoints ?? constants_cjs_namespaceObject.EMPTY_WAYPOINTS;
49
+ const strokeStyle = data?.strokeStyle ?? 'solid';
50
+ const hideArrowHead = !!data?.hideArrowHead;
51
+ const label = data?.label;
52
+ const editingEnabled = !!data?.enableEditing && 'waypoint' === routing && !isReadOnly;
53
+ const waypoints = (0, hooks_index_cjs_namespaceObject.useNodeDragRebalance)({
54
+ edgeId: id,
55
+ source,
56
+ target,
57
+ sourceX,
58
+ sourceY,
59
+ sourcePosition,
60
+ targetX,
61
+ targetY,
62
+ targetPosition,
63
+ waypoints: storedWaypoints,
64
+ enabled: editingEnabled,
65
+ onChange: data?.onWaypointsChange
66
+ });
67
+ const routedWaypoints = data?.routedWaypoints ?? constants_cjs_namespaceObject.EMPTY_WAYPOINTS;
68
+ const effectiveWaypoints = waypoints.length > 0 ? waypoints : routedWaypoints;
69
+ const executionEnabled = !!data?.enableExecution;
70
+ const toolbarEnabled = !!data?.enableToolbar && !isReadOnly;
71
+ const previewEdge = (0, createPreviewNode_cjs_namespaceObject.isPreviewEdge)({
72
+ id,
73
+ source,
74
+ target
75
+ });
76
+ const geometry = (0, hooks_index_cjs_namespaceObject.useEdgeGeometry)({
77
+ routing,
78
+ sourceNodeId: source,
79
+ targetNodeId: target,
80
+ sourceHandleId,
81
+ targetHandleId,
82
+ sourceX,
83
+ sourceY,
84
+ sourcePosition,
85
+ targetX,
86
+ targetY,
87
+ targetPosition,
88
+ waypoints: effectiveWaypoints,
89
+ enableSegments: editingEnabled,
90
+ hideArrowHead
91
+ });
92
+ const editor = (0, hooks_index_cjs_namespaceObject.useWaypointEditor)({
93
+ edgeId: id,
94
+ waypoints,
95
+ pathPoints: geometry.pathPoints,
96
+ enabled: editingEnabled,
97
+ onChange: data?.onWaypointsChange
98
+ });
99
+ const execution = (0, hooks_index_cjs_namespaceObject.useExecutionEdge)({
100
+ edgeId: id,
101
+ target,
102
+ edgePath: geometry.edgePath,
103
+ enabled: executionEnabled
104
+ });
105
+ const isDiffRemoved = data?.isDiffRemoved ?? false;
106
+ const color = (0, resolveEdgeColor_cjs_namespaceObject.resolveEdgeColor)({
107
+ selected,
108
+ isHovered,
109
+ isInvalid: data?.isInvalid ?? false,
110
+ isDiffAdded: data?.isDiffAdded ?? false,
111
+ isDiffRemoved,
112
+ previewEdge,
113
+ statusColor: execution.statusColor
114
+ });
115
+ const toolbar = (0, index_cjs_namespaceObject.useEdgeToolbarState)({
116
+ edgeId: id,
117
+ pathElementRef: pathRef,
118
+ isHovered: toolbarEnabled && isHovered,
119
+ source,
120
+ target,
121
+ sourceHandleId,
122
+ targetHandleId,
123
+ sourcePosition,
124
+ targetPosition
125
+ });
126
+ const showEditingChrome = editingEnabled && (isHovered || selected || editor.isDragging);
127
+ const opacity = style?.opacity ?? 1;
128
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
129
+ children: [
130
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("g", {
131
+ onMouseEnter: onMouseEnter,
132
+ onMouseLeave: onMouseLeave,
133
+ onMouseMove: toolbarEnabled ? toolbar.handleMouseMoveOnPath : void 0,
134
+ children: [
135
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(primitives_index_cjs_namespaceObject.EdgePath, {
136
+ id: id,
137
+ d: geometry.edgePath,
138
+ color: color,
139
+ selected: selected,
140
+ animated: animated,
141
+ strokeStyle: previewEdge || isDiffRemoved ? 'dashed' : strokeStyle,
142
+ isReadOnly: isReadOnly,
143
+ style: style,
144
+ opacity: opacity,
145
+ pathRef: pathRef
146
+ }),
147
+ showEditingChrome && geometry.segments.map((segment, index)=>{
148
+ if (!(0, geometry_cjs_namespaceObject.isSegmentInteractable)(segment) || !(0, geometry_cjs_namespaceObject.isSegmentPerpendicular)(segment)) return null;
149
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(primitives_index_cjs_namespaceObject.SegmentDragHandle, {
150
+ segment: segment,
151
+ segmentIndex: index,
152
+ handlers: editor.segmentHandlers
153
+ }, segment.id);
154
+ }),
155
+ editingEnabled && waypoints.map((waypoint, index)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(primitives_index_cjs_namespaceObject.WaypointHandle, {
156
+ waypoint: waypoint,
157
+ index: index,
158
+ forceVisible: showEditingChrome,
159
+ handlers: editor.waypointHandlers
160
+ }, waypoint.id)),
161
+ !hideArrowHead && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(primitives_index_cjs_namespaceObject.EdgeArrow, {
162
+ target: {
163
+ x: targetX,
164
+ y: targetY
165
+ },
166
+ angle: geometry.arrow.angle,
167
+ offset: geometry.arrow.offset,
168
+ color: color,
169
+ opacity: opacity
170
+ }),
171
+ execution.animation,
172
+ 'string' == typeof label && label.length > 0 && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(primitives_index_cjs_namespaceObject.EdgeLabel, {
173
+ x: geometry.labelPoint.x,
174
+ y: geometry.labelPoint.y,
175
+ text: label,
176
+ selected: selected
177
+ })
178
+ ]
179
+ }),
180
+ toolbarEnabled && toolbar.showToolbar && toolbar.toolbarPositioning && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.EdgeToolbar, {
181
+ edgeId: id,
182
+ visible: toolbar.showToolbar,
183
+ positioning: toolbar.toolbarPositioning,
184
+ config: toolbar.config,
185
+ onMouseEnter: onMouseEnter,
186
+ onMouseLeave: onMouseLeave
187
+ })
188
+ ]
189
+ });
190
+ }, areEdgePropsEqual_cjs_namespaceObject.areEdgePropsEqual);
191
+ exports.CanvasEdge = __webpack_exports__.CanvasEdge;
192
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
193
+ "CanvasEdge"
194
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
195
+ Object.defineProperty(exports, '__esModule', {
196
+ value: true
197
+ });
@@ -0,0 +1,3 @@
1
+ import type { CanvasEdgeProps } from './shared/types';
2
+ export declare const CanvasEdge: import("react").NamedExoticComponent<CanvasEdgeProps>;
3
+ //# sourceMappingURL=CanvasEdge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CanvasEdge.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Edges/CanvasEdge.tsx"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAWtD,eAAO,MAAM,UAAU,uDAgMF,CAAC"}
@@ -0,0 +1,163 @@
1
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
+ import { Position } from "../../xyflow/react.js";
3
+ import { memo, useCallback, useRef, useState } from "react";
4
+ import { isPreviewEdge } from "../../utils/createPreviewNode.js";
5
+ import { useBaseCanvasMode } from "../BaseCanvas/BaseCanvasModeProvider.js";
6
+ import { EdgeToolbar, useEdgeToolbarState } from "../Toolbar/index.js";
7
+ import { areEdgePropsEqual } from "./shared/areEdgePropsEqual.js";
8
+ import { EMPTY_WAYPOINTS } from "./shared/constants.js";
9
+ import { isSegmentInteractable, isSegmentPerpendicular } from "./shared/geometry.js";
10
+ import { useEdgeGeometry, useExecutionEdge, useNodeDragRebalance, useWaypointEditor } from "./shared/hooks/index.js";
11
+ import { EdgeArrow, EdgeLabel, EdgePath, SegmentDragHandle, WaypointHandle } from "./shared/primitives/index.js";
12
+ import { resolveEdgeColor } from "./shared/resolveEdgeColor.js";
13
+ const CanvasEdge_CanvasEdge = /*#__PURE__*/ memo(function({ id, selected, animated, source, target, sourceX, sourceY, sourcePosition = Position.Right, targetX, targetY, targetPosition = Position.Left, sourceHandleId, targetHandleId, style, data }) {
14
+ const isReadOnly = 'readonly' === useBaseCanvasMode().mode;
15
+ const [isHovered, setIsHovered] = useState(false);
16
+ const onMouseEnter = useCallback(()=>setIsHovered(true), []);
17
+ const onMouseLeave = useCallback(()=>setIsHovered(false), []);
18
+ const pathRef = useRef(null);
19
+ const routing = data?.routing ?? 'waypoint';
20
+ const storedWaypoints = data?.waypoints ?? EMPTY_WAYPOINTS;
21
+ const strokeStyle = data?.strokeStyle ?? 'solid';
22
+ const hideArrowHead = !!data?.hideArrowHead;
23
+ const label = data?.label;
24
+ const editingEnabled = !!data?.enableEditing && 'waypoint' === routing && !isReadOnly;
25
+ const waypoints = useNodeDragRebalance({
26
+ edgeId: id,
27
+ source,
28
+ target,
29
+ sourceX,
30
+ sourceY,
31
+ sourcePosition,
32
+ targetX,
33
+ targetY,
34
+ targetPosition,
35
+ waypoints: storedWaypoints,
36
+ enabled: editingEnabled,
37
+ onChange: data?.onWaypointsChange
38
+ });
39
+ const routedWaypoints = data?.routedWaypoints ?? EMPTY_WAYPOINTS;
40
+ const effectiveWaypoints = waypoints.length > 0 ? waypoints : routedWaypoints;
41
+ const executionEnabled = !!data?.enableExecution;
42
+ const toolbarEnabled = !!data?.enableToolbar && !isReadOnly;
43
+ const previewEdge = isPreviewEdge({
44
+ id,
45
+ source,
46
+ target
47
+ });
48
+ const geometry = useEdgeGeometry({
49
+ routing,
50
+ sourceNodeId: source,
51
+ targetNodeId: target,
52
+ sourceHandleId,
53
+ targetHandleId,
54
+ sourceX,
55
+ sourceY,
56
+ sourcePosition,
57
+ targetX,
58
+ targetY,
59
+ targetPosition,
60
+ waypoints: effectiveWaypoints,
61
+ enableSegments: editingEnabled,
62
+ hideArrowHead
63
+ });
64
+ const editor = useWaypointEditor({
65
+ edgeId: id,
66
+ waypoints,
67
+ pathPoints: geometry.pathPoints,
68
+ enabled: editingEnabled,
69
+ onChange: data?.onWaypointsChange
70
+ });
71
+ const execution = useExecutionEdge({
72
+ edgeId: id,
73
+ target,
74
+ edgePath: geometry.edgePath,
75
+ enabled: executionEnabled
76
+ });
77
+ const isDiffRemoved = data?.isDiffRemoved ?? false;
78
+ const color = resolveEdgeColor({
79
+ selected,
80
+ isHovered,
81
+ isInvalid: data?.isInvalid ?? false,
82
+ isDiffAdded: data?.isDiffAdded ?? false,
83
+ isDiffRemoved,
84
+ previewEdge,
85
+ statusColor: execution.statusColor
86
+ });
87
+ const toolbar = useEdgeToolbarState({
88
+ edgeId: id,
89
+ pathElementRef: pathRef,
90
+ isHovered: toolbarEnabled && isHovered,
91
+ source,
92
+ target,
93
+ sourceHandleId,
94
+ targetHandleId,
95
+ sourcePosition,
96
+ targetPosition
97
+ });
98
+ const showEditingChrome = editingEnabled && (isHovered || selected || editor.isDragging);
99
+ const opacity = style?.opacity ?? 1;
100
+ return /*#__PURE__*/ jsxs(Fragment, {
101
+ children: [
102
+ /*#__PURE__*/ jsxs("g", {
103
+ onMouseEnter: onMouseEnter,
104
+ onMouseLeave: onMouseLeave,
105
+ onMouseMove: toolbarEnabled ? toolbar.handleMouseMoveOnPath : void 0,
106
+ children: [
107
+ /*#__PURE__*/ jsx(EdgePath, {
108
+ id: id,
109
+ d: geometry.edgePath,
110
+ color: color,
111
+ selected: selected,
112
+ animated: animated,
113
+ strokeStyle: previewEdge || isDiffRemoved ? 'dashed' : strokeStyle,
114
+ isReadOnly: isReadOnly,
115
+ style: style,
116
+ opacity: opacity,
117
+ pathRef: pathRef
118
+ }),
119
+ showEditingChrome && geometry.segments.map((segment, index)=>{
120
+ if (!isSegmentInteractable(segment) || !isSegmentPerpendicular(segment)) return null;
121
+ return /*#__PURE__*/ jsx(SegmentDragHandle, {
122
+ segment: segment,
123
+ segmentIndex: index,
124
+ handlers: editor.segmentHandlers
125
+ }, segment.id);
126
+ }),
127
+ editingEnabled && waypoints.map((waypoint, index)=>/*#__PURE__*/ jsx(WaypointHandle, {
128
+ waypoint: waypoint,
129
+ index: index,
130
+ forceVisible: showEditingChrome,
131
+ handlers: editor.waypointHandlers
132
+ }, waypoint.id)),
133
+ !hideArrowHead && /*#__PURE__*/ jsx(EdgeArrow, {
134
+ target: {
135
+ x: targetX,
136
+ y: targetY
137
+ },
138
+ angle: geometry.arrow.angle,
139
+ offset: geometry.arrow.offset,
140
+ color: color,
141
+ opacity: opacity
142
+ }),
143
+ execution.animation,
144
+ 'string' == typeof label && label.length > 0 && /*#__PURE__*/ jsx(EdgeLabel, {
145
+ x: geometry.labelPoint.x,
146
+ y: geometry.labelPoint.y,
147
+ text: label,
148
+ selected: selected
149
+ })
150
+ ]
151
+ }),
152
+ toolbarEnabled && toolbar.showToolbar && toolbar.toolbarPositioning && /*#__PURE__*/ jsx(EdgeToolbar, {
153
+ edgeId: id,
154
+ visible: toolbar.showToolbar,
155
+ positioning: toolbar.toolbarPositioning,
156
+ config: toolbar.config,
157
+ onMouseEnter: onMouseEnter,
158
+ onMouseLeave: onMouseLeave
159
+ })
160
+ ]
161
+ });
162
+ }, areEdgePropsEqual);
163
+ export { CanvasEdge_CanvasEdge as CanvasEdge };
@@ -27,208 +27,26 @@ __webpack_require__.d(__webpack_exports__, {
27
27
  SequenceEdge: ()=>SequenceEdge_SequenceEdge
28
28
  });
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
- const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
31
30
  const external_react_namespaceObject = require("react");
32
- const index_cjs_namespaceObject = require("../../hooks/index.cjs");
33
- const createPreviewNode_cjs_namespaceObject = require("../../utils/createPreviewNode.cjs");
34
- const BaseCanvasModeProvider_cjs_namespaceObject = require("../BaseCanvas/BaseCanvasModeProvider.cjs");
35
- const external_Toolbar_index_cjs_namespaceObject = require("../Toolbar/index.cjs");
36
- const external_EdgeUtils_cjs_namespaceObject = require("./EdgeUtils.cjs");
37
- const ARROW_SIZE = 10;
38
- const ANGLE_MAP = {
39
- [react_cjs_namespaceObject.Position.Left]: 0,
40
- [react_cjs_namespaceObject.Position.Right]: Math.PI,
41
- [react_cjs_namespaceObject.Position.Top]: Math.PI / 2,
42
- [react_cjs_namespaceObject.Position.Bottom]: -Math.PI / 2
43
- };
44
- const ARROW_OFFSETS = {
45
- [react_cjs_namespaceObject.Position.Left]: {
46
- x: 8,
47
- y: 0
48
- },
49
- [react_cjs_namespaceObject.Position.Right]: {
50
- x: -8,
51
- y: 0
52
- },
53
- [react_cjs_namespaceObject.Position.Top]: {
54
- x: 0,
55
- y: 8
56
- },
57
- [react_cjs_namespaceObject.Position.Bottom]: {
58
- x: 0,
59
- y: -8
60
- }
61
- };
62
- function areEdgePropsEqual(prevProps, nextProps) {
63
- if (prevProps.id !== nextProps.id) return false;
64
- if (prevProps.selected !== nextProps.selected) return false;
65
- if (prevProps.animated !== nextProps.animated) return false;
66
- if (prevProps.source !== nextProps.source) return false;
67
- if (prevProps.target !== nextProps.target) return false;
68
- if (prevProps.sourcePosition !== nextProps.sourcePosition) return false;
69
- if (prevProps.targetPosition !== nextProps.targetPosition) return false;
70
- if (prevProps.data !== nextProps.data) return false;
71
- if (prevProps.style !== nextProps.style) return false;
72
- const threshold = 0.5;
73
- if (Math.abs(prevProps.sourceX - nextProps.sourceX) > threshold) return false;
74
- if (Math.abs(prevProps.sourceY - nextProps.sourceY) > threshold) return false;
75
- if (Math.abs(prevProps.targetX - nextProps.targetX) > threshold) return false;
76
- if (Math.abs(prevProps.targetY - nextProps.targetY) > threshold) return false;
77
- return true;
78
- }
79
- const SequenceEdge_SequenceEdge = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(function({ id, selected, animated, source, sourceX, sourceY, sourcePosition, sourceHandleId, target, targetX, targetY, targetPosition, targetHandleId, style, data }) {
80
- const [isHovered, setIsHovered] = (0, external_react_namespaceObject.useState)(false);
81
- const pathElementRef = (0, external_react_namespaceObject.useRef)(null);
82
- const { mode } = (0, BaseCanvasModeProvider_cjs_namespaceObject.useBaseCanvasMode)();
83
- const isReadOnly = 'readonly' === mode;
84
- const previewEdge = (0, createPreviewNode_cjs_namespaceObject.isPreviewEdge)({
85
- id,
86
- source,
87
- target
31
+ const external_CanvasEdge_cjs_namespaceObject = require("./CanvasEdge.cjs");
32
+ const areEdgePropsEqual_cjs_namespaceObject = require("./shared/areEdgePropsEqual.cjs");
33
+ const SequenceEdge_SequenceEdge = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(function(props) {
34
+ const data = (0, external_react_namespaceObject.useMemo)(()=>{
35
+ const { hideToolbar, ...rest } = props.data ?? {};
36
+ return {
37
+ routing: 'handle',
38
+ enableExecution: true,
39
+ enableToolbar: true !== hideToolbar,
40
+ ...rest
41
+ };
42
+ }, [
43
+ props.data
44
+ ]);
45
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasEdge_cjs_namespaceObject.CanvasEdge, {
46
+ ...props,
47
+ data: data
88
48
  });
89
- const executionStatus = (0, index_cjs_namespaceObject.useEdgeExecutionState)(id, target);
90
- const { validationStatus } = (0, index_cjs_namespaceObject.useElementValidationStatus)(id) ?? {
91
- validationStatus: void 0
92
- };
93
- const status = executionStatus ? executionStatus?.status ?? executionStatus : validationStatus;
94
- const isDiffAdded = data?.isDiffAdded === true;
95
- const isDiffRemoved = data?.isDiffRemoved === true;
96
- const hideArrowHead = data?.hideArrowHead === true;
97
- const hideToolbar = data?.hideToolbar === true;
98
- const angle = ANGLE_MAP[targetPosition];
99
- const { x: offsetX, y: offsetY } = ARROW_OFFSETS[targetPosition];
100
- const { edgePath, labelX, labelY } = (0, index_cjs_namespaceObject.useEdgePath)({
101
- sourceNodeId: source,
102
- targetNodeId: target,
103
- sourceHandleId,
104
- targetHandleId,
105
- sourceX,
106
- sourceY,
107
- sourcePosition,
108
- targetX: hideArrowHead ? targetX + offsetX : targetX,
109
- targetY: hideArrowHead ? targetY + offsetY : targetY,
110
- targetPosition
111
- });
112
- const { showToolbar, toolbarPositioning, config: toolbarConfig, handleMouseMoveOnPath } = (0, external_Toolbar_index_cjs_namespaceObject.useEdgeToolbarState)({
113
- edgeId: id,
114
- pathElementRef,
115
- isHovered,
116
- sourceHandleId,
117
- targetHandleId,
118
- sourcePosition,
119
- targetPosition,
120
- source,
121
- target
122
- });
123
- const getEdgeColor = ()=>{
124
- if (isDiffAdded) return 'var(--canvas-success-icon)';
125
- if (isDiffRemoved) return 'var(--canvas-error-icon)';
126
- if (previewEdge) return 'var(--canvas-primary)';
127
- if (selected) return 'var(--canvas-primary)';
128
- if (isHovered) return 'var(--canvas-primary-hover)';
129
- if (status) return external_EdgeUtils_cjs_namespaceObject.edgeTargetStatusToEdgeColor[status] ?? 'var(--canvas-border)';
130
- return 'var(--canvas-border)';
131
- };
132
- const edgeColor = getEdgeColor();
133
- return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
134
- children: [
135
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("g", {
136
- onMouseEnter: ()=>setIsHovered(true),
137
- onMouseLeave: ()=>setIsHovered(false),
138
- onMouseMove: handleMouseMoveOnPath,
139
- children: [
140
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("path", {
141
- className: "react-flow__edge-interaction",
142
- d: edgePath,
143
- fill: "none",
144
- stroke: "transparent",
145
- strokeWidth: 20,
146
- style: {
147
- pointerEvents: 'stroke',
148
- cursor: isReadOnly ? 'default' : 'pointer'
149
- }
150
- }),
151
- selected && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("path", {
152
- className: "react-flow__edge-outline",
153
- d: edgePath,
154
- fill: "none",
155
- stroke: "var(--canvas-primary)",
156
- strokeWidth: 10,
157
- opacity: 0.3,
158
- style: {
159
- pointerEvents: 'none',
160
- transition: 'opacity 0.2s ease'
161
- }
162
- }),
163
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("path", {
164
- id: id,
165
- className: "react-flow__edge-path",
166
- d: edgePath,
167
- strokeWidth: style?.strokeWidth || 2,
168
- style: {
169
- stroke: edgeColor,
170
- strokeDasharray: animated ? void 0 : isDiffRemoved ? style?.strokeDasharray || '5,5' : previewEdge ? '5,5' : '0',
171
- opacity: style?.opacity !== void 0 ? style.opacity : 1,
172
- transition: 'stroke 0.2s ease, opacity 0.2s ease'
173
- },
174
- ref: pathElementRef
175
- }),
176
- !hideArrowHead && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("polygon", {
177
- points: `
178
- ${targetX},${targetY}
179
- ${targetX - ARROW_SIZE * Math.cos(angle - Math.PI / 6)},${targetY - ARROW_SIZE * Math.sin(angle - Math.PI / 6)}
180
- ${targetX - ARROW_SIZE * Math.cos(angle + Math.PI / 6)},${targetY - ARROW_SIZE * Math.sin(angle + Math.PI / 6)}
181
- `,
182
- fill: edgeColor,
183
- style: {
184
- pointerEvents: 'none',
185
- opacity: style?.opacity !== void 0 ? style.opacity : 1,
186
- transition: 'fill 0.2s ease, opacity 0.2s ease',
187
- transform: `translate(${offsetX}px, ${offsetY}px)`
188
- }
189
- }),
190
- (0, external_EdgeUtils_cjs_namespaceObject.getStatusAnimation)(status, edgePath),
191
- 'string' == typeof data?.label && data.label.length > 0 && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("foreignObject", {
192
- x: labelX,
193
- y: labelY,
194
- width: 1,
195
- height: 1,
196
- overflow: "visible",
197
- style: {
198
- pointerEvents: 'none'
199
- },
200
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
201
- className: "react-flow__edge-label nodrag nopan",
202
- style: {
203
- position: 'absolute',
204
- transform: 'translate(-50%, -50%)',
205
- whiteSpace: 'nowrap',
206
- pointerEvents: 'none',
207
- color: 'var(--canvas-foreground)',
208
- background: 'var(--canvas-background)',
209
- padding: '4px 8px',
210
- borderRadius: '4px',
211
- fontSize: '12px',
212
- fontWeight: 500,
213
- border: `1px solid ${selected ? 'var(--canvas-primary)' : 'var(--canvas-border)'}`,
214
- boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)'
215
- },
216
- children: data.label
217
- })
218
- })
219
- ]
220
- }),
221
- !hideToolbar && showToolbar && toolbarPositioning && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_Toolbar_index_cjs_namespaceObject.EdgeToolbar, {
222
- edgeId: id,
223
- visible: showToolbar,
224
- positioning: toolbarPositioning,
225
- config: toolbarConfig,
226
- onMouseEnter: ()=>setIsHovered(true),
227
- onMouseLeave: ()=>setIsHovered(false)
228
- })
229
- ]
230
- });
231
- }, areEdgePropsEqual);
49
+ }, areEdgePropsEqual_cjs_namespaceObject.areEdgePropsEqual);
232
50
  exports.SequenceEdge = __webpack_exports__.SequenceEdge;
233
51
  for(var __rspack_i in __webpack_exports__)if (-1 === [
234
52
  "SequenceEdge"
@@ -1,3 +1,3 @@
1
- import { type EdgeProps } from '../../xyflow/react.ts';
2
- export declare const SequenceEdge: import("react").NamedExoticComponent<EdgeProps>;
1
+ import type { CanvasEdgeProps } from './shared/types';
2
+ export declare const SequenceEdge: import("react").NamedExoticComponent<CanvasEdgeProps>;
3
3
  //# sourceMappingURL=SequenceEdge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SequenceEdge.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Edges/SequenceEdge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,0CAA0C,CAAC;AAqDpF,eAAO,MAAM,YAAY,iDAkNJ,CAAC"}
1
+ {"version":3,"file":"SequenceEdge.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Edges/SequenceEdge.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAkB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AActE,eAAO,MAAM,YAAY,uDAYJ,CAAC"}