@uipath/apollo-react 4.14.1 → 4.15.0-pr605.6ea14a7

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 (223) hide show
  1. package/dist/canvas/components/AddNodePanel/AddNodeManager.cjs +101 -10
  2. package/dist/canvas/components/AddNodePanel/AddNodeManager.d.ts.map +1 -1
  3. package/dist/canvas/components/AddNodePanel/AddNodeManager.js +101 -10
  4. package/dist/canvas/components/AddNodePanel/createAddNodePreview.cjs +27 -3
  5. package/dist/canvas/components/AddNodePanel/createAddNodePreview.d.ts.map +1 -1
  6. package/dist/canvas/components/AddNodePanel/createAddNodePreview.js +27 -3
  7. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts +1 -0
  8. package/dist/canvas/components/AgentCanvas/agent-flow.manifest.d.ts.map +1 -1
  9. package/dist/canvas/components/BaseNode/BaseNode.cjs +11 -5
  10. package/dist/canvas/components/BaseNode/BaseNode.d.ts +2 -1
  11. package/dist/canvas/components/BaseNode/BaseNode.d.ts.map +1 -1
  12. package/dist/canvas/components/BaseNode/BaseNode.js +9 -6
  13. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts +3 -0
  14. package/dist/canvas/components/BaseNode/BaseNode.types.d.ts.map +1 -1
  15. package/dist/canvas/components/ButtonHandle/ButtonHandle.cjs +222 -13
  16. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts +10 -5
  17. package/dist/canvas/components/ButtonHandle/ButtonHandle.d.ts.map +1 -1
  18. package/dist/canvas/components/ButtonHandle/ButtonHandle.js +223 -14
  19. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.cjs +10 -2
  20. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts +2 -0
  21. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.d.ts.map +1 -1
  22. package/dist/canvas/components/ButtonHandle/ButtonHandleStyleUtils.js +5 -3
  23. package/dist/canvas/components/ButtonHandle/HandleButton.cjs +17 -2
  24. package/dist/canvas/components/ButtonHandle/HandleButton.d.ts +10 -1
  25. package/dist/canvas/components/ButtonHandle/HandleButton.d.ts.map +1 -1
  26. package/dist/canvas/components/ButtonHandle/HandleButton.js +17 -2
  27. package/dist/canvas/components/ButtonHandle/useButtonHandles.cjs +4 -2
  28. package/dist/canvas/components/ButtonHandle/useButtonHandles.d.ts +2 -1
  29. package/dist/canvas/components/ButtonHandle/useButtonHandles.d.ts.map +1 -1
  30. package/dist/canvas/components/ButtonHandle/useButtonHandles.js +4 -2
  31. package/dist/canvas/components/Edges/SequenceEdge.cjs +18 -12
  32. package/dist/canvas/components/Edges/SequenceEdge.d.ts.map +1 -1
  33. package/dist/canvas/components/Edges/SequenceEdge.js +18 -12
  34. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.cjs +34 -25
  35. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts +8 -2
  36. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.d.ts.map +1 -1
  37. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvas.js +36 -27
  38. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.cjs +4 -1
  39. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.d.ts.map +1 -1
  40. package/dist/canvas/components/HierarchicalCanvas/HierarchicalCanvasWithControls.js +4 -1
  41. package/dist/canvas/components/HierarchicalCanvas/index.d.ts +1 -1
  42. package/dist/canvas/components/HierarchicalCanvas/index.d.ts.map +1 -1
  43. package/dist/canvas/components/LoopNode/LoopCanvasNode.cjs +86 -0
  44. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts +6 -0
  45. package/dist/canvas/components/LoopNode/LoopCanvasNode.d.ts.map +1 -0
  46. package/dist/canvas/components/LoopNode/LoopCanvasNode.js +52 -0
  47. package/dist/canvas/components/LoopNode/LoopNode.cjs +434 -0
  48. package/dist/canvas/components/LoopNode/LoopNode.constants.cjs +93 -0
  49. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts +16 -0
  50. package/dist/canvas/components/LoopNode/LoopNode.constants.d.ts.map +1 -0
  51. package/dist/canvas/components/LoopNode/LoopNode.constants.js +17 -0
  52. package/dist/canvas/components/LoopNode/LoopNode.d.ts +5 -0
  53. package/dist/canvas/components/LoopNode/LoopNode.d.ts.map +1 -0
  54. package/dist/canvas/components/LoopNode/LoopNode.helpers.cjs +185 -0
  55. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts +58 -0
  56. package/dist/canvas/components/LoopNode/LoopNode.helpers.d.ts.map +1 -0
  57. package/dist/canvas/components/LoopNode/LoopNode.helpers.js +124 -0
  58. package/dist/canvas/components/LoopNode/LoopNode.js +400 -0
  59. package/dist/canvas/components/LoopNode/LoopNode.sequence.cjs +386 -0
  60. package/dist/canvas/components/LoopNode/LoopNode.sequence.d.ts +47 -0
  61. package/dist/canvas/components/LoopNode/LoopNode.sequence.d.ts.map +1 -0
  62. package/dist/canvas/components/LoopNode/LoopNode.sequence.js +343 -0
  63. package/dist/canvas/components/LoopNode/LoopNode.types.cjs +18 -0
  64. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts +22 -0
  65. package/dist/canvas/components/LoopNode/LoopNode.types.d.ts.map +1 -0
  66. package/dist/canvas/components/LoopNode/LoopNode.types.js +0 -0
  67. package/dist/canvas/components/LoopNode/LoopNodePreview.cjs +57 -0
  68. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts +9 -0
  69. package/dist/canvas/components/LoopNode/LoopNodePreview.d.ts.map +1 -0
  70. package/dist/canvas/components/LoopNode/LoopNodePreview.js +23 -0
  71. package/dist/canvas/components/LoopNode/index.cjs +79 -0
  72. package/dist/canvas/components/LoopNode/index.d.ts +5 -0
  73. package/dist/canvas/components/LoopNode/index.d.ts.map +1 -0
  74. package/dist/canvas/components/LoopNode/index.js +4 -0
  75. package/dist/canvas/components/NodeViewportOverlay.cjs +63 -0
  76. package/dist/canvas/components/NodeViewportOverlay.d.ts +22 -0
  77. package/dist/canvas/components/NodeViewportOverlay.d.ts.map +1 -0
  78. package/dist/canvas/components/NodeViewportOverlay.js +29 -0
  79. package/dist/canvas/components/Toolbar/EdgeToolbar/EdgeToolbar.cjs +1 -1
  80. package/dist/canvas/components/Toolbar/EdgeToolbar/EdgeToolbar.js +1 -1
  81. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.cjs +33 -23
  82. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.d.ts.map +1 -1
  83. package/dist/canvas/components/Toolbar/EdgeToolbar/useEdgeToolbarState.js +35 -25
  84. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.cjs +10 -3
  85. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts +1 -1
  86. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.d.ts.map +1 -1
  87. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.js +10 -3
  88. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts +1 -0
  89. package/dist/canvas/components/Toolbar/NodeToolbar/NodeToolbar.types.d.ts.map +1 -1
  90. package/dist/canvas/components/index.cjs +27 -20
  91. package/dist/canvas/components/index.d.ts +1 -0
  92. package/dist/canvas/components/index.d.ts.map +1 -1
  93. package/dist/canvas/components/index.js +1 -0
  94. package/dist/canvas/constants.cjs +4 -0
  95. package/dist/canvas/constants.d.ts +1 -0
  96. package/dist/canvas/constants.d.ts.map +1 -1
  97. package/dist/canvas/constants.js +2 -1
  98. package/dist/canvas/core/NodeTypeRegistry.cjs +50 -26
  99. package/dist/canvas/core/NodeTypeRegistry.d.ts +10 -5
  100. package/dist/canvas/core/NodeTypeRegistry.d.ts.map +1 -1
  101. package/dist/canvas/core/NodeTypeRegistry.js +50 -26
  102. package/dist/canvas/core/useNodeTypeRegistry.cjs +13 -3
  103. package/dist/canvas/core/useNodeTypeRegistry.d.ts +2 -1
  104. package/dist/canvas/core/useNodeTypeRegistry.d.ts.map +1 -1
  105. package/dist/canvas/core/useNodeTypeRegistry.js +11 -4
  106. package/dist/canvas/hooks/useAddNodeOnConnectEnd.cjs +22 -23
  107. package/dist/canvas/hooks/useAddNodeOnConnectEnd.d.ts.map +1 -1
  108. package/dist/canvas/hooks/useAddNodeOnConnectEnd.js +23 -24
  109. package/dist/canvas/hooks/usePreviewNode.cjs +7 -3
  110. package/dist/canvas/hooks/usePreviewNode.d.ts.map +1 -1
  111. package/dist/canvas/hooks/usePreviewNode.js +7 -3
  112. package/dist/canvas/locales/de.cjs +1 -1
  113. package/dist/canvas/locales/de.d.ts.map +1 -1
  114. package/dist/canvas/locales/de.js +1 -1
  115. package/dist/canvas/locales/es-MX.cjs +1 -1
  116. package/dist/canvas/locales/es-MX.d.ts.map +1 -1
  117. package/dist/canvas/locales/es-MX.js +1 -1
  118. package/dist/canvas/locales/es.cjs +1 -1
  119. package/dist/canvas/locales/es.d.ts.map +1 -1
  120. package/dist/canvas/locales/es.js +1 -1
  121. package/dist/canvas/locales/fr.cjs +1 -1
  122. package/dist/canvas/locales/fr.d.ts.map +1 -1
  123. package/dist/canvas/locales/fr.js +1 -1
  124. package/dist/canvas/locales/ja.cjs +1 -1
  125. package/dist/canvas/locales/ja.d.ts.map +1 -1
  126. package/dist/canvas/locales/ja.js +1 -1
  127. package/dist/canvas/locales/ko.cjs +1 -1
  128. package/dist/canvas/locales/ko.d.ts.map +1 -1
  129. package/dist/canvas/locales/ko.js +1 -1
  130. package/dist/canvas/locales/pt-BR.cjs +1 -1
  131. package/dist/canvas/locales/pt-BR.d.ts.map +1 -1
  132. package/dist/canvas/locales/pt-BR.js +1 -1
  133. package/dist/canvas/locales/pt.cjs +1 -1
  134. package/dist/canvas/locales/pt.d.ts.map +1 -1
  135. package/dist/canvas/locales/pt.js +1 -1
  136. package/dist/canvas/locales/tr.cjs +1 -1
  137. package/dist/canvas/locales/tr.d.ts.map +1 -1
  138. package/dist/canvas/locales/tr.js +1 -1
  139. package/dist/canvas/locales/zh-CN.cjs +1 -1
  140. package/dist/canvas/locales/zh-CN.d.ts.map +1 -1
  141. package/dist/canvas/locales/zh-CN.js +1 -1
  142. package/dist/canvas/locales/zh-TW.cjs +1 -1
  143. package/dist/canvas/locales/zh-TW.d.ts.map +1 -1
  144. package/dist/canvas/locales/zh-TW.js +1 -1
  145. package/dist/canvas/schema/node-definition/handle.cjs +10 -2
  146. package/dist/canvas/schema/node-definition/handle.d.ts +9 -0
  147. package/dist/canvas/schema/node-definition/handle.d.ts.map +1 -1
  148. package/dist/canvas/schema/node-definition/handle.js +6 -1
  149. package/dist/canvas/schema/node-definition/index.cjs +4 -1
  150. package/dist/canvas/schema/node-definition/index.d.ts +3 -3
  151. package/dist/canvas/schema/node-definition/index.d.ts.map +1 -1
  152. package/dist/canvas/schema/node-definition/index.js +2 -2
  153. package/dist/canvas/schema/node-definition/node-manifest.d.ts +4 -0
  154. package/dist/canvas/schema/node-definition/node-manifest.d.ts.map +1 -1
  155. package/dist/canvas/storybook-utils/hooks/useCanvasStory.d.ts +6 -0
  156. package/dist/canvas/storybook-utils/hooks/useCanvasStory.d.ts.map +1 -1
  157. package/dist/canvas/storybook-utils/manifests/index.d.ts +1 -0
  158. package/dist/canvas/storybook-utils/manifests/index.d.ts.map +1 -1
  159. package/dist/canvas/storybook-utils/manifests/node-definitions.d.ts.map +1 -1
  160. package/dist/canvas/storybook-utils/mocks/nodes.d.ts +1 -1
  161. package/dist/canvas/storybook-utils/mocks/nodes.d.ts.map +1 -1
  162. package/dist/canvas/styles/reactflow-reset.css +2 -2
  163. package/dist/canvas/styles/tailwind.canvas.css +1 -1
  164. package/dist/canvas/utils/NodeUtils.cjs +25 -9
  165. package/dist/canvas/utils/NodeUtils.d.ts +7 -0
  166. package/dist/canvas/utils/NodeUtils.d.ts.map +1 -1
  167. package/dist/canvas/utils/NodeUtils.js +13 -6
  168. package/dist/canvas/utils/collapse.cjs +13 -6
  169. package/dist/canvas/utils/collapse.d.ts +2 -2
  170. package/dist/canvas/utils/collapse.d.ts.map +1 -1
  171. package/dist/canvas/utils/collapse.js +9 -2
  172. package/dist/canvas/utils/container-sizing.cjs +168 -0
  173. package/dist/canvas/utils/container-sizing.d.ts +23 -0
  174. package/dist/canvas/utils/container-sizing.d.ts.map +1 -0
  175. package/dist/canvas/utils/container-sizing.js +131 -0
  176. package/dist/canvas/utils/createPreviewGraph.cjs +126 -0
  177. package/dist/canvas/utils/createPreviewGraph.d.ts +37 -0
  178. package/dist/canvas/utils/createPreviewGraph.d.ts.map +1 -0
  179. package/dist/canvas/utils/createPreviewGraph.js +83 -0
  180. package/dist/canvas/utils/createPreviewNode.cjs +59 -12
  181. package/dist/canvas/utils/createPreviewNode.d.ts +10 -2
  182. package/dist/canvas/utils/createPreviewNode.d.ts.map +1 -1
  183. package/dist/canvas/utils/createPreviewNode.js +50 -12
  184. package/dist/canvas/utils/index.cjs +40 -26
  185. package/dist/canvas/utils/index.d.ts +3 -1
  186. package/dist/canvas/utils/index.d.ts.map +1 -1
  187. package/dist/canvas/utils/index.js +3 -1
  188. package/dist/canvas/utils/manifest-resolver.cjs +8 -0
  189. package/dist/canvas/utils/manifest-resolver.d.ts +1 -0
  190. package/dist/canvas/utils/manifest-resolver.d.ts.map +1 -1
  191. package/dist/canvas/utils/manifest-resolver.js +6 -1
  192. package/dist/material/components/ap-tool-call/locales/de.cjs +1 -1
  193. package/dist/material/components/ap-tool-call/locales/de.d.ts.map +1 -1
  194. package/dist/material/components/ap-tool-call/locales/de.js +1 -1
  195. package/dist/material/components/ap-tool-call/locales/es-MX.cjs +1 -1
  196. package/dist/material/components/ap-tool-call/locales/es-MX.js +1 -1
  197. package/dist/material/components/ap-tool-call/locales/es.cjs +1 -1
  198. package/dist/material/components/ap-tool-call/locales/es.js +1 -1
  199. package/dist/material/components/ap-tool-call/locales/fr.cjs +1 -1
  200. package/dist/material/components/ap-tool-call/locales/fr.d.ts.map +1 -1
  201. package/dist/material/components/ap-tool-call/locales/fr.js +1 -1
  202. package/dist/material/components/ap-tool-call/locales/ja.cjs +1 -1
  203. package/dist/material/components/ap-tool-call/locales/ja.d.ts.map +1 -1
  204. package/dist/material/components/ap-tool-call/locales/ja.js +1 -1
  205. package/dist/material/components/ap-tool-call/locales/ko.cjs +1 -1
  206. package/dist/material/components/ap-tool-call/locales/ko.d.ts.map +1 -1
  207. package/dist/material/components/ap-tool-call/locales/ko.js +1 -1
  208. package/dist/material/components/ap-tool-call/locales/pt-BR.cjs +1 -1
  209. package/dist/material/components/ap-tool-call/locales/pt-BR.d.ts.map +1 -1
  210. package/dist/material/components/ap-tool-call/locales/pt-BR.js +1 -1
  211. package/dist/material/components/ap-tool-call/locales/pt.cjs +1 -1
  212. package/dist/material/components/ap-tool-call/locales/pt.d.ts.map +1 -1
  213. package/dist/material/components/ap-tool-call/locales/pt.js +1 -1
  214. package/dist/material/components/ap-tool-call/locales/tr.cjs +1 -1
  215. package/dist/material/components/ap-tool-call/locales/tr.d.ts.map +1 -1
  216. package/dist/material/components/ap-tool-call/locales/tr.js +1 -1
  217. package/dist/material/components/ap-tool-call/locales/zh-CN.cjs +1 -1
  218. package/dist/material/components/ap-tool-call/locales/zh-CN.d.ts.map +1 -1
  219. package/dist/material/components/ap-tool-call/locales/zh-CN.js +1 -1
  220. package/dist/material/components/ap-tool-call/locales/zh-TW.cjs +1 -1
  221. package/dist/material/components/ap-tool-call/locales/zh-TW.d.ts.map +1 -1
  222. package/dist/material/components/ap-tool-call/locales/zh-TW.js +1 -1
  223. package/package.json +3 -3
@@ -30,6 +30,7 @@ __webpack_require__.d(__webpack_exports__, {
30
30
  const jsx_runtime_namespaceObject = require("react/jsx-runtime");
31
31
  const react_cjs_namespaceObject = require("../../xyflow/react.cjs");
32
32
  const external_react_namespaceObject = require("react");
33
+ const external_constants_cjs_namespaceObject = require("../../constants.cjs");
33
34
  const CanvasEventBus_cjs_namespaceObject = require("../../utils/CanvasEventBus.cjs");
34
35
  const CssUtil_cjs_namespaceObject = require("../../utils/CssUtil.cjs");
35
36
  const external_ButtonHandleStyleUtils_cjs_namespaceObject = require("./ButtonHandleStyleUtils.cjs");
@@ -37,7 +38,14 @@ const external_HandleButton_cjs_namespaceObject = require("./HandleButton.cjs");
37
38
  const external_HandleLabel_cjs_namespaceObject = require("./HandleLabel.cjs");
38
39
  const external_HandleNotch_cjs_namespaceObject = require("./HandleNotch.cjs");
39
40
  const external_useButtonHandleSizeAndPosition_cjs_namespaceObject = require("./useButtonHandleSizeAndPosition.cjs");
40
- const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, labelIcon, labelBackgroundColor, visible = true, showButton = true, selected = false, index = 0, total = 1, onAction, showNotches = true, customPositionAndOffsets, nodeWidth, nodeHeight })=>{
41
+ const INWARD_HANDLE_ANCHOR_SIZE_PX = external_constants_cjs_namespaceObject.GRID_SPACING;
42
+ const INWARD_HANDLE_ANCHOR_RADIUS_PX = INWARD_HANDLE_ANCHOR_SIZE_PX / 2;
43
+ const INWARD_NOTCH_OVERLAP_PX = {
44
+ artifact: 5,
45
+ input: 4,
46
+ output: 6
47
+ };
48
+ const ButtonHandleBase = ({ id, nodeId, type, position, connectionPosition = position, handleType, label, labelIcon, labelBackgroundColor, visible = true, showButton = true, selected = false, index = 0, total = 1, onAction, showNotches = true, customPositionAndOffsets, nodeWidth, nodeHeight, portalAction = false })=>{
41
49
  const handleRef = (0, external_react_namespaceObject.useRef)(null);
42
50
  const [isHovered, setIsHovered] = (0, external_react_namespaceObject.useState)(false);
43
51
  const isVertical = position === react_cjs_namespaceObject.Position.Top || position === react_cjs_namespaceObject.Position.Bottom;
@@ -62,7 +70,7 @@ const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, label
62
70
  handleId: id,
63
71
  nodeId,
64
72
  handleType,
65
- position,
73
+ position: connectionPosition,
66
74
  originalEvent: event
67
75
  };
68
76
  onAction?.(actionEvent);
@@ -70,23 +78,83 @@ const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, label
70
78
  handleId: id,
71
79
  nodeId,
72
80
  handleType,
73
- position
81
+ position: connectionPosition
74
82
  });
75
83
  }, [
84
+ connectionPosition,
76
85
  id,
77
86
  nodeId,
78
87
  handleType,
79
- position,
80
88
  onAction
81
89
  ]);
82
90
  const markAsHovered = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(true), []);
83
91
  const unmarkAsHovered = (0, external_react_namespaceObject.useCallback)(()=>setIsHovered(false), []);
92
+ const showActionButton = !!onAction && 'source' === type;
84
93
  const { width: handleWidth, height: handleHeight, top, bottom, left, right, transform } = (0, external_useButtonHandleSizeAndPosition_cjs_namespaceObject.useButtonHandleSizeAndPosition)({
85
94
  position,
86
95
  positionPercent,
87
96
  numHandles: total,
88
97
  customPositionAndOffsets
89
98
  });
99
+ if (connectionPosition !== position) {
100
+ const layout = getInwardHandleLayout(position, handleType);
101
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
102
+ className: (0, CssUtil_cjs_namespaceObject.cx)('absolute flex overflow-visible', visible ? 'pointer-events-auto opacity-100' : 'pointer-events-none opacity-0'),
103
+ style: {
104
+ top,
105
+ bottom,
106
+ left,
107
+ right,
108
+ transform: layout.rootTransform
109
+ },
110
+ onMouseEnter: markAsHovered,
111
+ onMouseLeave: unmarkAsHovered,
112
+ onMouseDown: unmarkAsHovered,
113
+ children: [
114
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(InwardHandleContent, {
115
+ handleType: handleType,
116
+ isVertical: isVertical,
117
+ selected: selected,
118
+ hovered: isHovered,
119
+ showNotch: showNotches,
120
+ label: label,
121
+ labelIcon: labelIcon,
122
+ labelBackgroundColor: labelBackgroundColor,
123
+ layout: layout
124
+ }),
125
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(react_cjs_namespaceObject.Handle, {
126
+ ref: handleRef,
127
+ type: type,
128
+ position: connectionPosition,
129
+ id: id,
130
+ onMouseEnter: markAsHovered,
131
+ onMouseLeave: unmarkAsHovered,
132
+ onMouseDown: unmarkAsHovered,
133
+ className: (0, CssUtil_cjs_namespaceObject.cx)('absolute! z-20 flex! items-center! justify-center! overflow-visible! border-0! rounded-none! bg-transparent!', visible ? 'cursor-crosshair! pointer-events-auto! opacity-100' : 'cursor-default! pointer-events-none! opacity-0'),
134
+ style: {
135
+ ...layout.anchorStyle,
136
+ width: INWARD_HANDLE_ANCHOR_SIZE_PX,
137
+ height: INWARD_HANDLE_ANCHOR_SIZE_PX
138
+ }
139
+ }),
140
+ showActionButton ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleButton_cjs_namespaceObject.HandleButton, {
141
+ visible: showButton,
142
+ labelVisible: visible,
143
+ position: connectionPosition,
144
+ onAction: handleButtonClick,
145
+ handleRef: handleRef
146
+ }) : null
147
+ ]
148
+ });
149
+ }
150
+ const portal = showActionButton && portalAction && !customPositionAndOffsets ? getHandleActionPortal({
151
+ nodeId,
152
+ position,
153
+ positionPercent,
154
+ total,
155
+ nodeWidth,
156
+ nodeHeight
157
+ }) : void 0;
90
158
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(react_cjs_namespaceObject.Handle, {
91
159
  ref: handleRef,
92
160
  type: type,
@@ -113,7 +181,7 @@ const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, label
113
181
  hovered: isHovered,
114
182
  showNotch: showNotches
115
183
  }),
116
- onAction && 'source' === type ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleButton_cjs_namespaceObject.HandleButton, {
184
+ showActionButton ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleButton_cjs_namespaceObject.HandleButton, {
117
185
  visible: showButton,
118
186
  labelVisible: visible,
119
187
  position: position,
@@ -121,7 +189,8 @@ const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, label
121
189
  handleRef: handleRef,
122
190
  label: label,
123
191
  labelIcon: labelIcon,
124
- labelBackgroundColor: labelBackgroundColor
192
+ labelBackgroundColor: labelBackgroundColor,
193
+ portal: portal
125
194
  }) : label && /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleLabel_cjs_namespaceObject.HandleLabel, {
126
195
  position: position,
127
196
  backgroundColor: labelBackgroundColor,
@@ -132,7 +201,142 @@ const ButtonHandleBase = ({ id, nodeId, type, position, handleType, label, label
132
201
  });
133
202
  };
134
203
  const ButtonHandle = /*#__PURE__*/ (0, external_react_namespaceObject.memo)(ButtonHandleBase);
135
- const ButtonHandlesBase = ({ nodeId, handles, position, selected = false, hovered = false, visible = true, showAddButton = true, showNotches = true, customPositionAndOffsets, shouldShowAddButtonFn = ({ showAddButton, selected, hovered })=>showAddButton && (selected || hovered), nodeWidth, nodeHeight })=>{
204
+ function getHandleActionPortal({ nodeId, position, positionPercent, total, nodeWidth, nodeHeight }) {
205
+ if (!nodeWidth || !nodeHeight) return;
206
+ const edgeCoverageRatio = external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_EDGE_COVERAGE_RATIO / total;
207
+ const horizontalWidth = nodeWidth * edgeCoverageRatio;
208
+ const verticalHeight = nodeHeight * edgeCoverageRatio;
209
+ const x = positionPercent / 100 * nodeWidth;
210
+ const y = positionPercent / 100 * nodeHeight;
211
+ switch(position){
212
+ case react_cjs_namespaceObject.Position.Top:
213
+ return {
214
+ nodeId,
215
+ left: x,
216
+ top: 0,
217
+ width: horizontalWidth,
218
+ height: external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
219
+ transform: 'translate(-50%, -50%)'
220
+ };
221
+ case react_cjs_namespaceObject.Position.Bottom:
222
+ return {
223
+ nodeId,
224
+ left: x,
225
+ top: nodeHeight - external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
226
+ width: horizontalWidth,
227
+ height: external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
228
+ transform: 'translate(-50%, 50%)'
229
+ };
230
+ case react_cjs_namespaceObject.Position.Left:
231
+ return {
232
+ nodeId,
233
+ left: 0,
234
+ top: y,
235
+ width: external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
236
+ height: verticalHeight,
237
+ transform: 'translate(-50%, -50%)'
238
+ };
239
+ case react_cjs_namespaceObject.Position.Right:
240
+ return {
241
+ nodeId,
242
+ left: nodeWidth - external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
243
+ top: y,
244
+ width: external_ButtonHandleStyleUtils_cjs_namespaceObject.HANDLE_CROSS_AXIS_SIZE_PX,
245
+ height: verticalHeight,
246
+ transform: 'translate(50%, -50%)'
247
+ };
248
+ }
249
+ }
250
+ function InwardHandleContent({ handleType, isVertical, selected, hovered, showNotch, label, labelIcon, labelBackgroundColor, layout }) {
251
+ const labelElement = label ? /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
252
+ className: (0, CssUtil_cjs_namespaceObject.cx)('pointer-events-none flex h-6 items-center gap-1.5 whitespace-nowrap rounded-full border border-border-subtle bg-surface-overlay px-2.5', 'text-xs font-medium text-foreground'),
253
+ style: labelBackgroundColor ? {
254
+ backgroundColor: labelBackgroundColor
255
+ } : void 0,
256
+ children: [
257
+ labelIcon,
258
+ /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
259
+ children: label
260
+ })
261
+ ]
262
+ }) : null;
263
+ const notchElement = /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)("span", {
264
+ className: "relative z-10 flex shrink-0",
265
+ style: layout.notchStyle,
266
+ children: /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleNotch_cjs_namespaceObject.HandleNotch, {
267
+ handleType: handleType,
268
+ isVertical: isVertical,
269
+ selected: selected,
270
+ hovered: hovered,
271
+ showNotch: showNotch
272
+ })
273
+ });
274
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)("div", {
275
+ className: (0, CssUtil_cjs_namespaceObject.cx)('flex items-center', layout.contentDirectionClassName),
276
+ children: [
277
+ labelElement,
278
+ notchElement
279
+ ]
280
+ });
281
+ }
282
+ function getInwardHandleLayout(position, handleType) {
283
+ const notchOverlap = -INWARD_NOTCH_OVERLAP_PX[handleType];
284
+ switch(position){
285
+ case react_cjs_namespaceObject.Position.Left:
286
+ return {
287
+ rootTransform: 'translate(0, -50%)',
288
+ contentDirectionClassName: 'flex-row',
289
+ notchStyle: {
290
+ marginLeft: notchOverlap
291
+ },
292
+ anchorStyle: {
293
+ left: `calc(100% - ${INWARD_HANDLE_ANCHOR_RADIUS_PX}px)`,
294
+ top: '50%',
295
+ transform: 'translateY(-50%)'
296
+ }
297
+ };
298
+ case react_cjs_namespaceObject.Position.Right:
299
+ return {
300
+ rootTransform: 'translate(0, -50%)',
301
+ contentDirectionClassName: 'flex-row-reverse',
302
+ notchStyle: {
303
+ marginRight: notchOverlap
304
+ },
305
+ anchorStyle: {
306
+ left: -INWARD_HANDLE_ANCHOR_RADIUS_PX,
307
+ top: '50%',
308
+ transform: 'translateY(-50%)'
309
+ }
310
+ };
311
+ case react_cjs_namespaceObject.Position.Top:
312
+ return {
313
+ rootTransform: 'translate(-50%, 0)',
314
+ contentDirectionClassName: 'flex-col',
315
+ notchStyle: {
316
+ marginTop: notchOverlap
317
+ },
318
+ anchorStyle: {
319
+ left: '50%',
320
+ top: `calc(100% - ${INWARD_HANDLE_ANCHOR_RADIUS_PX}px)`,
321
+ transform: 'translateX(-50%)'
322
+ }
323
+ };
324
+ case react_cjs_namespaceObject.Position.Bottom:
325
+ return {
326
+ rootTransform: 'translate(-50%, 0)',
327
+ contentDirectionClassName: 'flex-col-reverse',
328
+ notchStyle: {
329
+ marginBottom: notchOverlap
330
+ },
331
+ anchorStyle: {
332
+ left: '50%',
333
+ top: -INWARD_HANDLE_ANCHOR_RADIUS_PX,
334
+ transform: 'translateX(-50%)'
335
+ }
336
+ };
337
+ }
338
+ }
339
+ const ButtonHandlesBase = ({ nodeId, handles, position, connectionPosition = position, selected = false, hovered = false, visible = true, showAddButton = true, showNotches = true, customPositionAndOffsets, shouldShowAddButtonFn = ({ showAddButton, selected, hovered })=>showAddButton && (selected || hovered), nodeWidth, nodeHeight, portalActions = false })=>{
136
340
  const finalSelected = shouldShowAddButtonFn({
137
341
  showAddButton,
138
342
  selected,
@@ -143,14 +347,17 @@ const ButtonHandlesBase = ({ nodeId, handles, position, selected = false, hovere
143
347
  return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsxs)(jsx_runtime_namespaceObject.Fragment, {
144
348
  children: [
145
349
  /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(external_HandleButton_cjs_namespaceObject.HandleHoverBridge, {
146
- position: position,
350
+ position: connectionPosition,
147
351
  visible: hasSourceButtons && finalSelected
148
352
  }),
149
- visibleHandles.map((handle, index)=>/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ButtonHandle, {
353
+ visibleHandles.map((handle, index)=>{
354
+ const handleVisible = handle.showHandle ?? visible;
355
+ return /*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(ButtonHandle, {
150
356
  id: handle.id,
151
357
  nodeId: nodeId,
152
358
  type: handle.type,
153
359
  position: position,
360
+ connectionPosition: connectionPosition,
154
361
  handleType: handle.handleType,
155
362
  label: handle.label,
156
363
  labelIcon: handle.labelIcon,
@@ -158,14 +365,16 @@ const ButtonHandlesBase = ({ nodeId, handles, position, selected = false, hovere
158
365
  index: index,
159
366
  total: visibleHandles.length,
160
367
  selected: selected,
161
- visible: handle.showHandle ?? visible,
162
- showButton: finalSelected && (handle.showHandle ?? visible) && handle.showButton,
368
+ visible: handleVisible,
369
+ showButton: finalSelected && handleVisible && handle.showButton,
163
370
  onAction: handle.onAction,
164
371
  showNotches: showNotches,
165
372
  customPositionAndOffsets: customPositionAndOffsets,
166
373
  nodeWidth: nodeWidth,
167
- nodeHeight: nodeHeight
168
- }, handle.id))
374
+ nodeHeight: nodeHeight,
375
+ portalAction: portalActions && 'source' === handle.type
376
+ }, handle.id);
377
+ })
169
378
  ]
170
379
  });
171
380
  };
@@ -1,9 +1,10 @@
1
1
  import { Position } from '../../xyflow/react.ts';
2
2
  import type { HandleConfigurationSpecificPosition } from '../../schema/node-definition/handle';
3
+ import { type HandleType } from './HandleNotch';
3
4
  export interface HandleActionEvent {
4
5
  handleId: string;
5
6
  nodeId: string;
6
- handleType: 'artifact' | 'input' | 'output';
7
+ handleType: HandleType;
7
8
  position: Position;
8
9
  originalEvent: React.MouseEvent;
9
10
  }
@@ -12,7 +13,8 @@ type ButtonHandleProps = {
12
13
  nodeId: string;
13
14
  type: 'source' | 'target';
14
15
  position: Position;
15
- handleType: 'artifact' | 'input' | 'output';
16
+ connectionPosition?: Position;
17
+ handleType: HandleType;
16
18
  label?: string;
17
19
  labelIcon?: React.ReactNode;
18
20
  labelBackgroundColor?: string;
@@ -26,12 +28,13 @@ type ButtonHandleProps = {
26
28
  customPositionAndOffsets?: HandleConfigurationSpecificPosition;
27
29
  nodeWidth?: number;
28
30
  nodeHeight?: number;
31
+ portalAction?: boolean;
29
32
  };
30
- export declare const ButtonHandle: import("react").MemoExoticComponent<({ id, nodeId, type, position, handleType, label, labelIcon, labelBackgroundColor, visible, showButton, selected, index, total, onAction, showNotches, customPositionAndOffsets, nodeWidth, nodeHeight, }: ButtonHandleProps) => import("react/jsx-runtime").JSX.Element>;
33
+ export declare const ButtonHandle: import("react").MemoExoticComponent<({ id, nodeId, type, position, connectionPosition, handleType, label, labelIcon, labelBackgroundColor, visible, showButton, selected, index, total, onAction, showNotches, customPositionAndOffsets, nodeWidth, nodeHeight, portalAction, }: ButtonHandleProps) => import("react/jsx-runtime").JSX.Element>;
31
34
  export interface ButtonHandleConfig {
32
35
  id: string;
33
36
  type: 'source' | 'target';
34
- handleType: 'artifact' | 'input' | 'output';
37
+ handleType: HandleType;
35
38
  label?: string;
36
39
  labelIcon?: React.ReactNode;
37
40
  showButton?: boolean;
@@ -41,10 +44,11 @@ export interface ButtonHandleConfig {
41
44
  onAction?: (event: HandleActionEvent) => void;
42
45
  customPositionAndOffsets?: HandleConfigurationSpecificPosition;
43
46
  }
44
- export declare const ButtonHandles: import("react").MemoExoticComponent<({ nodeId, handles, position, selected, hovered, visible, showAddButton, showNotches, customPositionAndOffsets, shouldShowAddButtonFn, nodeWidth, nodeHeight, }: {
47
+ export declare const ButtonHandles: import("react").MemoExoticComponent<({ nodeId, handles, position, connectionPosition, selected, hovered, visible, showAddButton, showNotches, customPositionAndOffsets, shouldShowAddButtonFn, nodeWidth, nodeHeight, portalActions, }: {
45
48
  nodeId: string;
46
49
  handles: ButtonHandleConfig[];
47
50
  position: Position;
51
+ connectionPosition?: Position;
48
52
  selected?: boolean;
49
53
  hovered?: boolean;
50
54
  visible?: boolean;
@@ -53,6 +57,7 @@ export declare const ButtonHandles: import("react").MemoExoticComponent<({ nodeI
53
57
  customPositionAndOffsets?: HandleConfigurationSpecificPosition;
54
58
  nodeWidth?: number;
55
59
  nodeHeight?: number;
60
+ portalActions?: boolean;
56
61
  shouldShowAddButtonFn?: ({ showAddButton, selected, hovered, }: {
57
62
  showAddButton: boolean;
58
63
  selected: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonHandle.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ButtonHandle/ButtonHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAE5E,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAS/F,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC;CACjC;AAED,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAiJF,eAAO,MAAM,YAAY,iPA5HtB,iBAAiB,6CA4H8B,CAAC;AAEnD,MAAM,WAAW,kBAAkB;IAEjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,UAAU,EAAE,UAAU,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;CAChE;AAuFD,eAAO,MAAM,aAAa,uMAvEvB;IACD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAUpB,qBAAqB,CAAC,EAAE,CAAC,EACvB,aAAa,EACb,QAAQ,EACR,OAAO,GACR,EAAE;QACD,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,KAAK,OAAO,CAAC;CACf,6CAyCmD,CAAC"}
1
+ {"version":3,"file":"ButtonHandle.d.ts","sourceRoot":"","sources":["../../../../src/canvas/components/ButtonHandle/ButtonHandle.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,QAAQ,EAAE,MAAM,0CAA0C,CAAC;AAG5E,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,qCAAqC,CAAC;AAW/F,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAG7D,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,QAAQ,CAAC;IACnB,aAAa,EAAE,KAAK,CAAC,UAAU,CAAC;CACjC;AAUD,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IAGnB,kBAAkB,CAAC,EAAE,QAAQ,CAAC;IAC9B,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,CAAC;AAiOF,eAAO,MAAM,YAAY,mRA1MtB,iBAAiB,6CA0M8B,CAAC;AAqLnD,MAAM,WAAW,kBAAkB;IAEjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,UAAU,EAAE,UAAU,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;CAChE;AAqGD,eAAO,MAAM,aAAa,0OAnFvB;IACD,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,QAAQ,EAAE,QAAQ,CAAC;IACnB,kBAAkB,CAAC,EAAE,QAAQ,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,wBAAwB,CAAC,EAAE,mCAAmC,CAAC;IAC/D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,aAAa,CAAC,EAAE,OAAO,CAAC;IAUxB,qBAAqB,CAAC,EAAE,CAAC,EACvB,aAAa,EACb,QAAQ,EACR,OAAO,GACR,EAAE;QACD,aAAa,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,OAAO,CAAC;QAClB,OAAO,EAAE,OAAO,CAAC;KAClB,KAAK,OAAO,CAAC;CACf,6CAkDmD,CAAC"}