@uipath/apollo-react 6.11.2 → 6.12.1

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 (67) hide show
  1. package/dist/canvas/components/BaseNode/NodeLabel.cjs +1 -1
  2. package/dist/canvas/components/BaseNode/NodeLabel.js +1 -1
  3. package/dist/canvas/components/StageNode/AdhocTask.cjs +5 -3
  4. package/dist/canvas/components/StageNode/AdhocTask.d.ts +3 -1
  5. package/dist/canvas/components/StageNode/AdhocTask.d.ts.map +1 -1
  6. package/dist/canvas/components/StageNode/AdhocTask.js +5 -3
  7. package/dist/canvas/components/StageNode/DraggableTask.cjs +11 -9
  8. package/dist/canvas/components/StageNode/DraggableTask.d.ts +1 -1
  9. package/dist/canvas/components/StageNode/DraggableTask.d.ts.map +1 -1
  10. package/dist/canvas/components/StageNode/DraggableTask.js +11 -9
  11. package/dist/canvas/components/StageNode/DraggableTask.types.d.ts +2 -0
  12. package/dist/canvas/components/StageNode/DraggableTask.types.d.ts.map +1 -1
  13. package/dist/canvas/components/StageNode/EventDrivenTask.cjs +5 -3
  14. package/dist/canvas/components/StageNode/EventDrivenTask.d.ts +3 -1
  15. package/dist/canvas/components/StageNode/EventDrivenTask.d.ts.map +1 -1
  16. package/dist/canvas/components/StageNode/EventDrivenTask.js +5 -3
  17. package/dist/canvas/components/StageNode/StageNode.styles.cjs +13 -0
  18. package/dist/canvas/components/StageNode/StageNode.styles.d.ts.map +1 -1
  19. package/dist/canvas/components/StageNode/StageNode.styles.js +13 -0
  20. package/dist/canvas/components/StageNode/StageNode.types.d.ts +3 -0
  21. package/dist/canvas/components/StageNode/StageNode.types.d.ts.map +1 -1
  22. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.cjs +3 -1
  23. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.d.ts.map +1 -1
  24. package/dist/canvas/components/StageNode/StageNodeAdhocTaskGroups.js +3 -1
  25. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.cjs +3 -1
  26. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.d.ts.map +1 -1
  27. package/dist/canvas/components/StageNode/StageNodeEventDrivenTaskGroups.js +3 -1
  28. package/dist/canvas/components/StageNode/StageNodeHeader.cjs +5 -1
  29. package/dist/canvas/components/StageNode/StageNodeHeader.d.ts.map +1 -1
  30. package/dist/canvas/components/StageNode/StageNodeHeader.js +5 -1
  31. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.cjs +3 -1
  32. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.d.ts.map +1 -1
  33. package/dist/canvas/components/StageNode/StageNodeSequentialTaskGroups.js +3 -1
  34. package/dist/canvas/components/StageNode/StageTaskEntryConditionIcon.cjs +5 -5
  35. package/dist/canvas/components/StageNode/StageTaskEntryConditionIcon.d.ts +1 -2
  36. package/dist/canvas/components/StageNode/StageTaskEntryConditionIcon.d.ts.map +1 -1
  37. package/dist/canvas/components/StageNode/StageTaskEntryConditionIcon.js +5 -5
  38. package/dist/canvas/components/StageNode/TaskBreakpointDot.cjs +34 -4
  39. package/dist/canvas/components/StageNode/TaskBreakpointDot.d.ts +2 -1
  40. package/dist/canvas/components/StageNode/TaskBreakpointDot.d.ts.map +1 -1
  41. package/dist/canvas/components/StageNode/TaskBreakpointDot.js +35 -5
  42. package/dist/canvas/components/StageNode/TaskContent.cjs +25 -11
  43. package/dist/canvas/components/StageNode/TaskContent.d.ts +2 -1
  44. package/dist/canvas/components/StageNode/TaskContent.d.ts.map +1 -1
  45. package/dist/canvas/components/StageNode/TaskContent.js +25 -11
  46. package/dist/canvas/components/StageNode/TaskMenu.cjs +4 -1
  47. package/dist/canvas/components/StageNode/TaskMenu.d.ts +1 -0
  48. package/dist/canvas/components/StageNode/TaskMenu.d.ts.map +1 -1
  49. package/dist/canvas/components/StageNode/TaskMenu.js +4 -1
  50. package/dist/canvas/components/StageNode/formatDuration.cjs +63 -0
  51. package/dist/canvas/components/StageNode/formatDuration.d.ts +2 -0
  52. package/dist/canvas/components/StageNode/formatDuration.d.ts.map +1 -0
  53. package/dist/canvas/components/StageNode/formatDuration.js +29 -0
  54. package/dist/canvas/components/shared/CanvasDropdownMenu.cjs +6 -3
  55. package/dist/canvas/components/shared/CanvasDropdownMenu.d.ts +4 -1
  56. package/dist/canvas/components/shared/CanvasDropdownMenu.d.ts.map +1 -1
  57. package/dist/canvas/components/shared/CanvasDropdownMenu.js +6 -3
  58. package/dist/canvas/icons/EntryConditionIcon.cjs +2 -2
  59. package/dist/canvas/icons/EntryConditionIcon.d.ts +2 -1
  60. package/dist/canvas/icons/EntryConditionIcon.d.ts.map +1 -1
  61. package/dist/canvas/icons/EntryConditionIcon.js +2 -2
  62. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  63. package/dist/i18n/useSafeLingui.cjs +4 -2
  64. package/dist/i18n/useSafeLingui.d.ts +1 -0
  65. package/dist/i18n/useSafeLingui.d.ts.map +1 -1
  66. package/dist/i18n/useSafeLingui.js +4 -2
  67. package/package.json +1 -1
@@ -29,7 +29,7 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const index_cjs_namespaceObject = require("../../icons/index.cjs");
31
31
  const external_CanvasTooltip_cjs_namespaceObject = require("../CanvasTooltip.cjs");
32
- const StageTaskEntryConditionIcon = ({ task, small })=>{
32
+ const StageTaskEntryConditionIcon = ({ task })=>{
33
33
  if (!task.hasEntryCondition) return null;
34
34
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
35
35
  content: "Entry condition",
@@ -41,12 +41,12 @@ const StageTaskEntryConditionIcon = ({ task, small })=>{
41
41
  alignItems: 'center',
42
42
  justifyContent: 'center',
43
43
  color: 'var(--color-icon-default)',
44
- flexShrink: 0,
45
- transform: small ? 'translateX(1px)' : 'translateX(0.5px)'
44
+ flexShrink: 0
46
45
  },
47
46
  children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(index_cjs_namespaceObject.EntryConditionIcon, {
48
- w: small ? 16 : 20,
49
- h: small ? 16 : 20
47
+ w: 13,
48
+ h: 15,
49
+ tight: true
50
50
  })
51
51
  })
52
52
  });
@@ -1,6 +1,5 @@
1
1
  import type { StageTaskItem } from './StageNode.types';
2
- export declare const StageTaskEntryConditionIcon: ({ task, small, }: {
2
+ export declare const StageTaskEntryConditionIcon: ({ task }: {
3
3
  task: StageTaskItem;
4
- small?: boolean;
5
4
  }) => import("react/jsx-runtime").JSX.Element | null;
6
5
  //# sourceMappingURL=StageTaskEntryConditionIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StageTaskEntryConditionIcon.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageTaskEntryConditionIcon.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAM,2BAA2B,GAAI,kBAGzC;IACD,IAAI,EAAE,aAAa,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,mDAuBA,CAAC"}
1
+ {"version":3,"file":"StageTaskEntryConditionIcon.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/StageTaskEntryConditionIcon.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,eAAO,MAAM,2BAA2B,GAAI,UAAU;IAAE,IAAI,EAAE,aAAa,CAAA;CAAE,mDAoB5E,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { EntryConditionIcon } from "../../icons/index.js";
3
3
  import { CanvasTooltip } from "../CanvasTooltip.js";
4
- const StageTaskEntryConditionIcon = ({ task, small })=>{
4
+ const StageTaskEntryConditionIcon = ({ task })=>{
5
5
  if (!task.hasEntryCondition) return null;
6
6
  return /*#__PURE__*/ jsx(CanvasTooltip, {
7
7
  content: "Entry condition",
@@ -13,12 +13,12 @@ const StageTaskEntryConditionIcon = ({ task, small })=>{
13
13
  alignItems: 'center',
14
14
  justifyContent: 'center',
15
15
  color: 'var(--color-icon-default)',
16
- flexShrink: 0,
17
- transform: small ? 'translateX(1px)' : 'translateX(0.5px)'
16
+ flexShrink: 0
18
17
  },
19
18
  children: /*#__PURE__*/ jsx(EntryConditionIcon, {
20
- w: small ? 16 : 20,
21
- h: small ? 16 : 20
19
+ w: 13,
20
+ h: 15,
21
+ tight: true
22
22
  })
23
23
  })
24
24
  });
@@ -28,11 +28,41 @@ __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
- function TaskBreakpointDotInner({ active, taskId }) {
32
- if (!active) return null;
33
- return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
31
+ const index_cjs_namespaceObject = require("../../../i18n/index.cjs");
32
+ const external_CanvasTooltip_cjs_namespaceObject = require("../CanvasTooltip.cjs");
33
+ const DOT = 'absolute -top-1.5 -left-1.5 z-10 h-3.5 w-3.5 rounded-full bg-(--canvas-error-icon)';
34
+ function TaskBreakpointDotInner({ active, taskId, onToggle }) {
35
+ const { _ } = (0, index_cjs_namespaceObject.useSafeLingui)();
36
+ const handleClick = (0, external_react_namespaceObject.useCallback)((e)=>{
37
+ e.stopPropagation();
38
+ onToggle?.(taskId);
39
+ }, [
40
+ onToggle,
41
+ taskId
42
+ ]);
43
+ const stopPointerDown = (0, external_react_namespaceObject.useCallback)((e)=>e.stopPropagation(), []);
44
+ if (!onToggle) return active ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
34
45
  "data-testid": `stage-task-breakpoint-${taskId}`,
35
- className: "pointer-events-none absolute -top-1.5 -left-1.5 z-10 h-3.5 w-3.5 rounded-full bg-(--canvas-error-icon)"
46
+ className: `pointer-events-none ${DOT}`
47
+ }) : null;
48
+ const label = active ? _({
49
+ id: 'stage-node.breakpoint.remove',
50
+ message: 'Click to remove the breakpoint'
51
+ }) : _({
52
+ id: 'stage-node.breakpoint.add',
53
+ message: 'Click to add a breakpoint'
54
+ });
55
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
56
+ content: label,
57
+ placement: "top",
58
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("button", {
59
+ type: "button",
60
+ "data-testid": active ? `stage-task-breakpoint-${taskId}` : `stage-task-add-breakpoint-${taskId}`,
61
+ "aria-label": label,
62
+ className: active ? DOT : `task-breakpoint-add ${DOT}`,
63
+ onClick: handleClick,
64
+ onPointerDown: stopPointerDown
65
+ })
36
66
  });
37
67
  }
38
68
  const TaskBreakpointDot = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(TaskBreakpointDotInner);
@@ -1,8 +1,9 @@
1
1
  export interface TaskBreakpointDotProps {
2
2
  active: boolean;
3
3
  taskId: string;
4
+ onToggle?: (taskId: string) => void;
4
5
  }
5
- declare function TaskBreakpointDotInner({ active, taskId }: TaskBreakpointDotProps): import("react/jsx-runtime").JSX.Element | null;
6
+ declare function TaskBreakpointDotInner({ active, taskId, onToggle }: TaskBreakpointDotProps): import("react/jsx-runtime").JSX.Element | null;
6
7
  export declare const TaskBreakpointDot: import("react").MemoExoticComponent<typeof TaskBreakpointDotInner>;
7
8
  export {};
8
9
  //# sourceMappingURL=TaskBreakpointDot.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskBreakpointDot.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskBreakpointDot.tsx"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IAErC,MAAM,EAAE,OAAO,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;CAChB;AAYD,iBAAS,sBAAsB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,sBAAsB,kDAWzE;AAED,eAAO,MAAM,iBAAiB,oEAA+B,CAAC"}
1
+ {"version":3,"file":"TaskBreakpointDot.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskBreakpointDot.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,sBAAsB;IAErC,MAAM,EAAE,OAAO,CAAC;IAEhB,MAAM,EAAE,MAAM,CAAC;IAOf,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAcD,iBAAS,sBAAsB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,sBAAsB,kDAyCnF;AAED,eAAO,MAAM,iBAAiB,oEAA+B,CAAC"}
@@ -1,10 +1,40 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
- import { memo } from "react";
3
- function TaskBreakpointDotInner({ active, taskId }) {
4
- if (!active) return null;
5
- return /*#__PURE__*/ jsx("span", {
2
+ import { memo, useCallback } from "react";
3
+ import { useSafeLingui } from "../../../i18n/index.js";
4
+ import { CanvasTooltip } from "../CanvasTooltip.js";
5
+ const DOT = 'absolute -top-1.5 -left-1.5 z-10 h-3.5 w-3.5 rounded-full bg-(--canvas-error-icon)';
6
+ function TaskBreakpointDotInner({ active, taskId, onToggle }) {
7
+ const { _ } = useSafeLingui();
8
+ const handleClick = useCallback((e)=>{
9
+ e.stopPropagation();
10
+ onToggle?.(taskId);
11
+ }, [
12
+ onToggle,
13
+ taskId
14
+ ]);
15
+ const stopPointerDown = useCallback((e)=>e.stopPropagation(), []);
16
+ if (!onToggle) return active ? /*#__PURE__*/ jsx("span", {
6
17
  "data-testid": `stage-task-breakpoint-${taskId}`,
7
- className: "pointer-events-none absolute -top-1.5 -left-1.5 z-10 h-3.5 w-3.5 rounded-full bg-(--canvas-error-icon)"
18
+ className: `pointer-events-none ${DOT}`
19
+ }) : null;
20
+ const label = active ? _({
21
+ id: 'stage-node.breakpoint.remove',
22
+ message: 'Click to remove the breakpoint'
23
+ }) : _({
24
+ id: 'stage-node.breakpoint.add',
25
+ message: 'Click to add a breakpoint'
26
+ });
27
+ return /*#__PURE__*/ jsx(CanvasTooltip, {
28
+ content: label,
29
+ placement: "top",
30
+ children: /*#__PURE__*/ jsx("button", {
31
+ type: "button",
32
+ "data-testid": active ? `stage-task-breakpoint-${taskId}` : `stage-task-add-breakpoint-${taskId}`,
33
+ "aria-label": label,
34
+ className: active ? DOT : `task-breakpoint-add ${DOT}`,
35
+ onClick: handleClick,
36
+ onPointerDown: stopPointerDown
37
+ })
8
38
  });
9
39
  }
10
40
  const TaskBreakpointDot = /*#__PURE__*/ memo(TaskBreakpointDotInner);
@@ -46,6 +46,7 @@ const external_react_namespaceObject = require("react");
46
46
  const external_i18n_index_cjs_namespaceObject = require("../../../i18n/index.cjs");
47
47
  const external_CanvasTooltip_cjs_namespaceObject = require("../CanvasTooltip.cjs");
48
48
  const external_ExecutionStatusIcon_index_cjs_namespaceObject = require("../ExecutionStatusIcon/index.cjs");
49
+ const external_formatDuration_cjs_namespaceObject = require("./formatDuration.cjs");
49
50
  const external_StageNode_styles_cjs_namespaceObject = require("./StageNode.styles.cjs");
50
51
  const external_StageTaskEntryConditionIcon_cjs_namespaceObject = require("./StageTaskEntryConditionIcon.cjs");
51
52
  const external_useExecutionStatusLabel_cjs_namespaceObject = require("./useExecutionStatusLabel.cjs");
@@ -135,8 +136,8 @@ const TaskPlayButton = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({
135
136
  })
136
137
  });
137
138
  });
138
- const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ task, taskExecution, isDragging, onTaskPlay })=>{
139
- const { _ } = (0, external_i18n_index_cjs_namespaceObject.useSafeLingui)();
139
+ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ task, taskExecution, isDragging, onTaskPlay, trailingContent })=>{
140
+ const { _, locale } = (0, external_i18n_index_cjs_namespaceObject.useSafeLingui)();
140
141
  const getStatusName = (0, external_useExecutionStatusLabel_cjs_namespaceObject.useExecutionStatusLabel)();
141
142
  const hasExecutionStatus = !!taskExecution?.status;
142
143
  const retries = taskExecution?.retryCount ?? 0;
@@ -163,10 +164,11 @@ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ ta
163
164
  const taskStatusFallbackName = hasExecutionStatus ? getStatusName(taskExecution?.status) : '';
164
165
  const taskStatusTooltip = taskExecution?.message || taskStatusFallbackName;
165
166
  const showRequiredMarker = task.isRequired && !task.isAdhoc && 'adhoc' !== task.taskGroupType;
166
- const durationLabel = taskExecution?.duration ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
167
+ const durationText = taskExecution?.durationMs !== void 0 ? (0, external_formatDuration_cjs_namespaceObject.formatDurationMs)(taskExecution.durationMs, locale) : taskExecution?.duration;
168
+ const durationLabel = durationText ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
167
169
  "data-testid": `stage-task-duration-${task.id}`,
168
170
  className: "text-xs text-foreground-muted",
169
- children: taskExecution.duration
171
+ children: durationText
170
172
  }) : null;
171
173
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(index_cjs_namespaceObject.Row, {
172
174
  flex: 1,
@@ -185,10 +187,23 @@ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ ta
185
187
  textOverflow: 'ellipsis',
186
188
  whiteSpace: 'nowrap'
187
189
  },
190
+ "data-testid": `stage-task-identity-${task.id}`,
188
191
  children: [
189
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageTaskIcon, {
190
- "data-testid": `stage-task-icon-${task.id}`,
191
- children: task.icon ?? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ProcessCanvasIcon, {})
192
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(index_cjs_namespaceObject.Row, {
193
+ gap: apollo_core_namespaceObject.Spacing.SpacingMicro,
194
+ align: "center",
195
+ style: {
196
+ flexShrink: 0
197
+ },
198
+ children: [
199
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageTaskEntryConditionIcon_cjs_namespaceObject.StageTaskEntryConditionIcon, {
200
+ task: task
201
+ }),
202
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageNode_styles_cjs_namespaceObject.StageTaskIcon, {
203
+ "data-testid": `stage-task-icon-${task.id}`,
204
+ children: task.icon ?? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ProcessCanvasIcon, {})
205
+ })
206
+ ]
192
207
  }),
193
208
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
194
209
  content: task.label,
@@ -233,6 +248,7 @@ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ ta
233
248
  style: {
234
249
  flexShrink: 0
235
250
  },
251
+ "data-testid": `stage-task-actions-${task.id}`,
236
252
  children: [
237
253
  durationLabel && (taskExecution?.durationTooltip ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
238
254
  content: taskExecution.durationTooltip,
@@ -273,9 +289,6 @@ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ ta
273
289
  })
274
290
  })
275
291
  }),
276
- /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_StageTaskEntryConditionIcon_cjs_namespaceObject.StageTaskEntryConditionIcon, {
277
- task: task
278
- }),
279
292
  hasExecutionStatus && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_CanvasTooltip_cjs_namespaceObject.CanvasTooltip, {
280
293
  content: taskStatusTooltip,
281
294
  placement: "top",
@@ -293,7 +306,8 @@ const TaskContent = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(({ ta
293
306
  onTaskPlay && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(TaskPlayButton, {
294
307
  taskId: task.id,
295
308
  onTaskPlay: onTaskPlay
296
- })
309
+ }),
310
+ trailingContent
297
311
  ]
298
312
  })
299
313
  ]
@@ -4,6 +4,7 @@ export interface TaskContentProps {
4
4
  taskExecution?: StageTaskExecution;
5
5
  isDragging?: boolean;
6
6
  onTaskPlay?: (taskId: string) => Promise<void>;
7
+ trailingContent?: React.ReactNode;
7
8
  }
8
- export declare const TaskContent: import("react").MemoExoticComponent<({ task, taskExecution, isDragging, onTaskPlay }: TaskContentProps) => import("react/jsx-runtime").JSX.Element>;
9
+ export declare const TaskContent: import("react").MemoExoticComponent<({ task, taskExecution, isDragging, onTaskPlay, trailingContent }: TaskContentProps) => import("react/jsx-runtime").JSX.Element>;
9
10
  //# sourceMappingURL=TaskContent.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TaskContent.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskContent.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAuE3E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAChD;AAED,eAAO,MAAM,WAAW,wFAC4B,gBAAgB,6CAqJnE,CAAC"}
1
+ {"version":3,"file":"TaskContent.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskContent.tsx"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAuE3E,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,aAAa,CAAC;IACpB,aAAa,CAAC,EAAE,kBAAkB,CAAC;IACnC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,WAAW,yGAC6C,gBAAgB,6CAoKpF,CAAC"}
@@ -8,6 +8,7 @@ import { memo, useCallback, useMemo, useState } from "react";
8
8
  import { useSafeLingui } from "../../../i18n/index.js";
9
9
  import { CanvasTooltip } from "../CanvasTooltip.js";
10
10
  import { ExecutionStatusIcon } from "../ExecutionStatusIcon/index.js";
11
+ import { formatDurationMs } from "./formatDuration.js";
11
12
  import { StageTaskIcon } from "./StageNode.styles.js";
12
13
  import { StageTaskEntryConditionIcon } from "./StageTaskEntryConditionIcon.js";
13
14
  import { useExecutionStatusLabel } from "./useExecutionStatusLabel.js";
@@ -97,8 +98,8 @@ const TaskPlayButton = /*#__PURE__*/ memo(({ taskId, onTaskPlay })=>{
97
98
  })
98
99
  });
99
100
  });
100
- const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTaskPlay })=>{
101
- const { _ } = useSafeLingui();
101
+ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTaskPlay, trailingContent })=>{
102
+ const { _, locale } = useSafeLingui();
102
103
  const getStatusName = useExecutionStatusLabel();
103
104
  const hasExecutionStatus = !!taskExecution?.status;
104
105
  const retries = taskExecution?.retryCount ?? 0;
@@ -125,10 +126,11 @@ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTas
125
126
  const taskStatusFallbackName = hasExecutionStatus ? getStatusName(taskExecution?.status) : '';
126
127
  const taskStatusTooltip = taskExecution?.message || taskStatusFallbackName;
127
128
  const showRequiredMarker = task.isRequired && !task.isAdhoc && 'adhoc' !== task.taskGroupType;
128
- const durationLabel = taskExecution?.duration ? /*#__PURE__*/ jsx("span", {
129
+ const durationText = taskExecution?.durationMs !== void 0 ? formatDurationMs(taskExecution.durationMs, locale) : taskExecution?.duration;
130
+ const durationLabel = durationText ? /*#__PURE__*/ jsx("span", {
129
131
  "data-testid": `stage-task-duration-${task.id}`,
130
132
  className: "text-xs text-foreground-muted",
131
- children: taskExecution.duration
133
+ children: durationText
132
134
  }) : null;
133
135
  return /*#__PURE__*/ jsxs(Row, {
134
136
  flex: 1,
@@ -147,10 +149,23 @@ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTas
147
149
  textOverflow: 'ellipsis',
148
150
  whiteSpace: 'nowrap'
149
151
  },
152
+ "data-testid": `stage-task-identity-${task.id}`,
150
153
  children: [
151
- /*#__PURE__*/ jsx(StageTaskIcon, {
152
- "data-testid": `stage-task-icon-${task.id}`,
153
- children: task.icon ?? /*#__PURE__*/ jsx(ProcessCanvasIcon, {})
154
+ /*#__PURE__*/ jsxs(Row, {
155
+ gap: Spacing.SpacingMicro,
156
+ align: "center",
157
+ style: {
158
+ flexShrink: 0
159
+ },
160
+ children: [
161
+ /*#__PURE__*/ jsx(StageTaskEntryConditionIcon, {
162
+ task: task
163
+ }),
164
+ /*#__PURE__*/ jsx(StageTaskIcon, {
165
+ "data-testid": `stage-task-icon-${task.id}`,
166
+ children: task.icon ?? /*#__PURE__*/ jsx(ProcessCanvasIcon, {})
167
+ })
168
+ ]
154
169
  }),
155
170
  /*#__PURE__*/ jsx(CanvasTooltip, {
156
171
  content: task.label,
@@ -195,6 +210,7 @@ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTas
195
210
  style: {
196
211
  flexShrink: 0
197
212
  },
213
+ "data-testid": `stage-task-actions-${task.id}`,
198
214
  children: [
199
215
  durationLabel && (taskExecution?.durationTooltip ? /*#__PURE__*/ jsx(CanvasTooltip, {
200
216
  content: taskExecution.durationTooltip,
@@ -235,9 +251,6 @@ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTas
235
251
  })
236
252
  })
237
253
  }),
238
- /*#__PURE__*/ jsx(StageTaskEntryConditionIcon, {
239
- task: task
240
- }),
241
254
  hasExecutionStatus && /*#__PURE__*/ jsx(CanvasTooltip, {
242
255
  content: taskStatusTooltip,
243
256
  placement: "top",
@@ -255,7 +268,8 @@ const TaskContent = /*#__PURE__*/ memo(({ task, taskExecution, isDragging, onTas
255
268
  onTaskPlay && /*#__PURE__*/ jsx(TaskPlayButton, {
256
269
  taskId: task.id,
257
270
  onTaskPlay: onTaskPlay
258
- })
271
+ }),
272
+ trailingContent
259
273
  ]
260
274
  })
261
275
  ]
@@ -29,7 +29,7 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const external_react_namespaceObject = require("react");
31
31
  const CanvasDropdownMenu_cjs_namespaceObject = require("../shared/CanvasDropdownMenu.cjs");
32
- const TaskMenuComponent = ({ task, getContextMenuItems, disabled }, ref)=>{
32
+ const TaskMenuComponent = ({ task, getContextMenuItems, disabled, hideTrigger }, ref)=>{
33
33
  const [isOpen, setIsOpen] = (0, external_react_namespaceObject.useState)(false);
34
34
  const [menuItems, setMenuItems] = (0, external_react_namespaceObject.useState)([]);
35
35
  const handleOpenChange = (0, external_react_namespaceObject.useCallback)((open)=>{
@@ -64,6 +64,9 @@ const TaskMenuComponent = ({ task, getContextMenuItems, disabled }, ref)=>{
64
64
  onItemClick: handleMenuItemClick,
65
65
  triggerTestId: `stage-task-menu-${task.id}`,
66
66
  triggerAriaLabel: "Task actions",
67
+ triggerClassName: "-ml-0.5 h-4 w-4 rounded-sm",
68
+ hideTrigger: hideTrigger,
69
+ hiddenTriggerClassName: "top-1/2 right-1.5 h-4 w-0 -translate-y-1/2",
67
70
  contentClassName: "w-[300px]",
68
71
  disabled: disabled
69
72
  });
@@ -7,6 +7,7 @@ interface TaskMenuProps {
7
7
  task: StageTaskItem;
8
8
  getContextMenuItems: (task: StageTaskItem) => NodeMenuItem[];
9
9
  disabled?: boolean;
10
+ hideTrigger?: boolean;
10
11
  }
11
12
  export declare const TaskMenu: import("react").NamedExoticComponent<TaskMenuProps & import("react").RefAttributes<TaskMenuHandle>>;
12
13
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"TaskMenu.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskMenu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC/D;AAED,UAAU,aAAa;IACrB,IAAI,EAAE,aAAa,CAAC;IAEpB,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,YAAY,EAAE,CAAC;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAqDD,eAAO,MAAM,QAAQ,qGAAsC,CAAC"}
1
+ {"version":3,"file":"TaskMenu.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/TaskMenu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEvD,MAAM,WAAW,cAAc;IAC7B,iBAAiB,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;CAC/D;AAED,UAAU,aAAa;IACrB,IAAI,EAAE,aAAa,CAAC;IAEpB,mBAAmB,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,YAAY,EAAE,CAAC;IAC7D,QAAQ,CAAC,EAAE,OAAO,CAAC;IAMnB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AA+DD,eAAO,MAAM,QAAQ,qGAAsC,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { forwardRef, memo, useCallback, useImperativeHandle, useState } from "react";
3
3
  import { CanvasDropdownMenu } from "../shared/CanvasDropdownMenu.js";
4
- const TaskMenuComponent = ({ task, getContextMenuItems, disabled }, ref)=>{
4
+ const TaskMenuComponent = ({ task, getContextMenuItems, disabled, hideTrigger }, ref)=>{
5
5
  const [isOpen, setIsOpen] = useState(false);
6
6
  const [menuItems, setMenuItems] = useState([]);
7
7
  const handleOpenChange = useCallback((open)=>{
@@ -36,6 +36,9 @@ const TaskMenuComponent = ({ task, getContextMenuItems, disabled }, ref)=>{
36
36
  onItemClick: handleMenuItemClick,
37
37
  triggerTestId: `stage-task-menu-${task.id}`,
38
38
  triggerAriaLabel: "Task actions",
39
+ triggerClassName: "-ml-0.5 h-4 w-4 rounded-sm",
40
+ hideTrigger: hideTrigger,
41
+ hiddenTriggerClassName: "top-1/2 right-1.5 h-4 w-0 -translate-y-1/2",
39
42
  contentClassName: "w-[300px]",
40
43
  disabled: disabled
41
44
  });
@@ -0,0 +1,63 @@
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
+ formatDurationMs: ()=>formatDurationMs
28
+ });
29
+ const external_luxon_namespaceObject = require("luxon");
30
+ const UNITS = [
31
+ 'years',
32
+ 'months',
33
+ 'weeks',
34
+ 'days',
35
+ 'hours',
36
+ 'minutes',
37
+ 'seconds'
38
+ ];
39
+ function formatDurationMs(ms, locale = 'en', maxUnits = 3) {
40
+ if (!Number.isFinite(ms) || ms <= 0 || maxUnits < 1) return '';
41
+ const parts = external_luxon_namespaceObject.Duration.fromMillis(ms).shiftTo(...UNITS).toObject();
42
+ const largest = {};
43
+ for (const unit of UNITS){
44
+ const value = Math.floor(parts[unit] ?? 0);
45
+ if (!(value <= 0)) {
46
+ largest[unit] = value;
47
+ if (Object.keys(largest).length === maxUnits) break;
48
+ }
49
+ }
50
+ if (0 === Object.keys(largest).length) return '';
51
+ return external_luxon_namespaceObject.Duration.fromObject(largest).reconfigure({
52
+ locale
53
+ }).toHuman({
54
+ unitDisplay: 'short'
55
+ });
56
+ }
57
+ exports.formatDurationMs = __webpack_exports__.formatDurationMs;
58
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
59
+ "formatDurationMs"
60
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
61
+ Object.defineProperty(exports, '__esModule', {
62
+ value: true
63
+ });
@@ -0,0 +1,2 @@
1
+ export declare function formatDurationMs(ms: number, locale?: string, maxUnits?: number): string;
2
+ //# sourceMappingURL=formatDuration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formatDuration.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StageNode/formatDuration.ts"],"names":[],"mappings":"AAoBA,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,SAAO,EAAE,QAAQ,SAAI,GAAG,MAAM,CA2BhF"}
@@ -0,0 +1,29 @@
1
+ import { Duration } from "luxon";
2
+ const UNITS = [
3
+ 'years',
4
+ 'months',
5
+ 'weeks',
6
+ 'days',
7
+ 'hours',
8
+ 'minutes',
9
+ 'seconds'
10
+ ];
11
+ function formatDurationMs(ms, locale = 'en', maxUnits = 3) {
12
+ if (!Number.isFinite(ms) || ms <= 0 || maxUnits < 1) return '';
13
+ const parts = Duration.fromMillis(ms).shiftTo(...UNITS).toObject();
14
+ const largest = {};
15
+ for (const unit of UNITS){
16
+ const value = Math.floor(parts[unit] ?? 0);
17
+ if (!(value <= 0)) {
18
+ largest[unit] = value;
19
+ if (Object.keys(largest).length === maxUnits) break;
20
+ }
21
+ }
22
+ if (0 === Object.keys(largest).length) return '';
23
+ return Duration.fromObject(largest).reconfigure({
24
+ locale
25
+ }).toHuman({
26
+ unitDisplay: 'short'
27
+ });
28
+ }
29
+ export { formatDurationMs };
@@ -29,7 +29,7 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const apollo_wind_namespaceObject = require("@uipath/apollo-wind");
31
31
  const icon_registry_cjs_namespaceObject = require("../../utils/icon-registry.cjs");
32
- function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel = 'Dropdown menu', contentClassName, disabled }) {
32
+ function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel = 'Dropdown menu', triggerClassName = 'h-6 w-6', hideTrigger, hiddenTriggerClassName, contentClassName, disabled }) {
33
33
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(apollo_wind_namespaceObject.DropdownMenu, {
34
34
  open: open,
35
35
  onOpenChange: onOpenChange,
@@ -37,10 +37,13 @@ function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, trigge
37
37
  children: [
38
38
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(apollo_wind_namespaceObject.DropdownMenuTrigger, {
39
39
  asChild: true,
40
- children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(apollo_wind_namespaceObject.Button, {
40
+ children: hideTrigger ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
41
+ "aria-hidden": true,
42
+ className: `pointer-events-none absolute ${hiddenTriggerClassName ?? ''}`
43
+ }) : /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(apollo_wind_namespaceObject.Button, {
41
44
  variant: "ghost",
42
45
  size: "icon",
43
- className: "h-6 w-6",
46
+ className: triggerClassName,
44
47
  "data-testid": triggerTestId,
45
48
  "aria-label": triggerAriaLabel,
46
49
  disabled: disabled,
@@ -6,9 +6,12 @@ interface CanvasDropdownMenuProps {
6
6
  onItemClick: (item: NodeMenuAction) => void;
7
7
  triggerTestId?: string;
8
8
  triggerAriaLabel?: string;
9
+ triggerClassName?: string;
10
+ hideTrigger?: boolean;
11
+ hiddenTriggerClassName?: string;
9
12
  contentClassName?: string;
10
13
  disabled?: boolean;
11
14
  }
12
- export declare function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel, contentClassName, disabled, }: CanvasDropdownMenuProps): import("react/jsx-runtime").JSX.Element;
15
+ export declare function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel, triggerClassName, hideTrigger, hiddenTriggerClassName, contentClassName, disabled, }: CanvasDropdownMenuProps): import("react/jsx-runtime").JSX.Element;
13
16
  export {};
14
17
  //# sourceMappingURL=CanvasDropdownMenu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CanvasDropdownMenu.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/shared/CanvasDropdownMenu.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvE,UAAU,uBAAuB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,WAAW,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAYD,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,WAAW,EACX,aAAa,EACb,gBAAkC,EAClC,gBAAgB,EAChB,QAAQ,GACT,EAAE,uBAAuB,2CAqCzB"}
1
+ {"version":3,"file":"CanvasDropdownMenu.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/shared/CanvasDropdownMenu.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvE,UAAU,uBAAuB;IAC/B,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,WAAW,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAM1B,WAAW,CAAC,EAAE,OAAO,CAAC;IAMtB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAYD,wBAAgB,kBAAkB,CAAC,EACjC,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,WAAW,EACX,aAAa,EACb,gBAAkC,EAClC,gBAA4B,EAC5B,WAAW,EACX,sBAAsB,EACtB,gBAAgB,EAChB,QAAQ,GACT,EAAE,uBAAuB,2CA+CzB"}
@@ -1,7 +1,7 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Button, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger } from "@uipath/apollo-wind";
3
3
  import { CanvasIcon } from "../../utils/icon-registry.js";
4
- function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel = 'Dropdown menu', contentClassName, disabled }) {
4
+ function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, triggerTestId, triggerAriaLabel = 'Dropdown menu', triggerClassName = 'h-6 w-6', hideTrigger, hiddenTriggerClassName, contentClassName, disabled }) {
5
5
  return /*#__PURE__*/ jsxs(DropdownMenu, {
6
6
  open: open,
7
7
  onOpenChange: onOpenChange,
@@ -9,10 +9,13 @@ function CanvasDropdownMenu({ open, onOpenChange, menuItems, onItemClick, trigge
9
9
  children: [
10
10
  /*#__PURE__*/ jsx(DropdownMenuTrigger, {
11
11
  asChild: true,
12
- children: /*#__PURE__*/ jsx(Button, {
12
+ children: hideTrigger ? /*#__PURE__*/ jsx("span", {
13
+ "aria-hidden": true,
14
+ className: `pointer-events-none absolute ${hiddenTriggerClassName ?? ''}`
15
+ }) : /*#__PURE__*/ jsx(Button, {
13
16
  variant: "ghost",
14
17
  size: "icon",
15
- className: "h-6 w-6",
18
+ className: triggerClassName,
16
19
  "data-testid": triggerTestId,
17
20
  "aria-label": triggerAriaLabel,
18
21
  disabled: disabled,
@@ -27,10 +27,10 @@ __webpack_require__.d(__webpack_exports__, {
27
27
  EntryConditionIcon: ()=>EntryConditionIcon
28
28
  });
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
- const EntryConditionIcon = ({ w = 20, h = 20 })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("svg", {
30
+ const EntryConditionIcon = ({ w = 20, h = 20, tight = false })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("svg", {
31
31
  width: w,
32
32
  height: h,
33
- viewBox: "0 0 20 20",
33
+ viewBox: tight ? '3.5 2.5 13 15' : '0 0 20 20',
34
34
  fill: "none",
35
35
  xmlns: "http://www.w3.org/2000/svg",
36
36
  children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("path", {
@@ -1,5 +1,6 @@
1
- export declare const EntryConditionIcon: ({ w, h, }: {
1
+ export declare const EntryConditionIcon: ({ w, h, tight, }: {
2
2
  w?: number | string;
3
3
  h?: number | string;
4
+ tight?: boolean;
4
5
  }) => import("react/jsx-runtime").JSX.Element;
5
6
  //# sourceMappingURL=EntryConditionIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EntryConditionIcon.d.ts","sourceRoot":"","sources":["../../../src/canvas/icons/EntryConditionIcon.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,GAAI,WAGhC;IACD,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CACrB,4CASA,CAAC"}
1
+ {"version":3,"file":"EntryConditionIcon.d.ts","sourceRoot":"","sources":["../../../src/canvas/icons/EntryConditionIcon.tsx"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,GAAI,kBAIhC;IACD,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAEpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,4CAeA,CAAC"}