@inkeep/agents-manage-ui 0.24.1 → 0.24.2

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 (274) 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 +147 -171
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +3 -3
  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_client-reference-manifest.js +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -2
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js.nft.json +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -2
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js.nft.json +1 -1
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +1 -1
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +1 -1
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +2 -2
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  75. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  76. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +9 -9
  78. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-preview/route_client-reference-manifest.js +1 -1
  79. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  82. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +3 -3
  84. package/.next/standalone/agents-manage-ui/.next/server/chunks/1613.js +14 -0
  85. package/.next/standalone/agents-manage-ui/.next/server/chunks/{5109.js → 3468.js} +2 -2
  86. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/chunks/4653.js +196 -0
  88. package/.next/standalone/agents-manage-ui/.next/server/chunks/5262.js +1 -1
  89. package/.next/standalone/agents-manage-ui/.next/server/chunks/5450.js +2 -2
  90. package/.next/standalone/agents-manage-ui/.next/server/chunks/5732.js +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/chunks/6035.js +1 -0
  92. package/.next/standalone/agents-manage-ui/.next/server/chunks/6721.js +4 -4
  93. package/.next/standalone/agents-manage-ui/.next/server/chunks/6747.js +1 -1
  94. package/.next/standalone/agents-manage-ui/.next/server/chunks/707.js +4 -0
  95. package/.next/standalone/agents-manage-ui/.next/server/chunks/7988.js +2 -2
  96. package/.next/standalone/agents-manage-ui/.next/server/chunks/8526.js +1 -0
  97. package/.next/standalone/agents-manage-ui/.next/server/chunks/8884.js +1 -4
  98. package/.next/standalone/agents-manage-ui/.next/server/chunks/9122.js +1 -1
  99. package/.next/standalone/agents-manage-ui/.next/server/chunks/9128.js +1 -0
  100. package/.next/standalone/agents-manage-ui/.next/server/chunks/9222.js +4080 -0
  101. package/.next/standalone/agents-manage-ui/.next/server/chunks/{1524.js → 9234.js} +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/middleware-manifest.json +5 -5
  103. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  106. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/static/chunks/{16631-6c857871fa924141.js → 16631-e313c6f18339824b.js} +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/static/chunks/17022-540bbf991b193531.js +1 -0
  109. package/.next/standalone/agents-manage-ui/.next/static/chunks/18726-cd04df960a499e08.js +1 -0
  110. package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-d77f86e28c8ac7aa.js +1 -0
  111. package/.next/standalone/agents-manage-ui/.next/static/chunks/23364-08749556f2446cad.js +1 -0
  112. package/.next/standalone/agents-manage-ui/.next/static/chunks/{79423-ed95cf583a063427.js → 23650-279b019c0d10672a.js} +3 -3
  113. package/.next/standalone/agents-manage-ui/.next/static/chunks/36551-09ba51a7603b6640.js +1 -0
  114. package/.next/standalone/agents-manage-ui/.next/static/chunks/48869-3adeab47774071e4.js +1 -0
  115. package/.next/standalone/agents-manage-ui/.next/static/chunks/{30721-9fe13c117a9408a9.js → 67132-6a36ac852bc82474.js} +1 -1
  116. package/.next/standalone/agents-manage-ui/.next/static/chunks/70613-cb7a1ac35bddb6bf.js +1 -0
  117. package/.next/standalone/agents-manage-ui/.next/static/chunks/78225-5445b2afb05249db.js +1 -0
  118. package/.next/standalone/agents-manage-ui/.next/static/chunks/85232-22a9d60836ca811e.js +1 -0
  119. package/.next/standalone/agents-manage-ui/.next/static/chunks/86507-340cc6112e9218de.js +2 -0
  120. package/.next/standalone/agents-manage-ui/.next/static/chunks/87193-3d26f0490b9b0a29.js +25 -0
  121. package/.next/standalone/agents-manage-ui/.next/static/chunks/{68637-2ab8e9a5394e8525.js → 96982-3db869dc9ca83c87.js} +2 -2
  122. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/loading-deaaaaef5d47014d.js +1 -0
  123. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/{page-fdbebdb8c3371c73.js → page-9b08f45294a2041b.js} +1 -1
  124. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/loading-7c6d3a56c46ab4e4.js +1 -0
  125. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/loading-deaaaaef5d47014d.js +1 -0
  126. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-633b2ccbc49cb865.js +1 -0
  127. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-31799b84d22395a9.js +1 -0
  128. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-4f45e4faafd17dea.js +1 -0
  129. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-f4a38461a135be91.js +1 -0
  130. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-7c6d3a56c46ab4e4.js +1 -0
  131. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-5debce906045b390.js +1 -0
  132. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-689b7881ec533096.js +1 -0
  133. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-2551beb91f3aa6e6.js → page-2affd4f21c17e73d.js} +1 -1
  134. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-7c6d3a56c46ab4e4.js +1 -0
  135. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-089d6e9a7adc24d0.js +1 -0
  136. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-9b370b3ff69e1891.js +1 -0
  137. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-c3bd0a85e2c23715.js +1 -0
  138. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-637284cef2f03cfa.js +1 -0
  139. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-7c6d3a56c46ab4e4.js +1 -0
  140. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-effcc7ad7a251c11.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-accc8e5a5d324305.js +1 -0
  142. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-9ab6b0b2810d46ab.js +1 -0
  143. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/layout-1a97adf59dd6a2fe.js +1 -0
  144. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-00d3bd4e0e0283ca.js +1 -0
  145. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-d9421c0fe814f7ee.js +1 -0
  146. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout-deaaaaef5d47014d.js +1 -0
  147. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-c7df640ea2699c60.js +1 -0
  148. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-19309f8dea87d91d.js +1 -0
  149. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-60d99eca498e8ca9.js +1 -0
  150. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-d7f81fb8018ccb8f.js → page-3b222f3ae3101ba8.js} +1 -1
  151. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-4e07cce32c8cfa4c.js +1 -0
  152. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-6201459e626dfd90.js +1 -0
  153. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/error-f9cda97c25875770.js +1 -0
  154. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-7c6d3a56c46ab4e4.js +1 -0
  155. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-76b7b5622c4726f8.js +1 -0
  156. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-2494491bcdc2dd72.js +1 -0
  157. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/not-found-1a97adf59dd6a2fe.js +1 -0
  158. package/.next/standalone/agents-manage-ui/package.json +2 -2
  159. package/.next/standalone/packages/agents-core/package.json +1 -1
  160. package/package.json +5 -5
  161. package/src/app/[tenantId]/page.tsx +1 -1
  162. package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.tsx +3 -5
  163. package/src/app/[tenantId]/projects/[projectId]/agents/new/page.tsx +1 -3
  164. package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +1 -5
  165. package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +1 -5
  166. package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.tsx +3 -9
  167. package/src/app/[tenantId]/projects/[projectId]/artifacts/new/page.tsx +3 -5
  168. package/src/app/[tenantId]/projects/[projectId]/artifacts/page.tsx +3 -5
  169. package/src/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.tsx +3 -9
  170. package/src/app/[tenantId]/projects/[projectId]/components/new/page.tsx +3 -5
  171. package/src/app/[tenantId]/projects/[projectId]/components/page.tsx +3 -5
  172. package/src/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.tsx +1 -7
  173. package/src/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.tsx +1 -3
  174. package/src/app/[tenantId]/projects/[projectId]/credentials/new/page.tsx +3 -4
  175. package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.tsx +3 -9
  176. package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.tsx +1 -3
  177. package/src/app/[tenantId]/projects/[projectId]/credentials/page.tsx +1 -3
  178. package/src/app/[tenantId]/projects/[projectId]/layout.tsx +4 -7
  179. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.tsx +3 -7
  180. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.tsx +3 -5
  181. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout.tsx +1 -4
  182. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.tsx +1 -3
  183. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/page.tsx +1 -3
  184. package/src/app/[tenantId]/projects/[projectId]/settings/page.tsx +3 -8
  185. package/src/app/[tenantId]/projects/page.tsx +1 -1
  186. package/src/app/api/data-components/[dataComponentId]/generate-preview/route.ts +4 -7
  187. package/src/app/api/signoz/conversations/[conversationId]/route.ts +3 -6
  188. package/src/components/agent/agent.tsx +3 -3
  189. package/src/components/agent/playground/chat-widget.tsx +2 -2
  190. package/src/components/agent/playground/playground.tsx +2 -2
  191. package/src/components/agent/sidepane/metadata/metadata-editor.tsx +4 -4
  192. package/src/components/agent/sidepane/nodes/sub-agent-node-editor.tsx +22 -4
  193. package/src/components/artifact-components/delete-artifact-component-confirmation.tsx +7 -1
  194. package/src/components/artifact-components/form/artifact-component-form.tsx +64 -41
  195. package/src/components/credentials/credential-tools-list.tsx +5 -4
  196. package/src/components/credentials/views/credential-form.tsx +1 -1
  197. package/src/components/credentials/views/edit-credential-form.tsx +112 -70
  198. package/src/components/data-components/delete-data-component-confirmation.tsx +7 -1
  199. package/src/components/data-components/form/data-component-form.tsx +87 -64
  200. package/src/components/data-components/preview/component-preview-generator.tsx +7 -0
  201. package/src/components/mcp-servers/form/mcp-server-form.tsx +51 -8
  202. package/src/components/mcp-servers/selection/mcp-server-selection.tsx +3 -3
  203. package/src/components/ui/info-card.tsx +7 -5
  204. package/src/features/agent/domain/deserialize.ts +2 -2
  205. package/src/features/agent/domain/serialize.ts +13 -4
  206. package/src/hooks/use-auto-prefill-id-zustand.ts +2 -2
  207. package/src/hooks/use-auto-prefill-id.ts +2 -2
  208. package/src/hooks/use-node-editor.ts +18 -1
  209. package/src/lib/actions/artifact-components.ts +0 -1
  210. package/src/lib/actions/credentials.ts +0 -1
  211. package/src/lib/actions/data-components.ts +0 -1
  212. package/src/lib/actions/tools.ts +6 -4
  213. package/src/lib/utils/generate-id.ts +1 -1
  214. package/src/lib/utils/id-utils.ts +4 -0
  215. package/.next/standalone/agents-manage-ui/.next/server/chunks/2584.js +0 -14
  216. package/.next/standalone/agents-manage-ui/.next/server/chunks/526.js +0 -1
  217. package/.next/standalone/agents-manage-ui/.next/server/chunks/5478.js +0 -4080
  218. package/.next/standalone/agents-manage-ui/.next/server/chunks/6503.js +0 -1
  219. package/.next/standalone/agents-manage-ui/.next/server/chunks/7733.js +0 -1
  220. package/.next/standalone/agents-manage-ui/.next/server/chunks/7848.js +0 -1
  221. package/.next/standalone/agents-manage-ui/.next/server/chunks/8038.js +0 -196
  222. package/.next/standalone/agents-manage-ui/.next/static/chunks/1499-20f18a3858daee94.js +0 -1
  223. package/.next/standalone/agents-manage-ui/.next/static/chunks/20837-f8b0d86a8303f4c3.js +0 -1
  224. package/.next/standalone/agents-manage-ui/.next/static/chunks/20982-49c49e2dfe9b7055.js +0 -2
  225. package/.next/standalone/agents-manage-ui/.next/static/chunks/24994-975eb584d5b2438a.js +0 -1
  226. package/.next/standalone/agents-manage-ui/.next/static/chunks/35250-5a05e05770ea8f06.js +0 -1
  227. package/.next/standalone/agents-manage-ui/.next/static/chunks/39438-3324f04d95405812.js +0 -1
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/44251-15d8824c35b7ca83.js +0 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/47259-95ea98b229d39774.js +0 -1
  230. package/.next/standalone/agents-manage-ui/.next/static/chunks/48949-692c5f8265558813.js +0 -1
  231. package/.next/standalone/agents-manage-ui/.next/static/chunks/58124-080a600083669e79.js +0 -1
  232. package/.next/standalone/agents-manage-ui/.next/static/chunks/63569-33a7ac3e7076968e.js +0 -1
  233. package/.next/standalone/agents-manage-ui/.next/static/chunks/63969-591c2e039348bc39.js +0 -1
  234. package/.next/standalone/agents-manage-ui/.next/static/chunks/6481-def23a19cb7832d7.js +0 -1
  235. package/.next/standalone/agents-manage-ui/.next/static/chunks/74206-85aa3065dce9dc8a.js +0 -1
  236. package/.next/standalone/agents-manage-ui/.next/static/chunks/76125-82ebb14b304cfe0b.js +0 -25
  237. package/.next/standalone/agents-manage-ui/.next/static/chunks/78225-17ad3e82fb563fc9.js +0 -1
  238. package/.next/standalone/agents-manage-ui/.next/static/chunks/92160-0e9ba9d3fc9f7a53.js +0 -1
  239. package/.next/standalone/agents-manage-ui/.next/static/chunks/94167-1d0eb19e0f384370.js +0 -1
  240. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/loading-9bfadd2bfe02c9c2.js +0 -1
  241. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/loading-5c7849713f85ab22.js +0 -1
  242. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/loading-9bfadd2bfe02c9c2.js +0 -1
  243. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-bc76e9554c5d2341.js +0 -1
  244. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-4c5fb257a6233694.js +0 -1
  245. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-5158b01426eb0f32.js +0 -1
  246. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-75c72891b2f2923c.js +0 -1
  247. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-5c7849713f85ab22.js +0 -1
  248. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-4cae1de757715499.js +0 -1
  249. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-528fffe4fc232ff4.js +0 -1
  250. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-5c7849713f85ab22.js +0 -1
  251. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-05a78b9d37131b1a.js +0 -1
  252. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-d238c502f632f4e0.js +0 -1
  253. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-3655f333086c211d.js +0 -1
  254. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-20579bf7a4fb87d3.js +0 -1
  255. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-5c7849713f85ab22.js +0 -1
  256. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-f109a80577d83568.js +0 -1
  257. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-07db6760153791ce.js +0 -1
  258. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-9eafe11017316482.js +0 -1
  259. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/layout-0f84ce3202492bc1.js +0 -1
  260. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-b52db9884e7955e1.js +0 -1
  261. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-5b25bf3f3967c268.js +0 -1
  262. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout-9bfadd2bfe02c9c2.js +0 -1
  263. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-d970759f74621cfe.js +0 -1
  264. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-57be5eb54ad97e11.js +0 -1
  265. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-11cfe0365b56c6b2.js +0 -1
  266. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-73c7ac508b857ff8.js +0 -1
  267. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-bb2b8d64b23cf563.js +0 -1
  268. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/error-a4c58861fad98c65.js +0 -1
  269. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-5c7849713f85ab22.js +0 -1
  270. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-cf6f4f3394d4813d.js +0 -1
  271. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-d83e519e9bcc6269.js +0 -1
  272. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/not-found-4fc170fc11e5aaec.js +0 -1
  273. /package/.next/standalone/agents-manage-ui/.next/static/{TwV2TGtXdOiFkslre7D-k → 4HTfKGfjXenctXjz8hNi9}/_buildManifest.js +0 -0
  274. /package/.next/standalone/agents-manage-ui/.next/static/{TwV2TGtXdOiFkslre7D-k → 4HTfKGfjXenctXjz8hNi9}/_ssgManifest.js +0 -0
@@ -1,5 +1,5 @@
1
+ import { generateId } from '@/lib/utils/id-utils';
1
2
  import type { Edge, Node } from '@xyflow/react';
2
- import { nanoid } from 'nanoid';
3
3
  import type { AgentToolConfigLookup } from '@/components/agent/agent';
4
4
  import type { AgentMetadata } from '@/components/agent/configuration/agent-types';
5
5
  import type { A2AEdgeData } from '@/components/agent/configuration/edge-types';
@@ -378,7 +378,7 @@ export function serializeAgentData(
378
378
  }
379
379
 
380
380
  const result: FullAgentDefinition = {
381
- id: metadata?.id || nanoid(),
381
+ id: metadata?.id || generateId(),
382
382
  name: metadata?.name || 'Untitled Agent',
383
383
  description: metadata?.description || undefined,
384
384
  defaultSubAgentId,
@@ -432,7 +432,7 @@ export function serializeAgentData(
432
432
 
433
433
  // Add contextConfig if there's meaningful data
434
434
  if (hasContextConfig && metadata?.contextConfig) {
435
- const contextConfigId = metadata.contextConfig.id || nanoid();
435
+ const contextConfigId = metadata.contextConfig.id || generateId();
436
436
  (result as any).contextConfigId = contextConfigId;
437
437
  (result as any).contextConfig = {
438
438
  id: contextConfigId,
@@ -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'],
@@ -1,5 +1,5 @@
1
1
  import { useEffect, useRef } from 'react';
2
- import { generateId } from '@/lib/utils/generate-id';
2
+ import { generateIdFromName } from '@/lib/utils/generate-id';
3
3
 
4
4
  interface UseAutoPrefillIdZustandOptions {
5
5
  nameValue: string | undefined;
@@ -56,7 +56,7 @@ export function useAutoPrefillIdZustand({
56
56
  // Auto-prefill ID based on name field
57
57
  useEffect(() => {
58
58
  if (!isEditing && nameValue && !hasManuallyEditedId.current) {
59
- const generatedId = generateId(nameValue);
59
+ const generatedId = generateIdFromName(nameValue);
60
60
 
61
61
  // Only update if the generated ID is different from current ID
62
62
  if (generatedId !== currentIdValue.current) {
@@ -1,6 +1,6 @@
1
1
  import { useEffect } from 'react';
2
2
  import { type FieldValues, type UseFormReturn, useWatch } from 'react-hook-form';
3
- import { generateId } from '@/lib/utils/generate-id';
3
+ import { generateIdFromName } from '@/lib/utils/generate-id';
4
4
 
5
5
  interface UseAutoPrefillIdOptions<T extends FieldValues> {
6
6
  form: UseFormReturn<T>;
@@ -29,7 +29,7 @@ export function useAutoPrefillId<T extends FieldValues>({
29
29
  // biome-ignore lint/correctness/useExhaustiveDependencies: we don't want to re-run this effect when the isIdFieldModified changes since that means the user has manually edited the ID field
30
30
  useEffect(() => {
31
31
  if (!isEditing && nameValue && !isIdFieldModified) {
32
- const generatedId = generateId(nameValue);
32
+ const generatedId = generateIdFromName(nameValue);
33
33
  form.setValue(idField as any, generatedId as any, {
34
34
  shouldValidate: true,
35
35
  });
@@ -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,
@@ -121,7 +121,6 @@ export async function deleteArtifactComponentAction(
121
121
  try {
122
122
  await deleteArtifactComponent(tenantId, projectId, artifactComponentId);
123
123
  revalidatePath(`/${tenantId}/projects/${projectId}/artifacts`);
124
- revalidatePath(`/${tenantId}/projects/${projectId}/artifacts/${artifactComponentId}`);
125
124
  return {
126
125
  success: true,
127
126
  };
@@ -20,7 +20,6 @@ export async function deleteCredentialAction(
20
20
  try {
21
21
  await deleteCredential(tenantId, projectId, credentialId);
22
22
  revalidatePath(`/${tenantId}/projects/${projectId}/credentials`);
23
- revalidatePath(`/${tenantId}/projects/${projectId}/credentials/${credentialId}`);
24
23
  return {
25
24
  success: true,
26
25
  };
@@ -122,7 +122,6 @@ export async function deleteDataComponentAction(
122
122
  try {
123
123
  await deleteDataComponent(tenantId, projectId, dataComponentId);
124
124
  revalidatePath(`/${tenantId}/projects/${projectId}/components`);
125
- revalidatePath(`/${tenantId}/projects/${projectId}/components/${dataComponentId}`);
126
125
  return {
127
126
  success: true,
128
127
  };
@@ -6,8 +6,8 @@
6
6
 
7
7
  import { revalidatePath } from 'next/cache';
8
8
  import { deleteMCPTool, fetchMCPTools } from '../api/tools';
9
- import type { MCPTool } from '../types/tools';
10
9
  import { ApiError } from '../types/errors';
10
+ import type { MCPTool } from '../types/tools';
11
11
  import type { ActionResult } from './types';
12
12
 
13
13
  /**
@@ -46,12 +46,14 @@ export async function fetchToolsAction(
46
46
  export async function deleteToolAction(
47
47
  tenantId: string,
48
48
  projectId: string,
49
- toolId: string
49
+ toolId: string,
50
+ shouldRevalidate = true
50
51
  ): Promise<ActionResult<void>> {
51
52
  try {
52
53
  await deleteMCPTool(tenantId, projectId, toolId);
53
- revalidatePath(`/${tenantId}/projects/${projectId}/mcp-servers`);
54
- revalidatePath(`/${tenantId}/projects/${projectId}/mcp-servers/${toolId}`);
54
+ if (shouldRevalidate) {
55
+ revalidatePath(`/${tenantId}/projects/${projectId}/mcp-servers`, 'page');
56
+ }
55
57
  return {
56
58
  success: true,
57
59
  };
@@ -3,7 +3,7 @@
3
3
  * @param name - The name to generate an ID from
4
4
  * @returns The generated ID
5
5
  */
6
- export const generateId = (name: string) => {
6
+ export const generateIdFromName = (name: string) => {
7
7
  return name
8
8
  .toLowerCase()
9
9
  .trim()
@@ -0,0 +1,4 @@
1
+ import { customAlphabet } from 'nanoid';
2
+
3
+ // This ensures IDs are always lowercase and never start with a hyphen
4
+ export const generateId = customAlphabet('abcdefghijklmnopqrstuvwxyz0123456789', 21);
@@ -1,14 +0,0 @@
1
- "use strict";exports.id=2584,exports.ids=[2584],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,"60b62daa3275842d096b6098ca3ec6547facf0d035",null),(0,d.A)(h,"70830dd5149bd0718e6cc9974926fb8a2a41b54e96",null),(0,d.A)(i,"70eac499028b94636958bd3eef4aad5b24c882bd97",null),(0,d.A)(j,"70f645d9f5557568d74c47d1edd41bb282d70c5eea",null),(0,d.A)(k,"702aa529cceb1bba4266e12d7849e8fdd5e693334b",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`),(0,e.revalidatePath)(`/${a}/projects/${b}/components/${c}`),{success:!0}}catch(a){if(a instanceof g.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,c(33451).D)([h,i,j,k]),(0,d.A)(h,"6057e7fb19f2adc95149d353ca55a5b2dfbffc30b6",null),(0,d.A)(i,"7070e6b08e927ef168deeb58f9138170f77e1b4fd3",null),(0,d.A)(j,"709df3e44f9b96e37da984865543e36d5ee2337f25",null),(0,d.A)(k,"703b39f46e72bc10a15ef9017fcd7f3119f9dd7603",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.")},62666:(a,b,c)=>{c.d(b,{DataComponentForm:()=>W});var d=c(59111),e=c(6614),f=c(485),g=c(75823),h=c(68156),i=c(17130),j=c(16426),k=c(56019),l=c(2856),m=c(60848),n=c(93622),o=c(35283),p=c(90147);let q=(0,p.createServerReference)("709df3e44f9b96e37da984865543e36d5ee2337f25",p.callServer,void 0,p.findSourceMapURL,"updateDataComponentAction"),r=(0,p.createServerReference)("7070e6b08e927ef168deeb58f9138170f77e1b4fd3",p.callServer,void 0,p.findSourceMapURL,"createDataComponentAction");var s=c(42723),t=c(53710),u=c(89565),v=c(27218),w=c(3905),x=c(14450),y=c(58616),z=c(85660),A=c(51023),B=c(75726),C=c(76469);function D(a){let{resolvedTheme:b}=(0,C.D)(),{language:c="jsx",className:e,value:f,onChange:g,placeholder:h,disabled:i,readOnly:j,...k}=a,l=[(0,z.Q2)({jsx:"jsx"===c||"tsx"===c,typescript:"typescript"===c||"tsx"===c})];return(0,d.jsx)(B.Ay,{...k,value:f||"",onChange:a=>g(a),extensions:l,theme:"dark"===b?A.nQ:A.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,s.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 E=c(67466),F=c(71534),G=c(34740),H=c(39729),I=c(14875);let J=I.bL,K=x.forwardRef(({className:a,...b},c)=>(0,d.jsx)(I.B8,{ref:c,className:(0,s.cn)("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",a),...b}));K.displayName=I.B8.displayName;let L=x.forwardRef(({className:a,...b},c)=>(0,d.jsx)(I.l9,{ref:c,className:(0,s.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}));L.displayName=I.l9.displayName;let M=x.forwardRef(({className:a,...b},c)=>(0,d.jsx)(I.UC,{ref:c,className:(0,s.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}));M.displayName=I.UC.displayName;var N=c(32442);let O=(0,p.createServerReference)("70f645d9f5557568d74c47d1edd41bb282d70c5eea",p.callServer,void 0,p.findSourceMapURL,"updateDataComponent");var P=c(54257);function Q({tenantId:a,projectId:b,dataComponentId:c,existingPreview:e,onPreviewChanged:f}){let[g,i]=(0,x.useState)(e||null),[j,k]=(0,x.useState)(!1),[m,n]=(0,x.useState)(!1),[o,p]=(0,x.useState)(""),[q,r]=(0,x.useState)(!!e),[s,z]=(0,x.useState)(!!e),[A,B]=(0,x.useState)(""),[C,I]=(0,x.useState)(!1),Q=async d=>{k(!0),i(null),p(""),r(!1),z(!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?g?.code:void 0})});if(!e.ok)throw Error("Failed to generate preview");if(!e.body)throw Error("No response body");let j=e.body.getReader(),k=new TextDecoder,l="",m=null;for(;;){let{done:a,value:b}=await j.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&&p(b.code)}catch(b){console.warn("Failed to parse line:",a,b)}}if(m)i(m),r(!0),f?.(m),h.oR.success("Preview generated successfully");else throw Error("No valid preview generated")}catch(a){console.error("Failed to generate preview:",a),h.oR.error("Failed to generate preview"),r(!0)}finally{k(!1)}},R=async()=>{n(!0);try{await O(a,b,{id:c,preview:null}),i(null),z(!1),f?.(null),h.oR.success("Preview deleted")}catch(a){console.error("Error deleting preview:",a),h.oR.error("Failed to delete preview")}finally{n(!1)}},S=null!==g&&(g.code?.trim().length??0)>0,T=(0,x.useMemo)(()=>g?.data?JSON.stringify(g.data,null,2):"{}",[g?.data]),U=(0,x.useMemo)(()=>g?.code||"",[g?.code]),V=(0,x.useMemo)(()=>g?.data||{},[g?.data]),W=(0,x.useCallback)(a=>{if(g)try{let b=JSON.parse(a),c={...g,data:b};i(c),f?.(c)}catch{}},[g,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:[!S&&(0,d.jsx)(l.$,{onClick:()=>Q(),disabled:j,className:"gap-2",children:j?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(t.A,{className:"h-4 w-4 animate-spin"}),"Generating..."]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(u.A,{className:"h-4 w-4"}),"Generate"]})}),S&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)(H.AM,{open:C,onOpenChange:I,children:[(0,d.jsx)(H.Wv,{asChild:!0,children:(0,d.jsx)(l.$,{variant:"outline",disabled:m||j,className:"gap-2",children:j?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(t.A,{className:"h-4 w-4 animate-spin"}),"Regenerating..."]}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(v.A,{className:"h-4 w-4"}),"Regenerate"]})})}),(0,d.jsx)(H.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)(G.J,{htmlFor:"instructions",className:"text-xs text-muted-foreground",children:"Describe what you'd like to change (optional)"}),(0,d.jsx)(N.T,{id:"instructions",placeholder:"e.g. Make it more compact, add a border, use different icons...",value:A,onChange:a=>B(a.target.value),className:"mt-2 min-h-[100px]"})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(l.$,{size:"sm",onClick:async()=>{I(!1),await Q(A||void 0),B("")},disabled:j,className:"flex-1",children:A?"Apply Changes":"Regenerate"}),(0,d.jsx)(l.$,{size:"sm",variant:"outline",onClick:()=>{I(!1),B("")},children:"Cancel"})]})]})})]}),s&&(0,d.jsx)(l.$,{variant:"destructive",onClick:R,disabled:m||j,size:"icon",title:"Delete preview",children:m?(0,d.jsx)(t.A,{className:"h-4 w-4 animate-spin"}):(0,d.jsx)(w.A,{className:"h-4 w-4"})})]})]})]}),j&&o&&(0,d.jsx)(y.jH,{isAnimating:!0,className:"[&_[data-code-block-header=true]]:hidden [&_pre]:bg-muted/40!",children:`\`\`\`jsx
14
- ${o}\`\`\``}),j&&!o&&(0,d.jsx)(F.Zp,{className:"p-6",children:(0,d.jsxs)("div",{className:"flex flex-col items-center justify-center space-y-4",children:[(0,d.jsx)(t.A,{className:"h-8 w-8 animate-spin text-primary"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:"Generating component preview..."})]})}),S&&!j&&q&&g&&(0,d.jsxs)(J,{defaultValue:"preview",className:"w-full",children:[(0,d.jsxs)(K,{children:[(0,d.jsx)(L,{value:"preview",children:"Preview"}),(0,d.jsx)(L,{value:"code",children:"Code"}),(0,d.jsx)(L,{value:"data",children:"Sample Data"})]}),(0,d.jsx)(M,{value:"preview",children:(0,d.jsx)(F.Zp,{className:"p-6",children:(0,d.jsx)(P.s,{code:U,props:V})})}),(0,d.jsx)(M,{value:"code",children:(0,d.jsx)(D,{value:U,onChange:a=>{if(!g)return;let b={...g,code:a};i(b),f?.(b)},language:"jsx",className:"max-h-[500px]"})}),(0,d.jsx)(M,{value:"data",children:(0,d.jsx)(E.i,{value:T,onChange:W,className:"max-h-[500px]"})})]})]})}let R={id:"",name:"",description:"",props:""};var S=c(34576),T=c(80974),U=c(62503);let V=S.object({id:U.f,name:S.string().min(1,"Name is required."),description:S.string().min(1,"Description is required."),props:S.string().min(1,"Props schema is required.").transform((a,b)=>{try{let c=JSON.parse(a),d=(0,T._O)(a);if(!d.isValid){let a=d.errors[0]?.message||"Invalid JSON schema";return b.addIssue({code:S.ZodIssueCode.custom,message:a}),S.NEVER}return c}catch(a){return b.addIssue({code:S.ZodIssueCode.custom,message:(0,T.SR)(a)}),S.NEVER}}).optional(),preview:S.object({code:S.string(),data:S.record(S.string(),S.unknown())}).nullable().optional()});function W({tenantId:a,projectId:b,id:c,initialData:p}){let t=(0,g.mN)({resolver:(0,e.u)(V),defaultValues:(a=>{if(!a)return R;let b={...a};return b.props&&(b.props=(0,s.S_)(b.props)),b})(p)}),{isSubmitting:u}=t.formState,v=(0,f.useRouter)();(0,o.S)({form:t,nameField:"name",idField:"id",isEditing:!!c});let w=async d=>{try{let e={...d};if(c){let c=await q(a,b,e);if(!c.success)return void h.oR.error(c.error||"Failed to update component");h.oR.success("Component updated")}else{let c=await r(a,b,e);if(!c.success)return void h.oR.error(c.error||"Failed to create component");h.oR.success("Component created"),v.push(`/${a}/projects/${b}/components`)}}catch(b){console.error("Error submitting component:",b);let a=b instanceof Error?b.message:"An unexpected error occurred";h.oR.error(a)}};return(0,d.jsx)(n.lV,{...t,children:(0,d.jsxs)("form",{onSubmit:t.handleSubmit(w),className:"space-y-8",children:[(0,d.jsx)(i.a,{control:t.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)(m.G,{href:"https://docs.inkeep.com/typescript-sdk/structured-outputs/data-components#frontend-integration",target:"_blank",children:"Learn more"})]}),isRequired:!0}),(0,d.jsx)(i.a,{control:t.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)(j.K,{control:t.control,name:"description",label:"Description",placeholder:"Display a list of user orders with interactive options",className:"min-h-[80px]",isRequired:!0}),(0,d.jsx)(k.S,{control:t.control,name:"props",label:"Props (JSON schema)",placeholder:"Enter a valid JSON Schema...",isRequired:!0}),c&&(0,d.jsx)(Q,{tenantId:a,projectId:b,dataComponentId:c,existingPreview:p?.preview||null,onPreviewChanged:a=>{t.setValue("preview",a)}}),(0,d.jsx)(l.$,{type:"submit",disabled:u,children:"Save"})]})})}},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}`))})]})})}},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=526,exports.ids=[526],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})]})}},44733:(a,b,c)=>{c.d(b,{ArtifactComponentForm:()=>d});let d=(0,c(60241).registerClientReference)(function(){throw Error("Attempted to call ArtifactComponentForm() from the server but ArtifactComponentForm 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/artifact-components/form/artifact-component-form.tsx","ArtifactComponentForm")},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})})}},56815:(a,b,c)=>{c.r(b),c.d(b,{"40cf6a59c4f2a9d2b693cb6bd3eb640071d68ac495":()=>d.bW,"60484062183e2f3f9503eafff0fc9955465081ae2f":()=>d.Dv,"606daf014e7001b391be38442911e3b881e13d080d":()=>d.qf,"609e7f02eccaccf5e5866d92bd58efa828dfad981d":()=>d.gL,"60a62cd8d9595265b9ad9971c81ebb91f39ef3e4cb":()=>p,"701359eb241704caea5a067249dd4fc18dd1c2fb16":()=>r,"70cbac9e2914d5d20f65ae2c0725007b35787dfa80":()=>d.Tg,"70e22c9620643acb70b5295c2674fdc92f22f890e2":()=>s,"70f3272cbcc80b490f65e61db932f01a9dd11f0d31":()=>q});var d=c(72025),e=c(29991);c(58415);var f=c(83248),g=c(8703),h=c(45796),i=c(33451);async function j(a,b){return(0,h.M2)(a),(0,h.nt)(b),await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components`)}async function k(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`)).data}async function l(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components`,{method:"POST",body:JSON.stringify(c)})).data}async function m(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)})).data}async function n(a,b,c){(0,h.M2)(a),(0,h.nt)(b),await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`,{method:"DELETE"})}(0,i.D)([j,k,l,m,n]),(0,e.A)(j,"60e5dc03bc834b647527de6e92d6cd48f989a425be",null),(0,e.A)(k,"70389963885a1adeba01df6cf5bcd82364353fb353",null),(0,e.A)(l,"7023cc6f5b05b7925c87fc79a084cd4e1d23223d1d",null),(0,e.A)(m,"7004b22c924cfb0667b9be436114d1653510f5020c",null),(0,e.A)(n,"70dbd0f2aeee66cfe966092d6b2a67c91cd341eb62",null);var o=c(36608);async function p(a,b){try{let c=await j(a,b);return{success:!0,data:c.data}}catch(a){if(a instanceof o.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 q(a,b,c){try{let d=await l(a,b,c);return(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),{success:!0,data:d}}catch(a){if(a instanceof o.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 r(a,b,c){try{let d=await m(a,b,c);return(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts/${c.id}`),{success:!0,data:d}}catch(a){if(a instanceof o.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 s(a,b,c){try{return await n(a,b,c),(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts/${c}`),{success:!0}}catch(a){if(a instanceof o.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,i.D)([p,q,r,s]),(0,e.A)(p,"60a62cd8d9595265b9ad9971c81ebb91f39ef3e4cb",null),(0,e.A)(q,"70f3272cbcc80b490f65e61db932f01a9dd11f0d31",null),(0,e.A)(r,"701359eb241704caea5a067249dd4fc18dd1c2fb16",null),(0,e.A)(s,"70e22c9620643acb70b5295c2674fdc92f22f890e2",null)},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.")},73024:(a,b,c)=>{c.d(b,{ArtifactComponentForm:()=>x});var d=c(59111),e=c(6614),f=c(485),g=c(75823),h=c(68156),i=c(17130),j=c(16426),k=c(56019),l=c(2856),m=c(93622),n=c(35283),o=c(90147);let p=(0,o.createServerReference)("701359eb241704caea5a067249dd4fc18dd1c2fb16",o.callServer,void 0,o.findSourceMapURL,"updateArtifactComponentAction"),q=(0,o.createServerReference)("70f3272cbcc80b490f65e61db932f01a9dd11f0d31",o.callServer,void 0,o.findSourceMapURL,"createArtifactComponentAction");var r=c(42723);let s={id:"",name:"",description:"",props:void 0};var t=c(34576),u=c(80974),v=c(62503);let w=t.object({id:v.f,name:t.string().min(1,"Name is required."),description:t.string().min(1,"Description is required."),props:t.union([t.string(),t.null(),t.undefined()]).transform((a,b)=>{if(a&&""!==a&&null!==a)try{let c=JSON.parse(a),d=(0,u._O)(a);if(!d.isValid){let a=d.errors[0]?.message||"Invalid JSON schema";return b.addIssue({code:t.ZodIssueCode.custom,message:a}),t.NEVER}return c}catch(a){return b.addIssue({code:t.ZodIssueCode.custom,message:(0,u.SR)(a)}),t.NEVER}}).optional()});function x({id:a,tenantId:b,projectId:c,initialData:o}){let t=(0,g.mN)({resolver:(0,e.u)(w),defaultValues:(a=>{if(!a)return s;let b={...a};return b.props&&(b.props=(0,r.S_)(b.props)),b})(o)}),{isSubmitting:u}=t.formState,v=(0,f.useRouter)();(0,n.S)({form:t,nameField:"name",idField:"id",isEditing:!!a});let x=async d=>{try{let e={...d};if(void 0===e.props&&(e.props=null),a){let a=await p(b,c,e);if(!a.success)return void h.oR.error(a.error||"Failed to update artifact.");h.oR.success("Artifact updated.")}else{let a=await q(b,c,e);if(!a.success)return void h.oR.error(a.error||"Failed to create artifact");h.oR.success("Artifact created."),v.push(`/${b}/projects/${c}/artifacts`)}}catch(b){console.error("Error submitting artifact:",b);let a=b instanceof Error?b.message:"An unexpected error occurred.";h.oR.error(a)}};return(0,d.jsx)(m.lV,{...t,children:(0,d.jsxs)("form",{onSubmit:t.handleSubmit(x),className:"space-y-8",children:[(0,d.jsx)(i.a,{control:t.control,name:"name",label:"Name",placeholder:"Document Artifact",isRequired:!0}),(0,d.jsx)(i.a,{control:t.control,name:"id",label:"Id",placeholder:"my-artifact",disabled:!!a,isRequired:!0,description:a?"":"Choose a unique identifier for this artifact. Using an existing id will replace that artifact."}),(0,d.jsx)(j.K,{control:t.control,name:"description",label:"Description",placeholder:"Structured factual information extracted from search results",className:"min-h-[80px]",isRequired:!0}),(0,d.jsx)(k.S,{control:t.control,name:"props",label:"Props (JSON schema with inPreview indicators)",placeholder:"Enter a valid JSON Schema with inPreview flags, or leave empty to save entire tool result...",description:"Optional: Define specific fields with inPreview flags, or leave empty to capture the complete tool response."}),(0,d.jsx)(l.$,{type:"submit",disabled:u,children:"Save"})]})})}},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"}},93056:(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:"Artifacts"}],children:(0,d.jsxs)(f.D,{children:[(0,d.jsx)(g.zY,{title:"Artifacts",description:i.lh}),(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-artifact-${b}`))})]})})}}};