@inkeep/agents-manage-ui 0.18.1 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +224 -224
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +7 -7
  4. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +5 -5
  5. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
  6. package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +2 -2
  7. package/.next/standalone/agents-manage-ui/.next/routes-manifest.json +28 -28
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -0
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/page.js.nft.json +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -0
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -0
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs → agents}/new/page.js.nft.json +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -0
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -0
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -0
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +2 -2
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +3 -3
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  76. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +9 -9
  79. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route.js +1 -1
  82. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  84. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  85. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +7 -7
  86. package/.next/standalone/agents-manage-ui/.next/server/chunks/2067.js +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/chunks/2083.js +1 -1
  88. package/.next/standalone/agents-manage-ui/.next/server/chunks/3509.js +1 -0
  89. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/chunks/4087.js +1 -0
  91. package/.next/standalone/agents-manage-ui/.next/server/chunks/4154.js +1 -0
  92. package/.next/standalone/agents-manage-ui/.next/server/chunks/6641.js +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2219.js → 6836.js} +1 -1
  94. package/.next/standalone/agents-manage-ui/.next/server/chunks/7457.js +2 -2
  95. package/.next/standalone/agents-manage-ui/.next/server/chunks/7504.js +184 -0
  96. package/.next/standalone/agents-manage-ui/.next/server/chunks/7711.js +5 -5
  97. package/.next/standalone/agents-manage-ui/.next/server/chunks/8498.js +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/chunks/8961.js +1 -0
  99. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  101. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  103. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/static/chunks/20874-08310a7ec3b20498.js +1 -0
  106. package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-24cf5c441db07bb8.js +1 -0
  107. package/.next/standalone/agents-manage-ui/.next/static/chunks/{34281.5977928acacdf41c.js → 34281.1bf5026a1cfe5341.js} +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/static/chunks/{37213-a3d5fa67db657652.js → 37213-4ddda8db7bed5851.js} +1 -1
  109. package/.next/standalone/agents-manage-ui/.next/static/chunks/49858-7df5d3e19fc00977.js +1 -0
  110. package/.next/standalone/agents-manage-ui/.next/static/chunks/71558-452532a4a91f1f8c.js +1 -0
  111. package/.next/standalone/agents-manage-ui/.next/static/chunks/7190-756a652b28a2506a.js +1 -0
  112. package/.next/standalone/agents-manage-ui/.next/static/chunks/78225-048fec2920ee12a7.js +1 -0
  113. package/.next/standalone/agents-manage-ui/.next/static/chunks/92775-d3dc9c35a7a9d12c.js +1 -0
  114. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/error-8ae206d1430882ab.js +1 -0
  115. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{graphs/[graphId]/loading-2e73ab0d984262a3.js → agents/[agentId]/loading-721e10fd249e4b77.js} +1 -1
  116. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-6698176eeabcc156.js +1 -0
  117. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/error-aa8e3feab2fca22e.js +1 -0
  118. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/loading-f63f184c7d568cae.js +1 -0
  119. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-1d103e4d651d7a06.js +1 -0
  120. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-84c3978faa593514.js +1 -0
  121. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-046ce91f9f4b58d1.js +1 -0
  122. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-79453364e7ee1e6e.js +1 -0
  123. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-f63f184c7d568cae.js +1 -0
  124. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-79453364e7ee1e6e.js +1 -0
  125. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-0e4e8d994b8c515b.js → page-8efa71d1665595b1.js} +1 -1
  126. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-567703a1de3eb0cb.js → page-25eac5b6eff6c429.js} +1 -1
  127. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-f63f184c7d568cae.js +1 -0
  128. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-567703a1de3eb0cb.js → page-25eac5b6eff6c429.js} +1 -1
  129. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-ea168ca8954c0f11.js +1 -0
  130. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/{page-425506e0e283e21c.js → page-73c6f90aee5d7131.js} +1 -1
  131. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-9af967edcbcc262c.js +1 -0
  132. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-f63f184c7d568cae.js +1 -0
  133. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-39bb464377ffce09.js +1 -0
  134. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-c01750f081055384.js → page-5e91f67243336c39.js} +1 -1
  135. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{layout-2e73ab0d984262a3.js → layout-721e10fd249e4b77.js} +1 -1
  136. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-ec8f69f612ee910a.js → page-9e93a22f4ce731fc.js} +1 -1
  137. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/{page-465374bbcf614837.js → page-cd80af85c7c3f0d9.js} +1 -1
  138. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{page-3b35ec1ae9cfc841.js → page-e58d76ff092f7998.js} +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-bbc69ed5bac228d6.js → page-e729f6c22e2efd93.js} +1 -1
  140. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-19d7430a79f63bd4.js → page-00cee6f3d629b552.js} +1 -1
  141. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-48512f59a08d0878.js +1 -0
  142. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-fbeca2b1ed7d223a.js +1 -0
  143. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f63f184c7d568cae.js +1 -0
  144. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{page-243899de5c62b46e.js → page-99398afc3638246f.js} +1 -1
  145. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-af34e7ee2aaa93dd.js +1 -0
  146. package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-bae1a6a598e24abf.js → webpack-f66da7226d8e2dc1.js} +1 -1
  147. package/.next/standalone/agents-manage-ui/package.json +2 -1
  148. package/.next/standalone/package.json +1 -0
  149. package/.next/standalone/packages/agents-core/package.json +3 -1
  150. package/README.md +2 -2
  151. package/package.json +5 -4
  152. package/src/app/[tenantId]/page.tsx +1 -1
  153. package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/error.tsx +3 -3
  154. package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/loading.tsx +1 -1
  155. package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/page.tsx +14 -14
  156. package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/error.tsx +1 -1
  157. package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/loading.tsx +3 -3
  158. package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/new/page.tsx +6 -6
  159. package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +50 -0
  160. package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +12 -12
  161. package/src/app/[tenantId]/projects/[projectId]/page.tsx +1 -1
  162. package/src/app/api/signoz/conversations/[conversationId]/route.ts +32 -32
  163. package/src/app/api/signoz/route.ts +1 -1
  164. package/src/app/layout.tsx +1 -1
  165. package/src/app/page.tsx +1 -1
  166. package/src/components/{graph/graph.tsx → agent/agent.tsx} +70 -70
  167. package/src/components/{graph/configuration/graph-types.tsx → agent/configuration/agent-types.tsx} +7 -7
  168. package/src/components/agent/configuration/model-options.tsx +74 -0
  169. package/src/components/{graph → agent}/configuration/node-types.tsx +12 -12
  170. package/src/components/{graph/error-display/graph-error-summary.tsx → agent/error-display/agent-error-summary.tsx} +21 -21
  171. package/src/components/{graph → agent}/error-display/error-indicator.tsx +2 -2
  172. package/src/components/{graph → agent}/node-library/node-library.tsx +1 -1
  173. package/src/components/{graph → agent}/nodes/external-agent-node.tsx +3 -3
  174. package/src/components/{graph → agent}/nodes/function-tool-node.tsx +2 -2
  175. package/src/components/{graph → agent}/nodes/mcp-node.tsx +2 -2
  176. package/src/components/{graph/nodes/agent-node.tsx → agent/nodes/sub-agent-node.tsx} +8 -8
  177. package/src/components/{graph → agent}/playground/chat-widget.tsx +8 -5
  178. package/src/components/{graph → agent}/playground/playground.tsx +3 -3
  179. package/src/components/{graph → agent}/sidepane/edges/edge-editor.tsx +2 -2
  180. package/src/components/{graph → agent}/sidepane/metadata/context-config.tsx +3 -3
  181. package/src/components/{graph → agent}/sidepane/metadata/metadata-editor.tsx +34 -34
  182. package/src/components/{graph → agent}/sidepane/nodes/external-agent-node-editor.tsx +4 -4
  183. package/src/components/{graph → agent}/sidepane/nodes/mcp-node-editor.tsx +4 -4
  184. package/src/components/{graph → agent}/sidepane/nodes/model-section.tsx +11 -11
  185. package/src/components/{graph → agent}/sidepane/nodes/model-selector.tsx +1 -1
  186. package/src/components/{graph/sidepane/nodes/agent-node-editor.tsx → agent/sidepane/nodes/sub-agent-node-editor.tsx} +9 -9
  187. package/src/components/{graph → agent}/sidepane/sidepane.tsx +10 -10
  188. package/src/components/{graph → agent}/toolbar/toolbar.tsx +5 -5
  189. package/src/components/{graphs/graph-item-menu.tsx → agents/agent-item-menu.tsx} +6 -6
  190. package/src/components/{graphs/graph-item.tsx → agents/agent-item.tsx} +7 -7
  191. package/src/components/agents/agents-list.tsx +20 -0
  192. package/src/components/{graphs/delete-graph-confirmation.tsx → agents/delete-agent-confirmation.tsx} +11 -11
  193. package/src/components/{graphs/new-graph-item.tsx → agents/new-agent-item.tsx} +4 -4
  194. package/src/components/api-keys/api-keys-table.tsx +4 -4
  195. package/src/components/api-keys/form/api-key-form.tsx +8 -8
  196. package/src/components/api-keys/form/form-configuration.tsx +1 -1
  197. package/src/components/api-keys/form/validation.ts +1 -1
  198. package/src/components/api-keys/new-api-key-dialog.tsx +7 -7
  199. package/src/components/form/prompt-editor.tsx +2 -2
  200. package/src/components/icons/empty-state/{graphs.tsx → agents.tsx} +2 -2
  201. package/src/components/projects/form/form-configuration.ts +1 -1
  202. package/src/components/projects/form/model-inheritance-info.tsx +1 -1
  203. package/src/components/projects/form/project-form.tsx +2 -2
  204. package/src/components/projects/form/project-models-section.tsx +2 -2
  205. package/src/components/projects/form/project-stopwhen-section.tsx +4 -4
  206. package/src/components/projects/new-project-dialog.tsx +1 -1
  207. package/src/components/sidebar-nav/sidebar-nav.tsx +2 -2
  208. package/src/components/traces/ai-calls-breakdown.tsx +36 -36
  209. package/src/components/traces/conversation-detail.tsx +3 -3
  210. package/src/components/traces/conversation-stats/conversation-list-item.tsx +3 -3
  211. package/src/components/traces/filters/{graph-filter.tsx → agent-filter.tsx} +18 -18
  212. package/src/components/traces/filters/span-filters.tsx +5 -5
  213. package/src/components/traces/timeline/render-panel-content.tsx +15 -23
  214. package/src/components/traces/timeline/span-attributes.tsx +1 -1
  215. package/src/components/traces/timeline/timeline-wrapper.tsx +1 -1
  216. package/src/components/traces/timeline/types.ts +3 -3
  217. package/src/components/traces/traces-overview.tsx +31 -31
  218. package/src/components/ui/inheritance-indicator.tsx +12 -13
  219. package/src/constants/page-descriptions.tsx +4 -4
  220. package/src/features/{graph → agent}/commands/commands.ts +18 -18
  221. package/src/features/{graph → agent}/domain/__tests__/roundtrip.test.ts +17 -17
  222. package/src/features/{graph → agent}/domain/__tests__/serialize.test.ts +29 -29
  223. package/src/features/agent/domain/agent-initializer-helpers.ts +61 -0
  224. package/src/features/{graph → agent}/domain/deserialize.ts +7 -7
  225. package/src/features/{graph → agent}/domain/index.ts +1 -1
  226. package/src/features/{graph → agent}/domain/serialize.ts +23 -23
  227. package/src/features/{graph/state/use-graph-store.ts → agent/state/use-agent-store.ts} +25 -25
  228. package/src/features/{graph/ui/use-graph-shortcuts.ts → agent/ui/use-agent-shortcuts.ts} +3 -3
  229. package/src/hooks/{use-graph-errors.ts → use-agent-errors.ts} +5 -5
  230. package/src/hooks/use-ai-calls-query-state.ts +5 -5
  231. package/src/hooks/use-auto-prefill-id-zustand.ts +1 -1
  232. package/src/hooks/use-node-editor.ts +3 -3
  233. package/src/hooks/use-side-pane.ts +2 -2
  234. package/src/hooks/use-traces.ts +6 -6
  235. package/src/lib/README.md +19 -19
  236. package/src/lib/actions/{graph-full.ts → agent-full.ts} +51 -51
  237. package/src/lib/api/agent-full-client.ts +109 -0
  238. package/src/lib/api/signoz-stats.ts +88 -88
  239. package/src/lib/events.ts +1 -1
  240. package/src/lib/index.ts +23 -23
  241. package/src/lib/services/save-agent.ts +14 -0
  242. package/src/lib/types/{graph-full.ts → agent-full.ts} +19 -19
  243. package/src/lib/utils/{graph-error-parser.ts → agent-error-parser.ts} +42 -43
  244. package/src/lib/utils/orphaned-tools-detector.ts +5 -5
  245. package/src/lib/utils/project-redirect.ts +1 -1
  246. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js +0 -2
  247. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page_client-reference-manifest.js +0 -1
  248. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js +0 -2
  249. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page_client-reference-manifest.js +0 -1
  250. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js +0 -2
  251. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page_client-reference-manifest.js +0 -1
  252. package/.next/standalone/agents-manage-ui/.next/server/chunks/2539.js +0 -184
  253. package/.next/standalone/agents-manage-ui/.next/server/chunks/4045.js +0 -1
  254. package/.next/standalone/agents-manage-ui/.next/server/chunks/6709.js +0 -1
  255. package/.next/standalone/agents-manage-ui/.next/server/chunks/804.js +0 -1
  256. package/.next/standalone/agents-manage-ui/.next/server/chunks/9147.js +0 -1
  257. package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-e46204ab16d88ea6.js +0 -1
  258. package/.next/standalone/agents-manage-ui/.next/static/chunks/26133-a58a4ae4fea4e563.js +0 -1
  259. package/.next/standalone/agents-manage-ui/.next/static/chunks/48130-d79da4489e6e5400.js +0 -1
  260. package/.next/standalone/agents-manage-ui/.next/static/chunks/49858-4c276f889c13606c.js +0 -1
  261. package/.next/standalone/agents-manage-ui/.next/static/chunks/57167-a86a3c94e5831a59.js +0 -1
  262. package/.next/standalone/agents-manage-ui/.next/static/chunks/71558-d1be134327bfb796.js +0 -1
  263. package/.next/standalone/agents-manage-ui/.next/static/chunks/92775-723c692effee6fcb.js +0 -1
  264. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-0048d6b4b19cb869.js +0 -1
  265. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-ae190df12aef66e0.js +0 -1
  266. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-f262904f64bb3b83.js +0 -1
  267. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-ae190df12aef66e0.js +0 -1
  268. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-f262904f64bb3b83.js +0 -1
  269. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-e1ecdf3a54ce7ea0.js +0 -1
  270. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-f9d4b7f9c344be4d.js +0 -1
  271. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-f262904f64bb3b83.js +0 -1
  272. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-5eae92411a9101e8.js +0 -1
  273. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/error-931affb0037bb07e.js +0 -1
  274. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page-b28ea53e47e090d9.js +0 -1
  275. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/error-a95deb3a2467dd39.js +0 -1
  276. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-f262904f64bb3b83.js +0 -1
  277. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/new/page-beef8d7a50586359.js +0 -1
  278. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-c55467557da2a19f.js +0 -1
  279. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-7586936cc0f5f2da.js +0 -1
  280. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-fc23844ac69cc3e3.js +0 -1
  281. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f262904f64bb3b83.js +0 -1
  282. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-3aa87b43e49ec0fe.js +0 -1
  283. package/src/app/[tenantId]/projects/[projectId]/graphs/page.tsx +0 -50
  284. package/src/components/graph/configuration/model-options.tsx +0 -68
  285. package/src/components/graphs/graph-list.tsx +0 -20
  286. package/src/features/graph/domain/graph-initializer-helpers.ts +0 -61
  287. package/src/lib/api/graph-full-client.ts +0 -112
  288. package/src/lib/services/save-graph.ts +0 -14
  289. /package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs → agents}/page.js.nft.json +0 -0
  290. /package/.next/standalone/agents-manage-ui/.next/static/{RDDnfeMsvfce5j5a7L5_h → r9-qxih7lU6hx6EFo0V8E}/_buildManifest.js +0 -0
  291. /package/.next/standalone/agents-manage-ui/.next/static/{RDDnfeMsvfce5j5a7L5_h → r9-qxih7lU6hx6EFo0V8E}/_ssgManifest.js +0 -0
  292. /package/src/components/{graph → agent}/configuration/edge-types.tsx +0 -0
  293. /package/src/components/{graph → agent}/edges/agent-to-agent-edge.tsx +0 -0
  294. /package/src/components/{graph → agent}/edges/default-edge.tsx +0 -0
  295. /package/src/components/{graph → agent}/edges/self-loop-edge.tsx +0 -0
  296. /package/src/components/{graph → agent}/markers/default-marker.tsx +0 -0
  297. /package/src/components/{graph → agent}/markers/selected-marker.tsx +0 -0
  298. /package/src/components/{graph → agent}/node-library/node-item.tsx +0 -0
  299. /package/src/components/{graph → agent}/nodes/base-node.tsx +0 -0
  300. /package/src/components/{graph → agent}/nodes/handle.tsx +0 -0
  301. /package/src/components/{graph → agent}/nodes/mcp-placeholder-node.tsx +0 -0
  302. /package/src/components/{graph → agent}/nodes/node-tab.tsx +0 -0
  303. /package/src/components/{graph → agent}/playground/custom-headers-dialog.tsx +0 -0
  304. /package/src/components/{graph → agent}/playground/ikp-message.tsx +0 -0
  305. /package/src/components/{graph → agent}/sidepane/collapsible-settings.tsx +0 -0
  306. /package/src/components/{graph → agent}/sidepane/heading.tsx +0 -0
  307. /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-dropdown.tsx +0 -0
  308. /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-header.tsx +0 -0
  309. /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-selector.tsx +0 -0
  310. /package/src/components/{graph → agent}/sidepane/nodes/component-selector/selected-components.tsx +0 -0
  311. /package/src/components/{graph → agent}/sidepane/nodes/credential-selector.tsx +0 -0
  312. /package/src/components/{graph → agent}/sidepane/nodes/empty-state.tsx +0 -0
  313. /package/src/components/{graph → agent}/sidepane/nodes/expandable-text-area.tsx +0 -0
  314. /package/src/components/{graph → agent}/sidepane/nodes/form-fields.tsx +0 -0
  315. /package/src/components/{graph → agent}/sidepane/nodes/function-tool-node-editor.tsx +0 -0
  316. /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/loading.tsx +0 -0
  317. /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/mcp-selector.tsx +0 -0
  318. /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/mcp-server-item.tsx +0 -0
  319. /package/src/components/{graph → agent}/sidepane/section.tsx +0 -0
  320. /package/src/features/{graph → agent}/commands/command-manager.ts +0 -0
@@ -1,184 +0,0 @@
1
- exports.id=2539,exports.ids=[2539],exports.modules={88:(a,b,c)=>{"use strict";c.d(b,{T:()=>d});let d=a=>{let[b,c]=a.name.split("::");return{type:b,name:c}}},1980:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>j});var d=c(72669),e=c(17932),f=c(96737),g=c(39885),h=c(3687),i=c(43461);function j(){return(0,d.jsx)(e.H,{breadcrumbs:[{label:"Graphs"}],children:(0,d.jsxs)(f.D,{children:[(0,d.jsx)(g.zY,{title:"Graphs",description:i.FZ}),(0,d.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-3 md:gap-4",children:Array.from({length:6}).map((a,b)=>(0,d.jsx)(h.E,{className:"h-36 w-full rounded-lg"},`loading-skeleton-${b}`))})]})})}},4917:(a,b,c)=>{"use strict";c.d(b,{B:()=>h,V:()=>i});var d=c(1274);c(2082);var e=c(70839),f=c(81097),g=c(67175);async function h(a,b,c){try{return await (0,f.h9)(a,b,c),(0,e.revalidatePath)(`/${a}/projects/${b}/credentials`),(0,e.revalidatePath)(`/${a}/projects/${b}/credentials/${c}`),{success:!0}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function i(a,b){try{let c=await (0,f.$Y)(a,b);return{success:!0,data:c}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,c(95454).D)([h,i]),(0,d.A)(h,"70f318c44d3950e726e0a56fa9c52c43669f9d35fc",null),(0,d.A)(i,"6055f4c37357ed1d5d98daa696ed61da8a6470af89",null)},14053:(a,b,c)=>{"use strict";c.d(b,{$:()=>h,F:()=>g});var d=c(59111),e=c(14414),f=c(42723);function g({className:a,children:b,...c}){return(0,d.jsxs)(e.bL,{"data-slot":"scroll-area",className:(0,f.cn)("relative",a),...c,children:[(0,d.jsx)(e.LM,{"data-slot":"scroll-area-viewport",className:"focus-visible:ring-ring/50 size-full rounded-[inherit] transition-[color,box-shadow] outline-none focus-visible:ring-[3px] focus-visible:outline-1",children:b}),(0,d.jsx)(h,{}),(0,d.jsx)(e.OK,{})]})}function h({className:a,orientation:b="vertical",...c}){return(0,d.jsx)(e.VM,{"data-slot":"scroll-area-scrollbar",orientation:b,className:(0,f.cn)("flex touch-none p-px transition-colors select-none","vertical"===b&&"h-full w-2.5 border-l border-l-transparent","horizontal"===b&&"h-2.5 flex-col border-t border-t-transparent",a),...c,children:(0,d.jsx)(e.lr,{"data-slot":"scroll-area-thumb",className:"bg-border relative flex-1 rounded-full"})})}},14417:(a,b,c)=>{Promise.resolve().then(c.bind(c,60266)),Promise.resolve().then(c.bind(c,24003)),Promise.resolve().then(c.bind(c,19603)),Promise.resolve().then(c.t.bind(c,61678,23))},24145:(a,b,c)=>{Promise.resolve().then(c.bind(c,97010)),Promise.resolve().then(c.bind(c,97633)),Promise.resolve().then(c.bind(c,80248)),Promise.resolve().then(c.t.bind(c,93520,23))},24703:(a,b,c)=>{"use strict";c.d(b,{S:()=>h});var d=c(59111),e=c(57129),f=c(39108),g=c(42723);function h({className:a,...b}){return(0,d.jsx)(e.bL,{"data-slot":"checkbox",className:(0,g.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(e.C1,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:(0,d.jsx)(f.A,{className:"size-3.5"})})})}},30365:(a,b,c)=>{"use strict";c.d(b,{r:()=>g});var d=c(59111),e=c(71682),f=c(14053);function g({code:a}){return(0,d.jsx)("div",{className:"flex items-center gap-2 relative bg-muted/50 dark:bg-muted/30 rounded-md border",children:(0,d.jsxs)(f.F,{dir:"ltr",className:"w-full",children:[(0,d.jsx)("pre",{className:"text-sm text-foreground/90 px-3 pr-8 py-2 font-mono",children:a}),(0,d.jsx)(e.i,{className:"absolute right-1 top-1/2 -translate-y-1/2",textToCopy:a}),(0,d.jsx)(f.$,{orientation:"horizontal"})]})})}},38224:(a,b,c)=>{"use strict";c.d(b,{Wy:()=>k,XL:()=>i,YU:()=>j,iu:()=>g,xl:()=>h});var d=c(1274);c(2082);var e=c(53842),f=c(41979);async function g(a,b,c=1,d=50,h){(0,f.M2)(a),(0,f.nt)(b);let i=new URLSearchParams({page:c.toString(),limit:d.toString()});return h&&i.append("status",h),(await (0,e.J)(`tenants/${a}/projects/${b}/tools?${i}`)).data.filter(a=>a.config?.type==="mcp")}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/tools/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/tools`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/tools/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/tools/${c}`,{method:"DELETE"})}(0,c(95454).D)([g,h,i,j,k]),(0,d.A)(g,"7c5c949e7cdfb8e3813198083db7d723116124588c",null),(0,d.A)(h,"70ebac6ff08efa95e1febf05f3e5dfff87982b5a6b",null),(0,d.A)(i,"706690beb7020c260048ded8b04235831823e71719",null),(0,d.A)(j,"780cb4d60c873d4a18393b33162e593f4cfb788c54",null),(0,d.A)(k,"70a142f4771dc014b1a4e74cf3809e0692fe2cb298",null)},38416:(a,b,c)=>{"use strict";c.d(b,{u:()=>j});var d=c(59111),e=c(75116),f=c(24146),g=c(14450),h=c(42723),i=c(73913);function j({imageUrl:a,name:b,provider:c,size:j=24,className:k}){let[l,m]=(0,g.useState)(!1),[n,o]=(0,g.useState)(!0);return!a||l?c?(0,d.jsx)(i.r,{provider:c,size:j,className:k}):(0,d.jsx)(e.A,{className:(0,h.cn)("text-muted-foreground",k),style:{width:j,height:j}}):a.startsWith("data:image/")?(0,d.jsx)(f.default,{src:a,alt:b,width:j,height:j,className:(0,h.cn)("object-contain",k),onError:()=>m(!0)}):(0,d.jsxs)("div",{className:(0,h.cn)("relative flex items-center justify-center",k),style:{width:j,height:j},children:[n&&c&&(0,d.jsx)(i.r,{provider:c,size:j,className:"absolute inset-0"}),(0,d.jsx)(f.default,{src:a,alt:b,width:j,height:j,className:(0,h.cn)("object-contain transition-opacity duration-200",n?"opacity-0":"opacity-100"),onError:()=>{m(!0),o(!1)},onLoad:()=>o(!1),unoptimized:!0})]})}},39878:(a,b,c)=>{"use strict";c.d(b,{$:()=>i});var d=c(59111),e=c(2856),f=c(80974),g=c(42723),h=c(67466);function i(a){return(0,d.jsxs)("div",{"data-slot":"json-editor",className:`space-y-3 relative overflow-hidden p-1 ${a.className||""}`,children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 absolute top-3 right-3 z-10",children:[!a.value?.trim()&&(0,d.jsx)(e.$,{type:"button",onClick:()=>{let b=(0,f.Qj)();a.onChange(b)},variant:"outline",size:"sm",className:"h-6 px-2 text-xs rounded-sm",children:"Template"}),(0,d.jsx)(e.$,{type:"button",onClick:()=>{let b=a.value;if(b?.trim()){let c=(0,g.IB)(b);a.onChange(c)}},variant:"outline",size:"sm",className:"h-6 px-2 text-xs rounded-sm",disabled:!a.value?.trim(),children:"Format"})]}),(0,d.jsx)(h.i,{value:a.value||"",onChange:a.onChange,placeholder:a.placeholder,disabled:a.disabled,readOnly:a.readOnly})]})}},40780:(a,b,c)=>{"use strict";c.d(b,{EN:()=>i,Z3:()=>g,df:()=>j,nD:()=>k,sO:()=>h});var d=c(1274);c(2082);var e=c(53842),f=c(41979);async function g(a,b){(0,f.M2)(a),(0,f.nt)(b);let c=await (0,e.J)(`tenants/${a}/projects/${b}/data-components`);return{...c,data:c.data.map(a=>({...a,props:a.props||{}}))}}async function h(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/data-components/${c}`);return{...d.data,props:d.data.props||{}}}async function i(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/data-components`,{method:"POST",body:JSON.stringify(c)});return{...d.data,props:d.data.props||{}}}async function j(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/data-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)});return{...d.data,props:d.data.props||{}}}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/data-components/${c}`,{method:"DELETE"})}(0,c(95454).D)([g,h,i,j,k]),(0,d.A)(g,"6002b2e854b2e141a7291bea978a9e396b7353c50e",null),(0,d.A)(h,"70c1f46a837a2de3012947d54477dddad8a9f87ca3",null),(0,d.A)(i,"70f5c0c2beb9f17fcb49fd154c7d642afdcd2d4421",null),(0,d.A)(j,"7065561474b25b6edbb7a4645ae7bdbffd4915dc04",null),(0,d.A)(k,"702cef25963717473385e3540836c75275f845709d",null)},52059:(a,b,c)=>{"use strict";c.d(b,{Q:()=>h,o:()=>i});var d=c(1274);c(2082);var e=c(70839),f=c(38224),g=c(67175);async function h(a,b){try{let c=await (0,f.iu)(a,b);return{success:!0,data:c}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function i(a,b,c){try{return await (0,f.Wy)(a,b,c),(0,e.revalidatePath)(`/${a}/projects/${b}/mcp-servers`),(0,e.revalidatePath)(`/${a}/projects/${b}/mcp-servers/${c}`),{success:!0}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,c(95454).D)([h,i]),(0,d.A)(h,"6059ada6eaf7f7bd7d354d0aa2010056f2ca737c20",null),(0,d.A)(i,"70a134bd610ba7ea82072529afb03d8e19813c105f",null)},54998:(a,b,c)=>{"use strict";function d({availableTools:a,activeTools:b}){if(a)return b?a.filter(a=>b.includes(a.name)):a}c.d(b,{O:()=>d})},58023:(a,b,c)=>{Promise.resolve().then(c.bind(c,64418))},60266:(a,b,c)=>{"use strict";c.d(b,{Graph:()=>cs});var d=c(59111),e=c(36761),f=c(91669),g=c(6461),h=c(485),i=c(14450),j=c(68156);class k{execute(a){a.execute(),this.txBuffer?this.txBuffer.push(a):(this.undoStack.push(a),this.redoStack=[])}undo(){let a=this.undoStack.pop();a&&(a.undo(),this.redoStack.push(a))}redo(){let a=this.redoStack.pop();a&&(a.execute(),this.undoStack.push(a))}beginTransaction(){this.txBuffer||(this.txBuffer=[])}commitTransaction(a="Batch"){if(!this.txBuffer||0===this.txBuffer.length){this.txBuffer=null;return}let b=this.txBuffer.slice();this.txBuffer=null,this.undoStack.push({name:a,execute(){for(let a of b)a.execute()},undo(){for(let a of[...b].reverse())a.undo()}}),this.redoStack=[]}cancelTransaction(){if(this.txBuffer){for(let a of[...this.txBuffer].reverse())a.undo();this.txBuffer=null}}constructor(){this.undoStack=[],this.redoStack=[],this.txBuffer=null}}let l=new k;var m=c(20266),n=c(44374);function o({id:a,sourceX:b,sourceY:c,targetX:g,targetY:h,sourcePosition:i,targetPosition:j,label:k,selected:l,markerEnd:m}){let[n]=(0,f.Fp)({sourceX:b,sourceY:c,sourcePosition:i,targetX:g,targetY:h,targetPosition:j});return(0,d.jsx)(e.tE,{id:a,path:n,label:k,markerEnd:m,style:{strokeWidth:2},className:`${l?"!stroke-primary":"!stroke-border dark:!stroke-muted-foreground"}`})}var p=c(27218),q=function(a){return a.A2A="a2a",a.A2AExternal="a2a-external",a.Default="default",a.SelfLoop="self-loop",a}({});let r={a2a:function({sourceX:a,sourceY:b,targetX:c,targetY:g,sourcePosition:h,targetPosition:i,data:j,selected:k}){let l=j?.relationships||{transferTargetToSource:!1,transferSourceToTarget:!1,delegateTargetToSource:!1,delegateSourceToTarget:!1},o=l.delegateTargetToSource||l.delegateSourceToTarget,p=l.transferTargetToSource||l.transferSourceToTarget,q=d=>{let e=c-a,j=g-b,k=Math.sqrt(e*e+j*j),l=-(j/k)*d,m=e/k*d;return(0,f.Fp)({sourceX:a+l,sourceY:b+m,targetX:c+l,targetY:g+m,targetPosition:i,sourcePosition:h})},[r,s,t]=(0,f.Fp)({sourceX:a,sourceY:b,targetX:c,targetY:g,targetPosition:i,sourcePosition:h}),u=null,v=l.transferSourceToTarget||l.delegateSourceToTarget,w=l.transferTargetToSource||l.delegateTargetToSource;v&&w?u=m.A:p?u=n.A:o&&(u=n.A);let x=a=>a?"url(#marker-selected)":"url(#marker-default)",y=p&&l.transferTargetToSource?x(!!k):void 0,z=p&&l.transferSourceToTarget?x(!!k):void 0,A=o&&l.delegateTargetToSource?x(!!k):void 0,B=o&&l.delegateSourceToTarget?x(!!k):void 0;return(0,d.jsxs)(d.Fragment,{children:[p&&(0,d.jsx)(e.tE,{className:`${k?"!stroke-primary":"!stroke-border dark:!stroke-muted-foreground"}`,path:o?q(-3)[0]:r,style:{strokeWidth:2},markerEnd:z,markerStart:y}),o&&(0,d.jsx)(e.tE,{className:`${k?"!stroke-primary":"!stroke-border dark:!stroke-muted-foreground"}`,path:p?q(3)[0]:r,style:{strokeDasharray:"5,5",strokeWidth:2},markerEnd:B,markerStart:A}),u&&(0,d.jsx)(e.rV,{children:(0,d.jsx)("div",{style:{position:"absolute",transform:`translate(-50%, -50%) translate(${s}px,${t}px)`,pointerEvents:"none"},children:(0,d.jsx)("div",{className:"w-6 h-6 bg-background border rounded-full flex items-center justify-center border-border",children:(0,d.jsx)(u,{className:"w-3 h-3 text-muted-foreground"})})})})]})},default:o,"a2a-external":o,"self-loop":function({source:a,data:b,selected:c}){let f=(0,e.Pj)(b=>b.nodes.find(b=>b.id===a));if(!f)return null;let g=b?.relationships||{transferTargetToSource:!1,transferSourceToTarget:!1,delegateTargetToSource:!1,delegateSourceToTarget:!1},h=g.delegateTargetToSource||g.delegateSourceToTarget,i=g.transferTargetToSource||g.transferSourceToTarget,j=f.position.x,k=f.position.y,l=f.width||300,m=f.height||150,n=j+l/2,o=k+m/2,q=n+l/2,r=o-10,s=n+l/2,t=o+10,u=`
2
- M ${q} ${r}
3
- C ${q+80} ${r-40},
4
- ${s+80} ${t+40},
5
- ${s} ${t}
6
- `,v=`
7
- M ${q-5} ${r}
8
- C ${q+80-5} ${r-40-5},
9
- ${s+80-5} ${t+40+5},
10
- ${s-5} ${t}
11
- `,w=a=>a?"url(#marker-selected)":"url(#marker-default)",x=i?w(!!c):void 0,y=h?w(!!c):void 0;return(0,d.jsxs)(d.Fragment,{children:[i&&(0,d.jsx)(e.tE,{className:`${c?"!stroke-primary":"!stroke-border dark:!stroke-muted-foreground"}`,path:u,style:{strokeWidth:2,fill:"none"},markerEnd:x}),h&&(0,d.jsx)(e.tE,{className:`${c?"!stroke-primary":"!stroke-border dark:!stroke-muted-foreground"}`,path:i?v:u,style:{strokeDasharray:"5,5",strokeWidth:2,fill:"none"},markerEnd:y}),(i||h)&&(0,d.jsx)(e.rV,{children:(0,d.jsx)("div",{style:{position:"absolute",transform:`translate(-50%, -50%) translate(${n+l/2+40}px,${o-40}px)`,pointerEvents:"none"},children:(0,d.jsx)("div",{className:"w-6 h-6 bg-background border rounded-full flex items-center justify-center border-border",children:(0,d.jsx)(p.A,{className:"w-3 h-3 text-muted-foreground"})})})})]})}},s={a2a:{type:"a2a",name:"Agent connection",Icon:m.A}},t=[];var u=c(65056),v=c(45065),w=c(70135),x=c(81809),y=c(10691),z=c(75116),A=c(60079),B=c(47155),C=c(42659),D=c(9042),E=c(57560),F=c(17058),G=c(12463),H=c(15614),I=c(42723);function J(a){let b=120;if(a.type===Z.Agent||a.type===Z.ExternalAgent){let c=a.data;c.description&&(b+=20),c.models?.base?.model&&(b+=30),c.dataComponents&&c.dataComponents.length>0&&(b+=60+30*Math.ceil(c.dataComponents.length/3)),c.artifactComponents&&c.artifactComponents.length>0&&(b+=60+30*Math.ceil(c.artifactComponents.length/3))}return a.type===Z.MCP&&(b=100),Math.max(b,150)}function K(a,b){let c=new H.graphlib.Graph;for(let b of(c.setGraph({rankdir:"TB",nodesep:150,ranksep:150,edgesep:80,marginx:50,marginy:50}),c.setDefaultEdgeLabel(()=>({})),a)){let a=J(b);c.setNode(b.id,{width:300,height:a})}for(let a of b)c.setEdge(a.source,a.target);return H.layout(c),a.map(a=>{let b=c.node(a.id),d=J(a);return{...a,position:{x:b.x-150,y:b.y-d/2}}})}function L(){let{errors:a,showErrors:b}=ai(a=>({errors:a.errors,showErrors:a.showErrors})),{hasErrors:c,getNodeErrors:d,getEdgeErrors:e,setErrors:f,clearErrors:g,setShowErrors:h}=ah(),j=a=>d(a).length,k=a=>e(a).length,l=(0,i.useCallback)(a=>{let b=d(a),c={};for(let a of b)c[a.field]||(c[a.field]=[]),c[a.field].push(a.message);return c},[d]),m=(0,i.useCallback)((a,b)=>b in l(a),[l]),n=(0,i.useCallback)((a,b)=>{let c=l(a);return c[b]?.[0]},[l]),o=(0,i.useCallback)(a=>{let b=d(a);return b[0]?.field},[d]);return{errors:a,showErrors:b,hasErrors:c(),getNodeErrors:d,getEdgeErrors:e,getNodeErrorCount:j,getEdgeErrorCount:k,hasNodeErrors:a=>j(a)>0,hasEdgeErrors:a=>k(a)>0,getFieldErrors:l,hasFieldError:m,getFieldErrorMessage:n,getFirstErrorField:o,setErrors:f,clearErrors:g,setShowErrors:h}}var M=c(437),N=c(37671);function O({errors:a,className:b=""}){if(0===a.length)return null;let c=(0,d.jsx)("div",{className:`backdrop-blur-sm flex items-center justify-center bg-red-100 dark:bg-red-950/50 border border-red-300 dark:border-red-700 rounded-full ${b}`,children:(0,d.jsx)(M.A,{className:"text-red-600 dark:text-red-400 w-3 h-3"})});return(0,d.jsx)(N.B,{children:(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:c}),(0,d.jsx)(N.TooltipContent,{side:"top",className:"max-w-xs [--bg-color:var(--color-red-50)] dark:[--bg-color:var(--color-red-950)] border-red-200 dark:border-red-700 text-red-800 dark:text-red-300 bg-red-50 dark:bg-red-950/90",children:(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsxs)("div",{className:"font-medium",children:["Validation Error",a.length>1?"s":""]}),a.slice(0,3).map((a,b)=>(0,d.jsxs)("div",{className:"text-xs",children:[(0,d.jsxs)("span",{className:"font-medium",children:[a.field,":"]})," ",a.message]},b)),a.length>3&&(0,d.jsxs)("div",{className:"text-xs text-red-600 dark:text-red-400",children:["...and ",a.length-3," more error",a.length-3>1?"s":""]})]})})]})})}let P=(0,i.forwardRef)(({className:a,isSelected:b,...c},e)=>(0,d.jsx)("div",{ref:e,className:(0,I.cn)("relative rounded-lg border bg-card text-card-foreground","hover:ring-2 hover:ring-gray-700/5",b&&"ring-2 ring-primary hover:ring-primary",a),...c}));P.displayName="BaseNode";let Q=(0,i.forwardRef)(({className:a,...b},c)=>(0,d.jsx)("header",{ref:c,...b,className:(0,I.cn)("mx-0 my-0 -mb-1 flex flex-row items-center justify-between gap-2 px-4 pt-4 pb-0",a)}));Q.displayName="BaseNodeHeader";let R=(0,i.forwardRef)(({className:a,...b},c)=>(0,d.jsx)("h3",{ref:c,"data-slot":"base-node-title",className:(0,I.cn)("user-select-none flex-1 font-semibold text-sm truncate",a),...b}));R.displayName="BaseNodeHeaderTitle";let S=(0,i.forwardRef)(({className:a,...b},c)=>(0,d.jsx)("div",{ref:c,"data-slot":"base-node-content",className:(0,I.cn)("flex flex-col gap-y-2 p-4 text-foreground",a),...b}));function T({className:a,...b}){return(0,d.jsx)(e.h7,{...b,className:(0,I.cn)("!h-3 !w-3 !border-2 !border-border !bg-card dark:!bg-muted !shadow-sm",a)})}function U({selected:a,children:b}){return(0,d.jsx)("div",{className:(0,I.cn)(" px-2 py-0.5 rounded-t-md flex items-center gap-2 w-fit border border-b-0 font-medium font-mono text-xs uppercase",a?"bg-primary border-primary text-white ring-2 ring-primary":"bg-muted text-muted-foreground border-border"),children:b})}S.displayName="BaseNodeContent",(0,i.forwardRef)(({className:a,...b},c)=>(0,d.jsx)("div",{ref:c,"data-slot":"base-node-footer",className:(0,I.cn)("flex flex-col items-center gap-y-2 border-t px-4 pb-4 pt-3",a),...b})).displayName="BaseNodeFooter";let V=({title:a,items:b,Icon:c})=>(0,d.jsxs)("div",{className:"flex flex-col gap-3 pt-2",children:[(0,d.jsxs)("div",{className:"flex items-center justify-start gap-2",children:[(0,d.jsx)(c,{className:"size-3 text-xs text-muted-foreground"}),(0,d.jsx)("div",{className:"text-xs uppercase font-mono text-muted-foreground",children:a})]}),(0,d.jsx)("div",{className:"flex flex-wrap gap-2",children:b?.map(a=>(0,d.jsx)(G.E,{className:"text-xs",variant:"code",children:a},a))})]});var W=c(54998),X=c(38416);function Y(a,b,c){if(void 0!==a.data.tempSelectedTools)return a.data.tempSelectedTools;let d=a.data.relationshipId;if(d)for(let a of Object.values(b)){let b=a[d];if(b)return b.toolSelection||null}return null}var Z=function(a){return a.Agent="agent",a.ExternalAgent="external-agent",a.MCP="mcp",a.MCPPlaceholder="mcp-placeholder",a.FunctionTool="function-tool",a}({});let $={agent:function(a){let{data:b,selected:c,id:e}=a,{name:g,isDefault:h,description:j,models:k}=b,l=k?.base?.model,{dataComponentLookup:m,artifactComponentLookup:n}=ai(a=>({dataComponentLookup:a.dataComponentLookup,artifactComponentLookup:a.artifactComponentLookup})),{getNodeErrors:o,hasNodeErrors:p}=L(),q=b.id||e,r=o(q),s=p(q),t=(0,i.useMemo)(()=>b?.dataComponents?.map(a=>m[a]?.name).filter(Boolean)||[],[b?.dataComponents,m]),u=(0,i.useMemo)(()=>b?.artifactComponents?.map(a=>n[a]?.name).filter(Boolean)||[],[b?.artifactComponents,n]);return(0,d.jsxs)("div",{className:"relative",children:[h?(0,d.jsx)(U,{selected:c,children:"Default"}):null,(0,d.jsxs)(P,{isSelected:c,className:`${h?"rounded-tl-none":""} ${s?"ring-2 ring-red-300 border-red-300":""}`,style:{width:300},children:[(0,d.jsxs)(Q,{className:"flex items-center justify-between gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)(x.A,{className:"size-4 text-muted-foreground"}),(0,d.jsx)(R,{children:g||"Agent"})]}),(0,d.jsx)(G.E,{variant:"primary",className:"text-xs uppercase",children:"Agent"}),s&&(0,d.jsx)(O,{errors:r,className:"absolute -top-2 -right-2 w-6 h-6"})]}),(0,d.jsxs)(S,{children:[(0,d.jsx)("div",{className:`text-sm ${j?" text-muted-foreground":"text-muted-foreground/50"}`,children:j||"No description"}),k&&l?(0,d.jsxs)(G.E,{className:"text-xs max-w-full flex-1",variant:"code",children:[l?.startsWith("openai")?(0,d.jsx)(F.I,{className:"size-3 text-xs text-muted-foreground flex-shrink-0"}):l?.startsWith("anthropic")?(0,d.jsx)(D.S,{className:"size-3 text-xs flex-shrink-0"}):l?.startsWith("google")?(0,d.jsx)(E.A,{className:"size-3 text-xs flex-shrink-0"}):null,(0,d.jsx)("div",{className:"truncate w-full",children:l||""})]}):null,t?.length>0&&(0,d.jsx)(V,{title:"Components",items:t,Icon:B.A}),u?.length>0&&(0,d.jsx)(V,{title:"Artifacts",items:u,Icon:C.A})]}),(0,d.jsx)(T,{id:ab,type:"source",position:f.yX.Top,isConnectable:!0}),(0,d.jsx)(T,{id:aa,type:"source",position:f.yX.Bottom,isConnectable:!0})]})]})},"external-agent":function(a){let{data:b,selected:c,id:e}=a,{name:g,description:h}=b,{getNodeErrors:i,hasNodeErrors:j}=L(),k=b.id||e,l=i(k),m=j(k);return(0,d.jsxs)("div",{className:"relative",children:[(0,d.jsx)(U,{selected:c,children:"External"}),(0,d.jsxs)(P,{isSelected:c,className:`rounded-tl-none ${m?"ring-2 ring-red-300 border-red-300":""}`,style:{width:300},children:[(0,d.jsxs)(Q,{className:"flex items-center justify-between gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 min-w-0",children:[(0,d.jsx)(y.A,{className:"size-4 text-muted-foreground"}),(0,d.jsx)(R,{children:g||"External agent"})]}),(0,d.jsx)(G.E,{variant:"primary",className:"text-xs uppercase",children:"Agent"}),m&&(0,d.jsx)(O,{errors:l,className:"absolute -top-2 -right-2 w-6 h-6"})]}),(0,d.jsx)(S,{children:(0,d.jsx)("div",{className:`text-sm ${h?" text-muted-foreground":"text-muted-foreground/50"}`,children:h||"No description"})}),(0,d.jsx)(T,{id:ac,type:"target",position:f.yX.Top,isConnectable:!0})]})]})},mcp:function(a){let{data:b,selected:c}=a,{toolLookup:e,agentToolConfigLookup:g,edges:h}=ai(a=>({toolLookup:a.toolLookup,agentToolConfigLookup:a.agentToolConfigLookup,edges:a.edges})),i=b.name||`Tool: ${b.toolId}`,j=b.imageUrl,k=b.provider,l=e[b.toolId],m=l?.availableTools,n=(0,W.O)({availableTools:m,activeTools:l?.config?.type==="mcp"?l.config.mcp.activeTools:void 0}),o=Y(a,g,h),p=(()=>{if(null===o){let a=(n?.slice(0,4)||[]).map(a=>a.name),b=(n?.length??0)-4,c=[...a];return b>0&&c.push(`+${b} (ALL)`),c}let a=o.length,b=n?.length??0;if(0===a)return["0"];if(a===b){let b=o.slice(0,4),c=a-4,d=[...b];return c>0&&d.push(`+${c} (ALL)`),d}return a<=4?o:[...o.slice(0,4),`+${a-4}`]})();return(0,d.jsxs)(P,{isSelected:c,className:"rounded-4xl min-w-40 min-h-13 max-w-3xs",children:[(0,d.jsx)(Q,{className:"mb-0 py-3",children:(0,d.jsxs)("div",{className:"flex items-center flex-wrap gap-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 flex-shrink-0 mr-4",children:[(0,d.jsx)(X.u,{imageUrl:j,name:i,provider:k||void 0,size:24,className:"mt-[1px] flex-shrink-0"}),(0,d.jsx)(R,{className:"flex-shrink-0",children:i})]}),(0,d.jsx)("div",{className:"flex items-center flex-wrap gap-1",children:p.map((a,b)=>(0,d.jsx)(G.E,{variant:"code",className:"px-2 text-2xs text-gray-700 dark:text-gray-300 flex-shrink-0",children:a},b))})]})}),(0,d.jsx)(T,{id:_,type:"target",position:f.yX.Top,isConnectable:!0})]})},"mcp-placeholder":function(a){let{data:b,selected:c}=a,{name:e}=b;return(0,d.jsx)(P,{isSelected:c,className:`rounded-4xl border-dashed min-w-40 min-h-13 flex items-center justify-center max-w-3xs ${c?"outline-dashed outline-2 outline-gray-700 hover:outline-gray-700 ring-0 hover:ring-0":""}`,children:(0,d.jsxs)(Q,{className:"mb-0 py-3",children:[(0,d.jsx)(z.A,{className:"size-4 text-muted-foreground/65"}),(0,d.jsx)(R,{className:"text-muted-foreground",children:e})]})})},"function-tool":function(a){let{data:b,selected:c,id:e}=a,g=String(b.name||"Function Tool"),h=String(b.description||""),{getNodeErrors:i,hasNodeErrors:j}=L(),k=b.toolId||b.functionToolId||e,l=i(k),m=j(k);return(0,d.jsx)("div",{className:"relative",children:(0,d.jsxs)(P,{isSelected:c,className:`rounded-4xl min-w-40 max-w-xs ${m?"ring-2 ring-red-300 border-red-300":""}`,children:[(0,d.jsxs)(Q,{className:"mb-0 py-3",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-1.5",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("div",{className:"w-5 h-5 rounded flex items-center justify-center flex-shrink-0",children:(0,d.jsx)(A.A,{className:"w-4 h-4 text-foreground/70"})}),(0,d.jsx)(R,{className:"flex-1 truncate",children:g})]}),h?.trim()?(0,d.jsx)("p",{className:"text-xs text-muted-foreground line-clamp-2 pl-7",children:h}):null]}),m&&(0,d.jsx)(O,{errors:l,className:"absolute -top-2 -right-2 w-6 h-6"})]}),(0,d.jsx)(T,{id:ad,type:"target",position:f.yX.Top,isConnectable:!0})]})})}},_="target-mcp",aa="source-agent",ab="target-agent",ac="target-external-agent",ad="target-function-tool",ae={agent:{name:""},"external-agent":{name:""},mcp:{name:"MCP",subAgentId:null,relationshipId:null},"mcp-placeholder":{name:"Select MCP server"},"function-tool":{name:"Function Tool",subAgentId:null}},af={agent:{type:"agent",name:"Agent",Icon:x.A},"external-agent":{type:"external-agent",name:"External agent",Icon:y.A},"mcp-placeholder":{type:"mcp-placeholder",name:"MCP",Icon:z.A},mcp:{type:"mcp",name:"MCP",Icon:z.A},"function-tool":{type:"function-tool",name:"Function Tool",Icon:A.A}},ag=(0,u.v)()((0,v.lt)((a,b)=>({nodes:[],edges:[],metadata:{id:void 0,name:"",description:"",contextConfig:{contextVariables:"",headersSchema:""},models:void 0,stopWhen:void 0,graphPrompt:void 0,statusUpdates:void 0},dataComponentLookup:{},artifactComponentLookup:{},toolLookup:{},agentToolConfigLookup:{},dirty:!1,history:[],future:[],errors:null,showErrors:!1,actions:{setInitial(b,c,d,e={},f={},g={},h={}){a({nodes:b,edges:c,metadata:d,dataComponentLookup:e,artifactComponentLookup:f,toolLookup:g,agentToolConfigLookup:h,dirty:!1,history:[],future:[],errors:null,showErrors:!1})},setDataComponentLookup(b){a({dataComponentLookup:b})},setArtifactComponentLookup(b){a({artifactComponentLookup:b})},setToolLookup(b){a({toolLookup:b})},setAgentToolConfigLookup(b){a({agentToolConfigLookup:b})},setNodes(b){a(a=>({nodes:b(a.nodes)}))},setEdges(b){a(a=>({edges:b(a.edges)}))},push(b,c){a(a=>({history:[...a.history,{nodes:b,edges:c}],future:[]}))},onNodesChange(b){let c=b.some(a=>"remove"===a.type||"add"===a.type||"replace"===a.type);a(a=>({history:[...a.history,{nodes:a.nodes,edges:a.edges}],nodes:(0,e._0)(b,a.nodes),dirty:c||a.dirty}))},onEdgesChange(b){let c=b.some(a=>"remove"===a.type||"add"===a.type||"replace"===a.type);a(a=>{let d=b.filter(a=>"remove"===a.type),f=a.nodes;for(let b of d){let c=a.edges.find(a=>a.id===b.id);if(c&&c.targetHandle===_){let b=a.nodes.find(a=>a.id===c.target);b&&b.type===Z.MCP&&(f=f.map(a=>a.id===b.id?{...a,data:{...a.data,subAgentId:null,relationshipId:null}}:a))}}return{history:[...a.history,{nodes:a.nodes,edges:a.edges}],nodes:f,edges:(0,e.zW)(b,a.edges),dirty:!!c||a.dirty}})},onConnect(b){a(a=>({edges:(0,f.rN)(b,a.edges)}))},setMetadata(b,c){a(a=>({metadata:{...a.metadata,[b]:c}}))},undo(){let{history:c}=b();if(0===c.length)return;let d=c[c.length-1];a(a=>({nodes:d.nodes,edges:d.edges,history:a.history.slice(0,-1),future:[{nodes:a.nodes,edges:a.edges},...a.future],dirty:a.dirty}))},redo(){let{future:c}=b();if(0===c.length)return;let d=c[0];a(a=>({nodes:d.nodes,edges:d.edges,future:a.future.slice(1),history:[...a.history,{nodes:a.nodes,edges:a.edges}],dirty:a.dirty}))},markSaved(){a({dirty:!1})},markUnsaved(){a({dirty:!0})},clearSelection(){a(a=>({nodes:a.nodes.map(a=>({...a,selected:!1})),edges:a.edges.map(a=>({...a,selected:!1})),dirty:a.dirty}))},deleteSelected(){a(a=>{let b=new Set(a.nodes.filter(a=>a.selected&&(a.deletable??!0)).map(a=>a.id)),c=a.edges.filter(a=>!a.selected&&!b.has(a.source)&&!b.has(a.target)),d=a.nodes.filter(a=>!b.has(a.id));return{history:[...a.history,{nodes:a.nodes,edges:a.edges}],nodes:d,edges:c,dirty:!0}})},setErrors(b){a({errors:b,showErrors:null!==b})},clearErrors(){a({errors:null,showErrors:!1})},setShowErrors(b){a({showErrors:b})},hasErrors(){let{errors:a}=b();return null!==a&&a.totalErrors>0},getNodeErrors(a){let{errors:c}=b();return c&&c.nodeErrors[a]?c.nodeErrors[a]:[]},getEdgeErrors(a){let{errors:c}=b();return c&&c.edgeErrors[a]?c.edgeErrors[a]:[]}}}))),ah=()=>ag(a=>a.actions);function ai(a){return ag((0,w.k)(a))}class aj{on(a,b){let c=this.listeners.get(a)??[];return c.push(b),this.listeners.set(a,c),()=>this.off(a,b)}off(a,b){let c=this.listeners.get(a);if(!c)return;let d=c.filter(a=>a!==b);this.listeners.set(a,d)}emit(a,b){let c=this.listeners.get(a);if(c)for(let a of c)a(b)}constructor(){this.listeners=new Map}}let ak=new aj;class al{constructor(a){this.name="AddNode",this.node=a}execute(){let{actions:a}=ag.getState();a.setNodes(a=>a.concat(this.node))}undo(){let{actions:a}=ag.getState();a.setNodes(a=>a.filter(a=>a.id!==this.node.id))}}class am{constructor(a,b){this.name="AddPreparedEdge",this.edge=a,this.deselectOtherEdgesIfA2A=!!b?.deselectOtherEdgesIfA2A}execute(){let{actions:a}=ag.getState();this.edge.type===q.A2A&&a.setNodes(a=>a.map(a=>({...a,selected:!1}))),a.setEdges(a=>{if(a.some(a=>a.id===this.edge.id))return a;let b=this.deselectOtherEdgesIfA2A&&this.edge.type===q.A2A?a.map(a=>({...a,selected:!1})):a,c=(0,f.rN)(this.edge,b);return ak.emit("edgeConnected",{edgeId:this.edge.id}),c})}undo(){let{actions:a}=ag.getState(),b=this.edge.id;a.setEdges(a=>a.filter(a=>a.id!==b))}}function an(a){return"internal"===a.type&&"canUse"in a}function ao(a){if(a)try{return JSON.parse(a)}catch(a){console.error("Error parsing JSON:",a);return}}var ap=c(47585);let aq=["graph","node","edge"];function ar(){let[a,b]=(0,ap.ab)({pane:(0,ap.M1)(aq),nodeId:ap.tU,edgeId:ap.tU});return{pane:a.pane,nodeId:a.nodeId,edgeId:a.edgeId,isOpen:!!a.pane,setQueryState:b,openGraphPane:()=>b({pane:"graph",nodeId:null,edgeId:null})}}var as=c(90147);let at=(0,as.createServerReference)("78371ad4e643084703b09a4e3255b47f61f816825c",as.callServer,void 0,as.findSourceMapURL,"updateFullGraphAction"),au=(0,as.createServerReference)("70aa8449b6a3f378737add0b55064f5ac97137a6ae",as.callServer,void 0,as.findSourceMapURL,"createFullGraphAction");async function av(a,b,c,d){return d?at(a,b,d,c):au(a,b,c)}function aw(a){try{let b=JSON.parse(a),c=[];for(let a of b)if("invalid_union"===a.code&&a.errors&&a.path)for(let b of a.errors)for(let d of b){let b=ax(d,a.path);b&&c.push(b)}else if(a.path){let b=ax(a,a.path);b&&c.push(b)}return function(a){let b={},c={},d={},e={},f=[];for(let g of a)switch(g.type){case"node":g.nodeId&&("functionTool"===g.nodeType?(c[g.nodeId]||(c[g.nodeId]=[]),c[g.nodeId].push(g)):(b[g.nodeId]||(b[g.nodeId]=[]),b[g.nodeId].push(g)),d[g.nodeId]||(d[g.nodeId]=[]),d[g.nodeId].push(g));break;case"edge":g.edgeId&&(e[g.edgeId]||(e[g.edgeId]=[]),e[g.edgeId].push(g));break;case"graph":f.push(g)}return{totalErrors:a.length,agentErrors:b,functionToolErrors:c,nodeErrors:d,edgeErrors:e,graphErrors:f,allErrors:a}}(c)}catch{return{totalErrors:1,agentErrors:{},functionToolErrors:{},nodeErrors:{},edgeErrors:{},graphErrors:[{type:"graph",field:"unknown",message:"An unknown validation error occurred",fullPath:[],originalError:{code:"unknown",message:a,path:[]}}],allErrors:[]}}}function ax(a,b){let c,d,e,f,g=[...b,...a.path],h="graph";a.functionToolId?(h="node",c="functionTool",d=a.functionToolId,f=a.field||"configuration"):"functionTools"===g[0]&&g[1]?(h="node",c="functionTool",d=g[1],f=a.path.slice(2).join(".")||a.field||"configuration"):("agents"===g[0]&&g[1]?(h="node",c="agent",d=g[1]):"edges"===g[0]&&g[1]&&(h="edge",e=g[1]),f=a.path.join(".")||"configuration");let i=function(a,b,c,d){var e;let f;f="node"===c?"functionTool"===d?"Function Tool":"Agent":"edge"===c?"Connection":"Graph";let g={instructions:"Instructions",projectId:"Project ID",baseUrl:"Host URL",name:"Name",description:"Description",model:"Model",temperature:"Temperature",maxTokens:"Max Tokens",systemPrompt:"System Prompt",tools:"Tools",dataComponents:"Components",artifactComponents:"Artifacts",relationships:"Relationships",transferTargetToSource:"Transfer (Target to Source)",transferSourceToTarget:"Transfer (Source to Target)",delegateTargetToSource:"Delegate (Target to Source)",delegateSourceToTarget:"Delegate (Source to Target)",contextConfig:"Context Configuration",contextVariables:"Context Variables",headersSchema:"Headers Schema"}[e=b]||e.replace(/([A-Z])/g," $1").replace(/^./,a=>a.toUpperCase());switch(a.code){case"invalid_type":if("string"===a.expected&&a.message.includes("undefined"))return`${f} is missing required field: ${g}`;return`${f} ${g} has invalid type. Expected ${a.expected}`;case"too_small":return`${f} ${g} is too short. Please provide a valid value`;case"invalid_enum_value":return`${f} ${g} has an invalid value. Please select a valid option`;case"invalid_union":if(b.includes("type")||a.message.includes("discriminator"))return`${f} type must be specified as either 'internal' or 'external'`;return`${f} configuration is incomplete. Please check all required fields`;default:return`${f} ${g}: ${a.message}`}}(a,f,h,c);return{type:h,nodeType:c,nodeId:d,edgeId:e,field:f,message:i,fullPath:g,originalError:a}}var ay=c(88),az=c(67048),aA=c(60320),aB=c(91740),aC=c(41175),aD=c(2856),aE=c(71534),aF=c(38418);function aG({title:a,errors:b,icon:c,onNavigate:e,getItemLabel:f}){let[g,h]=(0,i.useState)(!1);if(0===b.length)return null;let j={};for(let a of b){let b=a.nodeId||a.edgeId||"general";j[b]||(j[b]=[]),j[b].push(a)}return(0,d.jsxs)(aF.Nt,{open:g,onOpenChange:h,children:[(0,d.jsx)(aF.R6,{asChild:!0,children:(0,d.jsx)(aD.$,{variant:"ghost",className:"w-full justify-start p-1.5 h-auto",children:(0,d.jsxs)("div",{className:"flex items-center gap-1.5 text-red-600 dark:text-red-400 text-xs",children:[c,(0,d.jsxs)("span",{className:"font-medium",children:[a," (",b.length,")"]}),g?(0,d.jsx)(az.A,{className:"w-3 h-3 ml-auto"}):(0,d.jsx)(aA.A,{className:"w-3 h-3 ml-auto"})]})})}),(0,d.jsx)(aF.Ke,{className:"space-y-3 pl-4 max-h-48 overflow-y-auto scrollbar-thin scrollbar-thumb-red-200 dark:scrollbar-thumb-red-800 scrollbar-track-transparent hover:scrollbar-thumb-red-300 dark:hover:scrollbar-thumb-red-700",children:Object.entries(j).map(([a,b])=>(0,d.jsxs)("div",{className:"space-y-1",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5",children:[f&&(0,d.jsx)("span",{className:"text-xs font-medium text-foreground truncate",children:f(b[0])}),e&&"general"!==a&&(0,d.jsx)(aD.$,{size:"sm",variant:"outline",onClick:()=>e(a),className:"h-5 px-1.5 text-xs",children:"Go to"})]}),(0,d.jsx)("div",{className:"space-y-2",children:b.map((b,c)=>(0,d.jsxs)("div",{className:"text-xs text-red-700 dark:text-red-300 bg-red-50/90 dark:bg-red-950/40 p-2 rounded border border-red-200 dark:border-red-700",children:[(0,d.jsxs)("div",{className:"font-medium mb-1",children:[b.field,":"]}),(0,d.jsx)("div",{className:"text-xs leading-relaxed",children:b.message})]},`${a}-${c}`))})]},a))})]})}function aH({errorSummary:a,onClose:b,onNavigateToNode:c,onNavigateToEdge:e}){let{setQueryState:f}=ar(),g=a=>{f({pane:"node",nodeId:a,edgeId:null}),c?.(a)},h=Object.values(a.agentErrors).flat(),i=Object.values(a.functionToolErrors).flat(),j=Object.values(a.edgeErrors).flat(),k=a.graphErrors;return(0,d.jsxs)(aE.Zp,{className:"border-red-200 dark:border-red-800 bg-red-50/50 dark:bg-red-950/30 backdrop-blur-sm shadow-xl gap-2 py-4 max-h-[80vh] animate-in slide-in-from-bottom-2 duration-300",children:[(0,d.jsx)(aE.aR,{className:"px-3",children:(0,d.jsxs)(aE.ZB,{className:"flex items-center justify-between text-red-700 dark:text-red-400 text-sm",children:[(0,d.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,d.jsx)(M.A,{className:"w-4 h-4"}),(0,d.jsxs)("span",{children:["Validation Errors (",a.totalErrors,")"]})]}),(0,d.jsx)(aD.$,{variant:"ghost",size:"sm",onClick:b,className:"h-6 w-6 p-0",children:(0,d.jsx)(aB.A,{className:"w-3 h-3"})})]})}),(0,d.jsxs)(aE.Wu,{className:"space-y-2 px-3 overflow-y-auto max-h-[calc(80vh-80px)] scrollbar-thin scrollbar-thumb-red-200 dark:scrollbar-thumb-red-800 scrollbar-track-transparent hover:scrollbar-thumb-red-300 dark:hover:scrollbar-thumb-red-700",children:[(0,d.jsx)("div",{className:"text-xs text-red-600 dark:text-red-400 mb-2",children:"Fix these issues to save your graph:"}),(0,d.jsx)(aG,{title:"Agent Errors",errors:h,icon:(0,d.jsx)(aC.A,{className:"w-3 h-3"}),onNavigate:g,getItemLabel:a=>`Agent (${a.nodeId})`}),(0,d.jsx)(aG,{title:"Function Tool Errors",errors:i,icon:(0,d.jsx)(A.A,{className:"w-3 h-3"}),onNavigate:g,getItemLabel:a=>`Function Tool (${a.nodeId})`}),(0,d.jsx)(aG,{title:"Connection Errors",errors:j,icon:(0,d.jsx)("div",{className:"w-3 h-3 border rounded-full"}),onNavigate:a=>{f({pane:"edge",nodeId:null,edgeId:a}),e?.(a)},getItemLabel:a=>`Connection (${a.edgeId})`}),(0,d.jsx)(aG,{title:"Graph Configuration Errors",errors:k,icon:(0,d.jsx)(M.A,{className:"w-3 h-3"})}),(0,d.jsx)("div",{className:"mt-2 pt-2 border-t border-red-200 dark:border-red-800",children:(0,d.jsx)("div",{className:"text-xs text-red-500 dark:text-red-400",children:'\uD83D\uDCA1 Click "Go to" buttons to navigate to issues'})})]})]})}function aI(){return(0,d.jsxs)("svg",{style:{position:"absolute",top:0,left:0},children:[(0,d.jsx)("title",{children:"arrow"}),(0,d.jsx)("defs",{children:(0,d.jsx)("marker",{className:"react-flow__arrowhead !stroke-border dark:!stroke-muted-foreground",id:"marker-default",markerWidth:"12.5",markerHeight:"12.5",viewBox:"-10 -10 20 20",markerUnits:"strokeWidth",orient:"auto-start-reverse",refX:"0",refY:"0",children:(0,d.jsx)("polyline",{strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4",strokeWidth:1.5})})})]})}function aJ(){return(0,d.jsxs)("svg",{style:{position:"absolute",top:0,left:0},children:[(0,d.jsx)("title",{children:"arrow"}),(0,d.jsx)("defs",{children:(0,d.jsx)("marker",{className:"react-flow__arrowhead !stroke-primary",id:"marker-selected",markerWidth:"12.5",markerHeight:"12.5",viewBox:"-10 -10 20 20",markerUnits:"strokeWidth",orient:"auto-start-reverse",refX:"0",refY:"0",children:(0,d.jsx)("polyline",{strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4",strokeWidth:1.5})})})]})}var aK=c(1245);function aL({node:a}){let{type:b,name:c,Icon:e,disabled:f}=a;return(0,d.jsxs)("div",{role:"button",tabIndex:f?-1:0,"aria-label":`Drag ${c} node`,className:"border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50 flex font-medium items-center text-sm rounded-md p-2 justify-between gap-2 text-left h-auto w-full group group-hover:bg-muted/50 transition-all ease-in-out duration-200 cursor-grab active:cursor-grabbing",draggable:!f,onDragStart:b=>{b.dataTransfer.setData("application/reactflow",JSON.stringify(a)),b.dataTransfer.effectAllowed="move"},children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(e,{className:"h-4 w-4 text-muted-foreground"}),(0,d.jsx)("div",{className:"flex flex-col items-start min-w-0",children:(0,d.jsx)("span",{className:"truncate w-full inline-block",children:c})})]}),(0,d.jsx)(aK.A,{className:"h-4 w-4 text-muted-foreground/30 opacity-0 group-hover:opacity-100 transition-all ease-in-out duration-200"})]},b)}let aM=[af[Z.Agent],af[Z.ExternalAgent],af[Z.MCPPlaceholder],af[Z.FunctionTool]];function aN(){return(0,d.jsx)("div",{className:"flex flex-col gap-2 max-w-72 w-52 min-w-0",children:aM.map(a=>(0,d.jsx)(aL,{node:a},a.type))})}var aO=c(39530),aP=c(70880),aQ=c(90009),aR=c(26139),aS=c(59072);c(97334);let aT=`
12
- .ikp-ai-chat-wrapper {
13
- height: 100%;
14
- max-height: unset;
15
- box-shadow: none;
16
- }
17
- .ikp-ai-chat-message-wrapper {
18
- padding-top: 1rem;
19
- padding-bottom: 1rem;
20
-
21
- }
22
- [data-role="user"] .ikp-ai-chat-message-header {
23
- display: none;
24
- }
25
-
26
- .ikp-ai-chat-message-header {
27
- margin-bottom: 16px;
28
- }
29
-
30
- .ikp-ai-chat-message-wrapper:not(:last-child):after {
31
- border-bottom-width: 0px;
32
- }
33
- [data-role="user"] .ikp-ai-chat-message-name {
34
- display: none;
35
- margin-bottom: 0px;
36
- }
37
- .ikp-ai-chat-message-content, .ikp-ai-chat-input {
38
- font-size: 14px;
39
- }
40
- .ikp-ai-chat-message-avatar-content {
41
- width: 24px;
42
- height: 24px;
43
- }
44
- [data-widget-md] .ikp-ai-chat-message-avatar {
45
- height: 24px;
46
- }
47
- .ikp-ai-chat-message-name {
48
- background: none;
49
- padding-left: 0px;
50
- padding-right: 0px;
51
- margin-left: 12px;
52
- font-size: 13px;
53
- font-weight: 500;
54
- color: var(--ikp-color-gray-600);
55
- }
56
- .ikp-ai-chat-tagline__text {
57
- font-size: 13px;
58
- }
59
- .ikp-ai-chat-input__fieldset {
60
- padding: 4px;
61
- }
62
- .ikp-ai-chat-input__send-button {
63
- height: 36px;
64
- width: 36px;
65
- }
66
-
67
- .ikp-ai-chat-message-loading {
68
- height: auto;
69
- }
70
-
71
- /* User message styles */
72
- [data-role="user"] .ikp-ai-chat-message-content-wrapper {
73
- align-items: flex-end;
74
- }
75
- [data-role="user"] .ikp-ai-chat-message-content {
76
- background-color: var(--ikp-color-gray-100);
77
- color: var(--ikp-color-gray-900);
78
- border-radius: 24px;
79
- border-bottom-right-radius: 2px;
80
- padding: 8px 16px;
81
- }
82
- [data-role="user"] .ikp-ai-chat-message-part > p {
83
- margin: 0px;
84
- }
85
- [data-role="user"] .ikp-ai-chat-message-part {
86
- margin-bottom: 0px;
87
- }
88
- [data-theme=dark] [data-role="user"] .ikp-ai-chat-message-content {
89
- background-color: var(--ikp-color-white-alpha-100);
90
- color: var(--ikp-color-white-alpha-950);
91
- }
92
-
93
- .ikp-markdown-code {
94
- background-color: var(--ikp-color-gray-100);
95
- color: var(--ikp-color-gray-900);
96
- }
97
-
98
- [data-theme=dark] .ikp-markdown-code {
99
- background-color: var(--ikp-color-white-alpha-100);
100
- color: var(--ikp-color-white-alpha-950);
101
- }
102
-
103
- /* Dark mode styles for chat containers */
104
- [data-theme=dark] .ikp-sidebar-chat__close-button {
105
- color: var(--ikp-color-gray-50);
106
- }
107
- [data-theme=dark] .ikp-ai-chat-message-name {
108
- background: none;
109
- }
110
- `;function aU({graphId:a,projectId:b,tenantId:c,conversationId:e,setConversationId:f,startPolling:h,stopPolling:j,customHeaders:k={},chatActivities:l}){let{INKEEP_AGENTS_RUN_API_URL:m,INKEEP_AGENTS_RUN_API_BYPASS_SECRET:n}=(0,aS.y)(),o=(0,i.useRef)(null),p=(0,i.useRef)(!1),q=(0,i.useCallback)(()=>{o.current&&(clearTimeout(o.current),o.current=null),o.current=setTimeout(()=>{j(),o.current=null},3e5)},[j]);return(0,d.jsx)("div",{className:"h-full flex flex-row gap-4",children:(0,d.jsx)("div",{className:"flex-1 min-w-0 h-full",children:(0,d.jsx)(aR.Po,{baseSettings:{onEvent:a=>{"assistant_message_received"===a.eventName&&(p.current=!0,q()),"user_message_submitted"===a.eventName&&(p.current=!1,o.current&&(clearTimeout(o.current),o.current=null),h()),"chat_clear_button_clicked"===a.eventName&&(p.current=!1,o.current&&(clearTimeout(o.current),o.current=null),j(),f((0,g.Ak)()))},primaryBrandColor:"#3784ff",colorMode:{sync:{target:document.documentElement,attributes:["class"],isDarkMode:a=>!!a?.class?.includes("dark")}},theme:{styles:[{key:"custom-styles",type:"style",value:aT}],colors:{gray:{50:"#fafaf9",100:"#f4f4f3",200:"#eeeceb",300:"#dedbd9",400:"#cec7c2",500:"#a9a19a",600:"#75716b",700:"#58534e",800:"#443f3e",900:"#2b2826",950:"#1a1817",1e3:"#080706"},grayDark:{950:"oklch(0.141 0.005 285.823)"}}}},aiChatSettings:{aiAssistantAvatar:{light:"/assets/inkeep-icons/icon-blue.svg",dark:"/assets/inkeep-icons/icon-sky.svg"},conversationId:e,graphUrl:a?`${m}/api/chat`:void 0,headers:{"x-inkeep-tenant-id":c,"x-inkeep-project-id":b,"x-inkeep-graph-id":a,Authorization:`Bearer ${n}`,...k},introMessage:"Hi! How can I help?"}})})})}var aV=c(6614),aW=c(32303),aX=c(71314),aY=c(75823),aZ=c(34576),a$=c(71771),a_=c(67466),a0=c(96032),a1=c(93622);let a2=aZ.object({headers:aZ.string().refine(a=>{try{let b=JSON.parse(a);return"object"==typeof b&&null!==b&&!Array.isArray(b)}catch{return!1}},"Must be valid JSON object").refine(a=>{try{let b=JSON.parse(a);return Object.values(b).every(a=>"string"==typeof a)}catch{return!1}},"All header values must be strings")}),a3=function({customHeaders:a,setCustomHeaders:b}){let c=Object.keys(a).length||0,[e,f]=(0,i.useState)(!1),g=(0,aY.mN)({defaultValues:{headers:JSON.stringify(a,null,2)},resolver:(0,aV.u)(a2)}),{isSubmitting:h}=g.formState,k=async({headers:a})=>{let c;if(a)try{c=JSON.parse(a)}catch(a){console.error("Error parsing JSON:",a),g.setError("headers",{message:a instanceof Error?a.message:"Invalid JSON"});return}b(c||{}),j.oR.success("Custom headers applied, you can now use them in the chat."),f(!1)};return(0,d.jsxs)(a0.lG,{open:e,onOpenChange:f,children:[(0,d.jsx)(a0.zM,{asChild:!0,children:(0,d.jsxs)(aD.$,{variant:"ghost",size:"sm",className:"h-6",children:[c>0?(0,d.jsx)(aW.A,{className:"w-4 h-4"}):(0,d.jsx)(aX.A,{className:"w-4 h-4"}),"Custom Headers",c>0&&(0,d.jsx)(G.E,{variant:"code",children:c})]})}),(0,d.jsxs)(a0.Cf,{className:"!max-w-2xl",children:[(0,d.jsxs)(a0.c7,{children:[(0,d.jsx)(a0.L3,{children:"Custom Headers"}),(0,d.jsx)(a0.rr,{children:"Add custom headers to the chat API requests."})]}),(0,d.jsx)(a1.lV,{...g,children:(0,d.jsxs)("form",{onSubmit:g.handleSubmit(k),className:"space-y-8",children:[(0,d.jsx)(a$.u,{control:g.control,name:"headers",label:"Custom headers",children:a=>(0,d.jsx)(a_.i,{value:a.value||"",onChange:a.onChange,placeholder:"Enter headers...",...a})}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[c>0&&(0,d.jsx)(aD.$,{type:"button",variant:"outline",onClick:()=>{g.reset({headers:"{}"}),b({}),f(!1),j.oR.success("Custom headers removed.")},children:"Remove headers"}),(0,d.jsx)(aD.$,{type:"submit",disabled:h,children:"Apply"})]})]})})]})]})},a4=({graphId:a,projectId:b,tenantId:c,closeSidePane:e,setShowPlayground:f})=>{let[h,j]=(0,i.useState)((0,g.Ak)()),[k,l]=(0,i.useState)({}),[m,n]=(0,i.useState)(!1),{chatActivities:o,isPolling:p,error:q,startPolling:r,stopPolling:s,retryConnection:t,refreshOnce:u}=(({conversationId:a,pollingInterval:b=1e3})=>{let[c,d]=(0,i.useState)(null),[e,f]=(0,i.useState)(!1),[g,h]=(0,i.useState)(null),[j,k]=(0,i.useState)(0),l=(0,i.useRef)(null),m=(0,i.useRef)(!0),n=(0,i.useRef)(null),o=(0,i.useCallback)(async()=>{try{h(null),n.current=new AbortController;let b=await fetch(`/api/signoz/conversations/${a}`,{signal:n.current.signal});if(!b.ok){if(404===b.status)return null;let a="Failed to fetch chat activities";try{let c=await b.json();c.error&&(a=c.error)}catch{}throw Error(a)}let c=await b.json();if(m.current&&a==a){let a=c.activities?.length||0;a!==j&&(d(c),k(a))}return c}catch(a){if(a instanceof Error&&"AbortError"===a.name)return null;throw m.current&&(h(a instanceof Error?a.message:"An error occurred"),f(!1),l.current&&(clearInterval(l.current),l.current=null),n.current&&(n.current.abort(),n.current=null)),a}},[a,j]),p=(0,i.useCallback)(()=>{l.current||(f(!0),o().catch(()=>{}),l.current=setInterval(()=>{o().catch(()=>{})},b))},[o,b]),q=(0,i.useCallback)(()=>{f(!1),l.current&&(clearInterval(l.current),l.current=null),n.current&&(n.current.abort(),n.current=null)},[]),r=(0,i.useCallback)(()=>{h(null),q(),p()},[p,q]),s=(0,i.useCallback)(async()=>{let a=c?.activities?.length||0,b=await o();return{hasNewActivity:(b?.activities?.length||0)>a}},[o,c?.activities?.length]);(0,i.useEffect)(()=>(m.current=!0,()=>{m.current=!1,q()}),[q]);let t=(0,i.useRef)(a);return(0,i.useEffect)(()=>{t.current!==a&&(d(null),k(0),h(null),l.current&&(clearInterval(l.current),l.current=null),n.current&&(n.current.abort(),n.current=null),f(!1),t.current=a)}),{chatActivities:c,isPolling:e,error:g,startPolling:p,stopPolling:q,retryConnection:r,refreshOnce:s}})({conversationId:h});return(0,d.jsxs)("div",{className:`bg-background z-10 flex flex-col border-l ${m?"w-full":"w-1/3 min-w-96"}`,children:[(0,d.jsxs)("div",{className:"flex min-h-0 items-center justify-between py-2 px-4 border-b flex-shrink-0",children:[(0,d.jsx)(a3,{customHeaders:k,setCustomHeaders:l}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsxs)(aD.$,{variant:"ghost",size:"sm",className:"h-6",onClick:()=>{n(!m),m||e()},children:[(0,d.jsx)(aO.A,{className:"h-4 w-4"}),m?"Hide debug":"Debug"]}),(0,d.jsx)(aD.$,{variant:"ghost",size:"sm",className:"h-6",onClick:()=>f(!1),children:(0,d.jsx)(aB.A,{className:"h-4 w-4"})})]})]}),(0,d.jsx)("div",{className:"flex-1 min-h-0 w-full",children:(0,d.jsxs)(aQ.HK,{direction:"horizontal",children:[(0,d.jsx)(aQ.wV,{order:1,children:(0,d.jsx)(aU,{conversationId:h,setConversationId:j,startPolling:r,stopPolling:s,graphId:a,projectId:b,tenantId:c,customHeaders:k,chatActivities:o},JSON.stringify(k))}),m&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(aQ.WM,{}),(0,d.jsx)(aP.B,{isPolling:p,conversation:o,enableAutoScroll:!0,error:q,retryConnection:t,refreshOnce:u,showConversationTracesLink:!0,conversationId:h})]})]})})]})};var a5=c(94843),a6=c(52135),a7=c(14053);let a8={Root:function({isOpen:a,children:b}){return(0,d.jsx)("div",{className:`relative top-0 right-0 bg-background h-full flex flex-col rounded-br-[14px] transform transition-transform duration-300 ease-in-out group z-50 ${a?"translate-x-0 w-[480px]":"translate-x-full w-0"}`,children:b})},Header:function({children:a}){return(0,d.jsx)("div",{className:"flex flex-row items-center justify-between px-6 py-2 border-l border-b flex-shrink-0 relative",children:a})},Content:function({children:a}){return(0,d.jsx)(a7.F,{className:"border-l border-border flex-1 h-0 [&>div>div]:table-fixed [&>div>div]:w-full",children:(0,d.jsx)("div",{className:"p-6",children:a})})},CloseButton:function({onClick:a}){return(0,d.jsxs)(aD.$,{variant:"ghost",size:"icon-sm",onClick:a,className:"-mr-1 text-foreground hover:text-foreground dark:text-foreground dark:hover:text-foreground",children:[(0,d.jsx)(aB.A,{className:"h-4 w-4"}),(0,d.jsx)("span",{className:"sr-only",children:"Close"})]})},BackButton:function({onClick:a}){return(0,d.jsxs)(aD.$,{variant:"ghost",size:"icon-sm",onClick:a,className:"-ml-1 transition-all duration-300 ease-in-out absolute left-0 opacity-0 -translate-x-6 group-hover:opacity-100 group-hover:translate-x-0 text-foreground hover:text-foreground dark:text-foreground dark:hover:text-foreground",children:[(0,d.jsx)(a6.A,{className:"h-4 w-4"}),(0,d.jsx)("span",{className:"sr-only",children:"Back"})]})}};var a9=c(94327),ba=c(99628);let bb=(0,i.forwardRef)((a,b)=>(0,d.jsxs)(ba.A,{ref:b,...a,children:[(0,d.jsx)("path",{d:"M19 7C20.1046 7 21 6.10457 21 5C21 3.89543 20.1046 3 19 3C17.8954 3 17 3.89543 17 5C17 6.10457 17.8954 7 19 7Z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),(0,d.jsx)("path",{d:"M5 21C6.10457 21 7 20.1046 7 19C7 17.8954 6.10457 17 5 17C3.89543 17 3 17.8954 3 19C3 20.1046 3.89543 21 5 21Z",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"}),(0,d.jsx)("path",{d:"M5 17C5 13.8174 6.26428 10.7652 8.51472 8.51472C10.7652 6.26428 13.8174 5 17 5",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",strokeDasharray:"4 4"})]}));bb.displayName="DashedSplineIcon";var bc=c(24703),bd=c(34740);function be({id:a,label:b,onCheckedChange:c,checked:e}){return(0,d.jsxs)("div",{className:"flex items-start gap-3",children:[(0,d.jsx)(bc.S,{id:a,onCheckedChange:b=>c(a,b),checked:e,className:"mt-[5px]"}),(0,d.jsx)("div",{className:"grid gap-2",children:(0,d.jsx)(bd.J,{htmlFor:a,className:"font-normal",children:b})})]})}function bf({icon:a,title:b,description:c,options:e,onCheckedChange:f,checkedValues:g}){return(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[a,(0,d.jsx)("h3",{className:"font-semibold text-sm",children:b})]}),(0,d.jsx)("p",{className:"text-muted-foreground text-sm",children:c})]}),e.map(a=>(0,d.jsx)(be,{id:a.id,label:a.label,onCheckedChange:f,checked:g?.[a.id]||!1},a.id))]})}let bg=function({selectedEdge:a}){let{updateEdgeData:b,setEdges:c}=(0,e.VH)(),f=(0,e.j7)(a.source),g=(0,e.j7)(a.target),{markUnsaved:h}=ah(),i=a.source===a.target,j=(d,e)=>{let f;if(i){let b={};"transferSourceToTarget"===d?(b.transferSourceToTarget=e,b.transferTargetToSource=e):"delegateSourceToTarget"===d&&(b.delegateSourceToTarget=e,b.delegateTargetToSource=e),f={...a.data?.relationships,...b}}else f={...a.data?.relationships,[d]:e};let g=f.transferSourceToTarget||f.transferTargetToSource||f.delegateSourceToTarget||f.delegateTargetToSource;h(),g?b(a.id,{relationships:f}):c(b=>b.filter(b=>b.id!==a.id))},k=i?[{id:"transferSourceToTarget",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})," ","can transfer to itself"]})}]:[{id:"transferSourceToTarget",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})," ","can transfer to"," ",(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:g?.data.name})]})},{id:"transferTargetToSource",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:g?.data.name})," ","can transfer to"," ",(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})]})}],l=i?[{id:"delegateSourceToTarget",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})," ","can delegate to itself"]})}]:[{id:"delegateSourceToTarget",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})," ","can delegate to"," ",(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:g?.data.name})]})},{id:"delegateTargetToSource",label:(0,d.jsxs)("div",{children:[(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:g?.data.name})," ","can delegate to"," ",(0,d.jsx)(G.E,{variant:"code",className:"my-0.5",children:f?.data.name})]})}];return(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bf,{icon:(0,d.jsx)(a9.A,{className:"w-4 h-4 text-muted-foreground"}),title:"Transfer relationships",description:"Transfer relationships completely relinquish control from one agent to another.",options:k,onCheckedChange:j,checkedValues:a.data?.relationships}),(0,d.jsx)("hr",{}),(0,d.jsx)(bf,{icon:(0,d.jsx)(bb,{className:"w-4 h-4 text-muted-foreground"}),title:"Delegate relationships",description:"Delegate relationships are used to pass a task from one agent to another.",options:l,onCheckedChange:j,checkedValues:a.data?.relationships})]})};function bh({heading:a,Icon:b,className:c}){return(0,d.jsxs)("div",{className:(0,I.cn)("text-sm font-medium flex items-center gap-2",c),children:[b&&(0,d.jsx)(b,{className:"size-4 text-muted-foreground"}),a]})}var bi=c(45930),bj=c(4619),bk=c(19138),bl=c(30365),bm=c(60848),bn=c(39108),bo=c(84598);function bp({isExplicit:a=!1,inheritedFrom:b,tooltip:c,size:e="sm",position:f="inline"}){return a?(0,d.jsx)(N.B,{children:(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(G.E,{variant:"outline",className:`
111
- ${"sm"===e?"h-5 px-1.5 text-xs":"h-6 px-2 text-sm"}
112
- ${"absolute"===f?"absolute -top-2 -right-2":"inline-flex"}
113
- bg-green-50 dark:bg-green-950/20 border-green-200 dark:border-green-800
114
- text-green-800 dark:text-green-200 items-center gap-1
115
- `,children:[(0,d.jsx)(bn.A,{className:"sm"===e?"h-2.5 w-2.5":"h-3 w-3"}),"md"===e&&"Explicit"]})}),(0,d.jsx)(N.TooltipContent,{children:(0,d.jsx)("p",{children:c||"This value is explicitly set at this level"})})]})}):b?(0,d.jsx)(N.B,{children:(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(G.E,{variant:"outline",className:`
116
- ${"sm"===e?"h-5 px-1.5 text-xs":"h-6 px-2 text-sm"}
117
- ${"absolute"===f?"absolute -top-2 -right-2":"inline-flex"}
118
- bg-blue-50 dark:bg-blue-950/20 border-blue-200 dark:border-blue-800
119
- text-blue-800 dark:text-blue-200 items-center gap-1
120
- `,children:[(0,d.jsx)(bo.A,{className:"sm"===e?"h-2.5 w-2.5":"h-3 w-3"}),"md"===e&&`From ${b}`]})}),(0,d.jsx)(N.TooltipContent,{children:(0,d.jsx)("p",{children:c||`This value is inherited from ${b} level`})})]})}):(0,d.jsx)(N.B,{children:(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(G.E,{variant:"outline",className:`
121
- ${"sm"===e?"h-5 px-1.5 text-xs":"h-6 px-2 text-sm"}
122
- ${"absolute"===f?"absolute -top-2 -right-2":"inline-flex"}
123
- bg-gray-50 dark:bg-gray-950/20 border-gray-200 dark:border-gray-800
124
- text-gray-600 dark:text-gray-400 items-center gap-1
125
- `,children:[(0,d.jsx)(bi.A,{className:"sm"===e?"h-2.5 w-2.5":"h-3 w-3"}),"md"===e&&"Default"]})}),(0,d.jsx)(N.TooltipContent,{children:(0,d.jsx)("p",{children:c||"Using system default value"})})]})})}function bq(a,b,c,d){let e=null!=b&&""!==b,f=null!=c&&""!==c,g=null!=d&&""!==d;if("project"!==a){if(e&&f&&b===c){let b="agent"===a?"Graph":"Project";return{isExplicit:!1,inheritedFrom:b,tooltip:`This model is inherited from the ${b.toLowerCase()} level`}}if("agent"===a&&e&&!f&&g&&b===d)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"This model is inherited from the project level"}}if(e)return{isExplicit:!0,tooltip:`This model is explicitly configured at the ${a} level`};switch(a){case"agent":if(f)return{isExplicit:!1,inheritedFrom:"Graph",tooltip:"Will inherit from the graph level"};if(g)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"Will inherit from the project level"};break;case"graph":if(f)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"Will inherit from the project level"}}return{isExplicit:!1,tooltip:"Using system default configuration"}}function br(a,b,c,d){let e=null!=c,f=null!=d;if(e&&f&&c===d){if("transferCountIs"===b&&"graph"===a)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"This transfer limit is inherited from the project level"};if("stepCountIs"===b&&"agent"===a)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"This step limit is inherited from the project level"}}if(e)return{isExplicit:!0,tooltip:`This ${"transferCountIs"===b?"transfer limit":"step limit"} is explicitly set at the ${a} level`};if("transferCountIs"===b){if("graph"===a&&f)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"Will inherit transfer limit from the project level"}}else if("stepCountIs"===b&&"agent"===a&&f)return{isExplicit:!1,inheritedFrom:"Project",tooltip:"Will inherit step limit from the project level"};return{isExplicit:!1,tooltip:`Using system default (${"transferCountIs"===b?"10":"50"})`}}var bs=c(98234),bt=c(24003),bu=c(32442);function bv({nameValue:a,idValue:b,onIdChange:c,isEditing:d=!1}){(0,i.useRef)(!1),(0,i.useRef)(""),(0,i.useRef)(c),(0,i.useRef)(b)}function bw(){let{tenantId:a,projectId:b}=(0,h.useParams)(),[c,d]=(0,i.useState)(null),[e,f]=(0,i.useState)(!0),[g,j]=(0,i.useState)(null);return{project:c,loading:e,error:g}}function bx({defaultOpen:a=!1,title:b,children:c}){return(0,d.jsxs)(aF.Nt,{defaultOpen:a,className:"border rounded-md bg-muted/30 dark:bg-muted/20",children:[(0,d.jsx)(aF.R6,{asChild:!0,children:(0,d.jsxs)(aD.$,{variant:"ghost",size:"sm",className:"flex items-center justify-start gap-1.5 p-0 h-auto font-normal text-xs text-foreground/80 dark:text-foreground/90 hover:text-foreground hover:!bg-transparent transition-colors group w-full py-2 px-4",children:[(0,d.jsx)(aA.A,{className:"h-3.5 w-3.5 transition-transform duration-200 group-data-[state=open]:rotate-90"}),b]})}),(0,d.jsx)(aF.Ke,{className:"space-y-8 mt-4 data-[state=closed]:animate-[collapsible-up_200ms_ease-out] data-[state=open]:animate-[collapsible-down_200ms_ease-out] overflow-hidden px-4 pb-6",children:c})]})}c(87171),as.callServer,as.findSourceMapURL;var by=c(24726),bz=c(4783),bA=c(73068),bB=c(76874),bC=c(79275),bD=c(51023),bE=c(75726),bF=c(76469);function bG(a,b="",c=10,d=0){if(d>=c||!a||"object"!=typeof a)return[];let e=[];if(a.anyOf||a.oneOf||a.allOf){for(let f of a.anyOf||a.oneOf||a.allOf)f&&"object"==typeof f&&e.push(...bG(f,b,c,d));return e}if("object"===a.type&&a.properties)for(let[f,g]of Object.entries(a.properties)){let a=b?`${b}.${f}`:f;e.push(a),"object"==typeof g&&null!==g&&e.push(...bG(g,a,c,d+1))}if("array"===a.type&&a.items){let f=b?`${b}[*]`:"[*]";e.push(f),a.items&&"object"==typeof a.items&&e.push(...bG(a.items,f,c,d+1))}return e}let bH=bB.NZ.mark({class:"cm-template-variable"}),bI=bB.Z9.fromClass(class{constructor(a){this.decorations=this.buildDecorations(a)}update(a){a.docChanged&&(this.decorations=this.buildDecorations(a.view))}buildDecorations(a){let b=[],c=/\{\{([^}]+)}}/g;for(let d=0;d<a.state.doc.lines;d++){let e,f=a.state.doc.line(d+1);for(;null!==(e=c.exec(f.text));){let a=f.from+e.index,c=f.from+e.index+e[0].length;b.push(bH.range(a,c))}}return bB.NZ.set(b)}},{decorations:a=>a.decorations}),bJ=bB.Lz.theme({"& .cm-template-variable":{color:"#e67e22",fontWeight:"bold"},"&.cm-dark .cm-template-variable":{color:"#f39c12"}}),bK=new Set(["$time","$date","$timestamp","$now"]);function bL(a){if(!a.trim())return{};try{return JSON.parse(a)}catch{}return{}}let bM=({className:a,value:b,onChange:c,placeholder:e,disabled:f,readOnly:g,ref:h,...j})=>{let k=(0,i.useRef)(null),{resolvedTheme:l}=(0,bF.D)();(0,i.useEffect)(()=>{k.current=new bB.Lz},[]),(0,i.useImperativeHandle)(h,()=>({insertTemplateVariable(){let a=k.current?.view;if(!a)return;let{doc:b,selection:c}=a.state,d=c.main.empty?c.main.head:b.line(b.lines).to;a.dispatch({changes:{from:d,to:d,insert:"{}"},selection:{anchor:d+1},scrollIntoView:!0}),(0,bA.rB)(a)}}));let m=ai(a=>a.metadata.contextConfig),n=(0,i.useMemo)(()=>{let a=bL(m.contextVariables),b=function(a){let b=[];if(a.headersSchema?.properties)for(let c of bG(a.headersSchema))b.push(`headers.${c}`);if(a.contextVariables){for(let[c,d]of Object.entries(a.contextVariables))if(b.push(c),d.responseSchema)for(let a of bG(d.responseSchema))b.push(`${c}.${a}`)}return[...new Set(b)].sort()}({headersSchema:bL(m.headersSchema),contextVariables:a});return[(0,bA.yU)({override:[a=>{let{state:c,pos:d}=a,e=c.doc.lineAt(d),f=d-e.from,g=e.text.slice(0,f).match(/\{([^}]*)$/);if(!g)return null;let h=g[1].toLowerCase(),i=b.filter(a=>a.toLowerCase().includes(h)),j=e.text[f];return{from:d-g[1].length,to:d,options:["$env.",...bK,...i].map(a=>({label:a,apply:`{${a}${"}"===j?"}":"}}"}`}))}}],compareCompletions:(a,b)=>-1}),bI,bJ,(0,bC.bu)(a=>{let c=[],d=new Set(b),e=/\{\{([^}]+)}}/g;for(let b=0;b<a.state.doc.lines;b++){let f,g=a.state.doc.line(b+1);for(;null!==(f=e.exec(g.text));){let a=g.from+f.index,b=g.from+f.index+f[0].length,e=f[1];d.has(e)||bK.has(e)||e.startsWith("$env.")||e.includes("[")||e.startsWith("length(")||e.includes("[?")||e.includes("[*]")||c.push({from:a,to:b,severity:"error",message:`Unknown variable: ${e}`})}}return c}),bB.Lz.lineWrapping]},[m]);return(0,d.jsx)(bE.Ay,{ref:k,...j,value:b||"",onChange:c,extensions:n,theme:"dark"===l?bD.nQ:bD.Bs,placeholder:e,editable:!f&&!g,basicSetup:{lineNumbers:!1,foldGutter:!1,highlightActiveLine:!1},"data-disabled":f?"":void 0,"data-read-only":g?"":void 0,className:(0,I.cn)("h-full [&>.cm-editor]:max-h-[inherit] [&>.cm-editor]:!bg-transparent dark:[&>.cm-editor]:!bg-input/30 [&>.cm-editor]:!outline-none [&>.cm-editor]:rounded-[7px] [&>.cm-editor]:px-3 [&>.cm-editor]:py-2 leading-2 text-xs font-mono rounded-md border border-input shadow-xs transition-[color,box-shadow] data-disabled:cursor-not-allowed data-disabled:opacity-50 data-disabled:bg-muted data-invalid:border-destructive has-[.cm-focused]:border-ring has-[.cm-focused]:ring-ring/50 has-[.cm-focused]:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",a)})},bN=({tooltipClassName:a,...b})=>{let c=(0,i.useRef)(null),e="Add variables";return(0,d.jsxs)("div",{className:"h-full relative",children:[(0,d.jsx)(bM,{ref:c,...b}),(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(aD.$,{variant:"ghost",size:"icon",className:(0,I.cn)("absolute bottom-2.5 h-6 w-6 hover:text-foreground transition-all backdrop-blur-sm bg-white/90 hover:bg-white/95 dark:bg-card dark:hover:bg-accent border border-border shadow-md dark:shadow-lg",a),type:"button",onClick:()=>{c.current?.insertTemplateVariable()},children:[(0,d.jsx)(by.A,{className:"h-4 w-4 text-muted-foreground"}),(0,d.jsx)("span",{className:"sr-only",children:e})]})}),(0,d.jsx)(N.TooltipContent,{children:e})]})]})};function bO({label:a,isRequired:b=!1,...c}){return(0,d.jsx)(bz.Z,{name:c.id||"expandable-textarea",label:a,isRequired:b,compactView:(0,d.jsx)(bN,{...c,tooltipClassName:"right-10"}),expandedView:(0,d.jsx)(bN,{...c,autoFocus:!0,className:"[&>.cm-editor]:h-full",tooltipClassName:"right-2.5"})})}let bP=(0,i.forwardRef)(({id:a,name:b,label:c,value:e,onChange:f,placeholder:g,error:h,className:i="",description:j,tooltip:k,type:l="text",isRequired:m=!1,disabled:n=!1},o)=>(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)(bd.J,{htmlFor:a,className:(0,I.cn)(h?"text-red-600":"","gap-1"),children:[c,m&&(0,d.jsx)("span",{className:"text-red-500",children:"*"}),k&&(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{children:(0,d.jsx)(bi.A,{className:"w-3 h-3 text-muted-foreground ml-1"})}),(0,d.jsx)(N.TooltipContent,{className:"break-words",children:k})]})]}),(0,d.jsx)(bs.p,{ref:o,id:a,name:b,type:l,value:e,onChange:f,placeholder:g,"data-invalid":h?"":void 0,className:`w-full data-invalid:border-red-300 data-invalid:focus-visible:border-red-300 data-invalid:focus-visible:ring-red-300 ${i}`,disabled:n}),h&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:h}),j&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:j})]}));bP.displayName="InputField";let bQ=(0,i.forwardRef)(({id:a,name:b,label:c,value:e,onChange:f,placeholder:g,error:h,className:i="",description:j,tooltip:k,maxHeight:l="max-h-96",isRequired:m=!1,disabled:n=!1},o)=>(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)(bd.J,{htmlFor:a,className:(0,I.cn)(h?"text-red-600":"","gap-1"),children:[c,m&&(0,d.jsx)("span",{className:"text-red-500",children:"*"}),k&&(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{children:(0,d.jsx)(bi.A,{className:"w-3 h-3 text-muted-foreground ml-1"})}),(0,d.jsx)(N.TooltipContent,{className:"break-words",children:k})]})]}),(0,d.jsx)(bu.T,{ref:o,id:a,name:b,value:e,onChange:f,placeholder:g,"data-invalid":h?"":void 0,className:`w-full ${l} data-invalid:border-red-300 data-invalid:focus-visible:border-red-300 data-invalid:focus-visible:ring-red-300 ${i}`,disabled:n}),h&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:h}),j&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:j})]}));bQ.displayName="TextareaField";var bR=c(27555);function bS({title:a,tooltip:b}){return(0,d.jsxs)("h3",{className:"text-sm font-semibold flex items-center",children:[a,b&&(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsx)(bi.A,{className:"w-3 h-3 text-muted-foreground ml-1"})}),(0,d.jsx)(N.TooltipContent,{children:b})]})," "]})}function bT({description:a}){return(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:a})}function bU({title:a,description:b,titleTooltip:c}){return(0,d.jsxs)("div",{className:"space-y-1.5",children:[(0,d.jsx)(bS,{title:a,tooltip:c}),(0,d.jsx)(bT,{description:b})]})}function bV({contextConfig:a,updateMetadata:b}){let{contextVariables:c,headersSchema:e}=a,f=(c,d)=>{b("contextConfig",{...a,[c]:d})};return(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Context configuration",description:"Configure dynamic context for this graph."}),(0,d.jsxs)("div",{className:"flex flex-col space-y-8",children:[(0,d.jsx)(bj.y,{name:"contextVariables",label:"Context variables (JSON)",value:c,onChange:a=>f("contextVariables",a),placeholder:"{}",className:""}),(0,d.jsx)(bj.y,{name:"headersSchema",label:"Headers schema (JSON)",value:e,onChange:a=>f("headersSchema",a),placeholder:"{}",className:""})]})]})}let bW=()=>(0,d.jsxs)("ul",{className:"space-y-1.5 list-disc list-outside pl-4",children:[(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"transferCountIs"}),": Project → Graph only (controls transfers between agents)"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Explicit settings"})," always take precedence over inherited values"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Default fallback"}),": transferCountIs = 10 if no value is set anywhere"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Graph scope"}),": This limit applies to all agents within this graph"]})]}),bX=function(){let a=(0,h.useParams)(),b=ai(a=>a.metadata),{graphId:c,tenantId:e,projectId:f}=a,{id:g,name:j,description:k,contextConfig:l,models:m,stopWhen:n,graphPrompt:o,statusUpdates:p}=b,{INKEEP_AGENTS_RUN_API_URL:q}=(0,aS.y)(),r=`${q}/api/chat`,{project:s}=bw(),{markUnsaved:t,setMetadata:u}=ah(),v=(0,i.useCallback)((...a)=>{u(...a),t()},[u,t]);return bv({nameValue:j,idValue:g,onIdChange:(0,i.useCallback)(a=>{v("id",a)},[v]),isEditing:!!c}),(0,d.jsxs)("div",{className:"space-y-8",children:[c&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"text-sm leading-none font-medium flex items-center gap-1",children:["Chat URL",(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsx)(bi.A,{className:"w-3 h-3 text-muted-foreground"})}),(0,d.jsx)(N.TooltipContent,{children:"Use this endpoint to chat with your graph or connect it to the Inkeep widget via the graphUrl prop. Supports streaming responses with the Vercel AI SDK data stream protocol."})]})]}),(0,d.jsx)(bl.r,{code:r}),(0,d.jsx)(bm.G,{href:`/${e}/projects/${f}/api-keys`,children:"Create API key"})]}),(0,d.jsx)(bP,{id:"name",name:"name",label:"Name",value:j,onChange:a=>v("name",a.target.value),placeholder:"My graph",isRequired:!0}),(0,d.jsx)(bP,{id:"id",name:"id",label:"Id",value:g||"",onChange:a=>v("id",a.target.value),disabled:!!c,placeholder:"my-graph",description:c?void 0:"Choose a unique identifier for this graph. Using an existing id will replace that graph.",isRequired:!0}),(0,d.jsx)(bQ,{id:"description",name:"description",label:"Description",value:k,onChange:a=>v("description",a.target.value),placeholder:"This graph is used to...",className:"max-h-96"}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bO,{id:"graph-prompt",label:"Graph prompt",value:o||"",onChange:a=>v("graphPrompt",a),placeholder:"System-level instructions for this graph...",className:"max-h-96"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"System-level prompt that defines the intended audience and overall goal of this graph. Applied to all agents."})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Default models",description:"Set default models that will be inherited by agents that don't have their own models configured.",titleTooltip:(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{children:"How model inheritance works:"}),(0,d.jsx)(bk.O,{})]})}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:m?.base?.model||"",inheritedValue:s?.models?.base?.model,onValueChange:a=>{v("models",{...m||{},base:a?{...m?.base||{},model:a}:void 0})},label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Base model",(0,d.jsx)(bp,{...bq("graph",m?.base?.model,s?.models?.base?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Primary model for general agent responses"})]}),(0,d.jsxs)(bx,{defaultOpen:!!m?.structuredOutput||!!m?.summarizer,title:"Advanced model options",children:[m?.base?.model&&(0,d.jsx)(bj.y,{name:"base-provider-options",label:"Base model provider options",onChange:a=>{v("models",{...m||{},base:{model:m.base?.model||"",providerOptions:a}})},value:m.base.providerOptions||"",placeholder:`{
126
- "temperature": 0.7,
127
- "maxTokens": 2048
128
- }`}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:m?.structuredOutput?.model||"",inheritedValue:s?.models?.structuredOutput?.model||m?.base?.model||s?.models?.base?.model,onValueChange:a=>{v("models",{...m||{},structuredOutput:a?{...m?.structuredOutput||{},model:a}:void 0})},label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Structured output model",(0,d.jsx)(bp,{...bq("graph",m?.structuredOutput?.model,s?.models?.structuredOutput?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Model for structured outputs and components (defaults to base model)"})]}),m?.structuredOutput?.model&&(0,d.jsx)(bj.y,{name:"structured-provider-options",label:"Structured output model provider options",onChange:a=>{v("models",{...m||{},structuredOutput:{model:m.structuredOutput?.model||"",providerOptions:a}})},value:m.structuredOutput.providerOptions||"",placeholder:`{
129
- "temperature": 0.1,
130
- "maxTokens": 1024
131
- }`}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:m?.summarizer?.model||"",inheritedValue:s?.models?.summarizer?.model||m?.base?.model||s?.models?.base?.model,onValueChange:a=>{v("models",{...m||{},summarizer:a?{...m?.summarizer||{},model:a}:void 0})},label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Summarizer model",(0,d.jsx)(bp,{...bq("graph",m?.summarizer?.model,s?.models?.summarizer?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Model for summarization tasks (defaults to base model)"})]}),m?.summarizer?.model&&(0,d.jsx)(bj.y,{name:"summarizer-provider-options",label:"Summarizer model provider options",onChange:a=>{v("models",{...m||{},summarizer:{model:m.summarizer?.model||"",providerOptions:a}})},value:m.summarizer.providerOptions||"",placeholder:`{
132
- "temperature": 0.3,
133
- "maxTokens": 1024
134
- }`})]})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Execution limits",description:"Configure graph-level execution limits for transfers between agents.",titleTooltip:(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{children:"How execution limit inheritance works:"}),(0,d.jsx)(bW,{})]})}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(bd.J,{htmlFor:"transfer-count",children:"Max transfers"}),(0,d.jsx)(bp,{...br("graph","transferCountIs",n?.transferCountIs,s?.stopWhen?.transferCountIs),size:"sm"})]}),(0,d.jsx)(bs.p,{id:"transfer-count",type:"number",min:"1",max:"100",value:n?.transferCountIs||"",onChange:a=>{let b=a.target.value?parseInt(a.target.value,10):void 0;v("stopWhen",{...n||{},transferCountIs:b})},placeholder:"10"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Maximum number of agent transfers per conversation (defaults to 10 if not set)"})]})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Status updates",description:"Configure structured status updates for conversation progress tracking."}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,d.jsx)(bc.S,{id:"status-updates-enabled",checked:p?.enabled??!0,onCheckedChange:a=>{v("statusUpdates",{...p||{},enabled:!0===a})}}),(0,d.jsx)(bd.J,{htmlFor:"status-updates-enabled",children:"Enable status updates"})]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Send structured status updates during conversation execution"})]}),(p?.enabled??!0)&&(0,d.jsxs)(bx,{title:"Status updates configuration",children:[(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"status-updates-prompt",children:"Status updates prompt"}),(0,d.jsx)(bu.T,{id:"status-updates-prompt",value:p?.prompt||"",onChange:a=>{v("statusUpdates",{...p||{},prompt:a.target.value})},placeholder:"Generate a status update describing the current progress...",className:"max-h-32 bg-background"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Custom prompt for generating status updates (optional)"})]}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)(bd.J,{children:"Update frequency type"}),(0,d.jsxs)("div",{className:"flex items-center space-x-4",children:[(0,d.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,d.jsx)(bc.S,{id:"event-based-updates",className:"bg-background",checked:!!p?.numEvents,onCheckedChange:a=>{if(a)v("statusUpdates",{...p||{},numEvents:p?.numEvents||10});else{let a={...p};delete a.numEvents,v("statusUpdates",a)}}}),(0,d.jsx)(bd.J,{htmlFor:"event-based-updates",children:"Event-based updates"})]}),(0,d.jsxs)("div",{className:"flex items-center space-x-2",children:[(0,d.jsx)(bc.S,{id:"time-based-updates",className:"bg-background",checked:!!p?.timeInSeconds,onCheckedChange:a=>{if(a)v("statusUpdates",{...p||{},timeInSeconds:p?.timeInSeconds||30});else{let a={...p};delete a.timeInSeconds,v("statusUpdates",a)}}}),(0,d.jsx)(bd.J,{htmlFor:"time-based-updates",children:"Time-based updates"})]})]})]}),p?.numEvents&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"num-events",children:"Number of events"}),(0,d.jsx)(bs.p,{id:"num-events",type:"number",min:"1",max:"100",value:p.numEvents||"",onChange:a=>{let b=a.target.value?parseInt(a.target.value,10):void 0;v("statusUpdates",{...p||{},numEvents:b})},placeholder:"10",className:"bg-background"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Number of events/steps between status updates (default: 10)"})]}),p?.timeInSeconds&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"time-in-seconds",children:"Time interval (seconds)"}),(0,d.jsx)(bs.p,{id:"time-in-seconds",type:"number",min:"1",max:"600",value:p.timeInSeconds||"",onChange:a=>{let b=a.target.value?parseInt(a.target.value,10):void 0;v("statusUpdates",{...p||{},timeInSeconds:b})},placeholder:"30",className:"bg-background"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Time interval in seconds between status updates (default: 30)"})]})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bj.y,{name:"status-components",label:"Status components configuration",onChange:a=>{v("statusUpdates",{...p||{},statusComponents:a})},value:p?.statusComponents||"",placeholder:`[
135
- {
136
- "id": "tool_call_summary",
137
- "name": "Tool Call",
138
- "description": "A summary of a single tool call and why it was relevant to the current task. Be specific about what was found or accomplished.",
139
- "schema": {
140
- "type": "object",
141
- "properties": {
142
- "tool_name": {
143
- "type": "string",
144
- "description": "The name of the tool that was called"
145
- },
146
- "summary": {
147
- "type": "string",
148
- "description": "Brief summary of what was accomplished. Keep it to 3-5 words."
149
- },
150
- "status": {
151
- "type": "string",
152
- "enum": ["success", "error", "in_progress"],
153
- "description": "Status of the tool call"
154
- }
155
- },
156
- "required": ["tool_name", "summary"]
157
- }
158
- }
159
- ]`}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Define structured components for status updates. Each component has an id, name, description, and JSON schema."})]})]})]})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsx)(bV,{contextConfig:l,updateMetadata:v})]})};function bY({selectedNodeId:a,errorHelpers:b}){let{updateNodeData:c}=(0,e.VH)(),{markUnsaved:d}=ah(),f=(0,i.useRef)({}),g=(0,i.useCallback)((a,b)=>{b?f.current[a]=b:delete f.current[a]},[]),h=(0,i.useCallback)(a=>b?.getFieldErrorMessage(a),[b]),j=(0,i.useCallback)((b,e)=>{c(a,{[b]:e}),d()},[a,c,d]),k=(0,i.useCallback)(a=>{let{name:b,value:c}=a.target;j(b,c)},[j]),l=(0,i.useCallback)((a,b)=>{a.split(".").length,j(a,b)},[j]),m=(0,i.useCallback)((a,b,c)=>{let d=a.split(".");if(1===d.length)j(a,b);else{let[a,...e]=d,f={...c?.[a]||{}},g=f;for(let a=0;a<e.length-1;a++){let b=e[a];b in g&&null!==g[b]&&void 0!==g[b]||(g[b]={}),g=g[b]}let h=e[e.length-1];if(null==b||""===b){if(delete g[h],0===Object.keys(f).length)return void j(a,null)}else g[h]=b;j(a,f)}},[j]);return{updateField:j,updatePath:l,updateNestedPath:m,handleInputChange:k,getFieldError:h,setFieldRef:g,markUnsaved:d}}var bZ=c(66155),b$=c(63337),b_=c(39729),b0=c(63284),b1=c(61678),b2=c.n(b1);function b3({message:a,actionText:b,actionHref:c}){return(0,d.jsxs)("div",{className:"flex flex-col gap-2 h-full justify-center items-center",children:[(0,d.jsx)("p",{className:"text-sm text-gray-400 dark:text-white/50",children:a}),(0,d.jsx)("div",{className:"inline-block",children:c&&(0,d.jsxs)(b2(),{target:"_blank",rel:"noopener noreferrer",href:c,className:"font-mono gap-2 text-xs flex items-center uppercase font-medium text-gray-500 hover:text-gray-700",children:[b,(0,d.jsx)(b0.A,{className:"w-4 h-4"})]})})]})}function b4({selectedComponents:a,handleToggle:b,availableComponents:c,emptyStateMessage:e,emptyStateActionText:f,emptyStateActionHref:g,placeholder:h="Select components..."}){let[j,k]=(0,i.useState)(!1);return(0,d.jsx)("div",{className:"flex w-full",children:(0,d.jsxs)(b_.AM,{open:j,onOpenChange:k,children:[(0,d.jsx)(b_.Wv,{asChild:!0,children:(0,d.jsxs)(aD.$,{variant:"outline",role:"combobox","aria-expanded":j,className:"w-full justify-between bg-transparent text-gray-700",children:[0===a.length?(0,d.jsx)("div",{className:"text-muted-foreground",children:h}):`${a.length} selected`,(0,d.jsx)(bZ.A,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,d.jsx)(b_.hl,{className:"w-[var(--radix-popover-trigger-width)] p-0",children:(0,d.jsxs)(b$.uB,{children:[(0,d.jsx)(b$.G7,{placeholder:"Search components..."}),(0,d.jsx)(b$.xL,{children:(0,d.jsx)(b3,{message:e||"No components found.",actionText:f,actionHref:g})}),(0,d.jsx)(b$.oI,{className:"max-h-64",children:(0,d.jsx)(b$.L$,{children:c.map(({id:c,name:e,description:f})=>(0,d.jsxs)(b$.h_,{onSelect:()=>b(c),className:"flex items-start gap-3 p-3 group cursor-pointer",children:[(0,d.jsx)(bc.S,{checked:a.includes(c),className:"mt-0.5 [&_svg]:!text-primary-foreground"}),(0,d.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,d.jsx)("div",{className:"flex items-center gap-2 mb-1",children:(0,d.jsx)("span",{className:"font-medium",children:e})}),f&&(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:f})]})]},c))})})]})})]})})}function b5({label:a,count:b}){return(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(bd.J,{children:a}),(0,d.jsx)(G.E,{variant:"code",className:"border-none px-2 text-[10px] text-muted-foreground",children:b})]})}function b6({selectedComponents:a,componentLookup:b,handleToggle:c}){return(0,d.jsx)("div",{className:"space-y-2",children:(0,d.jsx)("div",{className:"flex flex-wrap gap-2",children:a.map(a=>{let e=b[a];return(0,d.jsxs)(G.E,{variant:"code",className:"text-xs",children:[e?.name||a,(0,d.jsx)(aD.$,{variant:"ghost",size:"icon-sm",className:" size-3 ml-1",onClick:()=>c(a),children:(0,d.jsx)(aB.A,{className:"size-3"})})]},a)})})})}function b7({label:a,componentLookup:b,selectedComponents:c,onSelectionChange:e,emptyStateMessage:f,emptyStateActionText:g,emptyStateActionHref:h,placeholder:i="Select components..."}){let j=a=>{e(c.includes(a)?c.filter(b=>b!==a):[...c,a])};return(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)(b5,{label:a,count:c.length}),c.length>0&&(0,d.jsx)(b6,{selectedComponents:c,componentLookup:b,handleToggle:j})]}),(0,d.jsx)(b4,{selectedComponents:c,handleToggle:j,availableComponents:Object.values(b),emptyStateMessage:f,emptyStateActionText:g,emptyStateActionHref:h,placeholder:i})]})}function b8({models:a,updatePath:b,projectModels:c,graphModels:e}){let f=a?.structuredOutput||a?.summarizer;return a?.base||a?.structuredOutput||a?.summarizer,(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Models",description:"Configure agent-level models.",titleTooltip:(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{children:"How model inheritance works:"}),(0,d.jsx)(bk.O,{})]})}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:a?.base?.model||"",onValueChange:a=>{b("models.base.model",a||void 0)},inheritedValue:e?.base?.model||c?.base?.model,label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Base model",(0,d.jsx)(bp,{...bq("agent",a?.base?.model,e?.base?.model,c?.base?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Primary model for general agent responses"})]}),(0,d.jsxs)(bx,{defaultOpen:!!f,title:"Advanced Model Options",children:[a?.base?.model&&(0,d.jsx)(bj.y,{name:"base-provider-options",label:"Base model provider options",onChange:a=>{b("models.base.providerOptions",a)},value:a?.base?.providerOptions||"",placeholder:`{
160
- "temperature": 0.7,
161
- "maxTokens": 2048
162
- }`}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:a?.structuredOutput?.model||"",onValueChange:a=>{b("models.structuredOutput.model",a||void 0)},inheritedValue:e?.structuredOutput?.model||c?.structuredOutput?.model||a?.base?.model||e?.base?.model||c?.base?.model,label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Structured output model",(0,d.jsx)(bp,{...bq("agent",a?.structuredOutput?.model,e?.structuredOutput?.model,c?.structuredOutput?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"The model used for structured output and components (defaults to base model)"})]}),a?.structuredOutput?.model&&(0,d.jsx)(bj.y,{name:"structured-provider-options",label:"Structured output model provider options",onChange:a=>{b("models.structuredOutput.providerOptions",a)},value:a?.structuredOutput?.providerOptions||"",placeholder:`{
163
- "temperature": 0.1,
164
- "maxTokens": 1024
165
- }`}),(0,d.jsxs)("div",{className:"relative space-y-2",children:[(0,d.jsx)(bR.B,{value:a?.summarizer?.model||"",onValueChange:a=>{b("models.summarizer.model",a||void 0)},inheritedValue:e?.summarizer?.model||c?.summarizer?.model||a?.base?.model||e?.base?.model||c?.base?.model,label:(0,d.jsxs)("div",{className:"flex items-center gap-2",children:["Summarizer model",(0,d.jsx)(bp,{...bq("agent",a?.summarizer?.model,e?.summarizer?.model,c?.summarizer?.model),size:"sm"})]})}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"The model used for summarization tasks (defaults to base model)"})]}),a?.summarizer?.model&&(0,d.jsx)(bj.y,{name:"summarizer-provider-options",label:"Summarizer model provider options",onChange:a=>{b("models.summarizer.providerOptions",a)},value:a?.summarizer?.providerOptions||"",placeholder:`{
166
- "temperature": 0.3,
167
- "maxTokens": 1024
168
- }`})]})]})}let b9=()=>(0,d.jsxs)("ul",{className:"space-y-1.5 list-disc list-outside pl-4",children:[(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"stepCountIs"}),": Project → Agent only (agent-level execution limit)"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Explicit settings"})," always take precedence over inherited values"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Agent scope"}),": This limit applies only to this specific agent's execution steps"]}),(0,d.jsxs)("li",{children:[(0,d.jsx)("span",{className:"font-medium",children:"Independent from transfers"}),": Steps are counted per agent, transfers are counted per conversation"]})]});function ca({selectedNode:a,dataComponentLookup:b,artifactComponentLookup:c,errorHelpers:e}){let{tenantId:f,projectId:g}=(0,h.useParams)(),j=a.data?.dataComponents||[],k=a.data?.artifactComponents||[],{project:l}=bw(),m=ai(a=>a.metadata),{updatePath:n,updateNestedPath:o,getFieldError:p,setFieldRef:q}=bY({selectedNodeId:a.id,errorHelpers:e}),r=(0,i.useCallback)((b,c)=>{o(b,c,a.data)},[o,a.data]),s=(0,i.useCallback)(a=>{n("id",a)},[n]);return bv({nameValue:a.data.name,idValue:a.data.id,onIdChange:s,isEditing:!1}),(0,d.jsxs)("div",{className:"space-y-8 flex flex-col",children:[(0,d.jsx)(bP,{ref:a=>q("name",a),id:"name",name:"name",label:"Name",value:a.data.name||"",onChange:a=>n("name",a.target.value),placeholder:"Support agent",error:p("name"),isRequired:!0}),(0,d.jsx)(bP,{ref:a=>q("id",a),id:"id",name:"id",label:"Id",value:a.data.id||"",onChange:a=>n("id",a.target.value),placeholder:"my-agent",error:p("id"),description:"Choose a unique identifier for this agent. Using an existing id will replace that agent.",isRequired:!0}),(0,d.jsx)(bQ,{ref:a=>q("description",a),id:"description",name:"description",label:"Description",value:a.data.description||"",onChange:a=>n("description",a.target.value),placeholder:"This agent is responsible for...",error:p("description")}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bO,{id:"prompt",value:a.data.prompt||"",onChange:a=>n("prompt",a),placeholder:"You are a helpful assistant...","data-invalid":e?.hasFieldError("prompt")?"":void 0,className:"w-full max-h-96 data-invalid:border-red-300 data-invalid:focus-visible:border-red-300 data-invalid:focus-visible:ring-red-300",label:"Prompt",isRequired:!0}),p("prompt")&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:p("prompt")})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsx)(b8,{models:a.data.models,updatePath:r,projectModels:l?.models,graphModels:m?.models}),(0,d.jsx)(bt.Separator,{}),(0,d.jsxs)("div",{className:"space-y-8",children:[(0,d.jsx)(bU,{title:"Execution limits",description:"Configure agent-level execution limits for steps within this agent.",titleTooltip:(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{children:"How execution limit inheritance works:"}),(0,d.jsx)(b9,{})]})}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(bd.J,{htmlFor:"step-count",children:"Max steps"}),(0,d.jsx)(bp,{...br("agent","stepCountIs",a.data.stopWhen?.stepCountIs,l?.stopWhen?.stepCountIs),size:"sm"})]}),(0,d.jsx)(bs.p,{id:"step-count",type:"number",min:"1",max:"1000",value:a.data.stopWhen?.stepCountIs||"",onChange:b=>{let c=b.target.value?parseInt(b.target.value,10):void 0;n("stopWhen",{...a.data.stopWhen||{},stepCountIs:c})},placeholder:"50"}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground",children:"Maximum number of execution steps for this agent (defaults to 50 if not set)"})]})]}),(0,d.jsx)(bt.Separator,{}),(0,d.jsx)(b7,{label:"Components",componentLookup:b,selectedComponents:j,onSelectionChange:a=>{n("dataComponents",a)},emptyStateMessage:"No components found.",emptyStateActionText:"Create component",emptyStateActionHref:`/${f}/projects/${g}/components/new`,placeholder:"Select components..."}),(0,d.jsx)(b7,{label:"Artifacts",componentLookup:c,selectedComponents:k,onSelectionChange:a=>{n("artifactComponents",a)},emptyStateMessage:"No artifacts found.",emptyStateActionText:"Create artifact",emptyStateActionHref:`/${f}/projects/${g}/artifacts/new`,placeholder:"Select artifacts..."})]})}function cb({label:a}){return(0,d.jsx)("div",{className:"flex gap-2",children:(0,d.jsx)(bd.J,{children:a})})}function cc({selectedCredentialId:a,onSelect:b,availableCredentials:c,placeholder:e="Select credential..."}){let[f,g]=(0,i.useState)(!1),{tenantId:j,projectId:k}=(0,h.useParams)();return(0,d.jsx)("div",{className:"flex w-full",children:(0,d.jsxs)(b_.AM,{open:f,onOpenChange:g,children:[(0,d.jsx)(b_.Wv,{asChild:!0,children:(0,d.jsxs)(aD.$,{variant:"outline",role:"combobox","aria-expanded":f,className:"w-full justify-between bg-transparent text-gray-700",children:[null===a?(0,d.jsx)("div",{className:"text-muted-foreground",children:"No Authentication"}):a?(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:"font-medium",children:c.find(b=>b.id===a)?.id||a}),(0,d.jsxs)("span",{className:"text-xs text-muted-foreground",children:["(",c.find(b=>b.id===a)?.type||"Unknown",")"]})]}):(0,d.jsx)("div",{className:"text-muted-foreground",children:e}),(0,d.jsx)(bZ.A,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),(0,d.jsx)(b_.hl,{className:"w-[var(--radix-popover-trigger-width)] p-0",children:(0,d.jsxs)(b$.uB,{children:[(0,d.jsx)(b$.G7,{placeholder:"Search credentials..."}),(0,d.jsxs)(b$.oI,{children:[(0,d.jsxs)(b$.xL,{children:[" ",(0,d.jsx)(b3,{message:"No credentials found.",actionText:"Create credential",actionHref:`/${j}/projects/${k}/credentials/new`})]}),(0,d.jsxs)(b$.L$,{children:[(0,d.jsx)(b$.h_,{value:"",onSelect:()=>{b(null),g(!1)},className:"cursor-pointer",children:(0,d.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"font-medium",children:"No Authentication"}),(0,d.jsx)("div",{className:"text-xs text-muted-foreground",children:"Unsecured connection"})]}),null===a&&(0,d.jsx)(bn.A,{className:"ml-2 h-4 w-4"})]})}),c.map(c=>(0,d.jsx)(b$.h_,{value:c.id,onSelect:()=>{b(c.id),g(!1)},className:"cursor-pointer",children:(0,d.jsxs)("div",{className:"flex items-center justify-between w-full",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"font-medium",children:c.id}),(0,d.jsx)("div",{className:"text-xs text-muted-foreground",children:c.type})]}),a===c.id&&(0,d.jsx)(bn.A,{className:"ml-2 h-4 w-4"})]})},c.id))]})]})]})})]})})}function cd({label:a="Credential",value:b,credentialLookup:c,onValueChange:e,placeholder:f="Select credential..."}){return(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)("div",{className:"flex flex-col gap-2",children:(0,d.jsx)(cb,{label:a})}),(0,d.jsx)(cc,{selectedCredentialId:b||null,onSelect:a=>{e?.(a)},availableCredentials:Object.values(c),placeholder:f})]})}function ce({selectedNode:a,credentialLookup:b,errorHelpers:c}){let{handleInputChange:e,getFieldError:f,setFieldRef:g,updateField:h}=bY({selectedNodeId:a.id,errorHelpers:c}),j=(0,i.useCallback)(a=>{h("id",a)},[h]);return bv({nameValue:a.data.name,idValue:a.data.id,onIdChange:j,isEditing:!1}),(0,d.jsxs)("div",{className:"space-y-8 flex flex-col",children:[(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"External agents are agents external to a graph that can communicate using the A2A (Agent-to-Agent) protocol. External agents enable you to delegate tasks between graphs within the agent framework or to third-party services."}),(0,d.jsx)(bP,{ref:a=>g("name",a),id:"name",name:"name",label:"Name",value:a.data.name||"",onChange:e,placeholder:"Support agent",error:f("name")}),(0,d.jsx)(bP,{ref:a=>g("id",a),id:"id",name:"id",label:"Id",value:a.data.id||"",onChange:e,placeholder:"my-external-agent",error:f("id"),description:"Choose a unique identifier for this agent. Using an existing id will replace that agent.",isRequired:!0}),(0,d.jsx)(bQ,{ref:a=>g("description",a),id:"description",name:"description",label:"Description",value:a.data.description||"",onChange:e,placeholder:"This agent is responsible for...",error:f("description")}),(0,d.jsx)(bP,{ref:a=>g("baseUrl",a),id:"baseUrl",name:"baseUrl",label:"Host URL",value:a.data.baseUrl||"",onChange:e,placeholder:"https://api.example.com/agent",error:f("baseUrl"),tooltip:"This URL is used to discover the agent's capabilities and communicate with it using the A2A protocol. For locally hosted graphs defined with the agent-framework this would be: http://localhost:3002/tenants/:tenantId/projects/:projectId/agents/:graphId"}),(0,d.jsx)(bj.y,{name:"headers",label:"Headers",value:a.data.headers,onChange:a=>h("headers",a),placeholder:"{}",className:""}),(0,d.jsx)(cd,{label:"Credential",credentialLookup:b,value:"string"==typeof a.data.credentialReferenceId?a.data.credentialReferenceId:null,onValueChange:a=>h("credentialReferenceId",a||""),placeholder:"Select a credential"})]})}var cf=c(39878);function cg({selectedNode:a}){let{getFieldError:b,setFieldRef:c,updatePath:e}=bY({selectedNodeId:a.id}),f=a.data,[g,h]=(0,i.useState)(String(f.name||"")),[j,k]=(0,i.useState)(String(f.description||"")),[l,m]=(0,i.useState)(String(f.code||"")),[n,o]=(0,i.useState)(f.inputSchema?JSON.stringify(f.inputSchema,null,2):""),[p,q]=(0,i.useState)(f.dependencies?JSON.stringify(f.dependencies,null,2):""),r=(0,i.useCallback)(a=>{if(o(a),!a?.trim())return void e("inputSchema",void 0);try{let b=JSON.parse(a);e("inputSchema",b)}catch{}},[e]),s=(0,i.useCallback)(a=>{if(q(a),!a?.trim())return void e("dependencies",void 0);try{let b=JSON.parse(a);e("dependencies",b)}catch{}},[e]),t=(0,i.useCallback)(a=>{let b=a.target.value;h(b),e("name",b)},[e]),u=(0,i.useCallback)(a=>{m(a),e("code",a)},[e]),v=(0,i.useCallback)(a=>{let b=a.target.value;k(b),e("description",b)},[e]);return(0,d.jsxs)("div",{className:"space-y-6",children:[(0,d.jsx)(bP,{ref:a=>c("name",a),id:"function-tool-name",name:"name",label:"Name",value:g,onChange:t,placeholder:"Enter function tool name...",error:b("name"),isRequired:!0}),(0,d.jsx)(bQ,{ref:a=>c("description",a),id:"function-tool-description",name:"description",label:"Description",value:j,onChange:v,placeholder:"Enter function tool description...",error:b("description"),isRequired:!0,maxHeight:"max-h-32"}),(0,d.jsx)(bO,{id:"function-tool-code",label:"Code",value:l,onChange:u,placeholder:"Enter function code here...","data-invalid":b("code")?"":void 0,isRequired:!0,className:"font-mono text-sm data-invalid:border-red-300 data-invalid:focus-visible:border-red-300 data-invalid:focus-visible:ring-red-300"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"JavaScript function code to be executed by the tool. The function will receive arguments based on the input schema and should return a result."}),b("code")&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:b("code")}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("div",{className:"text-sm font-medium",children:["Input Schema ",(0,d.jsx)("span",{className:"text-red-500",children:"*"})]}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"JSON schema defining the parameters that the function will receive. This defines the structure and validation rules for the function's input arguments."}),(0,d.jsx)(cf.$,{value:n,onChange:r,placeholder:`{
169
- "type": "object",
170
- "properties": {
171
- "param1": {
172
- "type": "string",
173
- "description": "Description of parameter 1"
174
- },
175
- "param2": {
176
- "type": "number",
177
- "description": "Description of parameter 2"
178
- }
179
- },
180
- "required": ["param1"]
181
- }`}),b("inputSchema")&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:b("inputSchema")})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("div",{className:"text-sm font-medium",children:"Dependencies"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"External npm packages that the function code requires. These packages will be installed before executing the function."}),(0,d.jsx)(cf.$,{value:p,onChange:s,placeholder:`{
182
- "axios": "^1.6.0",
183
- "lodash": "^4.17.21"
184
- }`}),b("dependencies")&&(0,d.jsx)("p",{className:"text-sm text-red-600",children:b("dependencies")})]})]})}function ch({selectedNode:a,agentToolConfigLookup:b}){let{updateNodeData:c}=(0,e.VH)(),{tenantId:f,projectId:g}=(0,h.useParams)(),{markUnsaved:j}=ah(),{toolLookup:k,edges:l}=ai(a=>({toolLookup:a.toolLookup,edges:a.edges}));(0,i.useCallback)(()=>(function(a,b,c){if(void 0!==a.data.tempHeaders)return a.data.tempHeaders;let d=a.data.relationshipId;if(d)for(let a of Object.values(b)){let b=a[d];if(b)return b.headers||{}}return{}})(a,b,0),[a,b,l]);let[m,n]=(0,i.useState)("{}"),o=k[a.data.toolId],p=o?.availableTools,q=(0,W.O)({availableTools:p,activeTools:o?.config&&"mcp"===o.config.type?o.config.mcp.activeTools:void 0});if(!o)return(0,d.jsx)("div",{className:"flex items-center justify-center p-4",children:(0,d.jsxs)("div",{className:"text-sm text-muted-foreground",children:["Tool data not found for ",a.data.toolId]})});let r=Y(a,b,l),s=r&&Array.isArray(r)?r.filter(a=>!q?.some(b=>b.name===a)):[],t=b=>{let d,e=null===r?q?.map(a=>a.name)||[]:[...r];d=e.includes(b)?e.filter(a=>a!==b):[...e,b];let f=q?.map(a=>a.name)||[],g=d;d.length===f.length&&f.every(a=>d.includes(a))&&(g=null),c(a.id,{...a.data,tempSelectedTools:g}),j()},u=b=>{let{name:d,value:e}=b.target;a&&(c(a.id,{[d]:e}),j())},v=null;try{v=o?(0,ay.T)(o).type:null}catch(a){console.error(a)}return(0,d.jsxs)("div",{className:"space-y-8",children:[o?.imageUrl&&(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(X.u,{imageUrl:o.imageUrl,name:o.name,provider:v||void 0,size:32,className:"rounded-lg"}),(0,d.jsx)("span",{className:"font-medium text-sm truncate",children:o.name})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"node-id",children:"Id"}),(0,d.jsx)(bs.p,{id:"node-id",value:a.data.toolId,disabled:!0})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"name",children:"Name"}),(0,d.jsx)(bs.p,{id:"name",name:"name",value:o?.name||"",onChange:u,placeholder:"MCP server",className:"w-full",disabled:!0})]}),(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"url",children:"URL"}),(0,d.jsx)(bs.p,{id:"url",name:"url",value:o?.config&&"mcp"===o.config.type?o.config.mcp.server.url:"",onChange:u,placeholder:"https://mcp.inkeep.com",disabled:!0,className:"w-full"})]}),o?.imageUrl&&(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)(bd.J,{htmlFor:"imageUrl",children:"Image URL"}),(0,d.jsx)(bs.p,{id:"imageUrl",name:"imageUrl",value:o.imageUrl||"",onChange:u,placeholder:"https://example.com/icon.png",disabled:!0,className:"w-full"})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(bd.J,{children:"Selected tools"}),(0,d.jsx)(G.E,{variant:"code",className:"border-none px-2 text-[10px] text-gray-700 dark:text-gray-300",children:null===r?q?.length??0:r.length})]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground mb-1.5",children:"Click to select/deselect"}),q&&q.length>0||s.length>0?(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[q?.map(a=>{let b=null===r||r.includes(a.name);return(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(G.E,{variant:b?"primary":"code",className:`flex items-center gap-1 cursor-pointer transition-colors ${b?"hover:bg-primary/10":"bg-transparent dark:bg-transparent dark:hover:bg-muted/50 hover:bg-muted/100"}`,onClick:()=>t(a.name),children:[a.name,b&&(0,d.jsx)("span",{className:"text-xs",children:(0,d.jsx)(bn.A,{className:"w-2.5 h-2.5"})})]})}),(0,d.jsx)(N.TooltipContent,{className:"max-w-xs text-sm",children:(0,d.jsx)("div",{className:"line-clamp-4",children:a.description})})]},a.name)}),s.map(a=>(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsxs)(G.E,{variant:"warning",className:"flex items-center gap-1 cursor-pointer transition-colors hover:bg-primary/10 normal-case",onClick:()=>t(a),children:[a,(0,d.jsx)("span",{className:"text-xs",children:(0,d.jsx)(M.A,{className:"w-2.5 h-2.5"})})]})}),(0,d.jsx)(N.TooltipContent,{className:"max-w-xs text-sm",children:(0,d.jsx)("div",{className:"line-clamp-4",children:"This tool was selected but is not available in the MCP server. Click to remove it from the selection."})})]},`orphaned-${a}`))]}):null]}),(0,d.jsx)("div",{className:"space-y-2",children:(0,d.jsx)(bj.y,{name:"headers",label:"Headers (JSON)",value:m,onChange:b=>{n(b);try{let d=""===b.trim()?{}:JSON.parse(b);"object"!=typeof d||null===d||Array.isArray(d)||(c(a.id,{...a.data,tempHeaders:d}),j())}catch{}},placeholder:'{"X-Your-Header": "your-value", "Content-Type": "application/json"}',className:""})}),(0,d.jsx)(bm.G,{href:`/${f}/projects/${g}/mcp-servers/${a.data.toolId}/edit`,children:"Edit MCP Server"})]})}var ci=c(88735),cj=c(49413);function ck({title:a}){return(0,d.jsx)("div",{children:(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("h3",{className:"text-sm font-medium mb-2",children:a}),(0,d.jsx)("div",{className:"flex flex-col gap-2 min-w-0 min-h-0",children:[1,2,3].map(a=>(0,d.jsx)(cj.E,{className:"w-full h-[72px] rounded-lg"},a))})]})})}function cl({mcp:a,onClick:b}){let c=a.config?.type==="mcp"?a.config.mcp?.server:void 0,{id:e,name:f,availableTools:g,imageUrl:h,config:i}=a,j=(0,W.O)({availableTools:g,activeTools:i?.type==="mcp"?i.mcp?.activeTools:void 0}),k=j?.length??0;return(0,d.jsx)(aD.$,{variant:"unstyled",size:"unstyled",type:"button",className:"w-full p-3 rounded-lg border cursor-pointer transition-colors border-border hover:bg-muted/50 text-left inline-block",id:e,onClick:()=>b(a),children:(0,d.jsxs)("div",{className:"flex items-start gap-3",children:[(0,d.jsx)(X.u,{imageUrl:h,name:f,provider:f,size:32,className:"flex-shrink-0 mt-0.5"}),(0,d.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-1 gap-2 min-w-0 truncate",children:[(0,d.jsx)("span",{className:"font-medium text-sm truncate",children:f}),g&&(0,d.jsx)("div",{children:(0,d.jsx)(G.E,{variant:"code",className:"text-2xs flex-shrink-0",children:1===k?"1 tool":`${k} tools`})})]}),(0,d.jsx)("p",{className:"text-xs text-muted-foreground truncate",children:c?.url})]})]})},e)}function cm({selectedNode:a}){let{updateNode:b}=(0,e.VH)(),{tenantId:c,projectId:f}=(0,h.useParams)(),{tools:g,isLoading:k,error:l}=(()=>{let[a,b]=(0,i.useState)([]),[c,d]=(0,i.useState)(!0),[e,f]=(0,i.useState)(null),{tenantId:g,projectId:k}=(0,h.useParams)();return(0,i.useEffect)(()=>{(async()=>{try{d(!0),f(null);let a=await (0,ci.i)(g,k);b(a)}catch(b){let a=b instanceof Error?b.message:"Failed to load MCP tools";f(a),j.oR.error(a)}finally{d(!1)}})()},[g,k]),{tools:a,isLoading:c,error:e}})(),m=c=>{b(a.id,{type:Z.MCP,data:{toolId:c.id,subAgentId:null,relationshipId:null}})};return k?(0,d.jsx)(ck,{title:"Select MCP server"}):l?(0,d.jsx)(b3,{message:"Something went wrong.",actionText:"Create MCP server",actionHref:`/${c}/projects/${f}/mcp-servers/new`}):g?.length?(0,d.jsx)("div",{children:(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsx)("h3",{className:"text-sm font-medium mb-2",children:"Select MCP server"}),(0,d.jsx)("div",{className:"flex flex-col gap-2 min-w-0 min-h-0",children:g.map(a=>(0,d.jsx)(cl,{mcp:a,onClick:m},a.id))})]})}):(0,d.jsx)(b3,{message:"No MCP servers found.",actionText:"Create MCP server",actionHref:`/${c}/projects/${f}/mcp-servers/new`})}function cn({selectedNodeId:a,selectedEdgeId:b,onClose:c,backToGraph:f,isOpen:g,dataComponentLookup:h,artifactComponentLookup:j,agentToolConfigLookup:k,credentialLookup:l}){let m=(0,e.j7)(a||""),n=(0,e.Yu)(),{hasFieldError:o,getFieldErrorMessage:p,getFirstErrorField:q}=L(),r=(0,i.useMemo)(()=>b?n.find(a=>a.id===b):null,[b,n]),{heading:t,HeadingIcon:u}=(0,i.useMemo)(()=>{let a,b="";if(m){let c=af[m?.type];b=c?.name||"Node",a=c?.Icon}else if(r){let c=s[r?.type||"default"];b=c?.name||"Connection",a=c?.Icon}else b="Graph",a=a5.A;return{heading:b,HeadingIcon:a}},[m,r]),v=(0,i.useMemo)(()=>{if(m){let a=m?.type,b=m.data?.id||m.id,c={hasFieldError:a=>o(b,a),getFieldErrorMessage:a=>p(b,a),getFirstErrorField:()=>q(b)};switch(a){case Z.Agent:return(0,d.jsx)(ca,{selectedNode:m,dataComponentLookup:h,artifactComponentLookup:j,errorHelpers:c});case Z.ExternalAgent:return(0,d.jsx)(ce,{selectedNode:m,credentialLookup:l,errorHelpers:c});case Z.MCPPlaceholder:return(0,d.jsx)(cm,{selectedNode:m});case Z.MCP:return(0,d.jsx)(ch,{selectedNode:m,agentToolConfigLookup:k});case Z.FunctionTool:return(0,d.jsx)(cg,{selectedNode:m});default:return null}}return r?(0,d.jsx)(bg,{selectedEdge:r}):(0,d.jsx)(bX,{})},[m,r,h,j,o,p,q,k,l]),w=(0,i.useMemo)(()=>m||r,[m,r]);return(0,d.jsx)(a8.Root,{isOpen:g,children:g&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(a8.Header,{children:[(0,d.jsxs)("div",{className:"flex items-center relative",children:[w&&(0,d.jsx)(a8.BackButton,{onClick:f}),(0,d.jsx)(bh,{heading:t,Icon:u,className:w?"transition-all duration-300 ease-in-out group-hover:translate-x-8":""})]}),(0,d.jsx)(a8.CloseButton,{onClick:c})]}),(0,d.jsx)(a8.Content,{children:v})]})})}var co=c(69944),cp=c(8067);function cq({onSubmit:a,inPreviewDisabled:b,toggleSidePane:c,setShowPlayground:e}){let f=ai(a=>a.dirty),g=(0,i.useRef)(null),h=(0,d.jsxs)(aD.$,{disabled:f||b,variant:"outline",type:"button",onClick:()=>e(!0),children:[(0,d.jsx)(co.A,{className:"w-4 h-4 text-muted-foreground"}),"Try it"]});return(0,d.jsxs)("div",{className:"flex gap-2",children:[f||b?(0,d.jsxs)(N.Tooltip,{children:[(0,d.jsx)(N.TooltipTrigger,{asChild:!0,children:(0,d.jsx)("div",{children:h})}),(0,d.jsx)(N.TooltipContent,{children:f?"Please save your changes before trying the graph.":"Please save the graph to try it."})]}):h,(0,d.jsx)(aD.$,{onClick:a,variant:f?"default":"outline",disabled:!f&&!b,ref:g,children:b?"Save":"Save changes"}),(0,d.jsxs)(aD.$,{type:"button",variant:"outline",onClick:c,children:[(0,d.jsx)(cp.A,{className:"w-4 h-4"}),"Graph Settings"]})]})}function cr({graph:a,dataComponentLookup:b={},artifactComponentLookup:c={},toolLookup:k={},credentialLookup:m={}}){let[n,o]=(0,i.useState)(!1),p=(0,h.useRouter)(),{tenantId:s,projectId:u}=(0,h.useParams)(),v=(0,i.useMemo)(()=>[{id:(0,g.Ak)(),type:Z.Agent,position:{x:0,y:0},data:{name:"",isDefault:!0},deletable:!1}],[]),w=(0,i.useCallback)(a=>a.map(a=>{if(a.type===Z.MCP&&a.data&&"toolId"in a.data){let b=k[a.data.toolId];if(b){let c=null;return c=(0,ay.T)(b).type,{...a,data:{...a.data,name:b.name,imageUrl:b.imageUrl,provider:c}}}}return a}),[k]),{nodes:x,edges:y}=(0,i.useMemo)(()=>{let b=a?function(a){let b=[],c=[],d=Object.keys(a.subAgents);for(let c of d){let d=a.subAgents[c],e=c===a.defaultSubAgentId,f="external"===d.type,g={id:c,type:f?Z.ExternalAgent:Z.Agent,position:{x:0,y:0},data:f?{id:d.id,name:d.name,description:d.description,baseUrl:d.baseUrl,headers:(0,I.S_)(d.headers)||"{}",type:d.type,credentialReferenceId:d.credentialReferenceId}:{id:d.id,name:d.name,isDefault:e,prompt:d.prompt,description:d.description,dataComponents:d.dataComponents,artifactComponents:d.artifactComponents,models:d.models?{base:d.models.base?{model:d.models.base.model??"",providerOptions:d.models.base.providerOptions?(0,I.S_)(d.models.base.providerOptions):void 0}:void 0,structuredOutput:d.models.structuredOutput?{model:d.models.structuredOutput.model??"",providerOptions:d.models.structuredOutput.providerOptions?(0,I.S_)(d.models.structuredOutput.providerOptions):void 0}:void 0,summarizer:d.models.summarizer?{model:d.models.summarizer.model??"",providerOptions:d.models.summarizer.providerOptions?(0,I.S_)(d.models.summarizer.providerOptions):void 0}:void 0}:void 0,stopWhen:d.stopWhen?{stepCountIs:d.stopWhen.stepCountIs}:void 0,type:d.type,tools:d.canUse?d.canUse.map(a=>a.toolId):[],selectedTools:d.canUse?d.canUse.reduce((a,b)=>(b.toolSelection&&(a[b.toolId]=b.toolSelection),a),{}):void 0,headers:d.canUse?d.canUse.reduce((a,b)=>(b.headers&&(a[b.toolId]=b.headers),a),{}):void 0},deletable:!e};b.push(g)}for(let e of d){let d=a.subAgents[e];if("canUse"in d&&d.canUse&&d.canUse.length>0)for(let f of d.canUse){let d=f.toolId,h=(0,g.Ak)(),i=f.agentToolRelationId,j=a.tools?.[d]||a.functionTools?.[d],k=a.tools?.[d]?Z.MCP:Z.FunctionTool,l={toolId:d,subAgentId:e,relationshipId:i,name:j?.name,description:j?.description,imageUrl:j?.imageUrl};if(k===Z.FunctionTool&&a.functionTools?.[d]){let b=a.functionTools[d].functionId;if(b){l.functionId=b;let c=a.functions?.[b];c&&(l.inputSchema=c.inputSchema,l.code=c.executeCode,l.dependencies=c.dependencies)}}if(!j)continue;let m={id:h,type:k,position:{x:0,y:0},data:l};b.push(m);let n=k===Z.FunctionTool?ad:_,o={id:`edge-${h}-${e}`,type:q.Default,source:e,sourceHandle:aa,target:h,targetHandle:n};c.push(o)}}let e=new Set;for(let b of d){let d=a.subAgents[b];if("canTransferTo"in d&&d.canTransferTo){for(let f of d.canTransferTo)if(a.subAgents[f]){let g=b===f,h=g?`self-${b}`:[b,f].sort().join("-");if(!e.has(h)){e.add(h);let i=a.subAgents[f],j="canTransferTo"in d&&d.canTransferTo?.includes(f)||!1,k="canTransferTo"in i&&i.canTransferTo?.includes(b)||!1,l="canDelegateTo"in d&&d.canDelegateTo?.includes(f)||!1,m="canDelegateTo"in i&&i.canDelegateTo?.includes(b)||!1,n="external"===i.type,o={id:g?`edge-self-${b}`:`edge-${f}-${b}`,type:g?q.SelfLoop:n?q.A2AExternal:q.A2A,source:b,sourceHandle:aa,target:f,targetHandle:n?ac:ab,selected:!1,data:{relationships:{transferTargetToSource:k,transferSourceToTarget:j,delegateTargetToSource:m,delegateSourceToTarget:l}}};c.push(o)}}}if("canDelegateTo"in d&&d.canDelegateTo){for(let f of d.canDelegateTo)if(a.subAgents[f]){let g=b===f,h=g?`self-${b}`:[b,f].sort().join("-");if(!e.has(h)){e.add(h);let i=a.subAgents[f],j="canTransferTo"in d&&d.canTransferTo?.includes(f)||!1,k="canTransferTo"in i&&i.canTransferTo?.includes(b)||!1,l="canDelegateTo"in d&&d.canDelegateTo?.includes(f)||!1,m="canDelegateTo"in i&&i.canDelegateTo?.includes(b)||!1,n="external"===i.type,o={id:g?`edge-self-${b}`:`edge-${f}-${b}`,type:g?q.SelfLoop:n?q.A2AExternal:q.A2A,source:b,sourceHandle:aa,target:f,targetHandle:n?ac:ab,selected:!1,data:{relationships:{transferTargetToSource:k,transferSourceToTarget:j,delegateTargetToSource:m,delegateSourceToTarget:l}}};c.push(o)}}}}return{nodes:K(b,c),edges:c}}(a):{nodes:v,edges:t};return{...b,nodes:w(b.nodes)}},[a,w,v]),z=(0,i.useMemo)(()=>{if(!a?.subAgents)return{};let b={};return Object.entries(a.subAgents).forEach(([a,c])=>{if("canUse"in c&&c.canUse){let d={};c.canUse.forEach(a=>{if(a.agentToolRelationId){let b={toolId:a.toolId};a.toolSelection&&(b.toolSelection=a.toolSelection),a.headers&&(b.headers=a.headers),d[a.agentToolRelationId]=b}}),Object.keys(d).length>0&&(b[a]=d)}}),b},[a?.subAgents]),{screenToFlowPosition:A,updateNodeData:B,fitView:C,getNodes:D,getEdges:E,getIntersectingNodes:F}=(0,e.VH)(),{storeNodes:G,edges:H,metadata:J}=ai(a=>({storeNodes:a.nodes,edges:a.edges,metadata:a.metadata})),{setNodes:M,setEdges:N,onNodesChange:O,onEdgesChange:P,setMetadata:Q,setInitial:R,markSaved:S,clearSelection:T,markUnsaved:U}=ah(),V=(0,i.useMemo)(()=>w(G),[G,w]),{nodeId:X,edgeId:af,setQueryState:ag,openGraphPane:aj,isOpen:ak}=ar(),{errors:ap,showErrors:aq,setErrors:as,clearErrors:at,setShowErrors:au}=L(),ax=(0,i.useCallback)(a=>{O(a);let b=a.filter(a=>"replace"===a.type);b.length&&setTimeout(()=>{let a=D();for(let c of b){let b=a.find(a=>a.id===c.id);if(b&&F(b).length>0)return void M(a=>K(a,E()))}},0)},[D,E,F,M,O]),az=(0,i.useCallback)(a=>{U();let b=a.source===a.target,c={id:b?`edge-self-${a.source}`:function(a,b){let[c,d]=[a,b].sort();return`edge-${c}-${d}`}(a.source,a.target),...a},{sourceHandle:d,targetHandle:e}=a;if(b?c={...c,type:q.SelfLoop,selected:!0,data:{relationships:{transferTargetToSource:!1,transferSourceToTarget:!0,delegateTargetToSource:!1,delegateSourceToTarget:!1}}}:(d===aa||d===ab)&&(e===ab||e===aa)?c={...c,type:q.A2A,selected:!0,data:{relationships:{transferTargetToSource:!1,transferSourceToTarget:!0,delegateTargetToSource:!1,delegateSourceToTarget:!1}}}:(d===aa||d===ab)&&e===ac&&(c={...c,type:q.A2AExternal,data:{relationships:{transferTargetToSource:!1,transferSourceToTarget:!1,delegateTargetToSource:!1,delegateSourceToTarget:!0}}}),e===_&&(d===aa||d===ab)){let b=V.find(b=>b.id===a.target);if(b&&b.type===Z.MCP){let c=a.source;B(b.id,{...b.data,subAgentId:c,relationshipId:null})}}requestAnimationFrame(()=>{l.execute(new am(c,{deselectOtherEdgesIfA2A:!0}))})},[]),aA=(0,i.useCallback)(({sourceHandle:a,targetHandle:b})=>a!==_||b!==_,[]),aB=(0,i.useCallback)(a=>{a.preventDefault(),a.dataTransfer.dropEffect="move"},[]),aC=(0,i.useCallback)(a=>{a.preventDefault();let b=a.dataTransfer.getData("application/reactflow");if(!b)return;let c=JSON.parse(b),d=A({x:a.clientX,y:a.clientY}),e={id:(0,g.Ak)(),type:c.type,position:d,selected:!0,data:{...ae[c.type]}};T(),l.execute(new al(e))},[A,T]),aD=(0,i.useCallback)(({nodes:a,edges:b})=>{let c=1===a.length?a[0]:null,d=1===b.length&&(b[0]?.type===q.A2A||b[0]?.type===q.SelfLoop)?b[0]:null,e=ak?"graph":null;ag({pane:c?"node":d?"edge":e,nodeId:c?c.id:null,edgeId:d?d.id:null},{history:"replace"})},[ag,ak]);(0,e.p4)({onChange:aD});let{undo:aE,redo:aF,deleteSelected:aG}=ah();(0,i.useCallback)(a=>{if(a.target?.classList.contains("react-flow__node")){if((a.metaKey||a.ctrlKey)&&"z"===a.key.toLowerCase()){a.preventDefault(),a.shiftKey?aF():aE();return}if("Delete"===a.key||"Backspace"===a.key){let b=a.target;b&&("INPUT"===b.tagName||"TEXTAREA"===b.tagName||b.isContentEditable)||(a.preventDefault(),aG())}}},[aE,aF,aG]);let aK=(0,i.useCallback)(()=>{N(a=>a.map(a=>({...a,selected:!1}))),M(a=>a.map(a=>({...a,selected:!1}))),ag({pane:null,nodeId:null,edgeId:null})},[ag,N,M]),aL=(0,i.useCallback)(()=>{N(a=>a.map(a=>({...a,selected:!1}))),M(a=>a.map(a=>({...a,selected:!1}))),ag({pane:"graph",nodeId:null,edgeId:null})},[ag,N,M]),aM=(0,i.useCallback)(a=>{let b=V.find(b=>b.id===a||b.data?.id===a);b&&(M(a=>a.map(a=>({...a,selected:a.id===b.id}))),N(a=>a.map(a=>({...a,selected:!1}))),ag({pane:"node",nodeId:b.id,edgeId:null}))},[M,N,V,ag]),aO=(0,i.useCallback)(a=>{let b=H.find(b=>b.id===a);b&&(N(a=>a.map(a=>({...a,selected:a.id===b.id}))),M(a=>a.map(a=>({...a,selected:!1}))),ag({pane:"edge",nodeId:null,edgeId:b.id}))},[N,M,H,ag]),aP=(0,i.useCallback)(async()=>{let d=function(a,b,c){let d=function(a,b,c){let d=[];for(let e of a.filter(a=>a.type===Z.MCP)){let a=c[e.data.toolId];if(!a)continue;let f=(0,W.O)({availableTools:a.availableTools,activeTools:a.config?.mcp?.activeTools}),g=Y(e,b,[]),h=g&&Array.isArray(g)?g.filter(a=>!f?.some(b=>b.name===a)):[];h.length>0&&d.push({nodeId:e.data.toolId,nodeName:e.data.name||a.name||"Unnamed MCP Server",orphanedTools:h})}let e=d.reduce((a,b)=>a+b.orphanedTools.length,0);return{hasOrphanedTools:d.length>0,orphanedToolsByNode:d,totalOrphanedCount:e}}(a,b,c);return d.hasOrphanedTools?function(a){let b=a.orphanedToolsByNode.length,c=a.totalOrphanedCount;if(1===b){let b=a.orphanedToolsByNode[0],d=b.orphanedTools.join(", ");return`The MCP server "${b.nodeName}" has ${c} selected ${c>1?"tools":"tool"} that ${c>1?"are":"is"} no longer available: ${d}. ${c>1?"These tools":"This tool"} will not be available at runtime. Please update your tool selections.`}return`${b} MCP servers have a total of ${c} selected tools that are no longer available. These orphaned tools will not be available at runtime. Please update your tool selections.`}(d):null}(V,z,k);d&&j.oR.warning(d,{closeButton:!0,duration:6e3});let e=function(a,b,c,d,e,f){let h={},i={},j={},k=new Set,l=new Set,m="";for(let c of a)if(c.type===Z.Agent){let d=c.data.id||c.id,e=c.data.dataComponents||[],g=c.data.artifactComponents||[];e.forEach(a=>{k.add(a)}),g.forEach(a=>{l.add(a)});let n=function(a){if(a&&"object"==typeof a&&Object.values(a).some(a=>null!=a&&""!==String(a).trim()))return{base:a.base?{model:a.base.model,providerOptions:ao(a.base.providerOptions)}:void 0,structuredOutput:a.structuredOutput?{model:a.structuredOutput.model,providerOptions:ao(a.structuredOutput.providerOptions)}:void 0,summarizer:a.summarizer?{model:a.summarizer.model,providerOptions:ao(a.summarizer.providerOptions)}:void 0}}(c.data.models),o=c.data.stopWhen,p=[];for(let e of b.filter(b=>b.source===c.id&&a.some(a=>a.id===b.target&&a.type===Z.MCP))){let b=a.find(a=>a.id===e.target);if(b&&b.type===Z.MCP){let a=b.data.toolId;if(a){let c=b.data.tempSelectedTools,e=null,g=b.data.relationshipId;if(void 0!==c)Array.isArray(c)?e=c:null===c&&(e=null);else{let a=g?f?.[d]?.[g]:null;e=a?.toolSelection?a.toolSelection:null}let h=b.data.tempHeaders,i=null;if(void 0!==h)"object"!=typeof h||null===h||Array.isArray(h)||(i=h);else{let a=g?f?.[d]?.[g]:null;a?.headers&&(i=a.headers)}p.push({toolId:a,toolSelection:e,headers:i,...g&&{agentToolRelationId:g}})}}}for(let d of b.filter(b=>b.source===c.id&&a.some(a=>a.id===b.target&&a.type===Z.FunctionTool))){let b=a.find(a=>a.id===d.target);if(b&&b.type===Z.FunctionTool){let a=b.data,c=a.functionToolId||a.toolId||b.id,d=a.relationshipId,e=a.functionId||c,f={id:c,name:a.name||"",description:a.description||"",functionId:e},g={id:e,name:a.name||"",description:a.description||"",executeCode:a.code||"",inputSchema:a.inputSchema||{},dependencies:a.dependencies||{}};j[e]=g,i[c]=f,p.push({toolId:c,toolSelection:null,headers:null,...d&&{agentToolRelationId:d}})}}let q={id:d,name:c.data.name,description:c.data.description||"",prompt:c.data.prompt,canUse:p,canTransferTo:[],canDelegateTo:[],dataComponents:e,artifactComponents:g,...n&&{models:n},type:"internal",...o&&{stopWhen:o}};c.data.isDefault&&(m=d),h[d]=q}else if(c.type===Z.ExternalAgent){let a=c.data.id||c.id,b=ao(c.data.headers),d={id:a,name:c.data.name,description:c.data.description||"",baseUrl:c.data.baseUrl,headers:b||null,type:"external",credentialReferenceId:c.data.credentialReferenceId||null};c.data.isDefault&&(m=a),h[a]=d}for(let c of b)if(c.type===q.A2A||c.type===q.A2AExternal||c.type===q.SelfLoop){let b=a.find(a=>a.id===c.source),d=a.find(a=>a.id===c.target),e=b?.data.id||b?.id,f=d?.data.id||d?.id,g=h[e],i=h[f];if(g&&i&&c.data?.relationships){let a=c.data.relationships,b=(a,b,c)=>{if(an(a)){a[b]||(a[b]=[]);let d=a[b];d&&!d.includes(c)&&d.push(c)}};a.transferSourceToTarget&&b(g,"canTransferTo",f),a.transferTargetToSource&&b(i,"canTransferTo",e),a.delegateSourceToTarget&&b(g,"canDelegateTo",f),a.delegateTargetToSource&&b(i,"canDelegateTo",e)}}let n=ao(c?.contextConfig?.contextVariables),o=ao(c?.contextConfig?.headersSchema),p=c?.contextConfig&&(n&&"object"==typeof n&&null!==n&&Object.keys(n).length>0||o&&"object"==typeof o&&null!==o&&Object.keys(o).length>0),r={};d&&k.forEach(a=>{let b=d[a];b&&(r[a]=b)});let s={};e&&l.forEach(a=>{let b=e[a];b&&(s[a]=b)});let t={id:c?.id||(0,g.Ak)(),name:c?.name||"Untitled Graph",description:c?.description||void 0,defaultSubAgentId:m,subAgents:h,...Object.keys(i).length>0&&{functionTools:i},...Object.keys(j).length>0&&{functions:j}};if(c?.models&&(t.models={base:c.models.base?{model:c.models.base.model,providerOptions:ao(c.models.base.providerOptions)}:void 0,structuredOutput:c.models.structuredOutput?{model:c.models.structuredOutput.model,providerOptions:ao(c.models.structuredOutput.providerOptions)}:void 0,summarizer:c.models.summarizer?{model:c.models.summarizer.model,providerOptions:ao(c.models.summarizer.providerOptions)}:void 0}),c?.stopWhen&&(t.stopWhen=c.stopWhen),c?.graphPrompt&&(t.graphPrompt=c.graphPrompt),c?.statusUpdates){let a=ao(c.statusUpdates.statusComponents);t.statusUpdates={...c.statusUpdates,statusComponents:a}}if(p&&c?.contextConfig){let a=c.contextConfig.id||(0,g.Ak)();t.contextConfigId=a,t.contextConfig={id:a,headersSchema:o,contextVariables:n}}return t}(V,H,J,b,c,z),f=new Map;V.forEach(a=>{if(a.type===Z.FunctionTool){let b=a.data,c=b.toolId||b.functionToolId||a.id;f.set(c,a.id)}});let h=function(a,b){let c=[];for(let[d,e]of(a.defaultSubAgentId&&!a.subAgents[a.defaultSubAgentId]&&c.push({message:`Default agent ID '${a.defaultSubAgentId}' not found in agents`,field:"defaultSubAgentId",code:"invalid_reference",path:["defaultSubAgentId"]}),Object.entries(a.subAgents))){if(an(e)&&e.canUse){let b=a.tools;if(b)for(let a of e.canUse){let e=a.toolId;b[e]||c.push({message:`Tool '${e}' not found`,field:"toolId",code:"invalid_reference",path:["agents",d,"canUse"]})}}if(an(e)&&e.canUse)for(let a of e.canUse){let d=a.toolId;if("function"===a.toolType){let e=a.functionTool;if(!e){let a=b?.get(d)||d;c.push({message:"Function tool is missing function tool data",field:"functionTool",code:"missing_data",path:["functionTools",d],functionToolId:a});continue}let f=b?.get(d)||d;e.name&&""!==String(e.name).trim()||c.push({message:"Function tool name is required",field:"name",code:"required",path:["functionTools",d,"name"],functionToolId:f}),e.description&&""!==String(e.description).trim()||c.push({message:"Function tool description is required",field:"description",code:"required",path:["functionTools",d,"description"],functionToolId:f}),e.executeCode&&""!==String(e.executeCode).trim()||c.push({message:"Function tool code is required",field:"code",code:"required",path:["functionTools",d,"executeCode"],functionToolId:f}),e.inputSchema&&0!==Object.keys(e.inputSchema).length||c.push({message:"Function tool input schema is required",field:"inputSchema",code:"required",path:["functionTools",d,"inputSchema"],functionToolId:f})}}if(an(e)){for(let b of e.canTransferTo??[])a.subAgents[b]||c.push({message:`Transfer target '${b}' not found in agents`,field:"canTransferTo",code:"invalid_reference",path:["agents",d,"canTransferTo"]});for(let b of e.canDelegateTo??[])a.subAgents[b]||c.push({message:`Delegate target '${b}' not found in agents`,field:"canDelegateTo",code:"invalid_reference",path:["agents",d,"canDelegateTo"]})}}return c}(e,f);if(h.length>0){as(aw(JSON.stringify(h.map(a=>({message:a.message,field:a.field,code:a.code,path:a.path,functionToolId:a.functionToolId}))))),j.oR.error(`Validation failed: ${h[0].message}`);return}let i=await av(s,u,e,a?.id);if(i.success){if(at(),j.oR.success("Graph saved",{closeButton:!0}),S(),i.data){let a=new Set;M(b=>b.map(b=>{if(b.type===Z.MCP&&b.data.subAgentId&&b.data.toolId){if(b.data.relationshipId)return b;let c=b.data.subAgentId,d=b.data.toolId;if("canUse"in i.data.subAgents[c]&&i.data.subAgents[c].canUse){let e=i.data.subAgents[c].canUse.find(b=>b.toolId===d&&b.agentToolRelationId&&!a.has(b.agentToolRelationId));if(e?.agentToolRelationId)return a.add(e.agentToolRelationId),{...b,data:{...b.data,relationshipId:e.agentToolRelationId}}}}return b}))}!a?.id&&i.data?.id&&(Q("id",i.data.id),p.push(`/${s}/projects/${u}/graphs/${i.data.id}`))}else try{let a=aw(i.error);as(a);let b=function(a){let{totalErrors:b,agentErrors:c,functionToolErrors:d,edgeErrors:e,graphErrors:f}=a;if(0===b)return"";let g=[],h=Object.keys(c).length,i=Object.keys(d).length,j=Object.keys(e).length,k=f.length;h>0&&g.push(`${h} agent${h>1?"s":""}`),i>0&&g.push(`${i} function tool${i>1?"s":""}`),j>0&&g.push(`${j} connection${j>1?"s":""}`),k>0&&g.push(`${k} graph setting${k>1?"s":""}`);let l=g.join(", ");return`Validation failed for ${l}. Check the highlighted items for details.`}(a);j.oR.error(b||"Failed to save graph - validation errors found")}catch(a){console.error("Failed to parse validation errors:",a),j.oR.error("Failed to save graph",{closeButton:!0})}},[V,H,J,b,c,S,Q,M,p,a?.id,s,u,at,as,z,k]);return(0,d.jsxs)("div",{className:"w-full h-full relative bg-muted/20 dark:bg-background flex rounded-b-[14px] overflow-hidden",children:[(0,d.jsxs)("div",{className:"flex-1 h-full relative transition-all duration-300 ease-in-out",children:[(0,d.jsx)(aI,{}),(0,d.jsx)(aJ,{}),(0,d.jsxs)(e.Gc,{defaultEdgeOptions:{type:"default"},nodeTypes:$,edgeTypes:r,nodes:V,edges:H,onNodesChange:ax,onEdgesChange:P,onConnect:az,onDrop:aC,onDragOver:aB,fitView:!0,snapToGrid:!0,snapGrid:[20,20],fitViewOptions:{maxZoom:1},connectionMode:f.WZ.Loose,isValidConnection:aA,children:[(0,d.jsx)(e.VS,{color:"#a8a29e",gap:20}),(0,d.jsx)(e.H2,{className:"text-foreground",showInteractive:!1}),(0,d.jsx)(e.Zk,{position:"top-left",children:(0,d.jsx)(aN,{})}),(0,d.jsx)(e.Zk,{position:"top-right",children:(0,d.jsx)(cq,{onSubmit:aP,inPreviewDisabled:!a?.id,toggleSidePane:ak?aL:aj,setShowPlayground:()=>{aK(),o(!0)}})}),ap&&aq&&(0,d.jsx)(e.Zk,{position:"bottom-left",className:"max-w-sm !left-8 mb-4",children:(0,d.jsx)(aH,{errorSummary:ap,onClose:()=>au(!1),onNavigateToNode:aM,onNavigateToEdge:aO})})]})]}),(0,d.jsx)(cn,{selectedNodeId:X,selectedEdgeId:af,isOpen:ak,onClose:aK,backToGraph:aL,dataComponentLookup:b,artifactComponentLookup:c,agentToolConfigLookup:z,credentialLookup:m}),n&&a?.id&&(0,d.jsx)(a4,{graphId:a?.id,projectId:u,tenantId:s,setShowPlayground:o,closeSidePane:aK})]})}function cs({graph:a,dataComponentLookup:b,artifactComponentLookup:c,toolLookup:f,credentialLookup:g}){return(0,d.jsx)(e.Ln,{children:(0,d.jsx)(cr,{graph:a,dataComponentLookup:b,artifactComponentLookup:c,toolLookup:f,credentialLookup:g})})}},64418:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(60241).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/graphs/error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/graphs/error.tsx","default")},66124:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(59111),e=c(43433);function f(){return(0,d.jsx)(e.A,{description:"Something went wrong."})}},71682:(a,b,c)=>{"use strict";c.d(b,{i:()=>j});var d=c(59111),e=c(39108),f=c(52287),g=c(14450),h=c(42723),i=c(2856);function j({textToCopy:a,className:b,variant:c="ghost",size:j="icon-sm",iconClassName:k}){let{isCopied:l,copyToClipboard:m}=function({timeout:a=2e3}){let[b,c]=g.useState(!1);return{isCopied:b,copyToClipboard:a=>{}}}({});return(0,d.jsxs)(i.$,{variant:c,size:j,className:(0,h.cn)("backdrop-blur-sm bg-card/90 hover:bg-card border border-border shadow-sm",b),onClick:()=>m(a),children:[l?(0,d.jsx)(e.A,{className:(0,h.cn)("w-4 h-4 text-green-600 dark:text-green-400",k)}):(0,d.jsx)(f.A,{className:(0,h.cn)("!w-3 !h-3 text-muted-foreground dark:text-foreground",k)}),(0,d.jsx)("span",{className:"sr-only",children:"Copy"})]})}},73913:(a,b,c)=>{"use strict";c.d(b,{r:()=>g});var d=c(59111),e=c(24146),f=c(14450);function g({provider:a,fallback:b=!1,className:c,size:g=20}){let[h,i]=(0,f.useState)(!1),[j,k]=(0,f.useState)(!1),l=(a=>{let b=a.toLowerCase().replace(/[^a-z0-9-]/g,"-");return`/assets/provider-icons/${b}.svg`})(a);return(0,d.jsxs)("div",{className:`inline-flex items-center justify-center relative ${c||""}`,style:{width:g,height:g},children:[j&&(0,d.jsx)("div",{className:"absolute",children:b||((a,b)=>{let c=a.charAt(0),e=Math.max(8,Math.floor(.6*("string"==typeof b?Number.parseInt(b,10)||20:b)));return(0,d.jsx)("div",{className:"rounded-sm bg-gray-100 dark:bg-muted/50 text-muted-foreground font-medium flex items-center justify-center",style:{width:b,height:b,fontSize:`${e}px`,lineHeight:1},children:c})})(a,g)}),(0,d.jsx)(e.default,{src:l,alt:`${a} icon`,width:"string"==typeof g?Number.parseInt(g,10)||20:g,height:"string"==typeof g?Number.parseInt(g,10)||20:g,onLoad:()=>{i(!0)},onError:()=>{k(!0)},style:{maxWidth:"100%",maxHeight:"100%",opacity:h&&!j?1:0},unoptimized:!0},a)]})}},80974:(a,b,c)=>{"use strict";c.d(b,{Qj:()=>k,SR:()=>l,_O:()=>j});var d=c(7352),e=c(43381);let f=d.ZU.Object({type:d.ZU.Union([d.ZU.Literal("string"),d.ZU.Literal("number"),d.ZU.Literal("integer"),d.ZU.Literal("boolean"),d.ZU.Literal("array"),d.ZU.Literal("object"),d.ZU.Literal("null")]),description:d.ZU.String({minLength:1}),format:d.ZU.Optional(d.ZU.String()),pattern:d.ZU.Optional(d.ZU.String()),minimum:d.ZU.Optional(d.ZU.Number()),maximum:d.ZU.Optional(d.ZU.Number()),minLength:d.ZU.Optional(d.ZU.Number()),maxLength:d.ZU.Optional(d.ZU.Number()),items:d.ZU.Optional(d.ZU.Any()),properties:d.ZU.Optional(d.ZU.Any()),enum:d.ZU.Optional(d.ZU.Array(d.ZU.Any())),const:d.ZU.Optional(d.ZU.Any()),default:d.ZU.Optional(d.ZU.Any())}),g=d.ZU.Object({type:d.ZU.Literal("object"),properties:d.ZU.Record(d.ZU.String(),f),required:d.ZU.Array(d.ZU.String(),{minItems:1}),additionalProperties:d.ZU.Optional(d.ZU.Boolean()),description:d.ZU.Optional(d.ZU.String())}),h=e.gv.Compile(f),i=e.gv.Compile(g);function j(a){let b=[],{parsed:c,errors:d}=function(a){let b=[],c=null;if(!a?.trim())return{parsed:null,errors:b};try{c=JSON.parse(a)}catch(a){b.push({path:"root",message:a instanceof Error?a.message:"Invalid JSON syntax",type:"syntax"})}return{parsed:c,errors:b}}(a);if(d.length>0)return{isValid:!1,errors:d,warnings:b};if(!c)return{isValid:!0,errors:[],warnings:["Empty schema provided"]};let e=[...function(a){let b=[];return a&&"object"==typeof a?!i.Check(a)&&(a.type&&"object"===a.type||b.push({path:"type",message:'Schema must have type: "object" for LLM compatibility',type:"llm_requirement"}),a.properties&&"object"==typeof a.properties||b.push({path:"properties",message:'Schema must have a "properties" object',type:"schema"}),a.required&&Array.isArray(a.required)||b.push({path:"required",message:'Schema must have a "required" array (can be empty)',type:"llm_requirement"}),a.properties&&"object"==typeof a.properties&&Object.entries(a.properties).forEach(([a,c])=>{h.Check(c)||[...h.Errors(c)].forEach(c=>{let d=c.message;"/description"===c.path?d='Each property must have a "description" for LLM compatibility':"/type"===c.path&&(d='Each property must have a valid "type"'),b.push({path:`properties.${a}${c.path}`,message:d,type:"/description"===c.path?"llm_requirement":"schema"})})})):b.push({path:"root",message:"Schema must be an object",type:"schema"}),b}(c),...function(a){let b=[];return a&&"object"==typeof a&&(a.required&&Array.isArray(a.required)&&a.properties&&a.required.forEach(c=>{a.properties[c]||b.push({path:"required",message:`Required property "${c}" must exist in properties`,type:"schema"})}),a.properties&&"object"==typeof a.properties&&Object.entries(a.properties).forEach(([a,c])=>{c.description&&"string"==typeof c.description&&0!==c.description.trim().length||b.push({path:`properties.${a}.description`,message:"Each property must have a non-empty description for LLM compatibility",type:"llm_requirement"})})),b}(c)];return{isValid:0===e.length,errors:e,warnings:b}}function k(){return JSON.stringify({type:"object",properties:{example_property:{type:"string",description:"Description of what this property represents"}},required:["example_property"]},null,2)}function l(a){if(a instanceof SyntaxError){let b=a.message.toLowerCase();return b.includes("unexpected end of json input")?"Incomplete JSON - missing closing brackets or quotes":b.includes("unexpected token")?"Invalid character in JSON - check for missing commas, quotes, or brackets":b.includes("expected property name")||b.includes("expected ':' after property name")?"Property names must be in double quotes":b.includes("duplicate keys")?"Duplicate property names are not allowed":"Invalid JSON syntax - check structure and formatting"}return"Unable to parse JSON"}},81097:(a,b,c)=>{"use strict";c.d(b,{$Y:()=>g,GO:()=>i,K3:()=>h,h9:()=>k,nZ:()=>j});var d=c(1274);c(2082);var e=c(53842),f=c(41979);async function g(a,b,c=1,d=50){(0,f.M2)(a),(0,f.nt)(b);let h=new URLSearchParams({page:c.toString(),limit:d.toString()});return(await (0,e.J)(`tenants/${a}/projects/${b}/credentials?${h}`)).data}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"DELETE"})}(0,c(95454).D)([g,h,i,j,k]),(0,d.A)(g,"78c26fc6ef5b1e06fdc7997c68a65903e3895bcbb9",null),(0,d.A)(h,"70627a8b2a5900b368b39e74794a665ada51442ae2",null),(0,d.A)(i,"70db2a1744a87bfda9b634e77cf2bf0190b2366f5e",null),(0,d.A)(j,"78568e6620645f3204d7bc59260b4738a6987cfde1",null),(0,d.A)(k,"70bc5a67e4404d59de632e631d81d11e1da7f80c74",null)},86585:(a,b,c)=>{"use strict";c.d(b,{DI:()=>h,Xo:()=>j,oj:()=>i,tk:()=>k});var d=c(1274);c(2082);var e=c(70839),f=c(90610),g=c(67175);async function h(a,b){try{let c=await (0,f.Vg)(a,b);return{success:!0,data:c.data}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function i(a,b,c){try{let d=await (0,f.y$)(a,b,c);return(0,e.revalidatePath)(`/${a}/projects/${b}/artifacts`),{success:!0,data:d}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function j(a,b,c){try{let d=await (0,f.b5)(a,b,c);return(0,e.revalidatePath)(`/${a}/projects/${b}/artifacts`),(0,e.revalidatePath)(`/${a}/projects/${b}/artifacts/${c.id}`),{success:!0,data:d}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function k(a,b,c){try{return await (0,f.Ty)(a,b,c),(0,e.revalidatePath)(`/${a}/projects/${b}/artifacts`),(0,e.revalidatePath)(`/${a}/projects/${b}/artifacts/${c}`),{success:!0}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,c(95454).D)([h,i,j,k]),(0,d.A)(h,"600a244f7e6f094e6b47e9dd022e3a3138bffcd500",null),(0,d.A)(i,"7038d196cad6ad33aa15cb21b67362b0814db20fa7",null),(0,d.A)(j,"70dcf57c9046c404e73555267557ea240832add8a3",null),(0,d.A)(k,"70b9c285fff46c50217c1878b2258a88ea50999b5c",null)},88287:(a,b,c)=>{Promise.resolve().then(c.bind(c,66124))},88735:(a,b,c)=>{"use strict";c.d(b,{i:()=>e});var d=c(90147);let e=(0,d.createServerReference)("7c5c949e7cdfb8e3813198083db7d723116124588c",d.callServer,void 0,d.findSourceMapURL,"fetchMCPTools")},90127:(a,b,c)=>{"use strict";c.d(b,{Fs:()=>j,Hn:()=>h,Qs:()=>i,bO:()=>k});var d=c(1274);c(2082);var e=c(70839),f=c(40780),g=c(67175);async function h(a,b){try{let c=await (0,f.Z3)(a,b);return{success:!0,data:c.data}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function i(a,b,c){try{let d=await (0,f.EN)(a,b,c);return(0,e.revalidatePath)(`/${a}/projects/${b}/components`),{success:!0,data:d}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function j(a,b,c){try{let d=await (0,f.df)(a,b,c);return(0,e.revalidatePath)(`/${a}/projects/${b}/components`),(0,e.revalidatePath)(`/${a}/projects/${b}/components/${c.id}`),{success:!0,data:d}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function k(a,b,c){try{return await (0,f.nD)(a,b,c),(0,e.revalidatePath)(`/${a}/projects/${b}/components`),(0,e.revalidatePath)(`/${a}/projects/${b}/components/${c}`),{success:!0}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,c(95454).D)([h,i,j,k]),(0,d.A)(h,"606780f8825677b247d9a2fe6b002ca5aadec52fee",null),(0,d.A)(i,"70fd434aaba07c02c29ccf18c7c7e9c9635ba08eb0",null),(0,d.A)(j,"70d3e20453711681d9430316ef7a30ec76b732ece6",null),(0,d.A)(k,"7088f43dabb820f3f603c65d1671256e97950d5aed",null)},90610:(a,b,c)=>{"use strict";c.d(b,{Ty:()=>k,Vg:()=>g,_2:()=>h,b5:()=>j,y$:()=>i});var d=c(1274);c(2082);var e=c(53842),f=c(41979);async function g(a,b){return(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components`)}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`,{method:"DELETE"})}(0,c(95454).D)([g,h,i,j,k]),(0,d.A)(g,"603dadbb86e1c8e490ba6dda8cc287ad3b6cb602c5",null),(0,d.A)(h,"709db356a3a2fc6beb97b662323ec2e6f569ced33c",null),(0,d.A)(i,"7079539994253269257910be4ac648c04f37007658",null),(0,d.A)(j,"702a0b60410188338ed2c9f14bd0429c9760fa4d7b",null),(0,d.A)(k,"706343178bf5a498923883702821fefa5840b31f4f",null)},97010:(a,b,c)=>{"use strict";c.d(b,{Graph:()=>d});let d=(0,c(60241).registerClientReference)(function(){throw Error("Attempted to call Graph() from the server but Graph is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agents/agents/agents-manage-ui/src/components/graph/graph.tsx","Graph")}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=4045,exports.ids=[4045],exports.modules={35406:(a,b,c)=>{c.d(b,{A3:()=>d.A3,Nv:()=>d.Nv,PC:()=>d.PC,SH:()=>d.SH,SL:()=>d.SL,U_:()=>d.U_,XQ:()=>d.XQ,YL:()=>d.YL,aR:()=>d.aR,cZ:()=>d.cZ,qf:()=>d.qf,we:()=>d.we,yR:()=>d.yR,yZ:()=>d.yZ,zD:()=>d.zD});var d=c(79177)},40367:(a,b,c)=>{c.d(b,{H:()=>p});var d=c(36532),e=c(68764),f=c(34576),g=c(35406);let h=a=>Math.floor(a/1e6),i=f.union([f.string(),f.number(),f.boolean()]),j=a=>{try{if("true"===a)return i.parse(!0);if("false"===a)return i.parse(!1);let b=(a=>/^-?\d+(\.\d+)?$/.test(a)?Number(a):a)(a);if("number"==typeof b)return i.parse(b);return i.parse(a)}catch(b){return console.warn(`Failed to parse filter value "${a}":`,b),i.parse(a)}},k=a=>parseInt(a.values?.[0]?.value??"0",10)||0,l=a=>Number(a.values?.[0]?.value??0)||0,m=(a,b)=>{let c=new Date(a);c.setHours(0,0,0,0);let d=new Date(b);d.setHours(0,0,0,0);let e=[];for(let a=new Date(c);a<=d;a.setDate(a.getDate()+1))e.push(`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`);return e};(0,e.Ay)(d.A,{retries:3,retryDelay:e.Ay.exponentialDelay});class n{async makeRequest(a){return(await d.A.post("/api/signoz",a,{timeout:3e4,headers:{"Content-Type":"application/json"}})).data}extractSeries(a,b){return a?.data?.result?.find(a=>a?.queryName===b)?.series??[]}async getConversationStats(a,b,c,d,e,f,i){try{let j=this.buildCombinedPayload(a,b,c,d,i),k=await this.makeRequest(j),m=this.extractSeries(k,g.XQ.TOOLS),n=this.extractSeries(k,g.XQ.TRANSFERS),o=this.extractSeries(k,g.XQ.DELEGATIONS),p=this.extractSeries(k,g.XQ.AI_CALLS),q=this.extractSeries(k,g.XQ.LAST_ACTIVITY),r=this.extractSeries(k,g.XQ.CONVERSATION_METADATA),s=this.extractSeries(k,g.XQ.CONTEXT_ERRORS),t=this.extractSeries(k,g.XQ.AGENT_GENERATION_ERRORS),u=this.extractSeries(k,g.XQ.USER_MESSAGES),v=new Map;for(let a of r){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&v.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,graphId:a.labels?.[g.SH.GRAPH_ID]??g.PC,graphName:a.labels?.[g.SH.GRAPH_NAME]??g.PC})}let w=new Map;for(let a of q){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&w.set(b,l(a))}let x=new Map,y=new Map;for(let a of u){let b=a.labels?.[g.SH.CONVERSATION_ID],c=a.labels?.[g.SH.MESSAGE_CONTENT],d=l(a);b&&c&&(y.get(b)??y.set(b,[]).get(b))?.push({t:d,c:c})}for(let[a,b]of y){b.sort((a,b)=>a.t-b.t);let c=b[0];if(c){let b=c.c.length>100?`${c.c.slice(0,100)}...`:c.c;x.set(a,{content:b,timestamp:h(c.t)})}}let z=this.toConversationStats(m,n,o,p,v,s,t,x);if((c?.spanName||c?.attributes?.length)&&(z=await this.applySpanFilters(z,a,b,c,d)),f?.trim()){let a=f.toLowerCase().trim();z=z.filter(b=>b.firstUserMessage?.toLowerCase().includes(a)||b.conversationId.toLowerCase().includes(a)||b.graphId.toLowerCase().includes(a))}if(z.sort((a,b)=>((a=0,b=0)=>b-a)(w.get(a.conversationId),w.get(b.conversationId))),!e)return z;let{page:A,limit:B}=e,C=z.length,D=Math.ceil(C/B),E=(A-1)*B;return{data:z.slice(E,E+B),pagination:{page:A,limit:B,total:C,totalPages:D,hasNextPage:A<D,hasPreviousPage:A>1}}}catch(a){return console.error("getConversationStats error:",a),[]}}async getAICallsByGraph(a,b,c){try{let d=await this.makeRequest(this.buildCombinedPayload(a,b,void 0,c)),e=this.extractSeries(d,g.XQ.AI_CALLS),f=new Map;for(let a of e){let b=a.labels?.[g.SH.GRAPH_ID]||g.PC,c=k(a);c&&f.set(b,(f.get(b)||0)+c)}return[...f].map(([a,b])=>({graphId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByGraph error:",a),[]}}async getAICallsByAgent(a,b,c,d,e){try{let f=await this.makeRequest(this.buildAgentModelBreakdownPayload(a,b,e)),h=this.extractSeries(f,"agentModelCalls"),i=new Map;for(let a of h){let b=a.labels?.[g.SH.AI_TELEMETRY_FUNCTION_ID]||g.PC,e=a.labels?.[g.SH.GRAPH_ID]||g.PC,f=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,h=k(a);if(!h||c&&"all"!==c&&e!==c||d&&"all"!==d&&f!==d)continue;let j=`${b}::${e}::${f}`,l=i.get(j)||{subAgentId:b,graphId:e,modelId:f,totalCalls:0};l.totalCalls+=h,i.set(j,l)}return[...i.values()].sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByAgent error:",a),[]}}async getAICallsByModel(a,b,c,d){try{let e=await this.makeRequest(this.buildModelBreakdownPayload(a,b,d)),f=this.extractSeries(e,"modelCalls"),h=new Map;for(let a of f){let b=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,d=a.labels?.[g.SH.GRAPH_ID]||g.PC,e=k(a);e&&(c&&"all"!==c&&d!==c||h.set(b,(h.get(b)||0)+e))}return[...h].map(([a,b])=>({modelId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByModel error:",a),[]}}async getUniqueGraphs(a,b,c){try{let d=await this.makeRequest(this.buildUniqueGraphsPayload(a,b,c)),e=this.extractSeries(d,"uniqueGraphs").map(a=>a.labels?.[g.SH.GRAPH_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueGraphs error:",a),[]}}async getUniqueModels(a,b,c){try{let d=await this.makeRequest(this.buildUniqueModelsPayload(a,b,c)),e=this.extractSeries(d,"uniqueModels").map(a=>a.labels?.[g.SH.AI_MODEL_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueModels error:",a),[]}}async getConversationsPerDay(a,b,c,d){try{let e=await this.makeRequest(this.buildConversationMetadataPayload(a,b,c,d)),f=this.extractSeries(e,"conversationMetadata").length?this.extractSeries(await this.makeRequest(this.buildConversationActivityPayload(a,b,c,d)),"lastActivity"):[],g=new Map;for(let a of f){let b=h(l(a));if(!b)continue;let c=new Date(b),d=`${c.getFullYear()}-${String(c.getMonth()+1).padStart(2,"0")}-${String(c.getDate()).padStart(2,"0")}`;g.set(d,(g.get(d)||0)+1)}return m(a,b).map(a=>({date:a,count:g.get(a)||0}))}catch(c){return console.error("getConversationsPerDay error:",c),m(a,b).map(a=>({date:a,count:0}))}}async getAggregateStats(a,b,c,d,e){try{let f=await this.makeRequest(this.buildCombinedPayload(a,b,c,d,e)),h=this.extractSeries(f,"tools"),i=this.extractSeries(f,"transfers"),j=this.extractSeries(f,"delegations"),k=this.extractSeries(f,"aiCalls"),l=this.extractSeries(f,"conversationMetadata"),m=this.extractSeries(f,"contextErrors"),n=this.extractSeries(f,"agentGenerationErrors"),o=new Map;for(let a of l){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&o.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,graphId:a.labels?.[g.SH.GRAPH_ID]??g.PC,graphName:a.labels?.[g.SH.GRAPH_NAME]??g.PC})}let p=this.toConversationStats(h,i,j,k,o,m,n,new Map);return(c?.spanName||c?.attributes?.length)&&(p=await this.applySpanFilters(p,a,b,c,d)),{totalToolCalls:p.reduce((a,b)=>a+b.totalToolCalls,0),totalTransfers:p.reduce((a,b)=>a+b.totalTransfers,0),totalDelegations:p.reduce((a,b)=>a+b.totalDelegations,0),totalConversations:p.length,totalAICalls:p.reduce((a,b)=>a+b.totalAICalls,0)}}catch(a){return console.error("getAggregateStats error:",a),{totalToolCalls:0,totalTransfers:0,totalDelegations:0,totalConversations:0,totalAICalls:0}}}async getAvailableSpanNames(a,b,c,d){try{let e=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EXISTS,value:""}];c&&"all"!==c&&e.push({key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}),d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d});let f={start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.LIST,builderQueries:{spanNames:{dataSource:g.YL.TRACES,queryName:g.XQ.SPAN_NAMES,aggregateOperator:g.qf.NOOP,aggregateAttribute:{},filters:{op:g.we.AND,items:e},selectColumns:[{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.SPAN_NAMES,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,stepInterval:g.yZ.STEP_INTERVAL,limit:g.yZ.LIMIT_1000,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],groupBy:g.yZ.EMPTY_GROUP_BY,offset:g.yZ.OFFSET}}},dataSource:g.YL.TRACES,projectId:d},h=await this.makeRequest(f),i=h?.data?.result?.find(a=>a?.queryName==="spanNames")?.list??[],j=new Set;for(let a of i){let b=a?.data?.name??a?.name;b&&j.add(b)}return[...j].sort()}catch(a){return console.error("getAvailableSpanNames error:",a),[]}}toConversationStats(a,b,c,d,e,f,h,i){let j=new Map,l=a=>{let b=j.get(a);if(b)return b;let c={totalToolCalls:0,toolsUsed:new Map,transfers:new Map,totalTransfers:0,delegations:new Map,totalDelegations:0,totalAICalls:0,totalErrors:0};return j.set(a,c),c};for(let b of a){let a=b.labels?.[g.SH.CONVERSATION_ID];if(!a)continue;let c=b.labels?.[g.SH.AI_TOOL_CALL_NAME];if(!c)continue;let d=k(b);if(!d)continue;let e=b.labels?.[g.SH.MCP_TOOL_DESCRIPTION]||"",f=l(a);f.totalToolCalls+=d;let h=f.toolsUsed.get(c)||{name:c,calls:0,description:e};h.calls+=d,f.toolsUsed.set(c,h)}for(let a of b){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.TRANSFER_FROM_SUB_AGENT_ID],d=a.labels?.[g.SH.TRANSFER_TO_SUB_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=l(b);f.totalTransfers+=e;let h=`${c}→${d}`,i=f.transfers.get(h)||{from:c,to:d,count:0};i.count+=e,f.transfers.set(h,i)}for(let a of c){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.DELEGATION_FROM_SUB_AGENT_ID],d=a.labels?.[g.SH.DELEGATION_TO_SUB_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=l(b);f.totalDelegations+=e;let h=`${c}→${d}`,i=f.delegations.get(h)||{from:c,to:d,count:0};i.count+=e,f.delegations.set(h,i)}for(let a of d){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=k(a);c&&(l(b).totalAICalls+=c)}for(let a of[...f,...h]){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=k(a);c&&(l(b).totalErrors+=c)}let m=[];for(let a of new Set([...j.keys(),...e.keys()])){let b=j.get(a)||l(a),c=e.get(a)||{tenantId:g.PC,graphId:g.PC,graphName:g.PC};m.push({conversationId:a,tenantId:c.tenantId,graphId:c.graphId,graphName:c.graphName||"",totalToolCalls:b.totalToolCalls,toolsUsed:[...b.toolsUsed.values()],transfers:[...b.transfers.values()],totalTransfers:b.totalTransfers,delegations:[...b.delegations.values()],totalDelegations:b.totalDelegations,totalAICalls:b.totalAICalls,totalErrors:b.totalErrors,hasErrors:b.totalErrors>0,firstUserMessage:i.get(a)?.content,startTime:i.get(a)?.timestamp})}return m}async applySpanFilters(a,b,c,d,e){try{let f=await this.makeRequest(this.buildFilteredConversationsPayload(b,c,d,e)),h=this.extractSeries(f,"filteredConversations"),i=new Set(h.map(a=>a.labels?.[g.SH.CONVERSATION_ID]).filter(Boolean));return a.filter(a=>i.has(a.conversationId))}catch(b){return console.error("applySpanFilters error:",b),a}}buildAgentModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{agentModelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AGENT_MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TELEMETRY_FUNCTION_ID,...g.A3.STRING_TAG_COLUMN},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.AGENT_MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}buildModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{modelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG}],expression:g.XQ.MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_ZERO}}},dataSource:g.YL.TRACES,projectId:c}}buildConversationActivityPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildConversationMetadataPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildFilteredConversationsPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];for(let a of(c.spanName&&e.push({key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:c.spanName}),c.attributes??[])){let b=a.operator??g.we.EQUALS,c=j(a.value),d="string";if("boolean"==typeof c?d="bool":"number"==typeof c&&(d=Number.isInteger(c)?"int64":"float64"),b===g.we.EXISTS||b===g.we.NOT_EXISTS){e.push({key:{key:a.key,...g.A3.STRING_TAG},op:b,value:""});continue}if(b!==g.we.LIKE&&b!==g.we.NOT_LIKE||"string"!=typeof c||c.includes("%")||(c=`%${c}%`),("int64"===d||"float64"===d)&&b===g.we.EQUALS){let b="int64"===d?g.A3.INT64_TAG:g.A3.FLOAT64_TAG;e.push({key:{key:a.key,...b},op:g.we.GREATER_THAN_OR_EQUAL,value:c}),e.push({key:{key:a.key,...b},op:g.we.LESS_THAN_OR_EQUAL,value:c})}else{let f="string"===d?g.A3.STRING_TAG:"int64"===d?g.A3.INT64_TAG:"float64"===d?g.A3.FLOAT64_TAG:g.A3.BOOL_TAG;e.push({key:{key:a.key,...f},op:b,value:c})}}return d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{filteredConversations:{dataSource:g.YL.TRACES,queryName:g.XQ.FILTERED_CONVERSATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.FILTERED_CONVERSATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildCombinedPayload(a,b,c,d,e){let f=a=>{let b=a;return d&&(b=[...b,{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]),e&&(b=[...b,{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:e}]),b};return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{tools:{dataSource:g.YL.TRACES,queryName:g.XQ.TOOLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG}],expression:g.XQ.TOOLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},transfers:{dataSource:g.YL.TRACES,queryName:g.XQ.TRANSFERS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.TRANSFER},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_FROM_SUB_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_TO_SUB_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.TRANSFERS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},delegations:{dataSource:g.YL.TRACES,queryName:g.XQ.DELEGATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.DELEGATION},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_FROM_SUB_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_TO_SUB_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.DELEGATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},aiCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AI_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:"ai.telemetry.functionId",...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.AI_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},contextErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.CONTEXT_ERRORS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.CONTEXT_HANDLE},{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.CONTEXT_ERRORS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},agentGenerationErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.AGENT_GENERATION_ERRORS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AGENT_GENERATION},{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.AGENT_GENERATION_ERRORS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},userMessages:{dataSource:g.YL.TRACES,queryName:g.XQ.USER_MESSAGES,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG}],expression:g.XQ.USER_MESSAGES,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildUniqueGraphsPayload(a,b,c){let d=[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueGraphs:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_GRAPHS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG}],expression:g.XQ.UNIQUE_GRAPHS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.GRAPH_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}buildUniqueModelsPayload(a,b,c){let d=[{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueModels:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_MODELS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.UNIQUE_MODELS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AI_MODEL_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}}let o=null;function p(){return o??=new n}},96683:(a,b,c)=>{c.r(b),c.d(b,{"40bf0adbc5d334fad4062ef5d7d5c1d685ac2fe27b":()=>d.vj,"60d7e5c2d27ad24356963d634d524c93eb27acf0ec":()=>d.Sw,"60dd195dd9643883fd93a9f0bc576fa41e3c1464d0":()=>d.gA,"60ebf95a1a1b632e0c65d033d1938e19f500e58809":()=>d.xx,"70bbc23b4933df0fd914864f5e07117350243e35b5":()=>d.vr});var d=c(54637)}};