@inkeep/agents-manage-ui 0.0.0-dev-20251021164445 → 0.0.0-dev-20251021180725

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 (193) 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 +119 -119
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +5 -5
  4. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +2 -2
  5. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
  6. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js.nft.json +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -2
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js.nft.json +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -2
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js.nft.json +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js.nft.json +1 -1
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  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.js.nft.json +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js.nft.json +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +1 -1
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js.nft.json +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js.nft.json +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js.nft.json +1 -1
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js.nft.json +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  76. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
  79. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  82. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  85. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js.nft.json +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +1 -1
  88. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  89. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +8 -8
  92. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-preview/route_client-reference-manifest.js +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  94. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  96. package/.next/standalone/agents-manage-ui/.next/server/app/page.js.nft.json +1 -1
  97. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +5 -5
  99. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/chunks/3717.js +1 -0
  101. package/.next/standalone/agents-manage-ui/.next/server/chunks/5732.js +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/chunks/5781.js +14 -1
  103. package/.next/standalone/agents-manage-ui/.next/server/chunks/6035.js +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/chunks/6358.js +1 -0
  105. package/.next/standalone/agents-manage-ui/.next/server/chunks/{1176.js → 6818.js} +1 -1
  106. package/.next/standalone/agents-manage-ui/.next/server/chunks/7711.js +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/server/chunks/7988.js +2 -2
  108. package/.next/standalone/agents-manage-ui/.next/server/chunks/8162.js +1 -0
  109. package/.next/standalone/agents-manage-ui/.next/server/chunks/{5333.js → 891.js} +17 -17
  110. package/.next/standalone/agents-manage-ui/.next/server/middleware-manifest.json +5 -5
  111. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  112. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  113. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  114. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  115. package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-5c45452d86333b49.js +1 -0
  116. package/.next/standalone/agents-manage-ui/.next/static/chunks/37191-b9540cf50a41d10d.js +1 -0
  117. package/.next/standalone/agents-manage-ui/.next/static/chunks/{4875-306209ac5547e001.js → 4875-6cc31870e1b4f78e.js} +1 -1
  118. package/.next/standalone/agents-manage-ui/.next/static/chunks/{12397-bee57bbef5d5a7e3.js → 55744-14f65637fb7140bb.js} +1 -1
  119. package/.next/standalone/agents-manage-ui/.next/static/chunks/{63076-75f725355363164e.js → 63209-c85b701265732b38.js} +1 -1
  120. package/.next/standalone/agents-manage-ui/.next/static/chunks/{89441-916e04ec6f04b028.js → 87817-86c2e7dd6f1d2a25.js} +1 -1
  121. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/{page-670ed3b6247fd9d0.js → page-559a0e2feb9d1b88.js} +1 -1
  122. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/{page-586222923f1e95ff.js → page-e4badb90e08fca0e.js} +1 -1
  123. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-fd4931a4dce7bbcc.js +1 -0
  124. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-e6a0d040757d714c.js +1 -0
  125. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-2ef30d1c4a08bf1c.js +1 -0
  126. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-2dc9232570ef8f79.js +1 -0
  127. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-4fd992b333ee8376.js +1 -0
  128. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-9af2eed83637e3da.js → page-d4178e9e1916d13a.js} +1 -1
  129. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-dbbbbe86b24c7fbe.js → page-8030a774459e9505.js} +1 -1
  130. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-54bd64dd19bcd7c1.js → page-cd615e6939889e58.js} +1 -1
  131. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-e3410fb65d776373.js +1 -0
  132. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-122d64932f58f736.js +1 -0
  133. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-0a2a574c78526792.js +1 -0
  134. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-c4a8e9a16d05a8a0.js → page-8039ddab76f9faaf.js} +1 -1
  135. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-626d879ae1110842.js +1 -0
  136. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-9ebdf035f876d4f1.js → page-d174ad393f08c235.js} +1 -1
  137. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-c378465695b7fcbd.js +1 -0
  138. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-7057bfdd0c6cbd6a.js → page-8333b2227270a61e.js} +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-dd16edcb356553d6.js +1 -0
  140. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-7d8c096775d48dd2.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-460655c327b24cc4.js +1 -0
  142. package/.next/standalone/agents-manage-ui/package.json +1 -1
  143. package/package.json +5 -5
  144. package/src/app/[tenantId]/page.tsx +1 -1
  145. package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.tsx +3 -5
  146. package/src/app/[tenantId]/projects/[projectId]/agents/new/page.tsx +1 -3
  147. package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +1 -5
  148. package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +1 -5
  149. package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.tsx +3 -9
  150. package/src/app/[tenantId]/projects/[projectId]/artifacts/new/page.tsx +3 -5
  151. package/src/app/[tenantId]/projects/[projectId]/artifacts/page.tsx +3 -5
  152. package/src/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.tsx +3 -9
  153. package/src/app/[tenantId]/projects/[projectId]/components/new/page.tsx +3 -5
  154. package/src/app/[tenantId]/projects/[projectId]/components/page.tsx +3 -5
  155. package/src/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.tsx +1 -7
  156. package/src/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.tsx +1 -3
  157. package/src/app/[tenantId]/projects/[projectId]/credentials/new/page.tsx +3 -4
  158. package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.tsx +3 -9
  159. package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.tsx +1 -3
  160. package/src/app/[tenantId]/projects/[projectId]/credentials/page.tsx +1 -3
  161. package/src/app/[tenantId]/projects/[projectId]/layout.tsx +4 -7
  162. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.tsx +3 -5
  163. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.tsx +3 -5
  164. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout.tsx +1 -4
  165. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.tsx +1 -3
  166. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/page.tsx +1 -3
  167. package/src/app/[tenantId]/projects/[projectId]/settings/page.tsx +3 -8
  168. package/src/app/[tenantId]/projects/page.tsx +1 -1
  169. package/src/app/api/data-components/[dataComponentId]/generate-preview/route.ts +4 -7
  170. package/src/app/api/signoz/conversations/[conversationId]/route.ts +3 -6
  171. package/src/components/agent/sidepane/nodes/sub-agent-node-editor.tsx +22 -4
  172. package/src/features/agent/domain/serialize.ts +10 -1
  173. package/src/hooks/use-node-editor.ts +18 -1
  174. package/.next/standalone/agents-manage-ui/.next/server/chunks/1042.js +0 -14
  175. package/.next/standalone/agents-manage-ui/.next/server/chunks/3291.js +0 -1
  176. package/.next/standalone/agents-manage-ui/.next/server/chunks/9327.js +0 -1
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-2dce45935d70f504.js +0 -1
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/300-efa35eafe593b090.js +0 -1
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-f07f6d11da5725a3.js +0 -1
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-b136bb9a9b117810.js +0 -1
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-efbbd62ebe386fbb.js +0 -1
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-2ad8069946c69ed8.js +0 -1
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-b274518e243d4b2b.js +0 -1
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-56e1531226b4bde4.js +0 -1
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-35b4a7d0a4152774.js +0 -1
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-140e69cb775bd6fb.js +0 -1
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-cd7a9453e707ee0c.js +0 -1
  188. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-c42f1ec825bdc202.js +0 -1
  189. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-625d0b8a1e577507.js +0 -1
  190. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-6c2aa64045d8e702.js +0 -1
  191. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-f3f27c9da18c75e1.js +0 -1
  192. /package/.next/standalone/agents-manage-ui/.next/static/{-q1f8eaP93rBncFeN2wk_ → XDBVQcoBx1lmqIF-dFkO9}/_buildManifest.js +0 -0
  193. /package/.next/standalone/agents-manage-ui/.next/static/{-q1f8eaP93rBncFeN2wk_ → XDBVQcoBx1lmqIF-dFkO9}/_ssgManifest.js +0 -0
@@ -4,11 +4,9 @@ import { MainContent } from '@/components/layout/main-content';
4
4
  import { ViewMCPServerDetails } from '@/components/mcp-servers/view-mcp-server-details';
5
5
  import { fetchMCPTool } from '@/lib/api/tools';
6
6
 
7
- interface MCPPageProps {
8
- params: Promise<{ mcpServerId: string; tenantId: string; projectId: string }>;
9
- }
10
-
11
- async function MCPPage({ params }: MCPPageProps) {
7
+ async function MCPPage({
8
+ params,
9
+ }: PageProps<'/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]'>) {
12
10
  const { mcpServerId, tenantId, projectId } = await params;
13
11
 
14
12
  let tool: Awaited<ReturnType<typeof fetchMCPTool>>;
@@ -4,10 +4,7 @@ import { MainContent } from '@/components/layout/main-content';
4
4
  export default async function NewMCPServerLayout({
5
5
  children,
6
6
  params,
7
- }: {
8
- children: React.ReactNode;
9
- params: Promise<{ tenantId: string; projectId: string }>;
10
- }) {
7
+ }: LayoutProps<'/[tenantId]/projects/[projectId]/mcp-servers/new'>) {
11
8
  const { tenantId, projectId } = await params;
12
9
  return (
13
10
  <BodyTemplate
@@ -3,9 +3,7 @@ import { type Credential, fetchCredentials } from '@/lib/api/credentials';
3
3
 
4
4
  async function NewMCPServerPage({
5
5
  params,
6
- }: {
7
- params: Promise<{ tenantId: string; projectId: string }>;
8
- }) {
6
+ }: PageProps<'/[tenantId]/projects/[projectId]/mcp-servers/new'>) {
9
7
  const { tenantId, projectId } = await params;
10
8
  let credentials: Credential[] = [];
11
9
  try {
@@ -13,9 +13,7 @@ const mcpServerDescription = 'Create MCP servers that agents can use to access e
13
13
 
14
14
  async function MCPServersPage({
15
15
  params,
16
- }: {
17
- params: Promise<{ tenantId: string; projectId: string }>;
18
- }) {
16
+ }: PageProps<'/[tenantId]/projects/[projectId]/mcp-servers'>) {
19
17
  const { tenantId, projectId } = await params;
20
18
 
21
19
  let tools: Awaited<ReturnType<typeof fetchMCPTools>>;
@@ -7,14 +7,9 @@ import { fetchProject } from '@/lib/api/projects';
7
7
 
8
8
  export const dynamic = 'force-dynamic';
9
9
 
10
- interface SettingsPageProps {
11
- params: Promise<{
12
- tenantId: string;
13
- projectId: string;
14
- }>;
15
- }
16
-
17
- export default async function SettingsPage({ params }: SettingsPageProps) {
10
+ export default async function SettingsPage({
11
+ params,
12
+ }: PageProps<'/[tenantId]/projects/[projectId]/settings'>) {
18
13
  const { tenantId, projectId } = await params;
19
14
 
20
15
  let projectData: Awaited<ReturnType<typeof fetchProject>>;
@@ -10,7 +10,7 @@ import { Button } from '@/components/ui/button';
10
10
  import { emptyStateProjectDescription, projectDescription } from '@/constants/page-descriptions';
11
11
  import { fetchProjects } from '@/lib/api/projects';
12
12
 
13
- async function ProjectsPage({ params }: { params: Promise<{ tenantId: string }> }) {
13
+ async function ProjectsPage({ params }: PageProps<'/[tenantId]/projects'>) {
14
14
  const { tenantId } = await params;
15
15
 
16
16
  let projects: Awaited<ReturnType<typeof fetchProjects>>;
@@ -1,12 +1,9 @@
1
1
  import type { NextRequest } from 'next/server';
2
2
 
3
- interface RouteContext {
4
- params: Promise<{
5
- dataComponentId: string;
6
- }>;
7
- }
8
-
9
- export async function POST(request: NextRequest, context: RouteContext) {
3
+ export async function POST(
4
+ request: NextRequest,
5
+ context: RouteContext<'/api/data-components/[dataComponentId]/generate-preview'>
6
+ ) {
10
7
  try {
11
8
  const { dataComponentId } = await context.params;
12
9
  const body = await request.json();
@@ -851,10 +851,9 @@ function buildConversationListPayload(
851
851
 
852
852
  export async function GET(
853
853
  _req: NextRequest,
854
- context: { params: Promise<{ conversationId: string }> }
854
+ context: RouteContext<'/api/signoz/conversations/[conversationId]'>
855
855
  ) {
856
- const params = await context.params;
857
- const { conversationId } = params;
856
+ const { conversationId } = await context.params;
858
857
  if (!conversationId) {
859
858
  return NextResponse.json({ error: 'Conversation ID is required' }, { status: 400 });
860
859
  }
@@ -1287,9 +1286,7 @@ export async function GET(
1287
1286
  timestamp: span.timestamp,
1288
1287
  status: hasError ? ACTIVITY_STATUS.ERROR : ACTIVITY_STATUS.SUCCESS,
1289
1288
  subAgentName: getString(span, SPAN_KEYS.ARTIFACT_SUB_AGENT_ID, '') || 'Unknown Agent',
1290
- result: hasError
1291
- ? 'Artifact processing failed'
1292
- : 'Artifact processed successfully',
1289
+ result: hasError ? 'Artifact processing failed' : 'Artifact processed successfully',
1293
1290
  artifactId: getString(span, SPAN_KEYS.ARTIFACT_ID, '') || undefined,
1294
1291
  artifactType: artifactType || undefined,
1295
1292
  artifactName: artifactName || undefined,
@@ -1,6 +1,7 @@
1
1
  import type { Node } from '@xyflow/react';
2
2
  import { useParams } from 'next/navigation';
3
3
  import { useCallback } from 'react';
4
+ import { Checkbox } from '@/components/ui/checkbox';
4
5
  import {
5
6
  getExecutionLimitInheritanceStatus,
6
7
  InheritanceIndicator,
@@ -64,14 +65,16 @@ export function SubAgentNodeEditor({
64
65
  }>();
65
66
  const selectedDataComponents = selectedNode.data?.dataComponents || [];
66
67
  const selectedArtifactComponents = selectedNode.data?.artifactComponents || [];
68
+ const isDefaultSubAgent = selectedNode.data?.isDefault || false;
67
69
 
68
70
  const { project } = useProjectData();
69
71
  const metadata = useAgentStore((state) => state.metadata);
70
72
 
71
- const { updatePath, updateNestedPath, getFieldError, setFieldRef } = useNodeEditor({
72
- selectedNodeId: selectedNode.id,
73
- errorHelpers,
74
- });
73
+ const { updatePath, updateNestedPath, getFieldError, setFieldRef, updateDefaultSubAgent } =
74
+ useNodeEditor({
75
+ selectedNodeId: selectedNode.id,
76
+ errorHelpers,
77
+ });
75
78
 
76
79
  const updateModelPath = useCallback(
77
80
  (path: string, value: any) => {
@@ -146,6 +149,21 @@ export function SubAgentNodeEditor({
146
149
  <p className="text-sm text-red-600">{getFieldError('prompt')}</p>
147
150
  )}
148
151
  </div>
152
+ <div className="space-y-2">
153
+ <div className="flex items-center space-x-2">
154
+ <Checkbox
155
+ id="is-default-sub-agent"
156
+ checked={isDefaultSubAgent}
157
+ onCheckedChange={(checked) => {
158
+ updateDefaultSubAgent(checked === true);
159
+ }}
160
+ />
161
+ <Label htmlFor="is-default-sub-agent">Is default sub agent</Label>
162
+ </div>
163
+ <p className="text-xs text-muted-foreground">
164
+ The default sub agent is the initial entry point for conversations.
165
+ </p>
166
+ </div>
149
167
  <Separator />
150
168
  <ModelSection
151
169
  models={selectedNode.data.models}
@@ -458,9 +458,18 @@ export function validateSerializedData(
458
458
  ): StructuredValidationError[] {
459
459
  const errors: StructuredValidationError[] = [];
460
460
 
461
+ if (!data.defaultSubAgentId) {
462
+ errors.push({
463
+ message: 'Default sub agent ID is required, please select a default sub agent.',
464
+ field: 'defaultSubAgentId',
465
+ code: 'required',
466
+ path: ['defaultSubAgentId'],
467
+ });
468
+ }
469
+
461
470
  if (data.defaultSubAgentId && !data.subAgents[data.defaultSubAgentId]) {
462
471
  errors.push({
463
- message: `Default agent ID '${data.defaultSubAgentId}' not found in agents.`,
472
+ message: `Default sub agent ID '${data.defaultSubAgentId}' not found in sub agents.`,
464
473
  field: 'defaultSubAgentId',
465
474
  code: 'invalid_reference',
466
475
  path: ['defaultSubAgentId'],
@@ -9,9 +9,25 @@ interface UseNodeEditorOptions {
9
9
  }
10
10
 
11
11
  export function useNodeEditor({ selectedNodeId, errorHelpers }: UseNodeEditorOptions) {
12
- const { updateNodeData } = useReactFlow();
12
+ const { updateNodeData, setNodes } = useReactFlow();
13
13
  const { markUnsaved } = useAgentActions();
14
14
 
15
+ const updateDefaultSubAgent = useCallback(
16
+ (isDefault: boolean) => {
17
+ setNodes((nodes) =>
18
+ nodes.map((node) => {
19
+ if (node.id === selectedNodeId) {
20
+ return { ...node, data: { ...node.data, isDefault }, deletable: !isDefault };
21
+ } else if (isDefault && node.data.isDefault) {
22
+ return { ...node, data: { ...node.data, isDefault: false }, deletable: true };
23
+ }
24
+ return node;
25
+ })
26
+ );
27
+ },
28
+ [selectedNodeId, setNodes]
29
+ );
30
+
15
31
  // Focus management for error fields
16
32
  const fieldRefs = useRef<Record<string, HTMLElement>>({});
17
33
 
@@ -127,6 +143,7 @@ export function useNodeEditor({ selectedNodeId, errorHelpers }: UseNodeEditorOpt
127
143
  updatePath,
128
144
  updateNestedPath,
129
145
  handleInputChange,
146
+ updateDefaultSubAgent,
130
147
 
131
148
  // Error handling
132
149
  getFieldError,
@@ -1,14 +0,0 @@
1
- "use strict";exports.id=1042,exports.ids=[1042],exports.modules={29160:(a,b,c)=>{c.r(b),c.d(b,{default:()=>h,dynamic:()=>g});var d=c(72669),e=c(45907),f=c(54637);let g="force-dynamic";async function h({children:a,params:b}){let{tenantId:c,projectId:g}=await b;try{await (0,f.Sw)(c,g)}catch(a){return(0,d.jsx)(e.default,{error:a,context:"project"})}return(0,d.jsx)(d.Fragment,{children:a})}},39878:(a,b,c)=>{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})]})}},40029:(a,b,c)=>{c.d(b,{EN:()=>i,Z3:()=>g,df:()=>j,nD:()=>k,sO:()=>h});var d=c(29991);c(58415);var e=c(8703),f=c(45796);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(33451).D)([g,h,i,j,k]),(0,d.A)(g,"6078e272fc7f692018b07c196e0f9832202e121369",null),(0,d.A)(h,"70ab46cc8b855cdf162990a94bd5a5431e0fa59c4e",null),(0,d.A)(i,"703c979831b0286eaec6f01ebd9fa14a37af8b9741",null),(0,d.A)(j,"702aa7fc45427bb1920578af1972076c01268c65e9",null),(0,d.A)(k,"702c26d13dedc0fa67bee2b8cca21b5ef0f5b103a6",null)},54257:(a,b,c)=>{c.d(b,{s:()=>m});var d=c(59111),e=c(92707),f=c(14450),g=c(44451),h=c(18061),i=c(57904);let{AlertCircle:j}=e,k=String.raw;function l({error:a}){let b=String(a),c=b.split("\n"),e=c[0]||b,f=c.slice(1).join("\n");return(0,d.jsxs)(i.Fc,{variant:"destructive",className:"max-w-full",children:[(0,d.jsx)(j,{className:"h-4 w-4"}),(0,d.jsx)(i.XL,{className:"font-semibold text-sm",children:f}),(0,d.jsx)(i.TN,{className:"mt-2 space-y-2",children:(0,d.jsx)("div",{className:"font-mono text-xs break-words",children:e})})]})}function m({code:a,props:b}){let c=(0,f.useMemo)(()=>((a,b)=>{let c=a.match(/(?:export\s+(?:default\s+)?)?(?:function\s+(\w+)|const\s+(\w+)\s*=\s*(?:\(.*\)\s*=>|\(\)))/),d=c?.[1]||c?.[2]||"App";return k`
2
- import { ErrorBoundary } from "react-error-boundary";
3
-
4
- ${a}
5
-
6
- export default function App() {
7
- const props = ${JSON.stringify(b)};
8
- return (
9
- <ErrorBoundary fallbackRender={fallbackRender}>
10
- <${d} {...props} />
11
- </ErrorBoundary>
12
- );
13
- }`})(a,b),[a,b]),i=(0,f.useMemo)(()=>({fallbackRender:l,import:{"lucide-react":e,"react-error-boundary":g}}),[]),{element:j}=(0,h.CL)({code:c,scope:i});return(0,d.jsx)("div",{children:j})}},56008:(a,b,c)=>{c.d(b,{Fs:()=>j,Hn:()=>h,Qs:()=>i,bO:()=>k});var d=c(29991);c(58415);var e=c(83248),f=c(40029),g=c(36608);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.error.message??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`),{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(33451).D)([h,i,j,k]),(0,d.A)(h,"6057dff37c0f6f464d190818b2d8c22b6dc44ffd6f",null),(0,d.A)(i,"70f8251a5de1b90a42438918943ea6f1dbad679364",null),(0,d.A)(j,"70ee595acc9cce0de8c5d34d83fe924fe6a17f08a5",null),(0,d.A)(k,"706dd819439cbfb727e550c6d8294463c262a76989",null)},56019:(a,b,c)=>{c.d(b,{S:()=>g});var d=c(59111),e=c(71771),f=c(39878);function g({control:a,name:b,label:c="JSON Schema",placeholder:g,disabled:h,description:i,readOnly:j,isRequired:k=!1}){return(0,d.jsx)(e.u,{control:a,name:b,label:c,description:i,isRequired:k,children:a=>(0,d.jsx)(f.$,{placeholder:g,...a,onChange:a.onChange,readOnly:j,disabled:h})})}},57904:(a,b,c)=>{c.d(b,{Fc:()=>h,TN:()=>j,XL:()=>i});var d=c(59111),e=c(53433),f=c(42723);let g=(0,e.F)("relative w-full rounded-lg border px-4 py-3 text-sm grid has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] grid-cols-[0_1fr] has-[>svg]:gap-x-3 gap-y-0.5 items-start [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",{variants:{variant:{default:"bg-card text-card-foreground",destructive:"text-destructive bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-destructive/90",warning:"text-amber-700 bg-card [&>svg]:text-current *:data-[slot=alert-description]:text-amber-700/90 *:data-[slot=alert-description]:dark:text-amber-300/90 dark:text-amber-300 bg-amber-50 border-amber-200 dark:bg-amber-950/40 dark:border-amber-700"}},defaultVariants:{variant:"default"}});function h({className:a,variant:b,...c}){return(0,d.jsx)("div",{"data-slot":"alert",role:"alert",className:(0,f.cn)(g({variant:b}),a),...c})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-title",className:(0,f.cn)("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"alert-description",className:(0,f.cn)("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",a),...b})}},62503:(a,b,c)=>{c.d(b,{f:()=>d});let d=c(34576).string().min(1,"Id is required.").max(64,"Id must be less than 64 characters.").regex(/^[a-zA-Z0-9_-]+$/,"Id must contain only alphanumeric characters, underscores, and dashes. No spaces allowed.")},64828:(a,b,c)=>{c.d(b,{DataComponentForm:()=>Z});var d=c(59111),e=c(6614),f=c(485),g=c(14450),h=c(75823),i=c(68156),j=c(17130),k=c(16426),l=c(56019),m=c(2856),n=c(96032),o=c(60848),p=c(93622),q=c(35283),r=c(90147);let s=(0,r.createServerReference)("70ee595acc9cce0de8c5d34d83fe924fe6a17f08a5",r.callServer,void 0,r.findSourceMapURL,"updateDataComponentAction"),t=(0,r.createServerReference)("70f8251a5de1b90a42438918943ea6f1dbad679364",r.callServer,void 0,r.findSourceMapURL,"createDataComponentAction");var u=c(42723),v=c(97329),w=c(53710),x=c(89565),y=c(27218),z=c(3905),A=c(58616),B=c(85660),C=c(51023),D=c(75726),E=c(76469);function F(a){let{resolvedTheme:b}=(0,E.D)(),{language:c="jsx",className:e,value:f,onChange:g,placeholder:h,disabled:i,readOnly:j,...k}=a,l=[(0,B.Q2)({jsx:"jsx"===c||"tsx"===c,typescript:"typescript"===c||"tsx"===c})];return(0,d.jsx)(D.Ay,{...k,value:f||"",onChange:a=>g(a),extensions:l,theme:"dark"===b?C.nQ:C.Bs,placeholder:h||"Enter code...",editable:!i&&!j,basicSetup:{lineNumbers:!1,foldGutter:!0,dropCursor:!1,allowMultipleSelections:!1,bracketMatching:!0,closeBrackets:!0,autocompletion:!0},"data-disabled":i?"":void 0,"data-read-only":j?"":void 0,className:(0,u.cn)("h-full [&>.cm-editor]:max-h-[inherit] [&_.cm-gutters]:!bg-transparent [&>.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",e)})}var G=c(67466),H=c(71534),I=c(35229),J=c(34740),K=c(39729),L=c(14875);let M=L.bL,N=g.forwardRef(({className:a,...b},c)=>(0,d.jsx)(L.B8,{ref:c,className:(0,u.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",a),...b}));N.displayName=L.B8.displayName;let O=g.forwardRef(({className:a,...b},c)=>(0,d.jsx)(L.l9,{ref:c,className:(0,u.cn)("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",a),...b}));O.displayName=L.l9.displayName;let P=g.forwardRef(({className:a,...b},c)=>(0,d.jsx)(L.UC,{ref:c,className:(0,u.cn)("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",a),...b}));P.displayName=L.UC.displayName;var Q=c(32442);let R=(0,r.createServerReference)("702aa7fc45427bb1920578af1972076c01268c65e9",r.callServer,void 0,r.findSourceMapURL,"updateDataComponent");var S=c(54257);function T({tenantId:a,projectId:b,dataComponentId:c,existingPreview:e,onPreviewChanged:f}){let[h,j]=(0,g.useState)(e||null),[k,l]=(0,g.useState)(!1),[n,o]=(0,g.useState)(!1),[p,q]=(0,g.useState)(""),[r,s]=(0,g.useState)(!!e),[t,u]=(0,g.useState)(!!e),[v,B]=(0,g.useState)(""),[C,D]=(0,g.useState)(!1),E=async d=>{l(!0),j(null),q(""),s(!1),u(!1);try{let e=await fetch(`/api/data-components/${c}/generate-preview`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tenantId:a,projectId:b,instructions:d||void 0,existingCode:d?h?.code:void 0})});if(!e.ok)throw Error("Failed to generate preview");if(!e.body)throw Error("No response body");let g=e.body.getReader(),k=new TextDecoder,l="",m=null;for(;;){let{done:a,value:b}=await g.read();if(a)break;let c=k.decode(b,{stream:!0}),d=(l+=c).split("\n");for(let a of(l=d.pop()||"",d))if(a.trim())try{let b=JSON.parse(a);m=b,b.code&&q(b.code)}catch(b){console.warn("Failed to parse line:",a,b)}}if(m)j(m),s(!0),f?.(m),i.oR.success("Preview generated successfully");else throw Error("No valid preview generated")}catch(a){console.error("Failed to generate preview:",a),i.oR.error("Failed to generate preview"),s(!0)}finally{l(!1)}},L=async()=>{o(!0);try{await R(a,b,{id:c,preview:null}),j(null),u(!1),f?.(null),i.oR.success("Preview deleted")}catch(a){console.error("Error deleting preview:",a),i.oR.error("Failed to delete preview")}finally{o(!1)}},T=null!==h&&(h.code?.trim().length??0)>0,U=(0,g.useMemo)(()=>h?.data?JSON.stringify(h.data,null,2):"{}",[h?.data]),V=(0,g.useMemo)(()=>h?.code||"",[h?.code]),W=(0,g.useMemo)(()=>h?.data||{},[h?.data]),X=(0,g.useCallback)(a=>{if(h)try{let b=JSON.parse(a),c={...h,data:b};j(c),f?.(c)}catch{}},[h,f]);return(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"text-lg font-semibold",children:"Component Preview"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"Generate a React/Tailwind component based on your schema"})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[!T&&(0,d.jsx)(m.$,{onClick:()=>E(),disabled:k,className:"gap-2",children:k?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(w.A,{className:"h-4 w-4 animate-spin"}),"Generating..."]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(x.A,{className:"h-4 w-4"}),"Generate"]})}),T&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(K.AM,{open:C,onOpenChange:D,children:[(0,d.jsx)(K.Wv,{asChild:!0,children:(0,d.jsx)(m.$,{variant:"outline",disabled:n||k,className:"gap-2",children:k?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(w.A,{className:"h-4 w-4 animate-spin"}),"Regenerating..."]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(y.A,{className:"h-4 w-4"}),"Regenerate"]})})}),(0,d.jsx)(K.hl,{className:"w-96",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h4",{className:"font-medium text-sm mb-2",children:"Modify Component"}),(0,d.jsx)(J.J,{htmlFor:"instructions",className:"text-xs text-muted-foreground",children:"Describe what you'd like to change (optional)"}),(0,d.jsx)(Q.T,{id:"instructions",placeholder:"e.g. Make it more compact, add a border, use different icons...",value:v,onChange:a=>B(a.target.value),className:"mt-2 min-h-[100px]"})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(m.$,{size:"sm",onClick:async()=>{D(!1),await E(v||void 0),B("")},disabled:k,className:"flex-1",children:v?"Apply Changes":"Regenerate"}),(0,d.jsx)(m.$,{size:"sm",variant:"outline",onClick:()=>{D(!1),B("")},children:"Cancel"})]})]})})]}),t&&(0,d.jsx)(m.$,{variant:"destructive",onClick:L,disabled:n||k,size:"icon",title:"Delete preview",children:n?(0,d.jsx)(w.A,{className:"h-4 w-4 animate-spin"}):(0,d.jsx)(z.A,{className:"h-4 w-4"})})]})]})]}),k&&p&&(0,d.jsx)(A.jH,{isAnimating:!0,className:"[&_[data-code-block-header=true]]:hidden [&_pre]:bg-muted/40!",children:`\`\`\`jsx
14
- ${p}\`\`\``}),k&&!p&&(0,d.jsx)(H.Zp,{className:"p-6",children:(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,d.jsx)(w.A,{className:"h-8 w-8 animate-spin text-primary"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"Generating component preview..."})]})}),T&&!k&&r&&h&&(0,d.jsxs)(M,{defaultValue:"preview",className:"w-full",children:[(0,d.jsxs)(N,{children:[(0,d.jsx)(O,{value:"preview",children:"Preview"}),(0,d.jsx)(O,{value:"code",children:"Code"}),(0,d.jsx)(O,{value:"data",children:"Sample Data"})]}),(0,d.jsx)(P,{value:"preview",children:(0,d.jsx)(H.Zp,{className:"p-6",children:(0,d.jsx)(S.s,{code:V,props:W})})}),(0,d.jsx)(P,{value:"code",children:(0,d.jsx)(F,{value:V,onChange:a=>{if(!h)return;let b={...h,code:a};j(b),f?.(b)},language:"jsx",className:"max-h-[500px]"})}),(0,d.jsx)(P,{value:"data",children:(0,d.jsx)(G.i,{value:U,onChange:X,className:"max-h-[500px]"})})]}),!T&&!k&&!r&&(0,d.jsx)(I.n,{children:(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"No preview generated"})})]})}let U={id:"",name:"",description:"",props:""};var V=c(34576),W=c(80974),X=c(62503);let Y=V.object({id:X.f,name:V.string().min(1,"Name is required."),description:V.string().min(1,"Description is required."),props:V.string().min(1,"Props schema is required.").transform((a,b)=>{try{let c=JSON.parse(a),d=(0,W._O)(a);if(!d.isValid){let a=d.errors[0]?.message||"Invalid JSON schema";return b.addIssue({code:V.ZodIssueCode.custom,message:a}),V.NEVER}return c}catch(a){return b.addIssue({code:V.ZodIssueCode.custom,message:(0,W.SR)(a)}),V.NEVER}}).optional(),preview:V.object({code:V.string(),data:V.record(V.string(),V.unknown())}).nullable().optional()});function Z({tenantId:a,projectId:b,id:c,initialData:r}){let[w,x]=(0,g.useState)(!1),y=(0,h.mN)({resolver:(0,e.u)(Y),defaultValues:(a=>{if(!a)return U;let b={...a};return b.props&&(b.props=(0,u.S_)(b.props)),b})(r)}),{isSubmitting:z}=y.formState,A=(0,f.useRouter)();(0,q.S)({form:y,nameField:"name",idField:"id",isEditing:!!c});let B=async d=>{try{let e={...d};if(c){let c=await s(a,b,e);if(!c.success)return void i.oR.error(c.error||"Failed to update component");i.oR.success("Component updated")}else{let c=await t(a,b,e);if(!c.success)return void i.oR.error(c.error||"Failed to create component");i.oR.success("Component created"),A.push(`/${a}/projects/${b}/components`)}}catch(b){console.error("Error submitting component:",b);let a=b instanceof Error?b.message:"An unexpected error occurred";i.oR.error(a)}};return(0,d.jsxs)(n.lG,{open:w,onOpenChange:x,children:[(0,d.jsx)(p.lV,{...y,children:(0,d.jsxs)("form",{onSubmit:y.handleSubmit(B),className:"space-y-8",children:[(0,d.jsx)(j.a,{control:y.control,name:"name",label:"Name",placeholder:"ListOrders",description:(0,d.jsxs)(d.Fragment,{children:["This name is used to identify the component in chat widget integration."," ",(0,d.jsx)(o.G,{href:"https://docs.inkeep.com/typescript-sdk/structured-outputs/data-components#frontend-integration",target:"_blank",children:"Learn more"})]}),isRequired:!0}),(0,d.jsx)(j.a,{control:y.control,name:"id",label:"Id",placeholder:"my-data-component",disabled:!!c,description:c?"":"Choose a unique identifier for this component. Using an existing id will replace that component.",isRequired:!0}),(0,d.jsx)(k.K,{control:y.control,name:"description",label:"Description",placeholder:"Display a list of user orders with interactive options",className:"min-h-[80px]",isRequired:!0}),(0,d.jsx)(l.S,{control:y.control,name:"props",label:"Props (JSON schema)",placeholder:"Enter a valid JSON Schema...",isRequired:!0}),c&&(0,d.jsx)(T,{tenantId:a,projectId:b,dataComponentId:c,existingPreview:r?.preview||null,onPreviewChanged:a=>{y.setValue("preview",a)}}),(0,d.jsxs)("div",{className:"flex w-full justify-between",children:[(0,d.jsx)(m.$,{type:"submit",disabled:z,children:"Save"}),c&&(0,d.jsx)(n.zM,{asChild:!0,children:(0,d.jsx)(m.$,{type:"button",variant:"secondary",children:"Delete Component"})})]})]})}),w&&c&&(0,d.jsx)(v.u,{dataComponentId:c,dataComponentName:y.getValues("name"),setIsOpen:x,redirectOnDelete:!0})]})}},71534:(a,b,c)=>{c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g,wL:()=>k});var d=c(59111),e=c(42723);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}function k({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-footer",className:(0,e.cn)("flex items-center px-6 [.border-t]:pt-6",a),...b})}},80974:(a,b,c)=>{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"}},92107:(a,b,c)=>{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:"Components"}],children:(0,d.jsxs)(f.D,{children:[(0,d.jsx)(g.zY,{title:"Components",description:i.yr}),(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}`))})]})})}},93755:(a,b,c)=>{c.d(b,{J:()=>h});var d=c(59111),e=c(53710),f=c(2856),g=c(96032);function h({itemName:a,isSubmitting:b,onDelete:c,customTitle:h,customDescription:i}){let j=async()=>{await c()};return(0,d.jsxs)(g.Cf,{children:[(0,d.jsx)(g.L3,{children:h||`Delete ${a||"this item"}`}),(0,d.jsx)(g.rr,{children:i||`Are you sure you want to delete ${a||"this item"}? This action cannot be undone.`}),(0,d.jsxs)(g.Es,{children:[(0,d.jsx)(g.HM,{asChild:!0,children:(0,d.jsx)(f.$,{variant:"outline",children:"Cancel"})}),(0,d.jsx)(f.$,{variant:"destructive",onClick:j,disabled:b,children:b?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(e.A,{className:"size-4 animate-spin"})," Deleting..."]}):"Delete"})]})]})}},97329:(a,b,c)=>{c.d(b,{u:()=>k});var d=c(59111),e=c(485),f=c(14450),g=c(68156),h=c(93755),i=c(90147);let j=(0,i.createServerReference)("706dd819439cbfb727e550c6d8294463c262a76989",i.callServer,void 0,i.findSourceMapURL,"deleteDataComponentAction");function k({dataComponentId:a,dataComponentName:b,setIsOpen:c,redirectOnDelete:i=!1}){let{tenantId:k,projectId:l}=(0,e.useParams)(),m=(0,e.useRouter)(),[n,o]=(0,f.useState)(!1),p=async()=>{o(!0);try{let b=await j(k,l,a);b.success?(c(!1),g.oR.success("Component deleted."),i&&m.push(`/${k}/projects/${l}/components`)):g.oR.error(b.error)}finally{o(!1)}};return(0,d.jsx)(h.J,{itemName:b||"this component",isSubmitting:n,onDelete:p})}},98261:(a,b,c)=>{c.d(b,{DataComponentForm:()=>d});let d=(0,c(60241).registerClientReference)(function(){throw Error("Attempted to call DataComponentForm() from the server but DataComponentForm 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/data-components/form/data-component-form.tsx","DataComponentForm")}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=3291,exports.ids=[3291],exports.modules={5294:(a,b,c)=>{c.d(b,{$Y:()=>g,GO:()=>i,K3:()=>h,h9:()=>k});var d=c(29991);c(58415);var e=c(8703),f=c(45796);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(33451).D)([g,h,i,j,k]),(0,d.A)(g,"786abcb0de514f7f121bb4de2dbd84b9964c364fec",null),(0,d.A)(h,"7098a7fede14f7b9e5e6935c27437da7036c822600",null),(0,d.A)(i,"70bea6945ab3f746beae38a00eabbd0396af024bb7",null),(0,d.A)(j,"78f6d37b4abaecb7ec3fee3461b2c64a0ce3afe8e7",null),(0,d.A)(k,"706e0eff2821a81840f9b1dce49c2ed721efe80789",null)},19329:(a,b,c)=>{c.d(b,{U:()=>f});var d=c(29991);c(58415);var e=c(5294);async function f(a,b,c){try{let d=await (0,e.K3)(a,b,c.id);if(d)return d}catch{}try{return await (0,e.GO)(a,b,c)}catch(a){throw console.error("Failed to save credential to database:",a),Error(`Failed to save credential '${c.id}' to database`)}}(0,c(33451).D)([f]),(0,d.A)(f,"704aa5f8b659e67513d358c03fcf8667438a3266f4",null)},21395:(a,b,c)=>{c.d(b,{RN:()=>t,Ak:()=>q,uP:()=>u,tN:()=>r,Mj:()=>p,tQ:()=>o,pv:()=>n,Mb:()=>m,H6:()=>v,EN:()=>l,P:()=>w});var d=c(29991);c(58415);var e=c(47990),f=c(69973),g=c(67417);class h extends Error{constructor(a,b,c){super(a),this.operation=b,this.cause=c,this.name="NangoError"}}function i(a,b,c){if(a instanceof h)throw a;throw new h(b,c,a)}var j=c(33451);let k=()=>{let a=process.env.NANGO_SECRET_KEY;if(!a)throw new h("NANGO_SECRET_KEY environment variable is required for Nango integration");try{return new f.CA({secretKey:a,host:process.env.NANGO_SERVER_URL||process.env.PUBLIC_NANGO_SERVER_URL||g.ko})}catch(a){throw new h("Failed to initialize Nango client","new Nango",a)}};async function l(){let a=process.env.NANGO_SECRET_KEY;return!!(a&&""!==a.trim())}async function m(){try{let a=k();return(await a.listProviders({})).data}catch(a){console.error("Failed to fetch providers:",a),i(a,"Unable to retrieve available providers from Nango","listProviders")}}async function n(a){try{let b=k();return(await b.getProvider({provider:a})).data}catch(b){console.error(`Failed to fetch provider ${a}:`,b),i(b,`Provider '${a}' not found or inaccessible`,"getProvider")}}async function o(){try{let a=k();return(await a.listIntegrations()).configs}catch(a){console.error("Failed to fetch integrations:",a),i(a,"Unable to retrieve existing integrations","listIntegrations")}}async function p(a){try{let b=k(),c=(await b.getIntegration({uniqueKey:a},{include:["credentials"]})).data,d=!1;d=c.credentials?.type==="OAUTH2"||c.credentials?.type==="OAUTH1"||c.credentials?.type==="TBA"?!!(c.credentials?.client_id&&c.credentials?.client_secret):c.credentials?.type!=="APP"||!!(c.credentials?.app_id&&c.credentials?.app_link);let{credentials:e,...f}=c;return{...f,areCredentialsSet:d}}catch(b){if(b&&"object"==typeof b&&"status"in b&&404===b.status)return null;console.error(`Failed to fetch integration ${a}:`,b),i(b,`Unable to fetch integration with key '${a}'`,"getIntegration")}}async function q(a){try{let b=k();return(await b.createIntegration({provider:a.provider,unique_key:a.uniqueKey,display_name:a.displayName,credentials:a.credentials})).data}catch(b){console.error("Failed to create integration:",b),i(b,`Failed to create integration '${a.uniqueKey}' for provider '${a.provider}'`,"createIntegration")}}async function r(a){try{let a=k();return(await a.listConnections()).connections}catch(c){let b=a?` for integration '${a}'`:"";console.error(`Failed to fetch connections${b}:`,c),i(c,`Unable to retrieve connections${b}`,"listConnections")}}async function s({endUserId:a="test-tenant",endUserEmail:b="test@test-tenant.com",endUserDisplayName:c="Test User",organizationId:d=process.env.TENANT_ID||g.P3,organizationDisplayName:e="Test Organization",integrationId:f}){try{let g=k(),{data:h}=await g.createConnectSession({end_user:{id:a,email:b,display_name:c},organization:{id:d,display_name:e},allowed_integrations:[f]});return h}catch(a){console.error("Failed to create connect session:",a),i(a,`Unable to create connect session for integration '${f}'`,"createConnectSession")}}async function t({name:a,apiKeyToSet:b,metadata:c}){let d=(0,e.K_)(a);try{let e;try{e=await q({provider:"private-api-bearer",uniqueKey:d,displayName:a})}catch(a){if(a instanceof h&&a.cause&&"object"==typeof a.cause&&"status"in a.cause&&400===a.cause.status){let b=await p(d);b?e=b:i(a,"Integration creation failed for unexpected reasons","create")}else i(a,`Failed to create or retrieve integration '${d}'`,"create")}try{let a=`${process.env.NANGO_SERVER_URL||process.env.PUBLIC_NANGO_SERVER_URL||g.ko}/connections`,f={provider_config_key:e.unique_key,connection_id:d,metadata:c,credentials:{type:"API_KEY",apiKey:b}},i=await fetch(a,{method:"POST",headers:{Authorization:`Bearer ${process.env.NANGO_SECRET_KEY}`,"Content-Type":"application/json"},body:JSON.stringify(f)});if(!i.ok)throw new h(`Failed to import connection: HTTP ${i.status} - ${i.statusText}`,"importConnection")}catch(a){i(a,"Failed to import API key connection to Nango","importConnection")}try{await w({providerConfigKey:e.unique_key,connectionId:d,metadata:c})}catch(a){console.warn(`Failed to set metadata for connection ${d}:`,a)}return{integration:e}}catch(b){console.error("Unexpected error creating API key credential:",b),i(b,`Unexpected error creating API key credential '${a}'`,"createNangoApiKeyConnection")}}async function u({providerName:a,uniqueKey:b,displayName:c,credentials:d}){try{let e,f=null;try{f=await p(b)}catch(b){if(b instanceof h)throw b;console.debug(`Integration '${a}' not found, will create new one`)}if(f?.areCredentialsSet)e=f;else try{e=await q({provider:a,uniqueKey:b,displayName:c,credentials:d})}catch(b){i(b,`Failed to create integration for provider '${a}'`,"create")}try{return(await s({integrationId:e.unique_key})).token}catch(a){i(a,`Failed to create connect session for integration '${e.unique_key}'`,"createConnectSession")}}catch(b){console.error("Unexpected error creating provider connect session:",b),i(b,`Unexpected error creating connect session for provider '${a}'`,"createProviderConnectSession")}}async function v({providerConfigKey:a,connectionId:b}){try{let c=k();return await c.getMetadata(a,b)}catch(a){if(a&&"object"==typeof a&&"status"in a&&404===a.status)return null;console.error("Failed to get connection metadata:",a),i(a,`Unable to retrieve metadata for connection '${b}'`,"getMetadata")}}async function w({providerConfigKey:a,connectionId:b,metadata:c}){try{let d=k();await d.setMetadata(a,b,c)}catch(a){console.error("Failed to set connection metadata:",a),i(a,`Unable to update metadata for connection '${b}'`,"setMetadata")}}(0,j.D)([l,m,n,o,p,q,r,t,u,v,w]),(0,d.A)(l,"00bad67faf2d1139d8bdfc2baf9029a9fbe8d1ad3f",null),(0,d.A)(m,"00e3a707978f72054f33007ea7fa0efbdd5be513a3",null),(0,d.A)(n,"40ec0e56cff30706e32b41d4ef5082f849dee8d874",null),(0,d.A)(o,"00aa7d6f1babb7192dc43c02733ca2773d2c2d99da",null),(0,d.A)(p,"407a58ce7a51ad4a151cec3955b1ba7fc91f652f2a",null),(0,d.A)(q,"4080523bfc27f563dae3f28a09259b9e1dcb23e3a8",null),(0,d.A)(r,"404d9046c6ca1ba0063841057bb7374be580633800",null),(0,d.A)(t,"40c2af999959ef4c953c12615940d76e480393fa80",null),(0,d.A)(u,"404746f3902d77e42df61cc61cd0b824d112f5101f",null),(0,d.A)(v,"405d3ce8c4fdc7c3f1b835947ae848fd067a245335",null),(0,d.A)(w,"401949b0b78d460699b3cc3386a53aa94c50a51909",null)},99337:(a,b,c)=>{c.d(b,{U:()=>e});var d=c(90147);let e=(0,d.createServerReference)("704aa5f8b659e67513d358c03fcf8667438a3266f4",d.callServer,void 0,d.findSourceMapURL,"findOrCreateCredential")}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=9327,exports.ids=[9327],exports.modules={27159:(a,b,c)=>{c.d(b,{bq:()=>l,eb:()=>n,gC:()=>m,l6:()=>j,yv:()=>k});var d=c(59111),e=c(22836),f=c(67048),g=c(39108),h=c(25773),i=c(42723);function j({...a}){return(0,d.jsx)(e.bL,{"data-slot":"select",...a})}function k({...a}){return(0,d.jsx)(e.WT,{"data-slot":"select-value",...a})}function l({className:a,size:b="default",children:c,...g}){return(0,d.jsxs)(e.l9,{"data-slot":"select-trigger","data-size":b,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 font-normal normal-case",a),...g,children:[c,(0,d.jsx)(e.In,{asChild:!0,children:(0,d.jsx)(f.A,{className:"size-4 opacity-50"})})]})}function m({className:a,children:b,position:c="popper",...f}){return(0,d.jsx)(e.ZL,{children:(0,d.jsxs)(e.UC,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent rounded-md border shadow-md","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...f,children:[(0,d.jsx)(o,{}),(0,d.jsx)(e.LM,{className:(0,i.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:b}),(0,d.jsx)(p,{})]})})}function n({className:a,children:b,...c}){return(0,d.jsxs)(e.q7,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...c,children:[(0,d.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,d.jsx)(e.VF,{children:(0,d.jsx)(g.A,{className:"size-4"})})}),(0,d.jsx)(e.p4,{children:b})]})}function o({className:a,...b}){return(0,d.jsx)(e.PP,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(h.A,{className:"size-4"})})}function p({className:a,...b}){return(0,d.jsx)(e.wn,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(f.A,{className:"size-4"})})}},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(4558)},62748:(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.SPANS_WITH_ERRORS),t=this.extractSeries(k,g.XQ.USER_MESSAGES),u=new Map;for(let a of r){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&u.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,agentId:a.labels?.[g.SH.AGENT_ID]??g.PC,agentName:a.labels?.[g.SH.AGENT_NAME]??g.PC})}let v=new Map;for(let a of q){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&v.set(b,l(a))}let w=new Map,x=new Map;for(let a of t){let b=a.labels?.[g.SH.CONVERSATION_ID],c=a.labels?.[g.SH.MESSAGE_CONTENT],d=l(a);b&&c&&(x.get(b)??x.set(b,[]).get(b))?.push({t:d,c:c})}for(let[a,b]of x){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;w.set(a,{content:b,timestamp:h(c.t)})}}let y=this.toConversationStats(m,n,o,p,u,s,w);if((c?.spanName||c?.attributes?.length)&&(y=await this.applySpanFilters(y,a,b,c,d)),f?.trim()){let a=f.toLowerCase().trim();y=y.filter(b=>b.firstUserMessage?.toLowerCase().includes(a)||b.conversationId.toLowerCase().includes(a)||b.agentId.toLowerCase().includes(a))}if(y.sort((a,b)=>((a=0,b=0)=>b-a)(v.get(a.conversationId),v.get(b.conversationId))),!e)return y;let{page:z,limit:A}=e,B=y.length,C=Math.ceil(B/A),D=(z-1)*A;return{data:y.slice(D,D+A),pagination:{page:z,limit:A,total:B,totalPages:C,hasNextPage:z<C,hasPreviousPage:z>1}}}catch(a){return console.error("getConversationStats error:",a),[]}}async getAICallsByAgent(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.AGENT_ID]||g.PC,c=k(a);c&&f.set(b,(f.get(b)||0)+c)}return[...f].map(([a,b])=>({agentId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByAgent error:",a),[]}}async getAICallsBySubAgent(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.AGENT_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,agentId: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.AGENT_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 getUniqueAgents(a,b,c){try{let d=await this.makeRequest(this.buildUniqueAgentsPayload(a,b,c)),e=this.extractSeries(d,"uniqueAgents").map(a=>a.labels?.[g.SH.AGENT_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueAgents 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,g.XQ.SPANS_WITH_ERRORS),n=new Map;for(let a of l){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&n.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,agentId:a.labels?.[g.SH.AGENT_ID]??g.PC,agentName:a.labels?.[g.SH.AGENT_NAME]??g.PC})}let o=this.toConversationStats(h,i,j,k,n,m,new Map);return(c?.spanName||c?.attributes?.length)&&(o=await this.applySpanFilters(o,a,b,c,d)),{totalToolCalls:o.reduce((a,b)=>a+b.totalToolCalls,0),totalTransfers:o.reduce((a,b)=>a+b.totalTransfers,0),totalDelegations:o.reduce((a,b)=>a+b.totalDelegations,0),totalConversations:o.length,totalAICalls:o.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.AGENT_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){let i=new Map,j=a=>{let b=i.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 i.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=j(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=j(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=j(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&&(j(b).totalAICalls+=c)}let l=["execution_handler.execute","agent.load_tools","context.handle_context_resolution","context.resolve","agent.generate","context-resolver.resolve_single_fetch_definition","agent_session.generate_structured_update","agent_session.process_artifact","agent_session.generate_artifact_metadata","response.format_object_response","response.format_response","ai.toolCall"];for(let a of f){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.NAME]||"",d=k(a);d&&l.includes(c)&&(j(b).totalErrors+=d)}let m=[];for(let a of new Set([...i.keys(),...e.keys()])){let b=i.get(a)||j(a),c=e.get(a)||{tenantId:g.PC,agentId:g.PC,agentName:g.PC};m.push({conversationId:a,tenantId:c.tenantId,agentId:c.agentId,agentName:c.agentName||"",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:h.get(a)?.content,startTime:h.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},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},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG}],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},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},{key:g.SH.AGENT_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.AGENT_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.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.AGENT_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.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_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.AGENT_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.AGENT_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.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_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},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.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TELEMETRY_FUNCTION_ID,...g.A3.STRING_TAG}],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},spansWithErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.SPANS_WITH_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.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},{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.SPANS_WITH_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}}buildUniqueAgentsPayload(a,b,c){let d=[{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_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:{uniqueAgents:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_AGENTS,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.AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.UNIQUE_AGENTS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AGENT_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},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_MODEL_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:{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}],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}},82204:(a,b,c)=>{c.r(b),c.d(b,{"408f30f41ec053e29e7a61fa0dd7c4b60ce6a62b50":()=>d.vj,"60293c6b60dda289ad6369ac43bfd13378c0d33db3":()=>d.gA,"6043bece873803266cd3b7bcf80a14dac927502c4b":()=>d.Sw,"606cfc84960e02bf244a0ce9658ed346cef5bfdfd8":()=>d.xx,"701ad87fbdbe04347bb4d4f06ec35f609fd96eab7c":()=>d.vr});var d=c(54637)}};
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[20837],{6244:(e,t,r)=>{r.d(t,{o:()=>n});var a=r(97555);let n=(0,a.createServerReference)("78be827cab6d6f251a104a61439f73bff23bb3c4c5",a.callServer,void 0,a.findSourceMapURL,"deleteToolAction")},11469:(e,t,r)=>{r.d(t,{C1:()=>k,bL:()=>j});var a=r(79178),n=r(46335),o=r(11021),s=r(1214),l=r(52032),i=r(59492),d=r(28372),c=r(60651),u=r(29164),m=r(60098),p="Checkbox",[f,h]=(0,o.A)(p),[x,g]=f(p);function v(e){let{__scopeCheckbox:t,checked:r,children:n,defaultChecked:o,disabled:s,form:i,name:d,onCheckedChange:c,required:u,value:f="on",internal_do_not_use_render:h}=e,[g,v]=(0,l.i)({prop:r,defaultProp:null!=o&&o,onChange:c,caller:p}),[b,y]=a.useState(null),[j,w]=a.useState(null),k=a.useRef(!1),N=!b||!!i||!!b.closest("form"),C={checked:g,disabled:s,setChecked:v,control:b,setControl:y,name:d,form:i,value:f,hasConsumerStoppedPropagationRef:k,required:u,defaultChecked:!R(o)&&o,isFormControl:N,bubbleInput:j,setBubbleInput:w};return(0,m.jsx)(x,{scope:t,...C,children:"function"==typeof h?h(C):n})}var b="CheckboxTrigger",y=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,onKeyDown:o,onClick:l,...i}=e,{control:d,value:c,disabled:p,checked:f,required:h,setControl:x,setChecked:v,hasConsumerStoppedPropagationRef:y,isFormControl:j,bubbleInput:w}=g(b,r),k=(0,n.s)(t,x),N=a.useRef(f);return a.useEffect(()=>{let e=null==d?void 0:d.form;if(e){let t=()=>v(N.current);return e.addEventListener("reset",t),()=>e.removeEventListener("reset",t)}},[d,v]),(0,m.jsx)(u.sG.button,{type:"button",role:"checkbox","aria-checked":R(f)?"mixed":f,"aria-required":h,"data-state":S(f),"data-disabled":p?"":void 0,disabled:p,value:c,...i,ref:k,onKeyDown:(0,s.mK)(o,e=>{"Enter"===e.key&&e.preventDefault()}),onClick:(0,s.mK)(l,e=>{v(e=>!!R(e)||!e),w&&j&&(y.current=e.isPropagationStopped(),y.current||e.stopPropagation())})})});y.displayName=b;var j=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,name:a,checked:n,defaultChecked:o,required:s,disabled:l,value:i,onCheckedChange:d,form:c,...u}=e;return(0,m.jsx)(v,{__scopeCheckbox:r,checked:n,defaultChecked:o,disabled:l,required:s,onCheckedChange:d,name:a,form:c,value:i,internal_do_not_use_render:e=>{let{isFormControl:a}=e;return(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(y,{...u,ref:t,__scopeCheckbox:r}),a&&(0,m.jsx)(C,{__scopeCheckbox:r})]})}})});j.displayName=p;var w="CheckboxIndicator",k=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,forceMount:a,...n}=e,o=g(w,r);return(0,m.jsx)(c.C,{present:a||R(o.checked)||!0===o.checked,children:(0,m.jsx)(u.sG.span,{"data-state":S(o.checked),"data-disabled":o.disabled?"":void 0,...n,ref:t,style:{pointerEvents:"none",...e.style}})})});k.displayName=w;var N="CheckboxBubbleInput",C=a.forwardRef((e,t)=>{let{__scopeCheckbox:r,...o}=e,{control:s,hasConsumerStoppedPropagationRef:l,checked:c,defaultChecked:p,required:f,disabled:h,name:x,value:v,form:b,bubbleInput:y,setBubbleInput:j}=g(N,r),w=(0,n.s)(t,j),k=(0,i.Z)(c),C=(0,d.X)(s);a.useEffect(()=>{if(!y)return;let e=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,t=!l.current;if(k!==c&&e){let r=new Event("click",{bubbles:t});y.indeterminate=R(c),e.call(y,!R(c)&&c),y.dispatchEvent(r)}},[y,k,c,l]);let S=a.useRef(!R(c)&&c);return(0,m.jsx)(u.sG.input,{type:"checkbox","aria-hidden":!0,defaultChecked:null!=p?p:S.current,required:f,disabled:h,name:x,value:v,form:b,...o,tabIndex:-1,ref:w,style:{...o.style,...C,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function R(e){return"indeterminate"===e}function S(e){return R(e)?"indeterminate":e?"checked":"unchecked"}C.displayName=N},15635:(e,t,r)=>{r.d(t,{X:()=>n});var a=r(97555);let n=(0,a.createServerReference)("70486ad3c6fea28739afebbb23fa9b2ba7987e3e23",a.callServer,void 0,a.findSourceMapURL,"createMCPTool")},15660:(e,t,r)=>{r.d(t,{RuntimeConfigProvider:()=>s,y:()=>l});var a=r(60098),n=r(79178);let o=(0,n.createContext)(null);function s(e){let{value:t,children:r}=e;return(0,a.jsx)(o.Provider,{value:t,children:r})}function l(){let e=(0,n.useContext)(o);if(!e)throw Error("useRuntimeConfig must be used within <RuntimeConfigProvider>");return e}},23574:(e,t,r)=>{r.d(t,{a:()=>s});var a=r(60098),n=r(34186),o=r(35613);function s(e){let{control:t,name:r,label:s,placeholder:l,type:i="text",min:d,max:c,disabled:u,description:m,isRequired:p=!1}=e;return(0,a.jsx)(o.u,{control:t,name:r,label:s,description:m,isRequired:p,children:e=>{var t;return(0,a.jsx)(n.p,{type:i,placeholder:l,min:d,max:c,disabled:u,...e,value:null!=(t=e.value)?t:"",onChange:t=>{let r=t.target.value;"number"===i?e.onChange(""===r?null:Number(r)):e.onChange(r)}})}})}},23676:(e,t,r)=>{r.d(t,{U:()=>m});var a=r(13328),n=r(93137),o=r(79178),s=r(32028),l=r(15660),i=r(41211),d=r(95214),c=r(35444),u=r(52753);function m(e){let{tenantId:t,projectId:r,onFinish:m}=e,p=(0,n.useRouter)(),{PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:f}=(0,l.y)(),{openNangoConnectHeadless:h}=(0,u.$)(),x=(0,o.useRef)(new Map),g=(0,o.useCallback)(e=>new Promise((a,n)=>{let o=x.current.get(e);o&&(o(),x.current.delete(e));try{let o=function(e){let{PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:t,tenantId:r,projectId:a,id:n}=e;if(!r||"string"!=typeof r)throw Error("Invalid tenantId: must be a non-empty string");if(!n||"string"!=typeof n)throw Error("Invalid tool id: must be a non-empty string");if(!a||"string"!=typeof a)throw Error("Invalid projectId: must be a non-empty string");let o=/^[a-zA-Z0-9-_]+$/;if(!o.test(r))throw Error("Invalid tenantId format: only alphanumeric characters, hyphens, and underscores allowed");if(!o.test(n))throw Error("Invalid tool id format: only alphanumeric characters, hyphens, and underscores allowed");if(!o.test(a))throw Error("Invalid projectId format: only alphanumeric characters, hyphens, and underscores allowed");let s="".concat(t,"/oauth/login?tenantId=").concat(encodeURIComponent(r),"&projectId=").concat(encodeURIComponent(a),"&toolId=").concat(encodeURIComponent(n));if(!s.startsWith(t))throw Error("Invalid OAuth URL generated");return s}({PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:f,tenantId:t,projectId:r,id:e}),s=window.open(o,"oauth-popup","width=600,height=700,scrollbars=yes,resizable=yes,status=yes,location=yes");if(!s){let t=Error("Failed to open popup for ".concat(e," - blocked by browser"));console.error(t.message),n(t);return}let l=!1,i=(o,s)=>{l||(l=!0,window.removeEventListener("message",d),c&&clearInterval(c),clearTimeout(u),x.current.delete(e),o?(m?m(e):p.push("/".concat(t,"/projects/").concat(r,"/mcp-servers/").concat(e)),a()):n(s||Error("OAuth login failed")))},d=e=>{"oauth-success"===e.data.type?i(!0):"oauth-error"===e.data.type&&i(!1,Error(e.data.error||"OAuth login failed"))};window.addEventListener("message",d);let c=null,u=setTimeout(()=>{l||(c=setInterval(()=>{try{s.closed&&i(!0)}catch(e){}},1e3))},3e3);x.current.set(e,()=>{i(!1,Error("OAuth login cancelled"))})}catch(e){n(e instanceof Error?e:Error("OAuth login failed"))}}),[f,t,r,m,p]),v=(0,o.useCallback)(async e=>{let{toolId:n,mcpServerUrl:o,toolName:s}=e,l=await h({mcpServerUrl:o,providerUniqueKey:"".concat((0,a.K_)(s),"_").concat(n),providerDisplayName:s}),i={id:(0,a.K_)(s),type:a.Ns.nango,credentialStoreId:"nango-default",retrievalParams:{connectionId:l.connectionId,providerConfigKey:l.providerConfigKey,provider:"mcp-generic",authMode:"OAUTH2"}},u=await (0,c.U)(t,r,i);await (0,d.Y)(t,r,n,{credentialReferenceId:u.id}),m?m(n):p.push("/".concat(t,"/projects/").concat(r,"/mcp-servers/").concat(n))},[h,m,p,t,r]);return{handleOAuthLogin:(0,o.useCallback)(async e=>{let{toolId:n,mcpServerUrl:o,toolName:l}=e;try{let e=await (0,i.S)(t,r),s=e.some(e=>e.type===a.Ns.nango&&e.available),d=e.some(e=>e.type===a.Ns.keychain&&e.available);if(s)await v({toolId:n,mcpServerUrl:o,toolName:l});else if(d)await g(n);else throw Error("No credential store available. Please configure Nango or Keychain.")}catch(t){let e=t instanceof Error?t:Error("OAuth login failed");throw s.oR.error(e.message),e}},[t,r,v,g])}}},27820:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(56042).A)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]])},30958:(e,t,r)=>{r.d(t,{Cf:()=>m,Es:()=>f,HM:()=>c,L3:()=>h,c7:()=>p,lG:()=>l,rr:()=>x,zM:()=>i});var a=r(60098),n=r(36429),o=r(31184),s=r(52681);function l(e){let{...t}=e;return(0,a.jsx)(n.bL,{"data-slot":"dialog",...t})}function i(e){let{...t}=e;return(0,a.jsx)(n.l9,{"data-slot":"dialog-trigger",...t})}function d(e){let{...t}=e;return(0,a.jsx)(n.ZL,{"data-slot":"dialog-portal",...t})}function c(e){let{...t}=e;return(0,a.jsx)(n.bm,{"data-slot":"dialog-close",...t})}function u(e){let{className:t,...r}=e;return(0,a.jsx)(n.hJ,{"data-slot":"dialog-overlay",className:(0,s.cn)("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50",t),...r})}function m(e){let{className:t,children:r,showCloseButton:l=!0,...i}=e;return(0,a.jsxs)(d,{"data-slot":"dialog-portal",children:[(0,a.jsx)(u,{}),(0,a.jsxs)(n.UC,{"data-slot":"dialog-content",className:(0,s.cn)("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg","max-h-[calc(100dvh-1.5rem)] overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent",t),...i,children:[r,l&&(0,a.jsxs)(n.bm,{"data-slot":"dialog-close",className:"ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-md opacity-70 hover:opacity-100 transition-all focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent dark:hover:text-accent-foreground dark:text-foreground text-muted-foreground size-8 flex items-center justify-center",children:[(0,a.jsx)(o.A,{}),(0,a.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})}function p(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"dialog-header",className:(0,s.cn)("flex flex-col gap-2 text-center sm:text-left",t),...r})}function f(e){let{className:t,...r}=e;return(0,a.jsx)("div",{"data-slot":"dialog-footer",className:(0,s.cn)("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end",t),...r})}function h(e){let{className:t,...r}=e;return(0,a.jsx)(n.hE,{"data-slot":"dialog-title",className:(0,s.cn)("text-lg leading-none font-medium",t),...r})}function x(e){let{className:t,...r}=e;return(0,a.jsx)(n.VY,{"data-slot":"dialog-description",className:(0,s.cn)("text-muted-foreground text-sm",t),...r})}},35444:(e,t,r)=>{r.d(t,{U:()=>n});var a=r(97555);let n=(0,a.createServerReference)("704aa5f8b659e67513d358c03fcf8667438a3266f4",a.callServer,void 0,a.findSourceMapURL,"findOrCreateCredential")},35613:(e,t,r)=>{r.d(t,{u:()=>o});var a=r(60098),n=r(86312);function o(e){let{control:t,name:r,label:o,children:s,description:l,rules:i,isRequired:d}=e;return(0,a.jsx)(n.zB,{control:t,name:r,rules:i,render:e=>{let{field:t}=e;return(0,a.jsxs)(n.eI,{className:"relative",children:[(0,a.jsx)(n.lR,{isRequired:d,children:o}),(0,a.jsx)(n.MJ,{children:s(t)}),l&&(0,a.jsx)(n.Rr,{children:l}),(0,a.jsx)(n.C5,{})]})}})}},39475:(e,t,r)=>{r.d(t,{E:()=>i});var a=r(60098),n=r(97911),o=r(15625),s=r(52681);let l=(0,o.F)("inline-flex items-center justify-center rounded-md border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",secondary:"border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",primary:"border border-primary/50 text-primary bg-primary/5 rounded-sm p-0.5 px-1.5 font-mono",destructive:"border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",outline:"text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground",code:"text-xs text-muted-foreground border bg-muted/80 dark:bg-muted/50 rounded-sm p-0.5 px-1.5 font-mono",success:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-emerald-50 border-emerald-200 text-emerald-800 dark:text-emerald-300 dark:bg-emerald-950/40 uppercase",error:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-red-50 border-red-200 text-red-800 dark:border-red-700 dark:text-red-300 dark:bg-red-950/40 uppercase",warning:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-amber-50 border-amber-200 text-amber-800 dark:border-amber-700 dark:text-amber-300 dark:bg-amber-950/40 uppercase",sky:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-sky-50 border-sky-200 text-sky-800 dark:border-sky-700 dark:text-sky-300 dark:bg-sky-950/40",violet:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-violet-50 border-violet-200 text-violet-800 dark:border-violet-700 dark:text-violet-300 dark:bg-violet-950/40",orange:"text-xs text-muted-foreground border rounded-sm p-0.5 px-1.5 font-mono bg-orange-50 border-orange-200 text-orange-800 dark:border-orange-700 dark:text-orange-300 dark:bg-orange-950/40"}},defaultVariants:{variant:"default"}});function i(e){let{className:t,variant:r,asChild:o=!1,...i}=e,d=o?n.DX:"span";return(0,a.jsx)(d,{"data-slot":"badge",className:(0,s.cn)(l({variant:r}),t),...i})}},41211:(e,t,r)=>{r.d(t,{S:()=>n});var a=r(97555);let n=(0,a.createServerReference)("60c9a78cf9a56b3e25250ad8a3811d146d10c46614",a.callServer,void 0,a.findSourceMapURL,"listCredentialStores")},47051:(e,t,r)=>{r.d(t,{$:()=>a});let a=(0,r(84383).d_)("abcdefghijklmnopqrstuvwxyz0123456789",21)},49121:(e,t,r)=>{r.d(t,{n:()=>n});var a=r(60098);function n(e){let{title:t,Icon:r,children:n}=e;return(0,a.jsxs)("div",{className:"text-xs text-gray-800 dark:text-muted-foreground p-3 bg-gray-100/80 dark:bg-sidebar rounded-md",children:[t&&(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[r&&(0,a.jsx)(r,{className:"w-3 h-3 text-muted-foreground"}),(0,a.jsx)("p",{className:"font-medium text-foreground font-mono uppercase",children:t})]}),n]})}r(86714)},52753:(e,t,r)=>{r.d(t,{$:()=>l});var a=r(49717),n=r(79178),o=r(15660),s=r(92598);function l(){let{PUBLIC_NANGO_SERVER_URL:e,PUBLIC_NANGO_CONNECT_BASE_URL:t}=(0,o.y)();return{openNangoConnect:(0,n.useCallback)(r=>{let{sessionToken:n,onEvent:o,connectOptions:s}=r,l=new a.Ay({host:e||void 0}).openConnectUI({baseURL:(null==s?void 0:s.baseURL)||t||void 0,apiURL:(null==s?void 0:s.apiURL)||e||void 0,onEvent:o,detectClosedAuthWindow:!0});return l.setSessionToken(n),l},[e,t]),openNangoConnectHeadless:(0,n.useCallback)(async t=>{let{mcpServerUrl:r,providerUniqueKey:n,providerDisplayName:o}=t,l=await (0,s.u)({providerName:"mcp-generic",uniqueKey:n,displayName:o}),i=new a.Ay({host:e||void 0,connectSessionToken:l});try{return await i.auth(n,{detectClosedAuthWindow:!0,params:{mcp_server_url:r}})}catch(e){if(e instanceof Error)throw Error("Nango headless auth failed: ".concat(e.message));throw e}},[e])}}},58514:(e,t,r)=>{r.d(t,{U:()=>s});var a=r(60098),n=r(96182),o=r(35613);function s(e){let{control:t,name:r,label:s,placeholder:l,options:i,disabled:d=!1,selectTriggerClassName:c,description:u,isRequired:m=!1}=e;return(0,a.jsx)(o.u,{control:t,name:r,label:s,description:u,isRequired:m,children:e=>(0,a.jsxs)(n.l6,{onValueChange:e.onChange,defaultValue:e.value,disabled:d,children:[(0,a.jsx)(n.bq,{disabled:d,className:c,children:(0,a.jsx)(n.yv,{placeholder:l})}),(0,a.jsx)(n.gC,{children:i.map(e=>(0,a.jsx)(n.eb,{value:e.value,disabled:e.disabled,children:e.label},e.value))})]})})}},71558:(e,t,r)=>{r.d(t,{MCPServerForm:()=>z});var a=r(60098),n=r(18979),o=r(47051),s=r(13328),l=r(93137),i=r(79178),d=r(75983),c=r(32028),u=r(23574),m=r(58514),p=r(86714),f=r(90035),h=r(30958),x=r(86312),g=r(49121),v=r(23676),b=r(6244),y=r(15635),j=r(95214),w=r(31184),k=r(27820),N=r(39475),C=r(84661),R=r(31011);function S(e){let{control:t,name:r,label:n,availableTools:o=[],description:s,disabled:l=!1}=e,{field:{value:c,onChange:u},fieldState:{error:m}}=(0,d.as)({name:r,control:t}),f=(0,i.useMemo)(()=>"object"==typeof c&&null!==c&&"type"in c?"all"===c.type?{type:"all"}:"selective"===c.type&&Array.isArray(c.tools)?{type:"selective",tools:c.tools}:{type:"selective",tools:[]}:{type:"selective",tools:[]},[c]),h=()=>{u({type:"all"})},g=()=>{u({type:"selective",tools:[]})},v=(e,t)=>{if("all"===f.type){let r=o.map(e=>e.name).filter(t=>t!==e);u({type:"selective",tools:t?[...r,e]:r})}else u({type:"selective",tools:t?[...f.tools.filter(t=>t!==e),e]:f.tools.filter(t=>t!==e)})},b=()=>{switch(f.type){case"all":return o.length;case"selective":return f.tools.filter(e=>o.some(t=>t.name===e)).length;default:return 0}},y=b()===o.length;return(0,a.jsx)(x.zB,{control:t,name:r,render:()=>(0,a.jsxs)(x.eI,{children:[(0,a.jsxs)(x.lR,{children:[n,(0,a.jsx)(N.E,{variant:"code",className:"border-none px-2 text-[10px] text-muted-foreground",children:b()})]}),s&&(0,a.jsx)("p",{className:"text-sm text-muted-foreground",children:s}),(0,a.jsxs)("div",{className:"mt-2",children:[0===o.length&&(0,a.jsx)("div",{className:"text-sm text-muted-foreground border rounded-md p-3 py-2 bg-gray-100/80 dark:bg-sidebar",children:"No tools available from this server"}),o.length>0&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 justify-between py-3 px-6 rounded-t-lg border border-b-0",children:[(0,a.jsxs)("div",{className:"text-sm",children:[b()," ",(0,a.jsxs)("span",{className:"text-gray-400 dark:text-white/40",children:["/ ",o.length," tool",1===o.length?"":"s"]})]}),y?(0,a.jsxs)(p.$,{type:"button",variant:"outline",size:"sm",onClick:g,disabled:l,children:[(0,a.jsx)(w.A,{className:"w-4 h-4 text-muted-foreground"}),"Deselect all"]}):(0,a.jsxs)(p.$,{type:"button",variant:"outline",size:"sm",onClick:h,disabled:l,children:[(0,a.jsx)(k.A,{className:"w-4 h-4 text-muted-foreground"}),"Select all"]})]}),(0,a.jsx)("div",{className:"max-h-96 overflow-y-auto border rounded-lg rounded-t-none scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent",children:o.map(e=>{let t=(e=>{switch(f.type){case"all":return o.some(t=>t.name===e);case"selective":return f.tools.includes(e)&&o.some(t=>t.name===e);default:return!1}})(e.name);return(0,a.jsxs)("div",{className:"space-y-2 flex items-start gap-6 border-b last:border-b-0 py-4 px-6 relative",children:[(0,a.jsx)("div",{className:"flex items-center h-[22px]",children:(0,a.jsx)(C.S,{checked:t,disabled:l,className:"mb-0",onClick:()=>!l&&v(e.name,!t)})}),(0,a.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,a.jsx)(N.E,{variant:t?"primary":"code",className:"font-mono font-medium text-xs cursor-pointer transition-colors ".concat(l?"opacity-50 cursor-not-allowed":""),onClick:()=>!l&&v(e.name,!t),children:e.name}),(0,a.jsxs)(R.Tooltip,{delayDuration:800,children:[(0,a.jsx)(R.TooltipTrigger,{asChild:!0,children:(0,a.jsx)("p",{className:"text-sm text-muted-foreground line-clamp-1",children:e.description})}),(0,a.jsx)(R.TooltipContent,{side:"bottom",align:"start",children:e.description})]})]})]},e.name)})})]})]}),(0,a.jsx)(x.C5,{children:null==m?void 0:m.message})]})})}var I=r(66030);let E=I.discriminatedUnion("type",[I.object({type:I.literal("all")}),I.object({type:I.literal("selective"),tools:I.array(I.string())})]),A=I.object({name:I.string().min(1,"Name is required."),config:I.object({type:I.literal("mcp"),mcp:I.object({server:I.object({url:I.string().url("Must be a valid URL.")}),transport:I.object({type:I.nativeEnum(s.o7)}),toolsConfig:E.default({type:"all"})})}),credentialReferenceId:I.string().nullish(),imageUrl:I.string().optional()}),U={name:"",config:{type:"mcp",mcp:{server:{url:""},transport:{type:s.o7.streamableHttp},toolsConfig:{type:"all"}}},imageUrl:"",credentialReferenceId:"oauth"};function z(e){let{initialData:t,mode:r="create",tool:w,credentials:k,tenantId:N,projectId:C}=e,R=(0,l.useRouter)(),[I,E]=(0,i.useState)(!1),[z,M]=(0,i.useState)(!1),P=(0,d.mN)({resolver:(0,n.u)(A),defaultValues:{...U,...t}}),{handleOAuthLogin:L}=(0,v.U)({tenantId:N,projectId:C}),{isSubmitting:_}=P.formState,T=async e=>{try{if("oauth"===e.credentialReferenceId){let t=(0,o.$)();if(!await (0,s.Rt)({serverUrl:e.config.mcp.server.url,toolId:t}))return void c.oR.error("This MCP server does not support OAuth authentication. Please select a different credential.");let r={id:t,name:e.name,config:{type:"mcp",mcp:{server:{url:e.config.mcp.server.url},transport:{type:e.config.mcp.transport.type}}},credentialReferenceId:null,imageUrl:e.imageUrl},a=await (0,y.X)(N,C,r);L({toolId:a.id,mcpServerUrl:e.config.mcp.server.url,toolName:e.name});return}let t={...e,credentialReferenceId:"none"===e.credentialReferenceId?null:e.credentialReferenceId,config:{...e.config,mcp:{...e.config.mcp,activeTools:(e=>{var t;if("all"===e.type)return;let r=(null==w||null==(t=w.availableTools)?void 0:t.map(e=>e.name))||[];return e.tools.filter(e=>r.includes(e))})(e.config.mcp.toolsConfig)}}};if("update"===r&&w)await (0,j.Y)(N,C,w.id,t),c.oR.success("MCP server updated successfully"),R.push("/".concat(N,"/projects/").concat(C,"/mcp-servers/").concat(w.id));else{let e=await (0,y.X)(N,C,{...t,id:(0,o.$)()});c.oR.success("MCP server created successfully"),R.push("/".concat(N,"/projects/").concat(C,"/mcp-servers/").concat(e.id))}}catch(e){console.error("Failed to ".concat(r," MCP tool:"),e),c.oR.error("Failed to ".concat(r," MCP server. Please try again."))}},O=async()=>{if(w){M(!0);try{let e=await (0,b.o)(N,C,w.id,!1);e.success?(E(!1),c.oR.success("MCP server deleted."),R.push("/".concat(N,"/projects/").concat(C,"/mcp-servers"))):c.oR.error(e.error||"Failed to delete MCP server.")}finally{M(!1)}}};return(0,a.jsxs)(h.lG,{open:I,onOpenChange:E,children:[(0,a.jsx)(x.lV,{...P,children:(0,a.jsxs)("form",{onSubmit:P.handleSubmit(T),className:"space-y-8",children:[(0,a.jsx)(u.a,{control:P.control,name:"name",label:"Name",placeholder:"MCP server",isRequired:!0}),(0,a.jsx)(u.a,{control:P.control,name:"config.mcp.server.url",label:"URL",placeholder:"https://api.example.com/mcp",isRequired:!0}),(0,a.jsx)(m.U,{control:P.control,selectTriggerClassName:"w-full",name:"config.mcp.transport.type",label:"Transport type",placeholder:"Select transport type",options:[{value:s.o7.streamableHttp,label:"Streamable HTTP"},{value:s.o7.sse,label:"Server-Sent Events (SSE)"}]}),(0,a.jsx)(u.a,{control:P.control,name:"imageUrl",label:"Image URL (optional)",placeholder:"https://example.com/icon.png or data:image/png;base64,..."}),(0,a.jsxs)("div",{className:"space-y-3",children:[(0,a.jsx)(m.U,{control:P.control,selectTriggerClassName:"w-full",name:"credentialReferenceId",label:"Credential",placeholder:"Select a credential",options:[{value:"oauth",label:"OAuth"},{value:"none",label:"No Authentication"},...k.map(e=>({value:e.id,label:e.id}))]}),(0,a.jsx)(g.n,{title:"How this works",children:(0,a.jsxs)("div",{className:"space-y-2",children:[(0,a.jsxs)("p",{children:["Select ",(0,a.jsx)("code",{className:"bg-background px-1.5 py-0.5 rounded border",children:"OAuth"}),' to authenticate with the MCP server\'s OAuth flow, which will start after you click "Create".']}),(0,a.jsxs)("p",{children:["Select"," ",(0,a.jsx)("code",{className:"bg-background px-1.5 py-0.5 rounded border",children:"No Authentication"})," ","to skip authentication (i.e. none required or add a credential later)."]}),(0,a.jsx)("p",{children:"Or select from the existing credentials you have already created."})]})})]}),"update"===r&&(0,a.jsx)(S,{control:P.control,name:"config.mcp.toolsConfig",label:"Tools",availableTools:(null==w?void 0:w.availableTools)||[],description:"Select which tools should be enabled for this MCP server"}),(0,a.jsxs)("div",{className:"flex w-full justify-between",children:[(0,a.jsx)(p.$,{type:"submit",disabled:_,children:"update"===r?"Save":"Create"}),"update"===r&&w&&(0,a.jsx)(h.zM,{asChild:!0,children:(0,a.jsx)(p.$,{type:"button",variant:"secondary",children:"Delete Server"})})]})]})}),I&&w&&(0,a.jsx)(f.J,{itemName:w.name||"this MCP server",isSubmitting:z,onDelete:O})]})}},80626:(e,t,r)=>{r.d(t,{A:()=>a});let a=(0,r(56042).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},84383:(e,t,r)=>{r.d(t,{d_:()=>n});let a=e=>crypto.getRandomValues(new Uint8Array(e)),n=(e,t=21)=>((e,t,r)=>{let a=(2<<Math.log2(e.length-1))-1,n=-~(1.6*a*t/e.length);return (o=t)=>{let s="";for(;;){let t=r(n),l=0|n;for(;l--;)if((s+=e[t[l]&a]||"").length>=o)return s}}})(e,0|t,a)},84661:(e,t,r)=>{r.d(t,{S:()=>l});var a=r(60098),n=r(11469),o=r(27820),s=r(52681);function l(e){let{className:t,...r}=e;return(0,a.jsx)(n.bL,{"data-slot":"checkbox",className:(0,s.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",t),...r,children:(0,a.jsx)(n.C1,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:(0,a.jsx)(o.A,{className:"size-3.5"})})})}},86312:(e,t,r)=>{r.d(t,{C5:()=>v,MJ:()=>x,Rr:()=>g,eI:()=>f,lR:()=>h,lV:()=>d,zB:()=>u});var a=r(60098),n=r(97911),o=r(79178),s=r(75983),l=r(92752),i=r(52681);let d=s.Op,c=o.createContext({}),u=e=>{let{...t}=e;return(0,a.jsx)(c.Provider,{value:{name:t.name},children:(0,a.jsx)(s.xI,{...t})})},m=()=>{let e=o.useContext(c),t=o.useContext(p),{getFieldState:r}=(0,s.xW)(),a=(0,s.lN)({name:e.name}),n=r(e.name,a);if(!e)throw Error("useFormField should be used within <FormField>");let{id:l}=t;return{id:l,name:e.name,formItemId:"".concat(l,"-form-item"),formDescriptionId:"".concat(l,"-form-item-description"),formMessageId:"".concat(l,"-form-item-message"),...n}},p=o.createContext({});function f(e){let{className:t,...r}=e,n=o.useId();return(0,a.jsx)(p.Provider,{value:{id:n},children:(0,a.jsx)("div",{"data-slot":"form-item",className:(0,i.cn)("grid gap-2",t),...r})})}function h(e){let{className:t,isRequired:r,children:n,...o}=e,{error:s,formItemId:d}=m();return(0,a.jsxs)(l.J,{"data-slot":"form-label","data-error":!!s,className:(0,i.cn)("data-[error=true]:text-destructive gap-1",t),htmlFor:d,...o,children:[n,r&&(0,a.jsx)("span",{className:"text-red-500",children:"*"})]})}function x(e){let{...t}=e,{error:r,formItemId:o,formDescriptionId:s,formMessageId:l}=m();return(0,a.jsx)(n.DX,{"data-slot":"form-control",id:o,"aria-describedby":r?"".concat(s," ").concat(l):"".concat(s),"aria-invalid":!!r,...t})}function g(e){let{className:t,...r}=e,{formDescriptionId:n}=m();return(0,a.jsx)("p",{"data-slot":"form-description",id:n,className:(0,i.cn)("text-muted-foreground text-sm",t),...r})}function v(e){var t;let{className:r,...n}=e,{error:o,formMessageId:s}=m(),l=o?String(null!=(t=null==o?void 0:o.message)?t:""):n.children;return l?(0,a.jsx)("p",{"data-slot":"form-message",id:s,className:(0,i.cn)("text-destructive text-sm",r),...n,children:l}):null}},90035:(e,t,r)=>{r.d(t,{J:()=>l});var a=r(60098),n=r(80626),o=r(86714),s=r(30958);function l(e){let{itemName:t,isSubmitting:r,onDelete:l,customTitle:i,customDescription:d}=e,c=async()=>{await l()};return(0,a.jsxs)(s.Cf,{children:[(0,a.jsx)(s.L3,{children:i||"Delete ".concat(t||"this item")}),(0,a.jsx)(s.rr,{children:d||"Are you sure you want to delete ".concat(t||"this item","? This action cannot be undone.")}),(0,a.jsxs)(s.Es,{children:[(0,a.jsx)(s.HM,{asChild:!0,children:(0,a.jsx)(o.$,{variant:"outline",children:"Cancel"})}),(0,a.jsx)(o.$,{variant:"destructive",onClick:c,disabled:r,children:r?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(n.A,{className:"size-4 animate-spin"})," Deleting..."]}):"Delete"})]})]})}},91096:(e,t,r)=>{r.d(t,{B:()=>s});var a=r(60098),n=r(85276),o=r.n(n);function s(e){let{items:t}=e;return(null==t?void 0:t.length)?(0,a.jsx)("nav",{className:"text-sm text-muted-foreground","aria-label":"Breadcrumb",children:(0,a.jsx)("ol",{className:"flex items-center gap-2",children:t.map((e,r)=>{let n=r===t.length-1;return(0,a.jsxs)("li",{className:"flex items-center gap-2",children:[e.href&&!n?(0,a.jsx)(o(),{href:e.href,className:"hover:text-foreground",children:e.label}):(0,a.jsx)("span",{className:n?"font-medium text-foreground":"",children:e.label}),!n&&(0,a.jsx)("span",{className:"text-muted-foreground/60",children:"›"})]},"".concat(e.label,"-").concat(r))})})}):null}},92598:(e,t,r)=>{r.d(t,{u:()=>n});var a=r(97555);let n=(0,a.createServerReference)("404746f3902d77e42df61cc61cd0b824d112f5101f",a.callServer,void 0,a.findSourceMapURL,"createProviderConnectSession")},92752:(e,t,r)=>{r.d(t,{J:()=>s});var a=r(60098),n=r(80820),o=r(52681);function s(e){let{className:t,...r}=e;return(0,a.jsx)(n.b,{"data-slot":"label",className:(0,o.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),...r})}},95214:(e,t,r)=>{r.d(t,{Y:()=>n});var a=r(97555);let n=(0,a.createServerReference)("789dbf5103b4a6f2dda1d4f04bff718f35532888a1",a.callServer,void 0,a.findSourceMapURL,"updateMCPTool")},96182:(e,t,r)=>{r.d(t,{bq:()=>u,eb:()=>p,gC:()=>m,l6:()=>d,yv:()=>c});var a=r(60098),n=r(63436),o=r(6826),s=r(27820),l=r(5879),i=r(52681);function d(e){let{...t}=e;return(0,a.jsx)(n.bL,{"data-slot":"select",...t})}function c(e){let{...t}=e;return(0,a.jsx)(n.WT,{"data-slot":"select-value",...t})}function u(e){let{className:t,size:r="default",children:s,...l}=e;return(0,a.jsxs)(n.l9,{"data-slot":"select-trigger","data-size":r,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 font-normal normal-case",t),...l,children:[s,(0,a.jsx)(n.In,{asChild:!0,children:(0,a.jsx)(o.A,{className:"size-4 opacity-50"})})]})}function m(e){let{className:t,children:r,position:o="popper",...s}=e;return(0,a.jsx)(n.ZL,{children:(0,a.jsxs)(n.UC,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent rounded-md border shadow-md","popper"===o&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",t),position:o,...s,children:[(0,a.jsx)(f,{}),(0,a.jsx)(n.LM,{className:(0,i.cn)("p-1","popper"===o&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:r}),(0,a.jsx)(h,{})]})})}function p(e){let{className:t,children:r,...o}=e;return(0,a.jsxs)(n.q7,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",t),...o,children:[(0,a.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,a.jsx)(n.VF,{children:(0,a.jsx)(s.A,{className:"size-4"})})}),(0,a.jsx)(n.p4,{children:r})]})}function f(e){let{className:t,...r}=e;return(0,a.jsx)(n.PP,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",t),...r,children:(0,a.jsx)(l.A,{className:"size-4"})})}function h(e){let{className:t,...r}=e;return(0,a.jsx)(n.wn,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",t),...r,children:(0,a.jsx)(o.A,{className:"size-4"})})}}}]);