@uipath/apollo-react 4.37.0 → 4.38.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 (33) hide show
  1. package/dist/canvas/components/BaseNode/BaseNode.cjs +31 -3
  2. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  3. package/dist/canvas/components/BaseNode/BaseNode.js +33 -5
  4. package/dist/canvas/components/BaseNode/BaseNodeConfigContext.d.ts +1 -0
  5. package/dist/canvas/components/BaseNode/BaseNodeConfigContext.d.ts.map +1 -1
  6. package/dist/canvas/components/BaseNode/BaseNodeContainer.cjs +1 -0
  7. package/dist/canvas/components/BaseNode/BaseNodeContainer.d.ts.map +1 -1
  8. package/dist/canvas/components/BaseNode/BaseNodeContainer.js +1 -0
  9. package/dist/canvas/components/Edges/EdgeUtils.cjs +1 -0
  10. package/dist/canvas/components/Edges/EdgeUtils.d.ts.map +1 -1
  11. package/dist/canvas/components/Edges/EdgeUtils.js +1 -0
  12. package/dist/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.cjs +7 -0
  13. package/dist/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.d.ts +1 -1
  14. package/dist/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.d.ts.map +1 -1
  15. package/dist/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.js +7 -0
  16. package/dist/canvas/components/LoopNode/LoopNode.cjs +13 -3
  17. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +1 -1
  18. package/dist/canvas/components/LoopNode/LoopNode.js +13 -3
  19. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts +2 -0
  20. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts.map +1 -1
  21. package/dist/canvas/components/StickyNoteNode/StickyNoteNode.cjs +10 -3
  22. package/dist/canvas/components/StickyNoteNode/StickyNoteNode.d.ts +3 -1
  23. package/dist/canvas/components/StickyNoteNode/StickyNoteNode.d.ts.map +1 -1
  24. package/dist/canvas/components/StickyNoteNode/StickyNoteNode.js +10 -3
  25. package/dist/canvas/styles/execution-status.cjs +1 -0
  26. package/dist/canvas/styles/execution-status.d.ts.map +1 -1
  27. package/dist/canvas/styles/execution-status.js +1 -0
  28. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  29. package/dist/canvas/types/execution.cjs +1 -0
  30. package/dist/canvas/types/execution.d.ts +1 -0
  31. package/dist/canvas/types/execution.d.ts.map +1 -1
  32. package/dist/canvas/types/execution.js +1 -0
  33. package/package.json +3 -3
@@ -71,7 +71,7 @@ const getContainerHeight = (height, hasFooter, footerVariant)=>{
71
71
  };
72
72
  const BaseNodeComponent = (props)=>{
73
73
  const { type, data, selected, id, dragging, width, height, parentId } = props;
74
- const { onHandleAction: onHandleActionProp, onHandleMouseEnter: onHandleMouseEnterProp, onHandleMouseLeave: onHandleMouseLeaveProp, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = (0, external_BaseNodeConfigContext_cjs_namespaceObject.useBaseNodeOverrideConfig)();
74
+ const { onHandleAction: onHandleActionProp, onHandleMouseEnter: onHandleMouseEnterProp, onHandleMouseLeave: onHandleMouseLeaveProp, onActionNeeded, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = (0, external_BaseNodeConfigContext_cjs_namespaceObject.useBaseNodeOverrideConfig)();
75
75
  const updateNodeInternals = (0, react_cjs_namespaceObject.useUpdateNodeInternals)();
76
76
  const { updateNodeData, updateNode } = (0, react_cjs_namespaceObject.useReactFlow)();
77
77
  const containerRef = (0, external_react_namespaceObject.useRef)(null);
@@ -444,7 +444,7 @@ const BaseNodeComponent = (props)=>{
444
444
  shape: displayShape,
445
445
  children: adornments.topLeft
446
446
  }),
447
- adornments?.topRight && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_BaseNodeBadgeSlot_cjs_namespaceObject.BaseBadgeSlot, {
447
+ adornments?.topRight && 'ActionNeeded' !== executionStatus && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_BaseNodeBadgeSlot_cjs_namespaceObject.BaseBadgeSlot, {
448
448
  position: "top-right",
449
449
  shape: displayShape,
450
450
  children: adornments.topRight
@@ -484,7 +484,35 @@ const BaseNodeComponent = (props)=>{
484
484
  })
485
485
  ]
486
486
  }),
487
- handleElements
487
+ handleElements,
488
+ 'ActionNeeded' === executionStatus && (()=>{
489
+ const badgeInset = 'circle' === displayShape ? external_constants_cjs_namespaceObject.NODE_BADGE_INSET_CIRCLE : external_constants_cjs_namespaceObject.NODE_BADGE_INSET_SQUARE;
490
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("button", {
491
+ type: "button",
492
+ className: "absolute z-10 flex items-center gap-1 rounded-full bg-amber-400 text-[11px] font-semibold text-stone-900 shadow-sm transition-colors hover:bg-amber-300",
493
+ style: {
494
+ top: badgeInset,
495
+ left: `calc(var(--node-w) - ${badgeInset + external_constants_cjs_namespaceObject.NODE_BADGE_SIZE}px)`,
496
+ height: external_constants_cjs_namespaceObject.NODE_BADGE_SIZE,
497
+ minWidth: external_constants_cjs_namespaceObject.NODE_BADGE_SIZE,
498
+ paddingInline: '4px 10px'
499
+ },
500
+ onClick: (e)=>{
501
+ e.stopPropagation();
502
+ onActionNeeded?.(id);
503
+ },
504
+ children: [
505
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(icon_registry_cjs_namespaceObject.CanvasIcon, {
506
+ icon: "flag",
507
+ size: 12
508
+ }),
509
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
510
+ className: "whitespace-nowrap",
511
+ children: "Action needed"
512
+ })
513
+ ]
514
+ });
515
+ })()
488
516
  ]
489
517
  });
490
518
  if (useSmartHandles) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(SmartHandle_cjs_namespaceObject.SmartHandleProvider, {
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAwChF,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AA6nB1B,eAAO,MAAM,QAAQ,8CAvlBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CAulBhB,CAAC"}
1
+ {"version":3,"file":"BaseNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AA2ChF,OAAO,KAAK,EACV,YAAY,EAIb,MAAM,kBAAkB,CAAC;AAqpB1B,eAAO,MAAM,QAAQ,8CA/mBa,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,6CA+mBhB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Position, useReactFlow, useStore, useUpdateNodeInternals } from "../../xyflow/react.js";
3
3
  import { memo, useCallback, useEffect, useMemo, useRef, useState } from "react";
4
- import { DEFAULT_NODE_SIZE, DEFAULT_RECTANGLE_NODE_WIDTH, GRID_SPACING, NODE_BORDER_SIZE, NODE_CONTAINER_RADIUS_RATIO, NODE_HEIGHT_DEFAULT, NODE_HEIGHT_FOOTER_BUTTON, NODE_HEIGHT_FOOTER_DOUBLE, NODE_HEIGHT_FOOTER_SINGLE, NODE_INNER_ICON_RATIO, NODE_INNER_RADIUS_RATIO, NODE_INNER_SHAPE_RATIO } from "../../constants.js";
4
+ import { DEFAULT_NODE_SIZE, DEFAULT_RECTANGLE_NODE_WIDTH, GRID_SPACING, NODE_BADGE_INSET_CIRCLE, NODE_BADGE_INSET_SQUARE, NODE_BADGE_SIZE, NODE_BORDER_SIZE, NODE_CONTAINER_RADIUS_RATIO, NODE_HEIGHT_DEFAULT, NODE_HEIGHT_FOOTER_BUTTON, NODE_HEIGHT_FOOTER_DOUBLE, NODE_HEIGHT_FOOTER_SINGLE, NODE_INNER_ICON_RATIO, NODE_INNER_RADIUS_RATIO, NODE_INNER_SHAPE_RATIO } from "../../constants.js";
5
5
  import { useNodeTypeRegistry } from "../../core/index.js";
6
6
  import { useElementValidationStatus, useNodeExecutionState } from "../../hooks/index.js";
7
7
  import { resolveAdornments } from "../../utils/adornment-resolver.js";
8
- import { getIcon } from "../../utils/icon-registry.js";
8
+ import { CanvasIcon, getIcon } from "../../utils/icon-registry.js";
9
9
  import { resolveDisplay, resolveHandles } from "../../utils/manifest-resolver.js";
10
10
  import { selectIsConnecting } from "../../utils/NodeUtils.js";
11
11
  import { resolveToolbar } from "../../utils/toolbar-resolver.js";
@@ -43,7 +43,7 @@ const getContainerHeight = (height, hasFooter, footerVariant)=>{
43
43
  };
44
44
  const BaseNodeComponent = (props)=>{
45
45
  const { type, data, selected, id, dragging, width, height, parentId } = props;
46
- const { onHandleAction: onHandleActionProp, onHandleMouseEnter: onHandleMouseEnterProp, onHandleMouseLeave: onHandleMouseLeaveProp, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = useBaseNodeOverrideConfig();
46
+ const { onHandleAction: onHandleActionProp, onHandleMouseEnter: onHandleMouseEnterProp, onHandleMouseLeave: onHandleMouseLeaveProp, onActionNeeded, shouldShowAddButtonFn: shouldShowAddButtonFnProp, shouldShowButtonHandleNotchesFn: shouldShowButtonHandleNotchesFnProp, toolbarConfig: toolbarConfigProp, handleConfigurations: handleConfigurationsProp, adornments: adornmentsProp, suggestionType, disabled, executionStatusOverride, labelTooltip, labelBackgroundColor, footerVariant, footerComponent, subLabelComponent, iconComponent } = useBaseNodeOverrideConfig();
47
47
  const updateNodeInternals = useUpdateNodeInternals();
48
48
  const { updateNodeData, updateNode } = useReactFlow();
49
49
  const containerRef = useRef(null);
@@ -416,7 +416,7 @@ const BaseNodeComponent = (props)=>{
416
416
  shape: displayShape,
417
417
  children: adornments.topLeft
418
418
  }),
419
- adornments?.topRight && /*#__PURE__*/ jsx(BaseBadgeSlot, {
419
+ adornments?.topRight && 'ActionNeeded' !== executionStatus && /*#__PURE__*/ jsx(BaseBadgeSlot, {
420
420
  position: "top-right",
421
421
  shape: displayShape,
422
422
  children: adornments.topRight
@@ -456,7 +456,35 @@ const BaseNodeComponent = (props)=>{
456
456
  })
457
457
  ]
458
458
  }),
459
- handleElements
459
+ handleElements,
460
+ 'ActionNeeded' === executionStatus && (()=>{
461
+ const badgeInset = 'circle' === displayShape ? NODE_BADGE_INSET_CIRCLE : NODE_BADGE_INSET_SQUARE;
462
+ return /*#__PURE__*/ jsxs("button", {
463
+ type: "button",
464
+ className: "absolute z-10 flex items-center gap-1 rounded-full bg-amber-400 text-[11px] font-semibold text-stone-900 shadow-sm transition-colors hover:bg-amber-300",
465
+ style: {
466
+ top: badgeInset,
467
+ left: `calc(var(--node-w) - ${badgeInset + NODE_BADGE_SIZE}px)`,
468
+ height: NODE_BADGE_SIZE,
469
+ minWidth: NODE_BADGE_SIZE,
470
+ paddingInline: '4px 10px'
471
+ },
472
+ onClick: (e)=>{
473
+ e.stopPropagation();
474
+ onActionNeeded?.(id);
475
+ },
476
+ children: [
477
+ /*#__PURE__*/ jsx(CanvasIcon, {
478
+ icon: "flag",
479
+ size: 12
480
+ }),
481
+ /*#__PURE__*/ jsx("span", {
482
+ className: "whitespace-nowrap",
483
+ children: "Action needed"
484
+ })
485
+ ]
486
+ });
487
+ })()
460
488
  ]
461
489
  });
462
490
  if (useSmartHandles) return /*#__PURE__*/ jsx(SmartHandleProvider, {
@@ -7,6 +7,7 @@ export interface BaseNodeOverrideConfig {
7
7
  onHandleAction?: (event: HandleActionEvent) => void;
8
8
  onHandleMouseEnter?: (event: HandleMouseEvent) => void;
9
9
  onHandleMouseLeave?: (event: HandleMouseEvent) => void;
10
+ onActionNeeded?: (nodeId: string) => void;
10
11
  shouldShowAddButtonFn?: (opts: {
11
12
  showAddButton: boolean;
12
13
  selected: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNodeConfigContext.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNodeConfigContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AActE,MAAM,WAAW,sBAAsB;IAErC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEpD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEvD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACvD,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC;IACzF,+BAA+B,CAAC,EAAE,CAAC,IAAI,EAAE;QACvC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;KACpB,KAAK,OAAO,CAAC;IAGd,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7C,UAAU,CAAC,EAAE,cAAc,CAAC;IAG5B,cAAc,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,mBAAmB,CAAC;IAG9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACjC;AAMD,eAAO,MAAM,8BAA8B,kDAAyC,CAAC;AAMrF,wBAAgB,yBAAyB,IAAI,sBAAsB,CAElE"}
1
+ {"version":3,"file":"BaseNodeConfigContext.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNodeConfigContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AActE,MAAM,WAAW,sBAAsB;IAErC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAEpD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAEvD,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACvD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,qBAAqB,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC;IACzF,+BAA+B,CAAC,EAAE,CAAC,IAAI,EAAE;QACvC,YAAY,EAAE,OAAO,CAAC;QACtB,UAAU,EAAE,OAAO,CAAC;QACpB,SAAS,EAAE,OAAO,CAAC;KACpB,KAAK,OAAO,CAAC;IAGd,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IAC7C,UAAU,CAAC,EAAE,cAAc,CAAC;IAG5B,cAAc,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC7C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uBAAuB,CAAC,EAAE,mBAAmB,CAAC;IAG9C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAClC,iBAAiB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACpC,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CACjC;AAMD,eAAO,MAAM,8BAA8B,kDAAyC,CAAC;AAMrF,wBAAgB,yBAAyB,IAAI,sBAAsB,CAElE"}
@@ -37,6 +37,7 @@ const getStatusBorder = (status)=>{
37
37
  case 'Completed':
38
38
  case 'add':
39
39
  return 'border-success';
40
+ case 'ActionNeeded':
40
41
  case 'Paused':
41
42
  case 'Warning':
42
43
  case 'WARNING':
@@ -1 +1 @@
1
- {"version":3,"file":"BaseNodeContainer.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNodeContainer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,eAAO,MAAM,eAAe,GAC1B,SAAS,mBAAmB,GAAG,uBAAuB,GAAG,cAAc,KACtE,MAsBF,CAAC;AAEF,UAAU,kBAAkB;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,GAAI,6JAa3B,kBAAkB,4CA8CpB,CAAC"}
1
+ {"version":3,"file":"BaseNodeContainer.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/BaseNode/BaseNodeContainer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,eAAO,MAAM,eAAe,GAC1B,SAAS,mBAAmB,GAAG,uBAAuB,GAAG,cAAc,KACtE,MAuBF,CAAC;AAEF,UAAU,kBAAkB;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,gBAAgB,CAAC,EAAE,uBAAuB,CAAC;IAC3C,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,eAAO,MAAM,aAAa,GAAI,6JAa3B,kBAAkB,4CA8CpB,CAAC"}
@@ -8,6 +8,7 @@ const getStatusBorder = (status)=>{
8
8
  case 'Completed':
9
9
  case 'add':
10
10
  return 'border-success';
11
+ case 'ActionNeeded':
11
12
  case 'Paused':
12
13
  case 'Warning':
13
14
  case 'WARNING':
@@ -30,6 +30,7 @@ __webpack_require__.d(__webpack_exports__, {
30
30
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
31
31
  const execution_cjs_namespaceObject = require("../../types/execution.cjs");
32
32
  const edgeTargetStatusToEdgeColor = {
33
+ ActionNeeded: 'var(--canvas-warning-icon)',
33
34
  Cancelled: 'var(--canvas-error-icon)',
34
35
  Completed: 'var(--canvas-success-icon)',
35
36
  CRITICAL: 'var(--canvas-error-icon)',
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeUtils.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Edges/EdgeUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,eAAO,MAAM,2BAA2B,EAAE;KACvC,GAAG,IAAI,aAAa,GAAG,uBAAuB,GAAG,MAAM;CAgBzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,aAAa,GAAG,uBAAuB,GAAG,SAAS,EAC3D,UAAU,MAAM,mDAYjB,CAAC"}
1
+ {"version":3,"file":"EdgeUtils.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/Edges/EdgeUtils.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,EAAuB,MAAM,uBAAuB,CAAC;AAChF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AAEtE,eAAO,MAAM,2BAA2B,EAAE;KACvC,GAAG,IAAI,aAAa,GAAG,uBAAuB,GAAG,MAAM;CAiBzD,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,QAAQ,aAAa,GAAG,uBAAuB,GAAG,SAAS,EAC3D,UAAU,MAAM,mDAYjB,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { jsx } from "react/jsx-runtime";
2
2
  import { ElementStatusValues } from "../../types/execution.js";
3
3
  const edgeTargetStatusToEdgeColor = {
4
+ ActionNeeded: 'var(--canvas-warning-icon)',
4
5
  Cancelled: 'var(--canvas-error-icon)',
5
6
  Completed: 'var(--canvas-success-icon)',
6
7
  CRITICAL: 'var(--canvas-error-icon)',
@@ -39,6 +39,7 @@ function getExecutionStatusColor(status) {
39
39
  return 'var(--color-info-icon)';
40
40
  case 'Completed':
41
41
  return 'var(--color-success-icon)';
42
+ case 'ActionNeeded':
42
43
  case 'Paused':
43
44
  case 'Warning':
44
45
  return 'var(--color-warning-icon)';
@@ -89,6 +90,12 @@ function ExecutionStatusIcon({ status, size = 16 }) {
89
90
  size: size,
90
91
  color: color
91
92
  });
93
+ case 'ActionNeeded':
94
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(icon_registry_cjs_namespaceObject.CanvasIcon, {
95
+ icon: "hand",
96
+ size: size,
97
+ color: color
98
+ });
92
99
  case 'Paused':
93
100
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(icon_registry_cjs_namespaceObject.CanvasIcon, {
94
101
  icon: "circle-pause",
@@ -1,6 +1,6 @@
1
1
  export declare function getExecutionStatusColor(status: string | undefined): string;
2
2
  export declare function ExecutionStatusIcon({ status, size, }: {
3
- status?: 'InProgress' | 'Cancelled' | 'UserCancelled' | 'Completed' | 'Paused' | 'Failed' | 'NotExecuted' | 'Terminated' | 'Warning' | string;
3
+ status?: 'ActionNeeded' | 'InProgress' | 'Cancelled' | 'UserCancelled' | 'Completed' | 'Paused' | 'Failed' | 'NotExecuted' | 'Terminated' | 'Warning' | string;
4
4
  size?: number;
5
5
  }): import("react/jsx-runtime").JSX.Element | null;
6
6
  //# sourceMappingURL=ExecutionStatusIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecutionStatusIcon.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.tsx"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAsC1E;AAED,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,IAAS,GACV,EAAE;IACD,MAAM,CAAC,EACH,YAAY,GACZ,WAAW,GACX,eAAe,GACf,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,aAAa,GACb,YAAY,GACZ,SAAS,GACT,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,kDA+BA"}
1
+ {"version":3,"file":"ExecutionStatusIcon.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ExecutionStatusIcon/ExecutionStatusIcon.tsx"],"names":[],"mappings":"AAIA,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAuC1E;AAED,wBAAgB,mBAAmB,CAAC,EAClC,MAAM,EACN,IAAS,GACV,EAAE;IACD,MAAM,CAAC,EACH,cAAc,GACd,YAAY,GACZ,WAAW,GACX,eAAe,GACf,WAAW,GACX,QAAQ,GACR,QAAQ,GACR,aAAa,GACb,YAAY,GACZ,SAAS,GACT,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,kDAiCA"}
@@ -10,6 +10,7 @@ function getExecutionStatusColor(status) {
10
10
  return 'var(--color-info-icon)';
11
11
  case 'Completed':
12
12
  return 'var(--color-success-icon)';
13
+ case 'ActionNeeded':
13
14
  case 'Paused':
14
15
  case 'Warning':
15
16
  return 'var(--color-warning-icon)';
@@ -60,6 +61,12 @@ function ExecutionStatusIcon({ status, size = 16 }) {
60
61
  size: size,
61
62
  color: color
62
63
  });
64
+ case 'ActionNeeded':
65
+ return /*#__PURE__*/ jsx(CanvasIcon, {
66
+ icon: "hand",
67
+ size: size,
68
+ color: color
69
+ });
63
70
  case 'Paused':
64
71
  return /*#__PURE__*/ jsx(CanvasIcon, {
65
72
  icon: "circle-pause",
@@ -158,7 +158,7 @@ function resolveLoopHandleConfigurations(manifestHandleConfigurations, data) {
158
158
  return manifestHandleConfigurations ?? [];
159
159
  }
160
160
  function LoopNodeComponent(props) {
161
- const { id, type, data, selected = false, dragging = false, width = 0, height = 0, onAddFirstChild, onResize, toolbarConfig: toolbarConfigProp, adornments: adornmentsProp, executionStatusOverride, suggestionType: suggestionTypeProp, iterationPillState: iterationPillStateProp } = props;
161
+ const { id, type, data, selected = false, dragging = false, width = 0, height = 0, onAddFirstChild, onResize, onResizeStart, onResizeEnd, toolbarConfig: toolbarConfigProp, adornments: adornmentsProp, executionStatusOverride, suggestionType: suggestionTypeProp, iterationPillState: iterationPillStateProp } = props;
162
162
  const nodeTypeRegistry = (0, external_core_index_cjs_namespaceObject.useOptionalNodeTypeRegistry)();
163
163
  const { _ } = (0, index_cjs_namespaceObject.useSafeLingui)();
164
164
  const [isHovered, setIsHovered] = (0, external_react_namespaceObject.useState)(false);
@@ -278,8 +278,18 @@ function LoopNodeComponent(props) {
278
278
  }, [
279
279
  onResize
280
280
  ]);
281
- const handleResizeStart = (0, external_react_namespaceObject.useCallback)(()=>setIsResizing(true), []);
282
- const handleResizeEnd = (0, external_react_namespaceObject.useCallback)(()=>setIsResizing(false), []);
281
+ const handleResizeStart = (0, external_react_namespaceObject.useCallback)(()=>{
282
+ setIsResizing(true);
283
+ onResizeStart?.();
284
+ }, [
285
+ onResizeStart
286
+ ]);
287
+ const handleResizeEnd = (0, external_react_namespaceObject.useCallback)(()=>{
288
+ setIsResizing(false);
289
+ if (onResizeEnd) queueMicrotask(onResizeEnd);
290
+ }, [
291
+ onResizeEnd
292
+ ]);
283
293
  const handleEmptyClick = (0, external_react_namespaceObject.useCallback)(()=>{
284
294
  onAddFirstChild?.();
285
295
  }, [
@@ -1 +1 @@
1
- {"version":3,"file":"LoopNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/LoopNode/LoopNode.tsx"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAA+B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAsInF,iBAAS,iBAAiB,CAAC,KAAK,EAAE,aAAa,2CA8Q9C;AAED,eAAO,MAAM,QAAQ,+DAA0B,CAAC"}
1
+ {"version":3,"file":"LoopNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/LoopNode/LoopNode.tsx"],"names":[],"mappings":"AAyCA,OAAO,KAAK,EAA+B,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAsInF,iBAAS,iBAAiB,CAAC,KAAK,EAAE,aAAa,2CAwR9C;AAED,eAAO,MAAM,QAAQ,+DAA0B,CAAC"}
@@ -130,7 +130,7 @@ function resolveLoopHandleConfigurations(manifestHandleConfigurations, data) {
130
130
  return manifestHandleConfigurations ?? [];
131
131
  }
132
132
  function LoopNodeComponent(props) {
133
- const { id, type, data, selected = false, dragging = false, width = 0, height = 0, onAddFirstChild, onResize, toolbarConfig: toolbarConfigProp, adornments: adornmentsProp, executionStatusOverride, suggestionType: suggestionTypeProp, iterationPillState: iterationPillStateProp } = props;
133
+ const { id, type, data, selected = false, dragging = false, width = 0, height = 0, onAddFirstChild, onResize, onResizeStart, onResizeEnd, toolbarConfig: toolbarConfigProp, adornments: adornmentsProp, executionStatusOverride, suggestionType: suggestionTypeProp, iterationPillState: iterationPillStateProp } = props;
134
134
  const nodeTypeRegistry = useOptionalNodeTypeRegistry();
135
135
  const { _ } = useSafeLingui();
136
136
  const [isHovered, setIsHovered] = useState(false);
@@ -250,8 +250,18 @@ function LoopNodeComponent(props) {
250
250
  }, [
251
251
  onResize
252
252
  ]);
253
- const handleResizeStart = useCallback(()=>setIsResizing(true), []);
254
- const handleResizeEnd = useCallback(()=>setIsResizing(false), []);
253
+ const handleResizeStart = useCallback(()=>{
254
+ setIsResizing(true);
255
+ onResizeStart?.();
256
+ }, [
257
+ onResizeStart
258
+ ]);
259
+ const handleResizeEnd = useCallback(()=>{
260
+ setIsResizing(false);
261
+ if (onResizeEnd) queueMicrotask(onResizeEnd);
262
+ }, [
263
+ onResizeEnd
264
+ ]);
255
265
  const handleEmptyClick = useCallback(()=>{
256
266
  onAddFirstChild?.();
257
267
  }, [
@@ -28,5 +28,7 @@ export interface LoopNodeConfig {
28
28
  export interface LoopNodeProps extends NodeProps<Node<LoopNodeData>>, LoopNodeConfig {
29
29
  onAddFirstChild?: () => void;
30
30
  onResize?: (size: LoopNodeResizeSize) => void;
31
+ onResizeStart?: () => void;
32
+ onResizeEnd?: () => void;
31
33
  }
32
34
  //# sourceMappingURL=LoopNode.types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LoopNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/LoopNode/LoopNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC;AAExC,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,uBAAuB,CAAC,EAAE,mBAAmB,CAAC;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;CAClD;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,cAAc;IAClF,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;CAC/C"}
1
+ {"version":3,"file":"LoopNode.types.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/LoopNode/LoopNode.types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAChF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,MAAM,MAAM,YAAY,GAAG,YAAY,CAAC;AAExC,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,iBAAiB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,cAAc;IAC7B,aAAa,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,uBAAuB,CAAC,EAAE,mBAAmB,CAAC;IAC9C,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,kBAAkB,CAAC,EAAE,2BAA2B,CAAC;CAClD;AAED,MAAM,WAAW,aAAc,SAAQ,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,cAAc;IAClF,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B"}
@@ -60,7 +60,7 @@ const external_useMarkdownShortcuts_cjs_namespaceObject = require("./useMarkdown
60
60
  const external_useScrollCapture_cjs_namespaceObject = require("./useScrollCapture.cjs");
61
61
  const minWidth = 8 * external_constants_cjs_namespaceObject.GRID_SPACING;
62
62
  const minHeight = 8 * external_constants_cjs_namespaceObject.GRID_SPACING;
63
- const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly = false, onContentChange, onColorChange, onResize })=>{
63
+ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly = false, onContentChange, onColorChange, onResize, onResizeStart, onResizeEnd })=>{
64
64
  const { _ } = (0, index_cjs_namespaceObject.useSafeLingui)();
65
65
  const { updateNodeData, deleteElements } = (0, react_cjs_namespaceObject.useReactFlow)();
66
66
  const [isEditing, setIsEditing] = (0, external_react_namespaceObject.useState)(!readOnly && (data.autoFocus ?? false));
@@ -197,13 +197,20 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
197
197
  handleFormat
198
198
  ]);
199
199
  const handleResizeStart = (0, external_react_namespaceObject.useCallback)(()=>{
200
+ if (isEditing) textAreaRef.current?.blur();
200
201
  setIsResizing(true);
201
- }, []);
202
+ onResizeStart?.();
203
+ }, [
204
+ isEditing,
205
+ onResizeStart
206
+ ]);
202
207
  const handleResizeEnd = (0, external_react_namespaceObject.useCallback)((_event, params)=>{
203
208
  setIsResizing(false);
204
209
  onResize?.(params.width, params.height);
210
+ if (onResizeEnd) queueMicrotask(onResizeEnd);
205
211
  }, [
206
- onResize
212
+ onResize,
213
+ onResizeEnd
207
214
  ]);
208
215
  const handleColorChange = (0, external_react_namespaceObject.useCallback)((newColor)=>{
209
216
  onColorChange?.(newColor);
@@ -8,6 +8,8 @@ export interface StickyNoteNodeProps extends NodeProps {
8
8
  onContentChange?: (content: string) => void;
9
9
  onColorChange?: (color: StickyNoteColor) => void;
10
10
  onResize?: (width: number, height: number) => void;
11
+ onResizeStart?: () => void;
12
+ onResizeEnd?: () => void;
11
13
  }
12
- export declare const StickyNoteNode: import("react").MemoExoticComponent<({ id, data, selected, dragging, placeholder, renderPlaceholderOnSelect, readOnly, onContentChange, onColorChange, onResize, }: StickyNoteNodeProps) => import("react/jsx-runtime").JSX.Element>;
14
+ export declare const StickyNoteNode: import("react").MemoExoticComponent<({ id, data, selected, dragging, placeholder, renderPlaceholderOnSelect, readOnly, onContentChange, onColorChange, onResize, onResizeStart, onResizeEnd, }: StickyNoteNodeProps) => import("react/jsx-runtime").JSX.Element>;
13
15
  //# sourceMappingURL=StickyNoteNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"StickyNoteNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAiC1E,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAiB,MAAM,wBAAwB,CAAC;AAM7F,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CACpD;AAkaD,eAAO,MAAM,cAAc,sKAlZxB,mBAAmB,6CAkZqC,CAAC"}
1
+ {"version":3,"file":"StickyNoteNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/StickyNoteNode/StickyNoteNode.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAiC1E,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAiB,MAAM,wBAAwB,CAAC;AAM7F,MAAM,WAAW,mBAAoB,SAAQ,SAAS;IACpD,IAAI,EAAE,cAAc,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;IACjD,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACnD,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC1B;AA2aD,eAAO,MAAM,cAAc,kMAzZxB,mBAAmB,6CAyZqC,CAAC"}
@@ -20,7 +20,7 @@ import { useMarkdownShortcuts } from "./useMarkdownShortcuts.js";
20
20
  import { useScrollCapture } from "./useScrollCapture.js";
21
21
  const minWidth = 8 * GRID_SPACING;
22
22
  const minHeight = 8 * GRID_SPACING;
23
- const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly = false, onContentChange, onColorChange, onResize })=>{
23
+ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = 'Add text', renderPlaceholderOnSelect = false, readOnly = false, onContentChange, onColorChange, onResize, onResizeStart, onResizeEnd })=>{
24
24
  const { _ } = useSafeLingui();
25
25
  const { updateNodeData, deleteElements } = useReactFlow();
26
26
  const [isEditing, setIsEditing] = useState(!readOnly && (data.autoFocus ?? false));
@@ -157,13 +157,20 @@ const StickyNoteNodeComponent = ({ id, data, selected, dragging, placeholder = '
157
157
  handleFormat
158
158
  ]);
159
159
  const handleResizeStart = useCallback(()=>{
160
+ if (isEditing) textAreaRef.current?.blur();
160
161
  setIsResizing(true);
161
- }, []);
162
+ onResizeStart?.();
163
+ }, [
164
+ isEditing,
165
+ onResizeStart
166
+ ]);
162
167
  const handleResizeEnd = useCallback((_event, params)=>{
163
168
  setIsResizing(false);
164
169
  onResize?.(params.width, params.height);
170
+ if (onResizeEnd) queueMicrotask(onResizeEnd);
165
171
  }, [
166
- onResize
172
+ onResize,
173
+ onResizeEnd
167
174
  ]);
168
175
  const handleColorChange = useCallback((newColor)=>{
169
176
  onColorChange?.(newColor);
@@ -55,6 +55,7 @@ const getExecutionStatusBorder = (executionStatus)=>{
55
55
  return (0, react_namespaceObject.css)`
56
56
  border-color: var(--canvas-success-icon);
57
57
  `;
58
+ case 'ActionNeeded':
58
59
  case 'Paused':
59
60
  case 'Warning':
60
61
  case 'WARNING':
@@ -1 +1 @@
1
- {"version":3,"file":"execution-status.d.ts","sourceRoot":"","sources":["../../../src/canvas/styles/execution-status.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM;;;;;UAU5C,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,kBAAkB,MAAM,8CAyChE,CAAC"}
1
+ {"version":3,"file":"execution-status.d.ts","sourceRoot":"","sources":["../../../src/canvas/styles/execution-status.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,cAAc,GAAI,QAAQ,MAAM;;;;;UAU5C,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,kBAAkB,MAAM,8CA0ChE,CAAC"}
@@ -26,6 +26,7 @@ const getExecutionStatusBorder = (executionStatus)=>{
26
26
  return css`
27
27
  border-color: var(--canvas-success-icon);
28
28
  `;
29
+ case 'ActionNeeded':
29
30
  case 'Paused':
30
31
  case 'Warning':
31
32
  case 'WARNING':