@uipath/apollo-react 4.14.0 → 4.14.1-pr556.55acf00

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 (207) hide show
  1. package/dist/canvas/components/AddNodePanel/createAddNodePreview.cjs +9 -3
  2. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/createAddNodePreview.js +9 -3
  4. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +1 -0
  5. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  6. package/dist/canvas/components/BaseNode/BaseNode.cjs +11 -5
  7. package/dist/canvas/components/BaseNode/BaseNode.d.ts +2 -1
  8. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  9. package/dist/canvas/components/BaseNode/BaseNode.js +9 -6
  10. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts +3 -0
  11. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts.map +1 -1
  12. package/dist/canvas/components/ButtonHandle/ButtonHandle.cjs +222 -13
  13. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts +10 -5
  14. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts.map +1 -1
  15. package/dist/canvas/components/ButtonHandle/ButtonHandle.js +223 -14
  16. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.cjs +10 -2
  17. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts +2 -0
  18. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts.map +1 -1
  19. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.js +5 -3
  20. package/dist/canvas/components/ButtonHandle/HandleButton.cjs +17 -2
  21. package/dist/canvas/components/ButtonHandle/HandleButton.d.ts +10 -1
  22. package/dist/canvas/components/ButtonHandle/HandleButton.d.ts.map +1 -1
  23. package/dist/canvas/components/ButtonHandle/HandleButton.js +17 -2
  24. package/dist/canvas/components/ButtonHandle/useButtonHandles.cjs +4 -2
  25. package/dist/canvas/components/ButtonHandle/useButtonHandles.d.ts +2 -1
  26. package/dist/canvas/components/ButtonHandle/useButtonHandles.d.ts.map +1 -1
  27. package/dist/canvas/components/ButtonHandle/useButtonHandles.js +4 -2
  28. package/dist/canvas/components/Edges/SequenceEdge.cjs +8 -4
  29. package/dist/canvas/components/Edges/SequenceEdge.js +8 -4
  30. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.cjs +34 -25
  31. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts +8 -2
  32. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts.map +1 -1
  33. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.js +36 -27
  34. package/dist/canvas/components/HierarchicalCanvas/index.d.ts +1 -1
  35. package/dist/canvas/components/HierarchicalCanvas/index.d.ts.map +1 -1
  36. package/dist/canvas/components/LoopNode/LoopCanvasNode.cjs +86 -0
  37. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts +6 -0
  38. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts.map +1 -0
  39. package/dist/canvas/components/LoopNode/LoopCanvasNode.js +52 -0
  40. package/dist/canvas/components/LoopNode/LoopNode.cjs +434 -0
  41. package/dist/canvas/components/LoopNode/LoopNode.constants.cjs +81 -0
  42. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts +13 -0
  43. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts.map +1 -0
  44. package/dist/canvas/components/LoopNode/LoopNode.constants.js +14 -0
  45. package/dist/canvas/components/LoopNode/LoopNode.d.ts +5 -0
  46. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +1 -0
  47. package/dist/canvas/components/LoopNode/LoopNode.helpers.cjs +144 -0
  48. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts +29 -0
  49. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts.map +1 -0
  50. package/dist/canvas/components/LoopNode/LoopNode.helpers.js +98 -0
  51. package/dist/canvas/components/LoopNode/LoopNode.js +400 -0
  52. package/dist/canvas/components/LoopNode/LoopNode.types.cjs +18 -0
  53. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts +22 -0
  54. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts.map +1 -0
  55. package/dist/canvas/components/LoopNode/LoopNode.types.js +0 -0
  56. package/dist/canvas/components/LoopNode/LoopNodePreview.cjs +61 -0
  57. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts +9 -0
  58. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts.map +1 -0
  59. package/dist/canvas/components/LoopNode/LoopNodePreview.js +27 -0
  60. package/dist/canvas/components/LoopNode/index.cjs +79 -0
  61. package/dist/canvas/components/LoopNode/index.d.ts +5 -0
  62. package/dist/canvas/components/LoopNode/index.d.ts.map +1 -0
  63. package/dist/canvas/components/LoopNode/index.js +4 -0
  64. package/dist/canvas/components/NodeViewportOverlay.cjs +63 -0
  65. package/dist/canvas/components/NodeViewportOverlay.d.ts +22 -0
  66. package/dist/canvas/components/NodeViewportOverlay.d.ts.map +1 -0
  67. package/dist/canvas/components/NodeViewportOverlay.js +29 -0
  68. package/dist/canvas/components/StageNode/StageNodeHeader.cjs +6 -1
  69. package/dist/canvas/components/StageNode/StageNodeHeader.d.ts.map +1 -1
  70. package/dist/canvas/components/StageNode/StageNodeHeader.js +6 -1
  71. package/dist/canvas/components/Toolbar/EdgeToolbar/EdgeToolbar.cjs +1 -1
  72. package/dist/canvas/components/Toolbar/EdgeToolbar/EdgeToolbar.js +1 -1
  73. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.cjs +25 -23
  74. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts.map +1 -1
  75. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.js +27 -25
  76. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.cjs +10 -3
  77. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts +1 -1
  78. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts.map +1 -1
  79. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.js +10 -3
  80. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts +1 -0
  81. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts.map +1 -1
  82. package/dist/canvas/components/index.cjs +27 -20
  83. package/dist/canvas/components/index.d.ts +1 -0
  84. package/dist/canvas/components/index.d.ts.map +1 -1
  85. package/dist/canvas/components/index.js +1 -0
  86. package/dist/canvas/constants.cjs +4 -0
  87. package/dist/canvas/constants.d.ts +1 -0
  88. package/dist/canvas/constants.d.ts.map +1 -1
  89. package/dist/canvas/constants.js +2 -1
  90. package/dist/canvas/core/NodeTypeRegistry.cjs +50 -26
  91. package/dist/canvas/core/NodeTypeRegistry.d.ts +10 -5
  92. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  93. package/dist/canvas/core/NodeTypeRegistry.js +50 -26
  94. package/dist/canvas/core/useNodeTypeRegistry.cjs +13 -3
  95. package/dist/canvas/core/useNodeTypeRegistry.d.ts +2 -1
  96. package/dist/canvas/core/useNodeTypeRegistry.d.ts.map +1 -1
  97. package/dist/canvas/core/useNodeTypeRegistry.js +11 -4
  98. package/dist/canvas/hooks/useAddNodeOnConnectEnd.cjs +22 -23
  99. package/dist/canvas/hooks/useAddNodeOnConnectEnd.d.ts.map +1 -1
  100. package/dist/canvas/hooks/useAddNodeOnConnectEnd.js +23 -24
  101. package/dist/canvas/hooks/usePreviewNode.cjs +7 -3
  102. package/dist/canvas/hooks/usePreviewNode.d.ts.map +1 -1
  103. package/dist/canvas/hooks/usePreviewNode.js +7 -3
  104. package/dist/canvas/locales/de.cjs +1 -1
  105. package/dist/canvas/locales/de.d.ts.map +1 -1
  106. package/dist/canvas/locales/de.js +1 -1
  107. package/dist/canvas/locales/es-MX.cjs +1 -1
  108. package/dist/canvas/locales/es-MX.d.ts.map +1 -1
  109. package/dist/canvas/locales/es-MX.js +1 -1
  110. package/dist/canvas/locales/es.cjs +1 -1
  111. package/dist/canvas/locales/es.d.ts.map +1 -1
  112. package/dist/canvas/locales/es.js +1 -1
  113. package/dist/canvas/locales/fr.cjs +1 -1
  114. package/dist/canvas/locales/fr.d.ts.map +1 -1
  115. package/dist/canvas/locales/fr.js +1 -1
  116. package/dist/canvas/locales/ja.cjs +1 -1
  117. package/dist/canvas/locales/ja.d.ts.map +1 -1
  118. package/dist/canvas/locales/ja.js +1 -1
  119. package/dist/canvas/locales/ko.cjs +1 -1
  120. package/dist/canvas/locales/ko.d.ts.map +1 -1
  121. package/dist/canvas/locales/ko.js +1 -1
  122. package/dist/canvas/locales/pt-BR.cjs +1 -1
  123. package/dist/canvas/locales/pt-BR.d.ts.map +1 -1
  124. package/dist/canvas/locales/pt-BR.js +1 -1
  125. package/dist/canvas/locales/pt.cjs +1 -1
  126. package/dist/canvas/locales/pt.d.ts.map +1 -1
  127. package/dist/canvas/locales/pt.js +1 -1
  128. package/dist/canvas/locales/tr.cjs +1 -1
  129. package/dist/canvas/locales/tr.d.ts.map +1 -1
  130. package/dist/canvas/locales/tr.js +1 -1
  131. package/dist/canvas/locales/zh-CN.cjs +1 -1
  132. package/dist/canvas/locales/zh-CN.d.ts.map +1 -1
  133. package/dist/canvas/locales/zh-CN.js +1 -1
  134. package/dist/canvas/locales/zh-TW.cjs +1 -1
  135. package/dist/canvas/locales/zh-TW.d.ts.map +1 -1
  136. package/dist/canvas/locales/zh-TW.js +1 -1
  137. package/dist/canvas/schema/node-definition/handle.cjs +10 -2
  138. package/dist/canvas/schema/node-definition/handle.d.ts +9 -0
  139. package/dist/canvas/schema/node-definition/handle.d.ts.map +1 -1
  140. package/dist/canvas/schema/node-definition/handle.js +6 -1
  141. package/dist/canvas/schema/node-definition/index.cjs +4 -1
  142. package/dist/canvas/schema/node-definition/index.d.ts +3 -3
  143. package/dist/canvas/schema/node-definition/index.d.ts.map +1 -1
  144. package/dist/canvas/schema/node-definition/index.js +2 -2
  145. package/dist/canvas/schema/node-definition/node-manifest.d.ts +4 -0
  146. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  147. package/dist/canvas/storybook-utils/hooks/useCanvasStory.d.ts +6 -0
  148. package/dist/canvas/storybook-utils/hooks/useCanvasStory.d.ts.map +1 -1
  149. package/dist/canvas/storybook-utils/manifests/index.d.ts +1 -0
  150. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  151. package/dist/canvas/storybook-utils/manifests/node-definitions.d.ts.map +1 -1
  152. package/dist/canvas/storybook-utils/mocks/nodes.d.ts +1 -1
  153. package/dist/canvas/storybook-utils/mocks/nodes.d.ts.map +1 -1
  154. package/dist/canvas/styles/reactflow-reset.css +2 -2
  155. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  156. package/dist/canvas/utils/collapse.cjs +13 -6
  157. package/dist/canvas/utils/collapse.d.ts +2 -2
  158. package/dist/canvas/utils/collapse.d.ts.map +1 -1
  159. package/dist/canvas/utils/collapse.js +9 -2
  160. package/dist/canvas/utils/createPreviewGraph.cjs +126 -0
  161. package/dist/canvas/utils/createPreviewGraph.d.ts +36 -0
  162. package/dist/canvas/utils/createPreviewGraph.d.ts.map +1 -0
  163. package/dist/canvas/utils/createPreviewGraph.js +83 -0
  164. package/dist/canvas/utils/createPreviewNode.cjs +30 -11
  165. package/dist/canvas/utils/createPreviewNode.d.ts +10 -2
  166. package/dist/canvas/utils/createPreviewNode.d.ts.map +1 -1
  167. package/dist/canvas/utils/createPreviewNode.js +21 -11
  168. package/dist/canvas/utils/index.cjs +33 -26
  169. package/dist/canvas/utils/index.d.ts +2 -1
  170. package/dist/canvas/utils/index.d.ts.map +1 -1
  171. package/dist/canvas/utils/index.js +2 -1
  172. package/dist/canvas/utils/manifest-resolver.cjs +8 -0
  173. package/dist/canvas/utils/manifest-resolver.d.ts +1 -0
  174. package/dist/canvas/utils/manifest-resolver.d.ts.map +1 -1
  175. package/dist/canvas/utils/manifest-resolver.js +6 -1
  176. package/dist/material/components/ap-tool-call/locales/de.cjs +1 -1
  177. package/dist/material/components/ap-tool-call/locales/de.d.ts.map +1 -1
  178. package/dist/material/components/ap-tool-call/locales/de.js +1 -1
  179. package/dist/material/components/ap-tool-call/locales/es-MX.cjs +1 -1
  180. package/dist/material/components/ap-tool-call/locales/es-MX.js +1 -1
  181. package/dist/material/components/ap-tool-call/locales/es.cjs +1 -1
  182. package/dist/material/components/ap-tool-call/locales/es.js +1 -1
  183. package/dist/material/components/ap-tool-call/locales/fr.cjs +1 -1
  184. package/dist/material/components/ap-tool-call/locales/fr.d.ts.map +1 -1
  185. package/dist/material/components/ap-tool-call/locales/fr.js +1 -1
  186. package/dist/material/components/ap-tool-call/locales/ja.cjs +1 -1
  187. package/dist/material/components/ap-tool-call/locales/ja.d.ts.map +1 -1
  188. package/dist/material/components/ap-tool-call/locales/ja.js +1 -1
  189. package/dist/material/components/ap-tool-call/locales/ko.cjs +1 -1
  190. package/dist/material/components/ap-tool-call/locales/ko.d.ts.map +1 -1
  191. package/dist/material/components/ap-tool-call/locales/ko.js +1 -1
  192. package/dist/material/components/ap-tool-call/locales/pt-BR.cjs +1 -1
  193. package/dist/material/components/ap-tool-call/locales/pt-BR.d.ts.map +1 -1
  194. package/dist/material/components/ap-tool-call/locales/pt-BR.js +1 -1
  195. package/dist/material/components/ap-tool-call/locales/pt.cjs +1 -1
  196. package/dist/material/components/ap-tool-call/locales/pt.d.ts.map +1 -1
  197. package/dist/material/components/ap-tool-call/locales/pt.js +1 -1
  198. package/dist/material/components/ap-tool-call/locales/tr.cjs +1 -1
  199. package/dist/material/components/ap-tool-call/locales/tr.d.ts.map +1 -1
  200. package/dist/material/components/ap-tool-call/locales/tr.js +1 -1
  201. package/dist/material/components/ap-tool-call/locales/zh-CN.cjs +1 -1
  202. package/dist/material/components/ap-tool-call/locales/zh-CN.d.ts.map +1 -1
  203. package/dist/material/components/ap-tool-call/locales/zh-CN.js +1 -1
  204. package/dist/material/components/ap-tool-call/locales/zh-TW.cjs +1 -1
  205. package/dist/material/components/ap-tool-call/locales/zh-TW.d.ts.map +1 -1
  206. package/dist/material/components/ap-tool-call/locales/zh-TW.js +1 -1
  207. package/package.json +2 -2
@@ -29,8 +29,8 @@ __webpack_require__.d(__webpack_exports__, {
29
29
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
30
  const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
31
31
  const external_react_namespaceObject = require("react");
32
- const external_constants_cjs_namespaceObject = require("../../constants.cjs");
33
32
  const index_cjs_namespaceObject = require("../../hooks/index.cjs");
33
+ const createPreviewNode_cjs_namespaceObject = require("../../utils/createPreviewNode.cjs");
34
34
  const BaseCanvasModeProvider_cjs_namespaceObject = require("../BaseCanvas/BaseCanvasModeProvider.cjs");
35
35
  const external_Toolbar_index_cjs_namespaceObject = require("../Toolbar/index.cjs");
36
36
  const external_EdgeUtils_cjs_namespaceObject = require("./EdgeUtils.cjs");
@@ -80,7 +80,11 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ (0, external_react_namespaceObje
80
80
  const pathElementRef = (0, external_react_namespaceObject.useRef)(null);
81
81
  const { mode } = (0, BaseCanvasModeProvider_cjs_namespaceObject.useBaseCanvasMode)();
82
82
  const isReadOnly = 'readonly' === mode;
83
- const isPreviewEdge = id === external_constants_cjs_namespaceObject.PREVIEW_EDGE_ID;
83
+ const previewEdge = (0, createPreviewNode_cjs_namespaceObject.isPreviewEdge)({
84
+ id,
85
+ source,
86
+ target
87
+ });
84
88
  const executionStatus = (0, index_cjs_namespaceObject.useEdgeExecutionState)(id, target);
85
89
  const { validationStatus } = (0, index_cjs_namespaceObject.useElementValidationStatus)(id) ?? {
86
90
  validationStatus: void 0
@@ -116,7 +120,7 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ (0, external_react_namespaceObje
116
120
  const getEdgeColor = ()=>{
117
121
  if (isDiffAdded) return 'var(--canvas-success-icon)';
118
122
  if (isDiffRemoved) return 'var(--canvas-error-icon)';
119
- if (isPreviewEdge) return 'var(--canvas-primary)';
123
+ if (previewEdge) return 'var(--canvas-primary)';
120
124
  if (selected) return 'var(--canvas-primary)';
121
125
  if (isHovered) return 'var(--canvas-primary-hover)';
122
126
  if (status) return external_EdgeUtils_cjs_namespaceObject.edgeTargetStatusToEdgeColor[status] ?? 'var(--canvas-border)';
@@ -160,7 +164,7 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ (0, external_react_namespaceObje
160
164
  strokeWidth: style?.strokeWidth || 2,
161
165
  style: {
162
166
  stroke: edgeColor,
163
- strokeDasharray: isDiffRemoved ? style?.strokeDasharray || '5,5' : isPreviewEdge ? '5,5' : '0',
167
+ strokeDasharray: isDiffRemoved ? style?.strokeDasharray || '5,5' : previewEdge ? '5,5' : '0',
164
168
  opacity: style?.opacity !== void 0 ? style.opacity : 1,
165
169
  transition: 'stroke 0.2s ease, opacity 0.2s ease'
166
170
  },
@@ -1,8 +1,8 @@
1
1
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Position } from "../../xyflow/react.js";
3
3
  import { memo, useRef, useState } from "react";
4
- import { PREVIEW_EDGE_ID } from "../../constants.js";
5
4
  import { useEdgeExecutionState, useEdgePath, useElementValidationStatus } from "../../hooks/index.js";
5
+ import { isPreviewEdge } from "../../utils/createPreviewNode.js";
6
6
  import { useBaseCanvasMode } from "../BaseCanvas/BaseCanvasModeProvider.js";
7
7
  import { EdgeToolbar, useEdgeToolbarState } from "../Toolbar/index.js";
8
8
  import { edgeTargetStatusToEdgeColor, getStatusAnimation } from "./EdgeUtils.js";
@@ -52,7 +52,11 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ memo(function({ id, selected, so
52
52
  const pathElementRef = useRef(null);
53
53
  const { mode } = useBaseCanvasMode();
54
54
  const isReadOnly = 'readonly' === mode;
55
- const isPreviewEdge = id === PREVIEW_EDGE_ID;
55
+ const previewEdge = isPreviewEdge({
56
+ id,
57
+ source,
58
+ target
59
+ });
56
60
  const executionStatus = useEdgeExecutionState(id, target);
57
61
  const { validationStatus } = useElementValidationStatus(id) ?? {
58
62
  validationStatus: void 0
@@ -88,7 +92,7 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ memo(function({ id, selected, so
88
92
  const getEdgeColor = ()=>{
89
93
  if (isDiffAdded) return 'var(--canvas-success-icon)';
90
94
  if (isDiffRemoved) return 'var(--canvas-error-icon)';
91
- if (isPreviewEdge) return 'var(--canvas-primary)';
95
+ if (previewEdge) return 'var(--canvas-primary)';
92
96
  if (selected) return 'var(--canvas-primary)';
93
97
  if (isHovered) return 'var(--canvas-primary-hover)';
94
98
  if (status) return edgeTargetStatusToEdgeColor[status] ?? 'var(--canvas-border)';
@@ -132,7 +136,7 @@ const SequenceEdge_SequenceEdge = /*#__PURE__*/ memo(function({ id, selected, so
132
136
  strokeWidth: style?.strokeWidth || 2,
133
137
  style: {
134
138
  stroke: edgeColor,
135
- strokeDasharray: isDiffRemoved ? style?.strokeDasharray || '5,5' : isPreviewEdge ? '5,5' : '0',
139
+ strokeDasharray: isDiffRemoved ? style?.strokeDasharray || '5,5' : previewEdge ? '5,5' : '0',
136
140
  opacity: style?.opacity !== void 0 ? style.opacity : 1,
137
141
  transition: 'stroke 0.2s ease, opacity 0.2s ease'
138
142
  },
@@ -38,6 +38,7 @@ const animatedViewportManager_cjs_namespaceObject = require("../../stores/animat
38
38
  const canvasStore_cjs_namespaceObject = require("../../stores/canvasStore.cjs");
39
39
  const viewportManager_cjs_namespaceObject = require("../../stores/viewportManager.cjs");
40
40
  const external_types_cjs_namespaceObject = require("../../types.cjs");
41
+ const createPreviewNode_cjs_namespaceObject = require("../../utils/createPreviewNode.cjs");
41
42
  const icon_registry_cjs_namespaceObject = require("../../utils/icon-registry.cjs");
42
43
  const transitions_cjs_namespaceObject = require("../../utils/transitions.cjs");
43
44
  const AddNodeManager_cjs_namespaceObject = require("../AddNodePanel/AddNodeManager.cjs");
@@ -52,7 +53,15 @@ const DEFAULT_NODE_TYPES = {
52
53
  'blank-canvas-node': external_BlankCanvasNode_index_cjs_namespaceObject.BlankCanvasNode,
53
54
  preview: AddNodePreview_cjs_namespaceObject.AddNodePreview
54
55
  };
55
- const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onCanvasesChange, onPathChange })=>{
56
+ function shouldPersistNodeChange(change) {
57
+ if ('position' === change.type) return !!change.dragging;
58
+ if ('dimensions' === change.type) return !!change.setAttributes;
59
+ return true;
60
+ }
61
+ function isDefaultViewport(viewport) {
62
+ return 0 === viewport.x && 0 === viewport.y && 1 === viewport.zoom;
63
+ }
64
+ const HierarchicalCanvas = ({ resolveNodeRenderer, mode = 'design', initialCanvases, initialPath, onCanvasesChange, onPathChange })=>{
56
65
  const canvasRef = (0, external_react_namespaceObject.useRef)(null);
57
66
  const containerRef = (0, external_react_namespaceObject.useRef)(null);
58
67
  const [reactFlowInstance, setReactFlowInstance] = (0, external_react_namespaceObject.useState)(null);
@@ -63,17 +72,22 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
63
72
  });
64
73
  const lastCanvasIdRef = (0, external_react_namespaceObject.useRef)(null);
65
74
  const shouldAnimate = 'design' === mode && !(0, transitions_cjs_namespaceObject.prefersReducedMotion)();
66
- const nodeManifests = (0, external_core_index_cjs_namespaceObject.useNodeManifests)();
67
- const nodeTypes = (0, external_react_namespaceObject.useMemo)(()=>{
68
- const types = nodeManifests.reduce((acc, manifest)=>{
69
- if (!acc[manifest.nodeType]) acc[manifest.nodeType] = external_BaseNode_index_cjs_namespaceObject.BaseNode;
75
+ const nodeManifests = (0, external_core_index_cjs_namespaceObject.useDefaultNodeManifests)();
76
+ const nodeTypes = (0, external_react_namespaceObject.useMemo)(()=>nodeManifests.reduce((acc, manifest)=>{
77
+ if (!acc[manifest.nodeType]) {
78
+ const defaultRenderer = external_BaseNode_index_cjs_namespaceObject.BaseNode;
79
+ const resolvedRenderer = resolveNodeRenderer?.({
80
+ manifest,
81
+ defaultRenderer
82
+ });
83
+ acc[manifest.nodeType] = resolvedRenderer ?? defaultRenderer;
84
+ }
70
85
  return acc;
71
86
  }, {
72
87
  ...DEFAULT_NODE_TYPES
73
- });
74
- return types;
75
- }, [
76
- nodeManifests
88
+ }), [
89
+ nodeManifests,
90
+ resolveNodeRenderer
77
91
  ]);
78
92
  const currentCanvas = (0, canvasStore_cjs_namespaceObject.useCanvasStore)(canvasStore_cjs_namespaceObject.selectCurrentCanvas);
79
93
  const previousCanvas = (0, canvasStore_cjs_namespaceObject.useCanvasStore)(canvasStore_cjs_namespaceObject.selectPreviousCanvas);
@@ -148,15 +162,14 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
148
162
  if (currentCanvasId && lastCanvasIdRef.current && currentCanvasId !== lastCanvasIdRef.current) {
149
163
  if (reactFlowInstance && currentCanvas?.viewport) {
150
164
  const viewport = currentCanvas.viewport;
151
- if (0 !== viewport.x || 0 !== viewport.y || 1 !== viewport.zoom) setTimeout(()=>{
152
- reactFlowInstance.setViewport(viewport);
165
+ if (isDefaultViewport(viewport)) {
153
166
  currentViewportRef.current = viewport;
154
167
  viewportManager_cjs_namespaceObject.viewportManager.setCurrentViewport(viewport);
155
- }, 0);
156
- else {
168
+ } else setTimeout(()=>{
169
+ reactFlowInstance.setViewport(viewport);
157
170
  currentViewportRef.current = viewport;
158
171
  viewportManager_cjs_namespaceObject.viewportManager.setCurrentViewport(viewport);
159
- }
172
+ }, 0);
160
173
  }
161
174
  }
162
175
  lastCanvasIdRef.current = currentCanvasId || null;
@@ -171,9 +184,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
171
184
  const handleNodesChange = (0, external_react_namespaceObject.useCallback)((changes)=>{
172
185
  const canvas = currentCanvasRef.current;
173
186
  if (!canvas) return;
174
- const hasMeaningfulChanges = changes.some((change)=>'dimensions' !== change.type && 'position' !== change.type);
175
- const hasPositionChanges = changes.some((change)=>'position' === change.type && change.dragging);
176
- if (!hasMeaningfulChanges && !hasPositionChanges) return;
187
+ if (!changes.some(shouldPersistNodeChange)) return;
177
188
  const updatedNodes = (0, react_cjs_namespaceObject.applyNodeChanges)(changes, canvas.nodes ?? []);
178
189
  updateNodes(updatedNodes);
179
190
  }, [
@@ -205,7 +216,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
205
216
  const handleConnect = (0, external_react_namespaceObject.useCallback)((connection)=>{
206
217
  const canvas = currentCanvasRef.current;
207
218
  if (!connection.source || !connection.target || !canvas) return;
208
- if (connection.target === external_constants_cjs_namespaceObject.PREVIEW_NODE_ID || connection.source === external_constants_cjs_namespaceObject.PREVIEW_NODE_ID) return;
219
+ if ((0, createPreviewNode_cjs_namespaceObject.isPreviewEdge)(connection)) return;
209
220
  const newEdge = {
210
221
  id: `${connection.source}-${connection.target}-${Date.now()}`,
211
222
  source: connection.source,
@@ -213,15 +224,13 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
213
224
  sourceHandle: connection.sourceHandle || void 0,
214
225
  targetHandle: connection.targetHandle || void 0
215
226
  };
227
+ const hasPreview = canvas.nodes.some((n)=>n.id === external_constants_cjs_namespaceObject.PREVIEW_NODE_ID);
228
+ const baseEdges = hasPreview ? canvas.edges.filter((edge)=>!(0, createPreviewNode_cjs_namespaceObject.isPreviewEdge)(edge)) : canvas.edges;
216
229
  updateEdges([
217
- ...canvas.edges,
230
+ ...baseEdges,
218
231
  newEdge
219
232
  ]);
220
- const hasPreview = canvas.nodes.some((n)=>n.id === external_constants_cjs_namespaceObject.PREVIEW_NODE_ID);
221
- if (hasPreview) {
222
- updateNodes(canvas.nodes.filter((n)=>n.id !== external_constants_cjs_namespaceObject.PREVIEW_NODE_ID));
223
- updateEdges(canvas.edges.filter((e)=>e.id !== external_constants_cjs_namespaceObject.PREVIEW_EDGE_ID));
224
- }
233
+ if (hasPreview) updateNodes(canvas.nodes.filter((n)=>n.id !== external_constants_cjs_namespaceObject.PREVIEW_NODE_ID));
225
234
  }, [
226
235
  updateNodes,
227
236
  updateEdges
@@ -255,7 +264,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
255
264
  ]);
256
265
  const shouldFitView = (0, external_react_namespaceObject.useMemo)(()=>{
257
266
  const viewport = currentCanvas?.viewport;
258
- return viewport ? 0 === viewport.x && 0 === viewport.y && 1 === viewport.zoom : false;
267
+ return viewport ? isDefaultViewport(viewport) : false;
259
268
  }, [
260
269
  currentCanvas?.viewport
261
270
  ]);
@@ -1,6 +1,13 @@
1
+ import { type NodeTypes } from '../../xyflow/react.ts';
1
2
  import type React from 'react';
3
+ import type { NodeManifest } from '../../schema/node-definition';
2
4
  import type { CanvasLevel } from '../../types/canvas.types';
3
- interface HierarchicalCanvasProps {
5
+ export type NodeRendererResolver = (args: {
6
+ manifest: NodeManifest;
7
+ defaultRenderer: NodeTypes[string];
8
+ }) => NodeTypes[string] | undefined;
9
+ export interface HierarchicalCanvasProps {
10
+ resolveNodeRenderer?: NodeRendererResolver;
4
11
  mode?: 'view' | 'design' | 'readonly';
5
12
  initialCanvases?: Record<string, CanvasLevel>;
6
13
  initialPath?: string[];
@@ -8,5 +15,4 @@ interface HierarchicalCanvasProps {
8
15
  onPathChange?: (path: string[]) => void;
9
16
  }
10
17
  export declare const HierarchicalCanvas: React.FC<HierarchicalCanvasProps>;
11
- export {};
12
18
  //# sourceMappingURL=HierarchicalCanvas.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"HierarchicalCanvas.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/HierarchicalCanvas.tsx"],"names":[],"mappings":"AAoBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AA4B/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAW5D,UAAU,uBAAuB;IAC/B,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;IAKtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAK9C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAMvB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;IAInE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACzC;AASD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA2YhE,CAAC"}
1
+ {"version":3,"file":"HierarchicalCanvas.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/HierarchicalCanvas.tsx"],"names":[],"mappings":"AAAA,OAAO,EAQL,KAAK,SAAS,EAUf,MAAM,0CAA0C,CAAC;AAElD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAuBjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAY5D,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,QAAQ,EAAE,YAAY,CAAC;IACvB,eAAe,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;CACpC,KAAK,SAAS,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;AAEpC,MAAM,WAAW,uBAAuB;IAKtC,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,UAAU,CAAC;IAKtC,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAK9C,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IAMvB,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;IAInE,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACzC;AAyBD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAwYhE,CAAC"}
@@ -2,14 +2,15 @@ import { jsx, jsxs } from "react/jsx-runtime";
2
2
  import { Panel, applyEdgeChanges, applyNodeChanges } from "../../xyflow/react.js";
3
3
  import { Spinner } from "@uipath/apollo-wind";
4
4
  import { useCallback, useEffect, useMemo, useRef, useState } from "react";
5
- import { PREVIEW_EDGE_ID, PREVIEW_NODE_ID } from "../../constants.js";
5
+ import { PREVIEW_NODE_ID } from "../../constants.js";
6
6
  import { Breadcrumb } from "../../controls/index.js";
7
- import { useNodeManifests } from "../../core/index.js";
7
+ import { useDefaultNodeManifests } from "../../core/index.js";
8
8
  import { useAddNodeOnConnectEnd } from "../../hooks/useAddNodeOnConnectEnd.js";
9
9
  import { animatedViewportManager } from "../../stores/animatedViewportManager.js";
10
10
  import { selectBreadcrumbs, selectCanvasStack, selectCurrentCanvas, selectCurrentPath, selectDrillIntoNode, selectInitializeCanvas, selectInitializeWithData, selectNavigateToDepth, selectNavigateToSiblingCanvas, selectPreviousCanvas, selectTransitionState, selectUpdateEdges, selectUpdateNodes, selectUpdateSelection, selectUpdateViewport, useCanvasStore } from "../../stores/canvasStore.js";
11
11
  import { viewportManager } from "../../stores/viewportManager.js";
12
12
  import { DefaultCanvasTranslations } from "../../types.js";
13
+ import { isPreviewEdge } from "../../utils/createPreviewNode.js";
13
14
  import { CanvasIcon } from "../../utils/icon-registry.js";
14
15
  import { prefersReducedMotion } from "../../utils/transitions.js";
15
16
  import { AddNodeManager } from "../AddNodePanel/AddNodeManager.js";
@@ -24,7 +25,15 @@ const DEFAULT_NODE_TYPES = {
24
25
  'blank-canvas-node': BlankCanvasNode,
25
26
  preview: AddNodePreview
26
27
  };
27
- const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onCanvasesChange, onPathChange })=>{
28
+ function shouldPersistNodeChange(change) {
29
+ if ('position' === change.type) return !!change.dragging;
30
+ if ('dimensions' === change.type) return !!change.setAttributes;
31
+ return true;
32
+ }
33
+ function isDefaultViewport(viewport) {
34
+ return 0 === viewport.x && 0 === viewport.y && 1 === viewport.zoom;
35
+ }
36
+ const HierarchicalCanvas = ({ resolveNodeRenderer, mode = 'design', initialCanvases, initialPath, onCanvasesChange, onPathChange })=>{
28
37
  const canvasRef = useRef(null);
29
38
  const containerRef = useRef(null);
30
39
  const [reactFlowInstance, setReactFlowInstance] = useState(null);
@@ -35,17 +44,22 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
35
44
  });
36
45
  const lastCanvasIdRef = useRef(null);
37
46
  const shouldAnimate = 'design' === mode && !prefersReducedMotion();
38
- const nodeManifests = useNodeManifests();
39
- const nodeTypes = useMemo(()=>{
40
- const types = nodeManifests.reduce((acc, manifest)=>{
41
- if (!acc[manifest.nodeType]) acc[manifest.nodeType] = BaseNode;
47
+ const nodeManifests = useDefaultNodeManifests();
48
+ const nodeTypes = useMemo(()=>nodeManifests.reduce((acc, manifest)=>{
49
+ if (!acc[manifest.nodeType]) {
50
+ const defaultRenderer = BaseNode;
51
+ const resolvedRenderer = resolveNodeRenderer?.({
52
+ manifest,
53
+ defaultRenderer
54
+ });
55
+ acc[manifest.nodeType] = resolvedRenderer ?? defaultRenderer;
56
+ }
42
57
  return acc;
43
58
  }, {
44
59
  ...DEFAULT_NODE_TYPES
45
- });
46
- return types;
47
- }, [
48
- nodeManifests
60
+ }), [
61
+ nodeManifests,
62
+ resolveNodeRenderer
49
63
  ]);
50
64
  const currentCanvas = useCanvasStore(selectCurrentCanvas);
51
65
  const previousCanvas = useCanvasStore(selectPreviousCanvas);
@@ -120,15 +134,14 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
120
134
  if (currentCanvasId && lastCanvasIdRef.current && currentCanvasId !== lastCanvasIdRef.current) {
121
135
  if (reactFlowInstance && currentCanvas?.viewport) {
122
136
  const viewport = currentCanvas.viewport;
123
- if (0 !== viewport.x || 0 !== viewport.y || 1 !== viewport.zoom) setTimeout(()=>{
124
- reactFlowInstance.setViewport(viewport);
137
+ if (isDefaultViewport(viewport)) {
125
138
  currentViewportRef.current = viewport;
126
139
  viewportManager.setCurrentViewport(viewport);
127
- }, 0);
128
- else {
140
+ } else setTimeout(()=>{
141
+ reactFlowInstance.setViewport(viewport);
129
142
  currentViewportRef.current = viewport;
130
143
  viewportManager.setCurrentViewport(viewport);
131
- }
144
+ }, 0);
132
145
  }
133
146
  }
134
147
  lastCanvasIdRef.current = currentCanvasId || null;
@@ -143,9 +156,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
143
156
  const handleNodesChange = useCallback((changes)=>{
144
157
  const canvas = currentCanvasRef.current;
145
158
  if (!canvas) return;
146
- const hasMeaningfulChanges = changes.some((change)=>'dimensions' !== change.type && 'position' !== change.type);
147
- const hasPositionChanges = changes.some((change)=>'position' === change.type && change.dragging);
148
- if (!hasMeaningfulChanges && !hasPositionChanges) return;
159
+ if (!changes.some(shouldPersistNodeChange)) return;
149
160
  const updatedNodes = applyNodeChanges(changes, canvas.nodes ?? []);
150
161
  updateNodes(updatedNodes);
151
162
  }, [
@@ -177,7 +188,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
177
188
  const handleConnect = useCallback((connection)=>{
178
189
  const canvas = currentCanvasRef.current;
179
190
  if (!connection.source || !connection.target || !canvas) return;
180
- if (connection.target === PREVIEW_NODE_ID || connection.source === PREVIEW_NODE_ID) return;
191
+ if (isPreviewEdge(connection)) return;
181
192
  const newEdge = {
182
193
  id: `${connection.source}-${connection.target}-${Date.now()}`,
183
194
  source: connection.source,
@@ -185,15 +196,13 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
185
196
  sourceHandle: connection.sourceHandle || void 0,
186
197
  targetHandle: connection.targetHandle || void 0
187
198
  };
199
+ const hasPreview = canvas.nodes.some((n)=>n.id === PREVIEW_NODE_ID);
200
+ const baseEdges = hasPreview ? canvas.edges.filter((edge)=>!isPreviewEdge(edge)) : canvas.edges;
188
201
  updateEdges([
189
- ...canvas.edges,
202
+ ...baseEdges,
190
203
  newEdge
191
204
  ]);
192
- const hasPreview = canvas.nodes.some((n)=>n.id === PREVIEW_NODE_ID);
193
- if (hasPreview) {
194
- updateNodes(canvas.nodes.filter((n)=>n.id !== PREVIEW_NODE_ID));
195
- updateEdges(canvas.edges.filter((e)=>e.id !== PREVIEW_EDGE_ID));
196
- }
205
+ if (hasPreview) updateNodes(canvas.nodes.filter((n)=>n.id !== PREVIEW_NODE_ID));
197
206
  }, [
198
207
  updateNodes,
199
208
  updateEdges
@@ -227,7 +236,7 @@ const HierarchicalCanvas = ({ mode = 'design', initialCanvases, initialPath, onC
227
236
  ]);
228
237
  const shouldFitView = useMemo(()=>{
229
238
  const viewport = currentCanvas?.viewport;
230
- return viewport ? 0 === viewport.x && 0 === viewport.y && 1 === viewport.zoom : false;
239
+ return viewport ? isDefaultViewport(viewport) : false;
231
240
  }, [
232
241
  currentCanvas?.viewport
233
242
  ]);
@@ -1,2 +1,2 @@
1
- export { HierarchicalCanvas } from './HierarchicalCanvas';
1
+ export { HierarchicalCanvas, type HierarchicalCanvasProps, type NodeRendererResolver, } from './HierarchicalCanvas';
2
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/HierarchicalCanvas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,86 @@
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
+ LoopCanvasNode: ()=>LoopCanvasNode
28
+ });
29
+ const jsx_runtime_namespaceObject = require("react/jsx-runtime");
30
+ const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
31
+ const external_react_namespaceObject = require("react");
32
+ const index_cjs_namespaceObject = require("../../core/index.cjs");
33
+ const manifest_resolver_cjs_namespaceObject = require("../../utils/manifest-resolver.cjs");
34
+ const external_BaseNode_index_cjs_namespaceObject = require("../BaseNode/index.cjs");
35
+ const external_LoopNode_cjs_namespaceObject = require("./LoopNode.cjs");
36
+ const external_LoopNode_helpers_cjs_namespaceObject = require("./LoopNode.helpers.cjs");
37
+ const external_LoopNodePreview_cjs_namespaceObject = require("./LoopNodePreview.cjs");
38
+ function LoopCanvasNodeComponent(props) {
39
+ const reactFlow = (0, react_cjs_namespaceObject.useReactFlow)();
40
+ const nodeTypeRegistry = (0, index_cjs_namespaceObject.useOptionalNodeTypeRegistry)();
41
+ const nodeVersion = (0, manifest_resolver_cjs_namespaceObject.getNodeTypeVersion)(props.data);
42
+ const loopManifest = (0, external_react_namespaceObject.useMemo)(()=>props.type ? nodeTypeRegistry?.getManifest(props.type, nodeVersion) : void 0, [
43
+ nodeTypeRegistry,
44
+ props.type,
45
+ nodeVersion
46
+ ]);
47
+ const shouldUseLoopContainer = (0, external_react_namespaceObject.useMemo)(()=>(0, external_LoopNode_helpers_cjs_namespaceObject.isLoopContainerManifest)(loopManifest), [
48
+ loopManifest
49
+ ]);
50
+ const loopPreviewHandles = (0, external_react_namespaceObject.useMemo)(()=>shouldUseLoopContainer ? (0, external_LoopNode_helpers_cjs_namespaceObject.resolveLoopPreviewConnectionHandles)(loopManifest, {
51
+ ...props.data ?? {},
52
+ nodeId: props.id
53
+ }) : null, [
54
+ shouldUseLoopContainer,
55
+ loopManifest,
56
+ props.data,
57
+ props.id
58
+ ]);
59
+ const handleAddFirstChild = (0, external_react_namespaceObject.useCallback)(()=>{
60
+ if (!loopPreviewHandles) return;
61
+ (0, external_LoopNodePreview_cjs_namespaceObject.showCenteredContainerPreview)({
62
+ containerId: props.id,
63
+ reactFlowInstance: reactFlow,
64
+ previewHandles: loopPreviewHandles
65
+ });
66
+ }, [
67
+ loopPreviewHandles,
68
+ props.id,
69
+ reactFlow
70
+ ]);
71
+ if (loopManifest && !shouldUseLoopContainer) return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_BaseNode_index_cjs_namespaceObject.BaseNode, {
72
+ ...props
73
+ });
74
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_LoopNode_cjs_namespaceObject.LoopNode, {
75
+ ...props,
76
+ onAddFirstChild: loopPreviewHandles ? handleAddFirstChild : void 0
77
+ });
78
+ }
79
+ const LoopCanvasNode = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(LoopCanvasNodeComponent);
80
+ exports.LoopCanvasNode = __webpack_exports__.LoopCanvasNode;
81
+ for(var __rspack_i in __webpack_exports__)if (-1 === [
82
+ "LoopCanvasNode"
83
+ ].indexOf(__rspack_i)) exports[__rspack_i] = __webpack_exports__[__rspack_i];
84
+ Object.defineProperty(exports, '__esModule', {
85
+ value: true
86
+ });
@@ -0,0 +1,6 @@
1
+ import type { Node, NodeProps } from '../../xyflow/react.ts';
2
+ import type { LoopNodeData } from './LoopNode.types';
3
+ declare function LoopCanvasNodeComponent(props: NodeProps<Node<LoopNodeData>>): import("react/jsx-runtime").JSX.Element;
4
+ export declare const LoopCanvasNode: import("react").MemoExoticComponent<typeof LoopCanvasNodeComponent>;
5
+ export {};
6
+ //# sourceMappingURL=LoopCanvasNode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LoopCanvasNode.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/LoopNode/LoopCanvasNode.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,0CAA0C,CAAC;AAQhF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGrD,iBAAS,uBAAuB,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,2CA2CpE;AAED,eAAO,MAAM,cAAc,qEAAgC,CAAC"}
@@ -0,0 +1,52 @@
1
+ import { jsx } from "react/jsx-runtime";
2
+ import { useReactFlow } from "../../xyflow/react.js";
3
+ import { memo, useCallback, useMemo } from "react";
4
+ import { useOptionalNodeTypeRegistry } from "../../core/index.js";
5
+ import { getNodeTypeVersion } from "../../utils/manifest-resolver.js";
6
+ import { BaseNode } from "../BaseNode/index.js";
7
+ import { LoopNode } from "./LoopNode.js";
8
+ import { isLoopContainerManifest, resolveLoopPreviewConnectionHandles } from "./LoopNode.helpers.js";
9
+ import { showCenteredContainerPreview } from "./LoopNodePreview.js";
10
+ function LoopCanvasNodeComponent(props) {
11
+ const reactFlow = useReactFlow();
12
+ const nodeTypeRegistry = useOptionalNodeTypeRegistry();
13
+ const nodeVersion = getNodeTypeVersion(props.data);
14
+ const loopManifest = useMemo(()=>props.type ? nodeTypeRegistry?.getManifest(props.type, nodeVersion) : void 0, [
15
+ nodeTypeRegistry,
16
+ props.type,
17
+ nodeVersion
18
+ ]);
19
+ const shouldUseLoopContainer = useMemo(()=>isLoopContainerManifest(loopManifest), [
20
+ loopManifest
21
+ ]);
22
+ const loopPreviewHandles = useMemo(()=>shouldUseLoopContainer ? resolveLoopPreviewConnectionHandles(loopManifest, {
23
+ ...props.data ?? {},
24
+ nodeId: props.id
25
+ }) : null, [
26
+ shouldUseLoopContainer,
27
+ loopManifest,
28
+ props.data,
29
+ props.id
30
+ ]);
31
+ const handleAddFirstChild = useCallback(()=>{
32
+ if (!loopPreviewHandles) return;
33
+ showCenteredContainerPreview({
34
+ containerId: props.id,
35
+ reactFlowInstance: reactFlow,
36
+ previewHandles: loopPreviewHandles
37
+ });
38
+ }, [
39
+ loopPreviewHandles,
40
+ props.id,
41
+ reactFlow
42
+ ]);
43
+ if (loopManifest && !shouldUseLoopContainer) return /*#__PURE__*/ jsx(BaseNode, {
44
+ ...props
45
+ });
46
+ return /*#__PURE__*/ jsx(LoopNode, {
47
+ ...props,
48
+ onAddFirstChild: loopPreviewHandles ? handleAddFirstChild : void 0
49
+ });
50
+ }
51
+ const LoopCanvasNode = /*#__PURE__*/ memo(LoopCanvasNodeComponent);
52
+ export { LoopCanvasNode };