@uipath/apollo-react 6.11.0 → 6.11.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.
@@ -44,6 +44,28 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ (0, external_react_namespaceObject.m
44
44
  const onMouseEnter = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(true), []);
45
45
  const onMouseLeave = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(false), []);
46
46
  const pathRef = (0, external_react_namespaceObject.useRef)(null);
47
+ const store = (0, react_cjs_namespaceObject.useStoreApi)();
48
+ const onLabelClick = (0, external_react_namespaceObject.useCallback)((event)=>{
49
+ event.stopPropagation();
50
+ const { addSelectedEdges, edgeLookup, elementsSelectable, multiSelectionActive, unselectNodesAndEdges } = store.getState();
51
+ const edge = edgeLookup.get(id);
52
+ if (!edge || !(edge.selectable ?? elementsSelectable)) return;
53
+ store.setState({
54
+ nodesSelectionActive: false
55
+ });
56
+ if (edge.selected && multiSelectionActive) unselectNodesAndEdges({
57
+ nodes: [],
58
+ edges: [
59
+ edge
60
+ ]
61
+ });
62
+ else addSelectedEdges([
63
+ id
64
+ ]);
65
+ }, [
66
+ id,
67
+ store
68
+ ]);
47
69
  const routing = data?.routing ?? 'waypoint';
48
70
  const storedWaypoints = data?.waypoints ?? constants_cjs_namespaceObject.EMPTY_WAYPOINTS;
49
71
  const strokeStyle = data?.strokeStyle ?? 'solid';
@@ -129,6 +151,7 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ (0, external_react_namespaceObject.m
129
151
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
130
152
  children: [
131
153
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("g", {
154
+ "data-edge-hovered": isHovered || void 0,
132
155
  onMouseEnter: onMouseEnter,
133
156
  onMouseLeave: onMouseLeave,
134
157
  onMouseMove: toolbarEnabled ? toolbar.handleMouseMoveOnPath : void 0,
@@ -174,7 +197,10 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ (0, external_react_namespaceObject.m
174
197
  x: geometry.labelPoint.x,
175
198
  y: geometry.labelPoint.y,
176
199
  text: label,
177
- selected: selected
200
+ borderColor: color,
201
+ onClick: isReadOnly ? void 0 : onLabelClick,
202
+ onMouseEnter: onMouseEnter,
203
+ onMouseLeave: onMouseLeave
178
204
  })
179
205
  ]
180
206
  }),
@@ -1 +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,uDAkMF,CAAC"}
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,uDA+NF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
- import { Position } from "../../xyflow/react.js";
2
+ import { Position, useStoreApi } from "../../xyflow/react.js";
3
3
  import { memo, useCallback, useRef, useState } from "react";
4
4
  import { isPreviewEdge } from "../../utils/createPreviewNode.js";
5
5
  import { useBaseCanvasMode } from "../BaseCanvas/BaseCanvasModeProvider.js";
@@ -16,6 +16,28 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ memo(function({ id, selected, animat
16
16
  const onMouseEnter = useCallback(()=>setIsHovered(true), []);
17
17
  const onMouseLeave = useCallback(()=>setIsHovered(false), []);
18
18
  const pathRef = useRef(null);
19
+ const store = useStoreApi();
20
+ const onLabelClick = useCallback((event)=>{
21
+ event.stopPropagation();
22
+ const { addSelectedEdges, edgeLookup, elementsSelectable, multiSelectionActive, unselectNodesAndEdges } = store.getState();
23
+ const edge = edgeLookup.get(id);
24
+ if (!edge || !(edge.selectable ?? elementsSelectable)) return;
25
+ store.setState({
26
+ nodesSelectionActive: false
27
+ });
28
+ if (edge.selected && multiSelectionActive) unselectNodesAndEdges({
29
+ nodes: [],
30
+ edges: [
31
+ edge
32
+ ]
33
+ });
34
+ else addSelectedEdges([
35
+ id
36
+ ]);
37
+ }, [
38
+ id,
39
+ store
40
+ ]);
19
41
  const routing = data?.routing ?? 'waypoint';
20
42
  const storedWaypoints = data?.waypoints ?? EMPTY_WAYPOINTS;
21
43
  const strokeStyle = data?.strokeStyle ?? 'solid';
@@ -101,6 +123,7 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ memo(function({ id, selected, animat
101
123
  return /*#__PURE__*/ jsxs(Fragment, {
102
124
  children: [
103
125
  /*#__PURE__*/ jsxs("g", {
126
+ "data-edge-hovered": isHovered || void 0,
104
127
  onMouseEnter: onMouseEnter,
105
128
  onMouseLeave: onMouseLeave,
106
129
  onMouseMove: toolbarEnabled ? toolbar.handleMouseMoveOnPath : void 0,
@@ -146,7 +169,10 @@ const CanvasEdge_CanvasEdge = /*#__PURE__*/ memo(function({ id, selected, animat
146
169
  x: geometry.labelPoint.x,
147
170
  y: geometry.labelPoint.y,
148
171
  text: label,
149
- selected: selected
172
+ borderColor: color,
173
+ onClick: isReadOnly ? void 0 : onLabelClick,
174
+ onMouseEnter: onMouseEnter,
175
+ onMouseLeave: onMouseLeave
150
176
  })
151
177
  ]
152
178
  }),
@@ -55,12 +55,12 @@ const EDGE_DASHARRAY = {
55
55
  dashed: '5,5'
56
56
  };
57
57
  const EDGE_COLORS = {
58
- default: 'var(--canvas-border)',
59
- hover: 'var(--canvas-primary-hover)',
60
- selected: 'var(--canvas-primary)',
61
- invalid: 'var(--canvas-error-icon)',
62
- diffAdded: 'var(--canvas-success-icon)',
63
- diffRemoved: 'var(--canvas-error-icon)'
58
+ default: 'var(--canvas-border, var(--color-border))',
59
+ hover: 'var(--canvas-primary-hover, var(--color-primary-hover))',
60
+ selected: 'var(--canvas-primary, var(--color-primary))',
61
+ invalid: 'var(--canvas-error-icon, var(--color-error-icon))',
62
+ diffAdded: 'var(--canvas-success-icon, var(--color-success-icon))',
63
+ diffRemoved: 'var(--canvas-error-icon, var(--color-error-icon))'
64
64
  };
65
65
  const ARROW_ANGLE_MAP = {
66
66
  [react_cjs_namespaceObject.Position.Left]: 0,
@@ -21,12 +21,12 @@ export declare const EDGE_DASHARRAY: {
21
21
  readonly dashed: "5,5";
22
22
  };
23
23
  export declare const EDGE_COLORS: {
24
- readonly default: "var(--canvas-border)";
25
- readonly hover: "var(--canvas-primary-hover)";
26
- readonly selected: "var(--canvas-primary)";
27
- readonly invalid: "var(--canvas-error-icon)";
28
- readonly diffAdded: "var(--canvas-success-icon)";
29
- readonly diffRemoved: "var(--canvas-error-icon)";
24
+ readonly default: "var(--canvas-border, var(--color-border))";
25
+ readonly hover: "var(--canvas-primary-hover, var(--color-primary-hover))";
26
+ readonly selected: "var(--canvas-primary, var(--color-primary))";
27
+ readonly invalid: "var(--canvas-error-icon, var(--color-error-icon))";
28
+ readonly diffAdded: "var(--canvas-success-icon, var(--color-success-icon))";
29
+ readonly diffRemoved: "var(--canvas-error-icon, var(--color-error-icon))";
30
30
  };
31
31
  export declare const ARROW_ANGLE_MAP: Record<Position, number>;
32
32
  export declare const ARROW_OFFSETS: Record<Position, Point>;
@@ -21,12 +21,12 @@ const EDGE_DASHARRAY = {
21
21
  dashed: '5,5'
22
22
  };
23
23
  const EDGE_COLORS = {
24
- default: 'var(--canvas-border)',
25
- hover: 'var(--canvas-primary-hover)',
26
- selected: 'var(--canvas-primary)',
27
- invalid: 'var(--canvas-error-icon)',
28
- diffAdded: 'var(--canvas-success-icon)',
29
- diffRemoved: 'var(--canvas-error-icon)'
24
+ default: 'var(--canvas-border, var(--color-border))',
25
+ hover: 'var(--canvas-primary-hover, var(--color-primary-hover))',
26
+ selected: 'var(--canvas-primary, var(--color-primary))',
27
+ invalid: 'var(--canvas-error-icon, var(--color-error-icon))',
28
+ diffAdded: 'var(--canvas-success-icon, var(--color-success-icon))',
29
+ diffRemoved: 'var(--canvas-error-icon, var(--color-error-icon))'
30
30
  };
31
31
  const ARROW_ANGLE_MAP = {
32
32
  [Position.Left]: 0,
@@ -24,41 +24,44 @@ var __webpack_require__ = {};
24
24
  var __webpack_exports__ = {};
25
25
  __webpack_require__.r(__webpack_exports__);
26
26
  __webpack_require__.d(__webpack_exports__, {
27
- EdgeLabel: ()=>EdgeLabel
27
+ EdgeLabel: ()=>EdgeLabel,
28
+ EDGE_LABEL_DEFAULT_BORDER_COLOR: ()=>EDGE_LABEL_DEFAULT_BORDER_COLOR
28
29
  });
29
30
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
- function EdgeLabel({ x, y, text, selected }) {
31
- return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("foreignObject", {
32
- x: x,
33
- y: y,
34
- width: 1,
35
- height: 1,
36
- overflow: "visible",
37
- style: {
38
- pointerEvents: 'none'
39
- },
40
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
41
- className: "react-flow__edge-label nodrag nopan",
42
- style: {
43
- position: 'absolute',
44
- transform: 'translate(-50%, -50%)',
45
- whiteSpace: 'nowrap',
46
- pointerEvents: 'none',
47
- color: 'var(--canvas-foreground)',
48
- background: 'var(--canvas-background)',
49
- padding: '4px 8px',
50
- borderRadius: '4px',
51
- fontSize: '12px',
52
- fontWeight: 500,
53
- border: `1px solid ${selected ? 'var(--canvas-primary)' : 'var(--canvas-border)'}`,
54
- boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)'
55
- },
56
- children: text
31
+ const react_cjs_namespaceObject = require("../../../../xyflow/react.cjs");
32
+ const external_react_namespaceObject = require("react");
33
+ const external_CanvasTooltip_cjs_namespaceObject = require("../../../CanvasTooltip.cjs");
34
+ const EDGE_LABEL_BASE_CLASS = "react-flow__edge-label nodrag nopan absolute top-0 left-0 max-w-48 overflow-hidden text-ellipsis whitespace-nowrap pointer-events-auto cursor-default px-2 py-1 rounded text-xs font-medium border shadow-[0_1px_3px_0_rgba(0,0,0,0.1)] text-[var(--canvas-foreground,var(--color-foreground))] bg-[var(--canvas-background,var(--color-background))]";
35
+ const EDGE_LABEL_DEFAULT_BORDER_COLOR = 'var(--canvas-border,var(--color-border))';
36
+ function EdgeLabel({ x, y, text, borderColor = EDGE_LABEL_DEFAULT_BORDER_COLOR, onClick, onMouseEnter, onMouseLeave }) {
37
+ const transform = (0, external_react_namespaceObject.useMemo)(()=>`translate(-50%, -50%) translate(${x}px, ${y}px)`, [
38
+ x,
39
+ y
40
+ ]);
41
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_cjs_namespaceObject.EdgeLabelRenderer, {
42
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
43
+ content: text,
44
+ smartTooltip: true,
45
+ delay: true,
46
+ disableHoverableContent: true,
47
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("div", {
48
+ className: EDGE_LABEL_BASE_CLASS,
49
+ style: {
50
+ transform,
51
+ borderColor
52
+ },
53
+ onClick: onClick,
54
+ onMouseEnter: onMouseEnter,
55
+ onMouseLeave: onMouseLeave,
56
+ children: text
57
+ })
57
58
  })
58
59
  });
59
60
  }
61
+ exports.EDGE_LABEL_DEFAULT_BORDER_COLOR = __webpack_exports__.EDGE_LABEL_DEFAULT_BORDER_COLOR;
60
62
  exports.EdgeLabel = __webpack_exports__.EdgeLabel;
61
63
  for(var __rspack_i in __webpack_exports__)if (-1 === [
64
+ "EDGE_LABEL_DEFAULT_BORDER_COLOR",
62
65
  "EdgeLabel"
63
66
  ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
64
67
  Object.defineProperty(exports, '__esModule', {
@@ -1,8 +1,13 @@
1
+ import type { MouseEventHandler } from 'react';
1
2
  export type EdgeLabelProps = {
2
3
  x: number;
3
4
  y: number;
4
5
  text: string;
5
- selected?: boolean;
6
+ borderColor?: string;
7
+ onClick?: MouseEventHandler<HTMLDivElement>;
8
+ onMouseEnter?: () => void;
9
+ onMouseLeave?: () => void;
6
10
  };
7
- export declare function EdgeLabel({ x, y, text, selected }: EdgeLabelProps): import("react/jsx-runtime").JSX.Element;
11
+ export declare const EDGE_LABEL_DEFAULT_BORDER_COLOR = "var(--canvas-border,var(--color-border))";
12
+ export declare function EdgeLabel({ x, y, text, borderColor, onClick, onMouseEnter, onMouseLeave, }: EdgeLabelProps): import("react/jsx-runtime").JSX.Element;
8
13
  //# sourceMappingURL=EdgeLabel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeLabel.d.ts","sourceRoot":"","sources":["../../../../../../src/canvas/components/Edges/shared/primitives/EdgeLabel.tsx"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,cAAc,2CA+BjE"}
1
+ {"version":3,"file":"EdgeLabel.d.ts","sourceRoot":"","sources":["../../../../../../src/canvas/components/Edges/shared/primitives/EdgeLabel.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAI/C,MAAM,MAAM,cAAc,GAAG;IAC3B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC5C,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B,CAAC;AAWF,eAAO,MAAM,+BAA+B,6CAA6C,CAAC;AAS1F,wBAAgB,SAAS,CAAC,EACxB,CAAC,EACD,CAAC,EACD,IAAI,EACJ,WAA6C,EAC7C,OAAO,EACP,YAAY,EACZ,YAAY,GACb,EAAE,cAAc,2CAkBhB"}
@@ -1,32 +1,32 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- function EdgeLabel({ x, y, text, selected }) {
3
- return /*#__PURE__*/ jsx("foreignObject", {
4
- x: x,
5
- y: y,
6
- width: 1,
7
- height: 1,
8
- overflow: "visible",
9
- style: {
10
- pointerEvents: 'none'
11
- },
12
- children: /*#__PURE__*/ jsx("div", {
13
- className: "react-flow__edge-label nodrag nopan",
14
- style: {
15
- position: 'absolute',
16
- transform: 'translate(-50%, -50%)',
17
- whiteSpace: 'nowrap',
18
- pointerEvents: 'none',
19
- color: 'var(--canvas-foreground)',
20
- background: 'var(--canvas-background)',
21
- padding: '4px 8px',
22
- borderRadius: '4px',
23
- fontSize: '12px',
24
- fontWeight: 500,
25
- border: `1px solid ${selected ? 'var(--canvas-primary)' : 'var(--canvas-border)'}`,
26
- boxShadow: '0 1px 3px 0 rgba(0, 0, 0, 0.1)'
27
- },
28
- children: text
2
+ import { EdgeLabelRenderer } from "../../../../xyflow/react.js";
3
+ import { useMemo } from "react";
4
+ import { CanvasTooltip } from "../../../CanvasTooltip.js";
5
+ const EDGE_LABEL_BASE_CLASS = "react-flow__edge-label nodrag nopan absolute top-0 left-0 max-w-48 overflow-hidden text-ellipsis whitespace-nowrap pointer-events-auto cursor-default px-2 py-1 rounded text-xs font-medium border shadow-[0_1px_3px_0_rgba(0,0,0,0.1)] text-[var(--canvas-foreground,var(--color-foreground))] bg-[var(--canvas-background,var(--color-background))]";
6
+ const EDGE_LABEL_DEFAULT_BORDER_COLOR = 'var(--canvas-border,var(--color-border))';
7
+ function EdgeLabel({ x, y, text, borderColor = EDGE_LABEL_DEFAULT_BORDER_COLOR, onClick, onMouseEnter, onMouseLeave }) {
8
+ const transform = useMemo(()=>`translate(-50%, -50%) translate(${x}px, ${y}px)`, [
9
+ x,
10
+ y
11
+ ]);
12
+ return /*#__PURE__*/ jsx(EdgeLabelRenderer, {
13
+ children: /*#__PURE__*/ jsx(CanvasTooltip, {
14
+ content: text,
15
+ smartTooltip: true,
16
+ delay: true,
17
+ disableHoverableContent: true,
18
+ children: /*#__PURE__*/ jsx("div", {
19
+ className: EDGE_LABEL_BASE_CLASS,
20
+ style: {
21
+ transform,
22
+ borderColor
23
+ },
24
+ onClick: onClick,
25
+ onMouseEnter: onMouseEnter,
26
+ onMouseLeave: onMouseLeave,
27
+ children: text
28
+ })
29
29
  })
30
30
  });
31
31
  }
32
- export { EdgeLabel };
32
+ export { EDGE_LABEL_DEFAULT_BORDER_COLOR, EdgeLabel };
@@ -43,19 +43,19 @@ const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
43
43
  const external_react_namespaceObject = require("react");
44
44
  const StageEdgeLabel = styled_default().div`
45
45
  position: absolute;
46
- color: var(--canvas-foreground);
47
- background: var(--canvas-background);
46
+ color: var(--canvas-foreground, var(--color-foreground));
47
+ background: var(--canvas-background, var(--color-background));
48
48
  padding: 4px 8px;
49
49
  border-radius: 4px;
50
50
  font-size: 12px;
51
51
  font-weight: 500;
52
- border: 1px solid var(--canvas-border);
52
+ border: 1px solid var(--canvas-border, var(--color-border));
53
53
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
54
54
  pointer-events: all;
55
55
 
56
56
  &:hover {
57
- background: var(--canvas-background-hover);
58
- border-color: var(--canvas-border-hover);
57
+ background: var(--canvas-background-hover, var(--color-background-hover));
58
+ border-color: var(--canvas-border-hover, var(--color-border-hover));
59
59
  }
60
60
  `;
61
61
  function stageEdgeGeometryEquality(previous, next) {
@@ -4,19 +4,19 @@ import { EdgeLabelRenderer, getSmoothStepPath, useStore } from "../../xyflow/rea
4
4
  import { memo, useMemo } from "react";
5
5
  const StageEdgeLabel = styled.div`
6
6
  position: absolute;
7
- color: var(--canvas-foreground);
8
- background: var(--canvas-background);
7
+ color: var(--canvas-foreground, var(--color-foreground));
8
+ background: var(--canvas-background, var(--color-background));
9
9
  padding: 4px 8px;
10
10
  border-radius: 4px;
11
11
  font-size: 12px;
12
12
  font-weight: 500;
13
- border: 1px solid var(--canvas-border);
13
+ border: 1px solid var(--canvas-border, var(--color-border));
14
14
  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
15
15
  pointer-events: all;
16
16
 
17
17
  &:hover {
18
- background: var(--canvas-background-hover);
19
- border-color: var(--canvas-border-hover);
18
+ background: var(--canvas-background-hover, var(--color-background-hover));
19
+ border-color: var(--canvas-border-hover, var(--color-border-hover));
20
20
  }
21
21
  `;
22
22
  function stageEdgeGeometryEquality(previous, next) {
@@ -14,6 +14,14 @@
14
14
  z-index: 1002 !important;
15
15
  }
16
16
 
17
+ .react-flow__edges > svg:has([data-edge-hovered="true"]) {
18
+ z-index: 1001 !important;
19
+ }
20
+
21
+ .react-flow__edgelabel-renderer {
22
+ z-index: 1002 !important;
23
+ }
24
+
17
25
  .react-flow__node:has([data-loop-container]) {
18
26
  z-index: -20 !important;
19
27
  }