@uipath/apollo-react 4.22.2 → 4.23.0-pr654.3fb62d6

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 (76) hide show
  1. package/dist/canvas/components/AddNodePanel/AddNodeManager.cjs +4 -1
  2. package/dist/canvas/components/AddNodePanel/AddNodeManager.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/AddNodeManager.helpers.cjs +15 -26
  4. package/dist/canvas/components/AddNodePanel/AddNodeManager.helpers.d.ts +3 -3
  5. package/dist/canvas/components/AddNodePanel/AddNodeManager.helpers.d.ts.map +1 -1
  6. package/dist/canvas/components/AddNodePanel/AddNodeManager.helpers.js +18 -29
  7. package/dist/canvas/components/AddNodePanel/AddNodeManager.js +4 -1
  8. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +2 -2
  9. package/dist/canvas/components/BaseNode/BaseNode.cjs +11 -3
  10. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  11. package/dist/canvas/components/BaseNode/BaseNode.js +11 -3
  12. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.cjs +2 -9
  13. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts.map +1 -1
  14. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.js +2 -9
  15. package/dist/canvas/components/LoopNode/LoopNode.cjs +32 -4
  16. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +1 -1
  17. package/dist/canvas/components/LoopNode/LoopNode.helpers.cjs +28 -8
  18. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts +8 -2
  19. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts.map +1 -1
  20. package/dist/canvas/components/LoopNode/LoopNode.helpers.js +23 -6
  21. package/dist/canvas/components/LoopNode/LoopNode.js +33 -5
  22. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.cjs +6 -9
  23. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts.map +1 -1
  24. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.js +6 -9
  25. package/dist/canvas/components/Toolbox/ListView.cjs +6 -1
  26. package/dist/canvas/components/Toolbox/ListView.d.ts.map +1 -1
  27. package/dist/canvas/components/Toolbox/ListView.js +6 -1
  28. package/dist/canvas/components/index.cjs +19 -12
  29. package/dist/canvas/components/index.d.ts +1 -0
  30. package/dist/canvas/components/index.d.ts.map +1 -1
  31. package/dist/canvas/components/index.js +1 -0
  32. package/dist/canvas/components/shared/InitialsBadge.cjs +91 -0
  33. package/dist/canvas/components/shared/InitialsBadge.d.ts +10 -0
  34. package/dist/canvas/components/shared/InitialsBadge.d.ts.map +1 -0
  35. package/dist/canvas/components/shared/InitialsBadge.js +44 -0
  36. package/dist/canvas/components/shared/index.cjs +39 -0
  37. package/dist/canvas/components/shared/index.d.ts +3 -0
  38. package/dist/canvas/components/shared/index.d.ts.map +1 -0
  39. package/dist/canvas/components/shared/index.js +2 -0
  40. package/dist/canvas/core/CategoryTreeAdapter.cjs +10 -6
  41. package/dist/canvas/core/CategoryTreeAdapter.js +10 -6
  42. package/dist/canvas/hooks/index.cjs +19 -12
  43. package/dist/canvas/hooks/index.d.ts +1 -0
  44. package/dist/canvas/hooks/index.d.ts.map +1 -1
  45. package/dist/canvas/hooks/index.js +1 -0
  46. package/dist/canvas/hooks/useAddNodeOnConnectEnd.cjs +18 -5
  47. package/dist/canvas/hooks/useAddNodeOnConnectEnd.d.ts.map +1 -1
  48. package/dist/canvas/hooks/useAddNodeOnConnectEnd.js +18 -5
  49. package/dist/canvas/hooks/useCanvasNodeLayout.cjs +66 -0
  50. package/dist/canvas/hooks/useCanvasNodeLayout.d.ts +15 -0
  51. package/dist/canvas/hooks/useCanvasNodeLayout.d.ts.map +1 -0
  52. package/dist/canvas/hooks/useCanvasNodeLayout.js +29 -0
  53. package/dist/canvas/schema/node-definition/category-manifest.cjs +1 -1
  54. package/dist/canvas/schema/node-definition/category-manifest.d.ts +1 -1
  55. package/dist/canvas/schema/node-definition/category-manifest.js +1 -1
  56. package/dist/canvas/schema/node-definition/node-manifest.cjs +1 -1
  57. package/dist/canvas/schema/node-definition/node-manifest.d.ts +2 -2
  58. package/dist/canvas/schema/node-definition/node-manifest.js +1 -1
  59. package/dist/canvas/storybook-utils/manifests/index.d.ts +2 -2
  60. package/dist/canvas/storybook-utils/manifests/node-definitions.d.ts.map +1 -1
  61. package/dist/canvas/utils/NodeUtils.cjs +4 -4
  62. package/dist/canvas/utils/NodeUtils.d.ts +1 -1
  63. package/dist/canvas/utils/NodeUtils.d.ts.map +1 -1
  64. package/dist/canvas/utils/NodeUtils.js +4 -4
  65. package/dist/canvas/utils/container.cjs +50 -2
  66. package/dist/canvas/utils/container.d.ts +13 -0
  67. package/dist/canvas/utils/container.d.ts.map +1 -1
  68. package/dist/canvas/utils/container.js +48 -3
  69. package/dist/canvas/utils/icon-registry.cjs +8 -0
  70. package/dist/canvas/utils/icon-registry.d.ts +1 -1
  71. package/dist/canvas/utils/icon-registry.d.ts.map +1 -1
  72. package/dist/canvas/utils/icon-registry.js +8 -0
  73. package/dist/canvas/utils/manifest-resolver.cjs +2 -1
  74. package/dist/canvas/utils/manifest-resolver.d.ts.map +1 -1
  75. package/dist/canvas/utils/manifest-resolver.js +2 -1
  76. package/package.json +1 -1
@@ -32,11 +32,11 @@ const snapToGrid = (value)=>Math.round(value / GRID_SPACING) * GRID_SPACING;
32
32
  const snapUpToGrid = (value)=>Math.ceil(value / GRID_SPACING) * GRID_SPACING;
33
33
  const snapDownToGrid = (value)=>Math.floor(value / GRID_SPACING) * GRID_SPACING;
34
34
  const clamp = (value, min, max)=>Math.min(Math.max(value, min), max);
35
- function getBoxesFromNodes(nodes, margin = 0, getNodeSize) {
35
+ function getBoxesFromNodes(nodes, margin = 0, getNodeDimensions) {
36
36
  const boxes = new Array(nodes.length);
37
37
  for(let i = 0; i < nodes.length; i++){
38
38
  const node = nodes[i];
39
- const nodeSize = getNodeSize?.(node) ?? {
39
+ const nodeSize = getNodeDimensions?.(node) ?? {
40
40
  width: node.width ?? node.measured?.width ?? DEFAULT_NODE_SIZE,
41
41
  height: node.height ?? node.measured?.height ?? DEFAULT_NODE_SIZE
42
42
  };
@@ -51,10 +51,10 @@ function getBoxesFromNodes(nodes, margin = 0, getNodeSize) {
51
51
  }
52
52
  return boxes;
53
53
  }
54
- const resolveCollisions = (nodes, { maxIterations = 50, overlapThreshold = 0, margin = 2 * GRID_SPACING, ignoredNodeTypes, getNodeSize } = {})=>{
54
+ const resolveCollisions = (nodes, { maxIterations = 50, overlapThreshold = 0, margin = 2 * GRID_SPACING, ignoredNodeTypes, getNodeDimensions } = {})=>{
55
55
  const ignoredSet = new Set(ignoredNodeTypes);
56
56
  const collisionNodes = ignoredSet.size > 0 ? nodes.filter((n)=>!ignoredSet.has(n.type ?? '')) : nodes;
57
- const boxes = getBoxesFromNodes(collisionNodes, margin, getNodeSize);
57
+ const boxes = getBoxesFromNodes(collisionNodes, margin, getNodeDimensions);
58
58
  for(let iter = 0; iter < maxIterations; iter++){
59
59
  let moved = false;
60
60
  for(let i = 0; i < boxes.length; i++)for(let j = i + 1; j < boxes.length; j++){
@@ -29,6 +29,7 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  DEFAULT_CONTAINER_HEIGHT: ()=>DEFAULT_CONTAINER_HEIGHT,
30
30
  getContainerSafeArea: ()=>container_getContainerSafeArea,
31
31
  DEFAULT_CONTAINER_WIDTH: ()=>DEFAULT_CONTAINER_WIDTH,
32
+ getContainerResizeMinimums: ()=>getContainerResizeMinimums,
32
33
  isContainerNodeManifest: ()=>isContainerNodeManifest,
33
34
  fitContainersAndPushSiblings: ()=>fitContainersAndPushSiblings,
34
35
  DEFAULT_CONTAINER_MIN_HEIGHT: ()=>DEFAULT_CONTAINER_MIN_HEIGHT,
@@ -105,6 +106,50 @@ function container_getContainerFitGeometry() {
105
106
  padding
106
107
  };
107
108
  }
109
+ function resolveResizeMinimum(minSize, requiredSize) {
110
+ return Math.max(minSize, (0, external_NodeUtils_cjs_namespaceObject.snapUpToGrid)(requiredSize));
111
+ }
112
+ function getContainerResizeMinimums(containerNode, nodes, { minWidth = DEFAULT_CONTAINER_MIN_WIDTH, minHeight = DEFAULT_CONTAINER_MIN_HEIGHT, getNodeDimensions: resolveNodeDimensions = container_getNodeDimensions, ignoredNodeTypes = [] } = {}) {
113
+ const currentSize = container_getNodeDimensions(containerNode, {
114
+ width: DEFAULT_CONTAINER_WIDTH,
115
+ height: DEFAULT_CONTAINER_HEIGHT
116
+ });
117
+ const padding = container_getContainerSafeArea(containerNode, currentSize).padding ?? {};
118
+ const ignoredTypes = new Set(ignoredNodeTypes);
119
+ let childBounds;
120
+ for (const childNode of nodes){
121
+ if (childNode.id === external_constants_cjs_namespaceObject.PREVIEW_NODE_ID || childNode.hidden || childNode.parentId !== containerNode.id || ignoredTypes.has(childNode.type ?? '')) continue;
122
+ const childSize = resolveNodeDimensions(childNode);
123
+ const nextBounds = {
124
+ left: childNode.position.x,
125
+ right: childNode.position.x + childSize.width,
126
+ top: childNode.position.y,
127
+ bottom: childNode.position.y + childSize.height
128
+ };
129
+ childBounds = childBounds ? {
130
+ left: Math.min(childBounds.left, nextBounds.left),
131
+ right: Math.max(childBounds.right, nextBounds.right),
132
+ top: Math.min(childBounds.top, nextBounds.top),
133
+ bottom: Math.max(childBounds.bottom, nextBounds.bottom)
134
+ } : nextBounds;
135
+ }
136
+ if (!childBounds) return {
137
+ left: minWidth,
138
+ right: minWidth,
139
+ top: minHeight,
140
+ bottom: minHeight
141
+ };
142
+ const leftEdgeLimit = currentSize.width - childBounds.left + (padding.left ?? 0);
143
+ const topEdgeLimit = currentSize.height - childBounds.top + (padding.top ?? 0);
144
+ const rightEdgeLimit = childBounds.right + (padding.right ?? 0);
145
+ const bottomEdgeLimit = childBounds.bottom + (padding.bottom ?? 0);
146
+ return {
147
+ left: resolveResizeMinimum(minWidth, leftEdgeLimit),
148
+ right: resolveResizeMinimum(minWidth, rightEdgeLimit),
149
+ top: resolveResizeMinimum(minHeight, topEdgeLimit),
150
+ bottom: resolveResizeMinimum(minHeight, bottomEdgeLimit)
151
+ };
152
+ }
108
153
  function isContainerNodeManifest(manifest) {
109
154
  return manifest?.display.shape === 'container';
110
155
  }
@@ -352,12 +397,13 @@ function collectLinearDownstreamSiblings({ startNodeId, parentId, nodes, edges,
352
397
  }
353
398
  return collectedIds;
354
399
  }
355
- function resolveInsertPreview({ source, sourceHandleType, reactFlowInstance, isContainerNode, getContainerSafeArea, previewNodeSize, gap, getNodeDimensions }) {
400
+ function resolveInsertPreview({ source, sourceHandleType, reactFlowInstance, isContainerNode, replacedEdge: exactReplacedEdge, getContainerSafeArea, previewNodeSize, gap, getNodeDimensions }) {
356
401
  if ('source' !== sourceHandleType || !source.handleId) return null;
357
- const replacedEdge = getSingleOutgoingEdge(source.nodeId, source.handleId, reactFlowInstance.getEdges());
402
+ const replacedEdge = exactReplacedEdge ?? getSingleOutgoingEdge(source.nodeId, source.handleId, reactFlowInstance.getEdges());
358
403
  if (!replacedEdge) return null;
359
404
  const sourceNode = reactFlowInstance.getNode(replacedEdge.source);
360
405
  const targetNode = reactFlowInstance.getNode(replacedEdge.target);
406
+ if (!sourceNode || !targetNode) return null;
361
407
  const nodes = reactFlowInstance.getNodes();
362
408
  const containerNode = getContainerNodeForEdge(sourceNode, targetNode, nodes);
363
409
  if (!containerNode) return null;
@@ -674,6 +720,7 @@ exports.fitContainersAndPushSiblings = __webpack_exports__.fitContainersAndPushS
674
720
  exports.getContainerFitGeometry = __webpack_exports__.getContainerFitGeometry;
675
721
  exports.getContainerNodeForEdge = __webpack_exports__.getContainerNodeForEdge;
676
722
  exports.getContainerPlacement = __webpack_exports__.getContainerPlacement;
723
+ exports.getContainerResizeMinimums = __webpack_exports__.getContainerResizeMinimums;
677
724
  exports.getContainerSafeArea = __webpack_exports__.getContainerSafeArea;
678
725
  exports.getNodeDimensions = __webpack_exports__.getNodeDimensions;
679
726
  exports.isContainerNodeManifest = __webpack_exports__.isContainerNodeManifest;
@@ -692,6 +739,7 @@ for(var __rspack_i in __webpack_exports__)if (-1 === [
692
739
  "getContainerFitGeometry",
693
740
  "getContainerNodeForEdge",
694
741
  "getContainerPlacement",
742
+ "getContainerResizeMinimums",
695
743
  "getContainerSafeArea",
696
744
  "getNodeDimensions",
697
745
  "isContainerNodeManifest",
@@ -32,6 +32,12 @@ export interface ContainerSizeChange {
32
32
  previousSize: NodeDimensions;
33
33
  nextSize: NodeDimensions;
34
34
  }
35
+ export interface ContainerResizeMinimums {
36
+ left: number;
37
+ right: number;
38
+ top: number;
39
+ bottom: number;
40
+ }
35
41
  export interface EnsureContainersFitChildrenResult {
36
42
  nodes: Node[];
37
43
  changes: ContainerSizeChange[];
@@ -49,6 +55,7 @@ interface ContainerPreviewContext {
49
55
  }
50
56
  interface ContainerPreviewOptions {
51
57
  isContainerNode?: (node: Node) => boolean;
58
+ replacedEdge?: Edge;
52
59
  getContainerSafeArea?: (containerNode: Node) => ContainerSafeArea | undefined;
53
60
  getContainerContinuationTarget?: (context: {
54
61
  containerNode: Node;
@@ -78,6 +85,12 @@ export declare const CONTAINER_SEQUENCE_GAP_PX: number;
78
85
  export declare function getNodeDimensions(node: Pick<Node, 'width' | 'height' | 'measured' | 'style'>, fallback?: NodeDimensions): NodeDimensions;
79
86
  export declare function getContainerSafeArea(containerNode: Pick<Node, 'width' | 'height' | 'measured' | 'style'>, fallback?: NodeDimensions): ContainerSafeArea;
80
87
  export declare function getContainerFitGeometry(): ContainerFitGeometry;
88
+ export declare function getContainerResizeMinimums(containerNode: Pick<Node, 'id' | 'width' | 'height' | 'measured' | 'style'>, nodes: Node[], { minWidth, minHeight, getNodeDimensions: resolveNodeDimensions, ignoredNodeTypes, }?: {
89
+ minWidth?: number;
90
+ minHeight?: number;
91
+ getNodeDimensions?: (node: Node) => NodeDimensions;
92
+ ignoredNodeTypes?: string[];
93
+ }): ContainerResizeMinimums;
81
94
  export declare function isContainerNodeManifest(manifest: Pick<NodeManifest, 'display'> | undefined): boolean;
82
95
  export declare function ensureContainersFitChildren(nodes: Node[], { containerIds, getContainerFitGeometry: resolveContainerFitGeometry, getNodeDimensions: resolveNodeDimensions, ignoredNodeTypes, includeAncestors, }?: {
83
96
  containerIds?: Iterable<string>;
@@ -1 +1 @@
1
- {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"container.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/container.ts"],"names":[],"mappings":"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"}
@@ -61,6 +61,50 @@ function container_getContainerFitGeometry() {
61
61
  padding
62
62
  };
63
63
  }
64
+ function resolveResizeMinimum(minSize, requiredSize) {
65
+ return Math.max(minSize, snapUpToGrid(requiredSize));
66
+ }
67
+ function getContainerResizeMinimums(containerNode, nodes, { minWidth = DEFAULT_CONTAINER_MIN_WIDTH, minHeight = DEFAULT_CONTAINER_MIN_HEIGHT, getNodeDimensions: resolveNodeDimensions = container_getNodeDimensions, ignoredNodeTypes = [] } = {}) {
68
+ const currentSize = container_getNodeDimensions(containerNode, {
69
+ width: DEFAULT_CONTAINER_WIDTH,
70
+ height: DEFAULT_CONTAINER_HEIGHT
71
+ });
72
+ const padding = container_getContainerSafeArea(containerNode, currentSize).padding ?? {};
73
+ const ignoredTypes = new Set(ignoredNodeTypes);
74
+ let childBounds;
75
+ for (const childNode of nodes){
76
+ if (childNode.id === PREVIEW_NODE_ID || childNode.hidden || childNode.parentId !== containerNode.id || ignoredTypes.has(childNode.type ?? '')) continue;
77
+ const childSize = resolveNodeDimensions(childNode);
78
+ const nextBounds = {
79
+ left: childNode.position.x,
80
+ right: childNode.position.x + childSize.width,
81
+ top: childNode.position.y,
82
+ bottom: childNode.position.y + childSize.height
83
+ };
84
+ childBounds = childBounds ? {
85
+ left: Math.min(childBounds.left, nextBounds.left),
86
+ right: Math.max(childBounds.right, nextBounds.right),
87
+ top: Math.min(childBounds.top, nextBounds.top),
88
+ bottom: Math.max(childBounds.bottom, nextBounds.bottom)
89
+ } : nextBounds;
90
+ }
91
+ if (!childBounds) return {
92
+ left: minWidth,
93
+ right: minWidth,
94
+ top: minHeight,
95
+ bottom: minHeight
96
+ };
97
+ const leftEdgeLimit = currentSize.width - childBounds.left + (padding.left ?? 0);
98
+ const topEdgeLimit = currentSize.height - childBounds.top + (padding.top ?? 0);
99
+ const rightEdgeLimit = childBounds.right + (padding.right ?? 0);
100
+ const bottomEdgeLimit = childBounds.bottom + (padding.bottom ?? 0);
101
+ return {
102
+ left: resolveResizeMinimum(minWidth, leftEdgeLimit),
103
+ right: resolveResizeMinimum(minWidth, rightEdgeLimit),
104
+ top: resolveResizeMinimum(minHeight, topEdgeLimit),
105
+ bottom: resolveResizeMinimum(minHeight, bottomEdgeLimit)
106
+ };
107
+ }
64
108
  function isContainerNodeManifest(manifest) {
65
109
  return manifest?.display.shape === 'container';
66
110
  }
@@ -308,12 +352,13 @@ function collectLinearDownstreamSiblings({ startNodeId, parentId, nodes, edges,
308
352
  }
309
353
  return collectedIds;
310
354
  }
311
- function resolveInsertPreview({ source, sourceHandleType, reactFlowInstance, isContainerNode, getContainerSafeArea, previewNodeSize, gap, getNodeDimensions }) {
355
+ function resolveInsertPreview({ source, sourceHandleType, reactFlowInstance, isContainerNode, replacedEdge: exactReplacedEdge, getContainerSafeArea, previewNodeSize, gap, getNodeDimensions }) {
312
356
  if ('source' !== sourceHandleType || !source.handleId) return null;
313
- const replacedEdge = getSingleOutgoingEdge(source.nodeId, source.handleId, reactFlowInstance.getEdges());
357
+ const replacedEdge = exactReplacedEdge ?? getSingleOutgoingEdge(source.nodeId, source.handleId, reactFlowInstance.getEdges());
314
358
  if (!replacedEdge) return null;
315
359
  const sourceNode = reactFlowInstance.getNode(replacedEdge.source);
316
360
  const targetNode = reactFlowInstance.getNode(replacedEdge.target);
361
+ if (!sourceNode || !targetNode) return null;
317
362
  const nodes = reactFlowInstance.getNodes();
318
363
  const containerNode = getContainerNodeForEdge(sourceNode, targetNode, nodes);
319
364
  if (!containerNode) return null;
@@ -618,4 +663,4 @@ function placeContainerNode({ nodes, insertedNode, placement, safeArea, getConta
618
663
  gap
619
664
  });
620
665
  }
621
- export { CONTAINER_FRAME_INSET_PX, CONTAINER_SEQUENCE_GAP_PX, DEFAULT_CONTAINER_HEIGHT, DEFAULT_CONTAINER_MIN_HEIGHT, DEFAULT_CONTAINER_MIN_WIDTH, DEFAULT_CONTAINER_WIDTH, collectLinearDownstreamSiblings, ensureContainersFitChildren, fitContainersAndPushSiblings, container_getContainerFitGeometry as getContainerFitGeometry, getContainerNodeForEdge, getContainerPlacement, container_getContainerSafeArea as getContainerSafeArea, container_getNodeDimensions as getNodeDimensions, isContainerNodeManifest, placeContainerNode, resolveContainerPreview };
666
+ export { CONTAINER_FRAME_INSET_PX, CONTAINER_SEQUENCE_GAP_PX, DEFAULT_CONTAINER_HEIGHT, DEFAULT_CONTAINER_MIN_HEIGHT, DEFAULT_CONTAINER_MIN_WIDTH, DEFAULT_CONTAINER_WIDTH, collectLinearDownstreamSiblings, ensureContainersFitChildren, fitContainersAndPushSiblings, container_getContainerFitGeometry as getContainerFitGeometry, getContainerNodeForEdge, getContainerPlacement, getContainerResizeMinimums, container_getContainerSafeArea as getContainerSafeArea, container_getNodeDimensions as getNodeDimensions, isContainerNodeManifest, placeContainerNode, resolveContainerPreview };
@@ -111,6 +111,14 @@ function isValidUrl(input) {
111
111
  return 'http:' === url.protocol || 'https:' === url.protocol;
112
112
  }
113
113
  function getIcon(iconId) {
114
+ if (!iconId) {
115
+ const BoxIcon = external_lucide_react_namespaceObject.icons.Box;
116
+ return ({ w, h, color })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(BoxIcon, {
117
+ width: w ?? 24,
118
+ height: h ?? 24,
119
+ color: color
120
+ });
121
+ }
114
122
  if (isValidUrl(iconId)) return ({ w, h })=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("img", {
115
123
  src: iconId,
116
124
  alt: "icon",
@@ -4,7 +4,7 @@ export type IconComponent = (props: {
4
4
  h?: number;
5
5
  color?: string;
6
6
  }) => JSX.Element;
7
- export declare function getIcon(iconId: string): IconComponent;
7
+ export declare function getIcon(iconId?: string): IconComponent;
8
8
  export interface CanvasIconProps {
9
9
  icon?: string;
10
10
  size?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"icon-registry.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/icon-registry.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,GAAG,EAAiB,MAAM,OAAO,CAAC;AAGhD,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,GAAG,CAAC,OAAO,CAAC;AAuD/F,wBAAgB,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAkCrD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,eAAO,MAAM,UAAU,uDAIrB,CAAC;AAGH,eAAO,MAAM,QAAQ,uDAAa,CAAC"}
1
+ {"version":3,"file":"icon-registry.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/icon-registry.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,GAAG,EAAiB,MAAM,OAAO,CAAC;AAGhD,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE;IAAE,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,GAAG,CAAC,OAAO,CAAC;AAsD/F,wBAAgB,OAAO,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,aAAa,CAuCtD;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAMD,eAAO,MAAM,UAAU,uDAIrB,CAAC;AAGH,eAAO,MAAM,QAAQ,uDAAa,CAAC"}
@@ -81,6 +81,14 @@ function isValidUrl(input) {
81
81
  return 'http:' === url.protocol || 'https:' === url.protocol;
82
82
  }
83
83
  function getIcon(iconId) {
84
+ if (!iconId) {
85
+ const BoxIcon = icons.Box;
86
+ return ({ w, h, color })=>/*#__PURE__*/ jsx(BoxIcon, {
87
+ width: w ?? 24,
88
+ height: h ?? 24,
89
+ color: color
90
+ });
91
+ }
84
92
  if (isValidUrl(iconId)) return ({ w, h })=>/*#__PURE__*/ jsx("img", {
85
93
  src: iconId,
86
94
  alt: "icon",
@@ -32,7 +32,7 @@ __webpack_require__.d(__webpack_exports__, {
32
32
  const external_collapse_cjs_namespaceObject = require("./collapse.cjs");
33
33
  function resolveDisplay(manifestDisplay, context) {
34
34
  if (!manifestDisplay) return {
35
- icon: 'circle-question-mark',
35
+ icon: '',
36
36
  shape: 'square',
37
37
  label: context?.display?.label || 'Unknown Node'
38
38
  };
@@ -46,6 +46,7 @@ function resolveDisplay(manifestDisplay, context) {
46
46
  ...context?.display,
47
47
  label: resolvedLabel,
48
48
  canvasLabel: context?.display?.canvasLabel ?? manifestDisplay.canvasLabel,
49
+ icon: context?.display?.icon ?? manifestDisplay.icon ?? '',
49
50
  shape: isCollapsed ? collapsedShape : expandedShape
50
51
  };
51
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-resolver.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/manifest-resolver.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAMrE,MAAM,WAAW,iBAAkB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEhE,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAEhC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAMD,MAAM,MAAM,eAAe,GAAG,qBAAqB,GAAG;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5C,CAAC;AAKF,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAE7F,EAAE,EAAE,MAAM,CAAC;IAEX,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC/C;AAKD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC;IAE/E,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAKD,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD,wBAAgB,cAAc,CAC5B,eAAe,CAAC,EAAE,mBAAmB,EACrC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,eAAe,CAwCjB;AA6BD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EACrC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAmBT;AAiCD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAKhF;AAuCD,wBAAgB,cAAc,CAC5B,YAAY,EAAE,mBAAmB,EAAE,EACnC,OAAO,EAAE,iBAAiB,GACzB,mBAAmB,EAAE,CAmEvB"}
1
+ {"version":3,"file":"manifest-resolver.d.ts","sourceRoot":"","sources":["../../../src/canvas/utils/manifest-resolver.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yCAAyC,CAAC;AACjF,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAMrE,MAAM,WAAW,iBAAkB,SAAQ,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAEhE,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAEhC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAUD,MAAM,MAAM,eAAe,GAAG,qBAAqB,GAAG;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,wBAAwB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5C,CAAC;AAKF,MAAM,WAAW,cAAe,SAAQ,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAE7F,EAAE,EAAE,MAAM,CAAC;IAEX,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,OAAO,EAAE,OAAO,CAAC;IAEjB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC/C;AAKD,MAAM,WAAW,mBAAoB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,SAAS,CAAC;IAE/E,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAKD,UAAU,YAAY;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD,wBAAgB,cAAc,CAC5B,eAAe,CAAC,EAAE,mBAAmB,EACrC,OAAO,CAAC,EAAE,iBAAiB,GAC1B,eAAe,CAyCjB;AA6BD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,EACrC,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAmBT;AAiCD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,GAAG,MAAM,CAKhF;AAuCD,wBAAgB,cAAc,CAC5B,YAAY,EAAE,mBAAmB,EAAE,EACnC,OAAO,EAAE,iBAAiB,GACzB,mBAAmB,EAAE,CAmEvB"}
@@ -1,7 +1,7 @@
1
1
  import { getCollapsedShape } from "./collapse.js";
2
2
  function resolveDisplay(manifestDisplay, context) {
3
3
  if (!manifestDisplay) return {
4
- icon: 'circle-question-mark',
4
+ icon: '',
5
5
  shape: 'square',
6
6
  label: context?.display?.label || 'Unknown Node'
7
7
  };
@@ -15,6 +15,7 @@ function resolveDisplay(manifestDisplay, context) {
15
15
  ...context?.display,
16
16
  label: resolvedLabel,
17
17
  canvasLabel: context?.display?.canvasLabel ?? manifestDisplay.canvasLabel,
18
+ icon: context?.display?.icon ?? manifestDisplay.icon ?? '',
18
19
  shape: isCollapsed ? collapsedShape : expandedShape
19
20
  };
20
21
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uipath/apollo-react",
3
- "version": "4.22.2",
3
+ "version": "4.23.0-pr654.3fb62d6",
4
4
  "description": "Apollo Design System - React component library with Material UI theming",
5
5
  "repository": {
6
6
  "type": "git",