@inkeep/agents-manage-ui 0.9.0 → 0.10.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 (236) 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 +219 -219
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +10 -10
  4. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +5 -5
  5. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +20 -20
  6. package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +4 -4
  7. package/.next/standalone/agents-manage-ui/.next/routes-manifest.json +37 -37
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -0
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{data-components/new → artifacts/[artifactComponentId]}/page.js.nft.json +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -0
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -0
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{data-components/[dataComponentId] → artifacts/new}/page.js.nft.json +1 -1
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -0
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -0
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -0
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -0
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{artifact-components/[artifactComponentId] → components/[dataComponentId]}/page.js.nft.json +1 -1
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -0
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -0
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{artifact-components → components}/new/page.js.nft.json +1 -1
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -0
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -0
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -0
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +1 -1
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js +2 -2
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js.nft.json +1 -1
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js +2 -2
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js +2 -2
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +2 -2
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +1 -1
  76. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +9 -9
  79. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  82. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  83. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +10 -10
  85. package/.next/standalone/agents-manage-ui/.next/server/chunks/1902.js +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/chunks/209.js +1 -0
  87. package/.next/standalone/agents-manage-ui/.next/server/chunks/2314.js +1 -0
  88. package/.next/standalone/agents-manage-ui/.next/server/chunks/2539.js +5 -5
  89. package/.next/standalone/agents-manage-ui/.next/server/chunks/{3679.js → 3113.js} +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/chunks/3859.js +19 -3
  92. package/.next/standalone/agents-manage-ui/.next/server/chunks/{7652.js → 4038.js} +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/chunks/71.js +1 -1
  94. package/.next/standalone/agents-manage-ui/.next/server/chunks/7293.js +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/chunks/8449.js +3 -3
  96. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2563.js → 8799.js} +1 -1
  97. package/.next/standalone/agents-manage-ui/.next/server/chunks/9093.js +2 -2
  98. package/.next/standalone/agents-manage-ui/.next/server/chunks/9237.js +1 -0
  99. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  101. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  103. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/static/chunks/2063-af61e7c864e76f4f.js +1 -0
  106. package/.next/standalone/agents-manage-ui/.next/static/chunks/{4132.e82c1ad08339ac0f.js → 4132.0629ebed95bad681.js} +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/static/chunks/{6530.aafea7600cb29c93.js → 4149.b5aa052344354415.js} +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/static/chunks/{4095-96d343710caf26be.js → 4261-454575adeb801448.js} +1 -1
  109. package/.next/standalone/agents-manage-ui/.next/static/chunks/{3693.64ddbe1e3726f385.js → 6074.8b094e68e36d7e9c.js} +1 -1
  110. package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-730aff54edcfb10c.js +1 -0
  111. package/.next/standalone/agents-manage-ui/.next/static/chunks/7885-0b12122c31695e33.js +1 -0
  112. package/.next/standalone/agents-manage-ui/.next/static/chunks/9644-54e28306f3abe125.js +1 -0
  113. package/.next/standalone/agents-manage-ui/.next/static/chunks/{9964-e16d35b53a509ad4.js → 9964-fa3450b6002dd562.js} +1 -1
  114. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-6d39fab4d195c19a.js +1 -0
  115. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/error-f1418a11c66d8096.js +1 -0
  116. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-5150a6de8b80c4b4.js +1 -0
  117. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/error-30269bcc821d7de1.js +1 -0
  118. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-025ec4e3a5810eca.js +1 -0
  119. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-5150a6de8b80c4b4.js +1 -0
  120. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-1c17260377b32c91.js +1 -0
  121. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/error-cc0a7cc2ba09d619.js +1 -0
  122. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page-664381776dad1c85.js +1 -0
  123. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/error-4a78192429f3c345.js +1 -0
  124. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-025ec4e3a5810eca.js +1 -0
  125. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-664381776dad1c85.js +1 -0
  126. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-d84ad34da5dc5af8.js +1 -0
  127. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-51ae865fa7c52430.js +1 -0
  128. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-9adfab93a442927d.js +1 -0
  129. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-025ec4e3a5810eca.js +1 -0
  130. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-dda2db18ed173e31.js +1 -0
  131. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-9845708b28d20181.js → page-f4c25df5d1755217.js} +1 -1
  132. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-025ec4e3a5810eca.js +1 -0
  133. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/{page-85b42eb6434f29e0.js → page-d0db257541c6509a.js} +1 -1
  134. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-546eada72bc05113.js → page-9a01d68fffd96a5a.js} +1 -1
  135. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-7e0d6905b3917360.js +1 -0
  136. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-dd6ae70ea7fabd25.js → page-c8b2486c3ad4a568.js} +1 -1
  137. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/{page-cdc9588a55a0d92c.js → page-a720eff492b73cb2.js} +1 -1
  138. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-a0922720c62feda3.js → page-b248a0ea8649e4f3.js} +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-dfdb58eb7760e57d.js +1 -0
  140. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-025ec4e3a5810eca.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-55e12f6eb0a99f77.js +1 -0
  142. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-f0703e32230d7952.js +1 -0
  143. package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-2d4148ddf995243a.js → webpack-b20dc8e12f728891.js} +1 -1
  144. package/.next/standalone/agents-manage-ui/.next/static/css/4891c14dcbd99183.css +1 -0
  145. package/.next/standalone/agents-manage-ui/package.json +1 -1
  146. package/.next/standalone/package.json +2 -6
  147. package/.next/standalone/packages/agents-core/package.json +5 -4
  148. package/package.json +4 -4
  149. package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/[artifactComponentId]/error.tsx +2 -2
  150. package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/[artifactComponentId]/page.tsx +2 -2
  151. package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/loading.tsx +2 -2
  152. package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/new/page.tsx +3 -3
  153. package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/page.tsx +9 -9
  154. package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/[dataComponentId]/error.tsx +2 -2
  155. package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/[dataComponentId]/page.tsx +2 -2
  156. package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/loading.tsx +2 -2
  157. package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/new/page.tsx +3 -3
  158. package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/page.tsx +8 -8
  159. package/src/app/api/signoz/conversations/[conversationId]/route.ts +26 -4
  160. package/src/components/artifact-components/artifact-component-item.tsx +1 -1
  161. package/src/components/artifact-components/delete-artifact-component-confirmation.tsx +2 -2
  162. package/src/components/artifact-components/form/artifact-component-form.tsx +9 -9
  163. package/src/components/data-components/data-component-item.tsx +1 -1
  164. package/src/components/data-components/delete-data-component-confirmation.tsx +2 -2
  165. package/src/components/data-components/form/data-component-form.tsx +6 -6
  166. package/src/components/graph/graph.tsx +24 -2
  167. package/src/components/graph/nodes/agent-node.tsx +2 -6
  168. package/src/components/graph/sidepane/metadata/metadata-editor.tsx +10 -6
  169. package/src/components/graph/sidepane/nodes/agent-node-editor.tsx +10 -10
  170. package/src/components/graph/sidepane/nodes/credential-selector.tsx +17 -13
  171. package/src/components/graph/sidepane/nodes/model-section.tsx +10 -6
  172. package/src/components/graph/sidepane/nodes/model-selector.tsx +5 -1
  173. package/src/components/projects/form/project-models-section.tsx +1 -1
  174. package/src/components/sidebar-nav/sidebar-nav.tsx +11 -11
  175. package/src/components/traces/timeline/activity-timeline.tsx +3 -0
  176. package/src/components/traces/timeline/render-panel-content.tsx +63 -9
  177. package/src/components/traces/timeline/timeline-item.tsx +18 -4
  178. package/src/components/traces/timeline/timeline-wrapper.tsx +32 -18
  179. package/src/components/traces/timeline/types.ts +4 -0
  180. package/src/components/ui/external-link.tsx +13 -2
  181. package/src/constants/page-descriptions.tsx +1 -1
  182. package/src/features/graph/domain/deserialize.ts +2 -2
  183. package/src/lib/actions/artifact-components.ts +9 -9
  184. package/src/lib/actions/data-components.ts +5 -5
  185. package/src/lib/api/artifact-components.ts +4 -4
  186. package/src/lib/utils/graph-error-parser.ts +2 -2
  187. package/src/lib/utils/mcp-urls.ts +1 -2
  188. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page.js +0 -2
  189. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page_client-reference-manifest.js +0 -1
  190. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/new/page.js +0 -2
  191. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/new/page_client-reference-manifest.js +0 -1
  192. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/page.js +0 -2
  193. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifact-components/page_client-reference-manifest.js +0 -1
  194. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/[dataComponentId]/page.js +0 -2
  195. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/[dataComponentId]/page_client-reference-manifest.js +0 -1
  196. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/new/page.js +0 -2
  197. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/new/page_client-reference-manifest.js +0 -1
  198. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/page.js +0 -2
  199. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/data-components/page_client-reference-manifest.js +0 -1
  200. package/.next/standalone/agents-manage-ui/.next/server/chunks/5286.js +0 -1
  201. package/.next/standalone/agents-manage-ui/.next/server/chunks/6675.js +0 -1
  202. package/.next/standalone/agents-manage-ui/.next/server/chunks/9831.js +0 -1
  203. package/.next/standalone/agents-manage-ui/.next/static/chunks/1413-48a35bb8b2d9a310.js +0 -1
  204. package/.next/standalone/agents-manage-ui/.next/static/chunks/2063-fdc0702cbb1a1a89.js +0 -1
  205. package/.next/standalone/agents-manage-ui/.next/static/chunks/2082-891b4e1bcad00d88.js +0 -1
  206. package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-11a12434690e1440.js +0 -1
  207. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-10994c4134a5b1f6.js +0 -1
  208. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/error-5ea01b42c0d946d5.js +0 -1
  209. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page-ac21ae31668741aa.js +0 -1
  210. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/error-3b2af015fcc2359e.js +0 -1
  211. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/loading-ef3dedb418fb26d6.js +0 -1
  212. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/new/page-ac21ae31668741aa.js +0 -1
  213. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifact-components/page-2bb568b6c23a881e.js +0 -1
  214. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-3d397c420bb8143b.js +0 -1
  215. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-f7c50d8bbfd65b0d.js +0 -1
  216. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-ef3dedb418fb26d6.js +0 -1
  217. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-e11b688b8c64e54e.js +0 -1
  218. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/[dataComponentId]/error-7dcfd95f4b78d6bc.js +0 -1
  219. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/[dataComponentId]/page-4bee752045ef90e0.js +0 -1
  220. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/error-aab618cc712fb97f.js +0 -1
  221. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/loading-ef3dedb418fb26d6.js +0 -1
  222. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/new/page-4bee752045ef90e0.js +0 -1
  223. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/data-components/page-0b8a51e424924a54.js +0 -1
  224. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-ef3dedb418fb26d6.js +0 -1
  225. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-aa753859a6cd98f8.js +0 -1
  226. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-2a12f980f96c7c38.js +0 -1
  227. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-ef3dedb418fb26d6.js +0 -1
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-7e81c1c4a1f31187.js +0 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-3d8dfc51ee03d859.js +0 -1
  230. package/.next/standalone/agents-manage-ui/.next/static/css/d6cfe4d39e9ec828.css +0 -1
  231. /package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/page.js.nft.json +0 -0
  232. /package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{data-components → components}/page.js.nft.json +0 -0
  233. /package/.next/standalone/agents-manage-ui/.next/static/{P565yMuBD-0DpQccwOL1W → L7WcT2fRRZif5hXZksQdA}/_buildManifest.js +0 -0
  234. /package/.next/standalone/agents-manage-ui/.next/static/{P565yMuBD-0DpQccwOL1W → L7WcT2fRRZif5hXZksQdA}/_ssgManifest.js +0 -0
  235. /package/src/app/[tenantId]/projects/[projectId]/{artifact-components → artifacts}/error.tsx +0 -0
  236. /package/src/app/[tenantId]/projects/[projectId]/{data-components → components}/error.tsx +0 -0
@@ -4,11 +4,13 @@ import type { ActivityItem } from '@/components/traces/timeline/types';
4
4
  export function ActivityTimeline({
5
5
  activities,
6
6
  onSelect,
7
+ selectedActivityId,
7
8
  collapsedAiMessages,
8
9
  onToggleAiMessageCollapse,
9
10
  }: {
10
11
  activities: ActivityItem[];
11
12
  onSelect: (a: ActivityItem) => void;
13
+ selectedActivityId?: string | null;
12
14
  collapsedAiMessages?: Set<string>;
13
15
  onToggleAiMessageCollapse?: (activityId: string) => void;
14
16
  }) {
@@ -21,6 +23,7 @@ export function ActivityTimeline({
21
23
  activity={activity}
22
24
  isLast={index === activities.length - 1}
23
25
  onSelect={() => onSelect(activity)}
26
+ isSelected={selectedActivityId === activity.id}
24
27
  isAiMessageCollapsed={collapsedAiMessages?.has(activity.id) || false}
25
28
  onToggleAiMessageCollapse={onToggleAiMessageCollapse}
26
29
  />
@@ -88,6 +88,13 @@ export function renderPanelContent({
88
88
  <Info label="Input tokens" value={a.inputTokens?.toLocaleString() || '0'} />
89
89
  <Info label="Output tokens" value={a.outputTokens?.toLocaleString() || '0'} />
90
90
  <Info label="Agent" value={a.agentName || '-'} />
91
+ {a.aiResponseText && (
92
+ <LabeledBlock label="Response text">
93
+ <Bubble className="whitespace-pre-wrap break-words max-h-96 overflow-y-auto">
94
+ {a.aiResponseText}
95
+ </Bubble>
96
+ </LabeledBlock>
97
+ )}
91
98
  <StatusBadge status={a.status} />
92
99
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
93
100
  </Section>
@@ -221,7 +228,20 @@ export function renderPanelContent({
221
228
  }
222
229
  />
223
230
  <StatusBadge status={a.status} />
224
- <Info label="Result" value={a.toolResult || 'No result available'} />
231
+ {a.toolCallArgs && (
232
+ <LabeledBlock label="Tool arguments">
233
+ <CodeBubble className="max-h-60 overflow-y-auto">
234
+ <Streamdown>{`\`\`\`json\n${a.toolCallArgs}\n\`\`\``}</Streamdown>
235
+ </CodeBubble>
236
+ </LabeledBlock>
237
+ )}
238
+ {a.toolCallResult && (
239
+ <LabeledBlock label="Tool result">
240
+ <CodeBubble className="max-h-60 overflow-y-auto">
241
+ <Streamdown>{`\`\`\`json\n${a.toolCallResult}\n\`\`\``}</Streamdown>
242
+ </CodeBubble>
243
+ </LabeledBlock>
244
+ )}
225
245
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
226
246
  </Section>
227
247
  <Divider />
@@ -253,7 +273,20 @@ export function renderPanelContent({
253
273
  }
254
274
  />
255
275
  <StatusBadge status={a.status} />
256
- <Info label="Result" value={a.toolResult || 'No result available'} />
276
+ {a.toolCallArgs && (
277
+ <LabeledBlock label="Tool arguments">
278
+ <CodeBubble className="max-h-60 overflow-y-auto">
279
+ <Streamdown>{`\`\`\`json\n${a.toolCallArgs}\n\`\`\``}</Streamdown>
280
+ </CodeBubble>
281
+ </LabeledBlock>
282
+ )}
283
+ {a.toolCallResult && (
284
+ <LabeledBlock label="Tool result">
285
+ <CodeBubble className="max-h-60 overflow-y-auto">
286
+ <Streamdown>{`\`\`\`json\n${a.toolCallResult}\n\`\`\``}</Streamdown>
287
+ </CodeBubble>
288
+ </LabeledBlock>
289
+ )}
257
290
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
258
291
  </Section>
259
292
  <Divider />
@@ -286,7 +319,20 @@ export function renderPanelContent({
286
319
  </LabeledBlock>
287
320
  <Info label="Agent" value={a.agentName || 'Unknown agent'} />
288
321
  <StatusBadge status={a.status} />
289
- <Info label="Result" value={a.toolResult || 'No result available'} />
322
+ {a.toolCallArgs && (
323
+ <LabeledBlock label="Tool arguments">
324
+ <CodeBubble className="max-h-60 overflow-y-auto">
325
+ <Streamdown>{`\`\`\`json\n${a.toolCallArgs}\n\`\`\``}</Streamdown>
326
+ </CodeBubble>
327
+ </LabeledBlock>
328
+ )}
329
+ {a.toolCallResult && (
330
+ <LabeledBlock label="Tool result">
331
+ <CodeBubble className="max-h-60 overflow-y-auto">
332
+ <Streamdown>{`\`\`\`json\n${a.toolCallResult}\n\`\`\``}</Streamdown>
333
+ </CodeBubble>
334
+ </LabeledBlock>
335
+ )}
290
336
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
291
337
  </Section>
292
338
  <Divider />
@@ -315,7 +361,20 @@ export function renderPanelContent({
315
361
  </LabeledBlock>
316
362
  )}
317
363
  <StatusBadge status={a.status} />
318
- <Info label="Result" value={a.toolResult || 'No result available'} />
364
+ {a.toolCallArgs && (
365
+ <LabeledBlock label="Tool arguments">
366
+ <CodeBubble className="max-h-60 overflow-y-auto">
367
+ <Streamdown>{`\`\`\`json\n${a.toolCallArgs}\n\`\`\``}</Streamdown>
368
+ </CodeBubble>
369
+ </LabeledBlock>
370
+ )}
371
+ {a.toolCallResult && (
372
+ <LabeledBlock label="Tool result">
373
+ <CodeBubble className="max-h-60 overflow-y-auto">
374
+ <Streamdown>{`\`\`\`json\n${a.toolCallResult}\n\`\`\``}</Streamdown>
375
+ </CodeBubble>
376
+ </LabeledBlock>
377
+ )}
319
378
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
320
379
  </Section>
321
380
  <Divider />
@@ -341,11 +400,6 @@ export function renderPanelContent({
341
400
  <Info label="Output tokens" value={a.outputTokens?.toLocaleString() || '0'} />
342
401
  <StatusBadge status={a.status} />
343
402
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
344
- <LabeledBlock label="Streamed text content">
345
- <Bubble className="whitespace-pre-wrap break-words max-h-96 overflow-y-auto">
346
- {a.aiStreamTextContent || 'No content available'}
347
- </Bubble>
348
- </LabeledBlock>
349
403
  </Section>
350
404
  <Divider />
351
405
  {SignozButton}
@@ -21,6 +21,7 @@ import {
21
21
  type ActivityKind,
22
22
  TOOL_TYPES,
23
23
  } from '@/components/traces/timeline/types';
24
+ import { Badge } from '@/components/ui/badge';
24
25
 
25
26
  function truncateWords(s: string, nWords: number) {
26
27
  const words = s.split(/\s+/);
@@ -72,6 +73,7 @@ interface TimelineItemProps {
72
73
  activity: ActivityItem;
73
74
  isLast: boolean;
74
75
  onSelect: () => void;
76
+ isSelected?: boolean;
75
77
  isAiMessageCollapsed?: boolean;
76
78
  onToggleAiMessageCollapse?: (activityId: string) => void;
77
79
  }
@@ -80,6 +82,7 @@ export function TimelineItem({
80
82
  activity,
81
83
  isLast,
82
84
  onSelect,
85
+ isSelected = false,
83
86
  isAiMessageCollapsed = false,
84
87
  onToggleAiMessageCollapse,
85
88
  }: TimelineItemProps) {
@@ -99,13 +102,17 @@ export function TimelineItem({
99
102
  const isoDateTime = new Date(activity.timestamp).toISOString();
100
103
 
101
104
  return (
102
- <div className="flex flex-col text-muted-foreground relative text-xs">
105
+ <div className={`flex flex-col text-muted-foreground relative text-xs`}>
103
106
  <div className="flex items-start">
104
- <div className="mr-4 pt-[1px]">
107
+ <div className="mr-2 py-2">
105
108
  <Icon className={`w-4 h-4 ${className}`} />
106
109
  </div>
107
110
 
108
- <div className="space-y-1.5">
111
+ <div
112
+ className={`space-y-1.5 px-3 py-2 w-full transition-all duration-200 rounded-lg ${
113
+ isSelected ? 'ring-1 ring-primary/50 bg-primary/5' : ''
114
+ }`}
115
+ >
109
116
  <div className="flex items-center gap-2">
110
117
  <button
111
118
  type="button"
@@ -368,6 +375,13 @@ export function TimelineItem({
368
375
  </CodeBubble>
369
376
  )}
370
377
 
378
+ {/* agent name for AI generation */}
379
+ {activity.type === ACTIVITY_TYPES.AI_GENERATION && activity.agentName && (
380
+ <div className="mb-1">
381
+ <Badge variant="code">{activity.agentName}</Badge>
382
+ </div>
383
+ )}
384
+
371
385
  <time
372
386
  className="text-xs mb-2 inline-block text-gray-500 dark:text-white/50"
373
387
  dateTime={isoDateTime}
@@ -378,7 +392,7 @@ export function TimelineItem({
378
392
  </div>
379
393
  </div>
380
394
 
381
- {!isLast && <div className="absolute top-6 left-[7px] border-l border-border h-full" />}
395
+ {!isLast && <div className="absolute top-8 left-[7px] border-l border-border h-full" />}
382
396
  </div>
383
397
  );
384
398
  }
@@ -17,6 +17,7 @@ import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';
17
17
  import { Button } from '@/components/ui/button';
18
18
  import { ExternalLink } from '@/components/ui/external-link';
19
19
  import { ResizableHandle, ResizablePanel } from '@/components/ui/resizable';
20
+ import { DOCS_BASE_URL } from '@/constants/page-descriptions';
20
21
 
21
22
  function panelTitle(selected: SelectedPanel) {
22
23
  switch (selected.type) {
@@ -84,14 +85,22 @@ function EmptyTimeline({
84
85
  The SIGNOZ_API_KEY environment variable is not configured. Please set this
85
86
  environment variable to the enable activity timeline.
86
87
  </p>
87
- <ExternalLink href={`https://docs.inkeep.com/visual-builder/graphs`}>
88
+ <ExternalLink
89
+ className="text-amber-700 dark:text-amber-300 dark:hover:text-amber-200 ml-0 mt-1"
90
+ iconClassName="text-amber-700 dark:text-amber-300 dark:group-hover/link:text-amber-200"
91
+ href={`${DOCS_BASE_URL}/visual-builder/graphs`}
92
+ >
88
93
  Learn more
89
94
  </ExternalLink>
90
95
  </div>
91
96
  ) : (
92
97
  <div>
93
98
  <p>{error}</p>
94
- <ExternalLink href="https://docs.inkeep.com/quick-start/observability">
99
+ <ExternalLink
100
+ className="text-amber-700 dark:text-amber-300 dark:hover:text-amber-200 ml-0 mt-1"
101
+ iconClassName="text-amber-700 dark:text-amber-300 dark:group-hover/link:text-amber-200"
102
+ href={`${DOCS_BASE_URL}/quick-start/observability`}
103
+ >
95
104
  View observability setup guide
96
105
  </ExternalLink>
97
106
  </div>
@@ -136,7 +145,7 @@ export function TimelineWrapper({
136
145
  retryConnection,
137
146
  refreshOnce,
138
147
  showConversationTracesLink = false,
139
- conversationId
148
+ conversationId,
140
149
  }: TimelineWrapperProps) {
141
150
  const [selected, setSelected] = useState<SelectedPanel | null>(null);
142
151
  const [panelVisible, setPanelVisible] = useState(false);
@@ -157,12 +166,12 @@ export function TimelineWrapper({
157
166
  }
158
167
  }, [selected]);
159
168
 
160
- // Clear selected panel when conversation changes
161
- useEffect(() => {
162
- if (conversationId) {
163
- setSelected(null);
164
- }
165
- }, [conversationId]);
169
+ // Clear selected panel when conversation changes
170
+ useEffect(() => {
171
+ if (conversationId) {
172
+ setSelected(null);
173
+ }
174
+ }, [conversationId]);
166
175
 
167
176
  // Memoize activities calculation to prevent expensive operations on every render
168
177
  const activities = useMemo(() => {
@@ -253,7 +262,9 @@ export function TimelineWrapper({
253
262
 
254
263
  const closePanel = () => {
255
264
  setPanelVisible(false);
256
- setTimeout(() => setSelected(null), 300);
265
+ setTimeout(() => {
266
+ setSelected(null);
267
+ }, 300);
257
268
  };
258
269
 
259
270
  const findSpanById = (id?: string) =>
@@ -293,7 +304,7 @@ export function TimelineWrapper({
293
304
 
294
305
  return (
295
306
  <>
296
- <ResizablePanel order={2}>
307
+ <ResizablePanel id="activity-timeline" order={2}>
297
308
  <div className="bg-background h-full flex flex-col py-4">
298
309
  <div className="flex-shrink-0">
299
310
  <div className="flex items-center justify-between px-6 pb-4">
@@ -355,12 +366,13 @@ export function TimelineWrapper({
355
366
  <StickToBottom.Content>
356
367
  <ActivityTimeline
357
368
  activities={sortedActivities}
358
- onSelect={(activity) =>
369
+ onSelect={(activity) => {
359
370
  setSelected({
360
371
  type: determinePanelType(activity),
361
372
  item: activity,
362
- })
363
- }
373
+ });
374
+ }}
375
+ selectedActivityId={selected?.item?.id}
364
376
  collapsedAiMessages={collapsedAiMessages}
365
377
  onToggleAiMessageCollapse={toggleAiMessageCollapse}
366
378
  />
@@ -388,12 +400,13 @@ export function TimelineWrapper({
388
400
  <div className="h-full overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 scrollbar-track-transparent dark:scrollbar-thumb-muted-foreground/50">
389
401
  <ActivityTimeline
390
402
  activities={sortedActivities}
391
- onSelect={(activity) =>
403
+ onSelect={(activity) => {
392
404
  setSelected({
393
405
  type: determinePanelType(activity),
394
406
  item: activity,
395
- })
396
- }
407
+ });
408
+ }}
409
+ selectedActivityId={selected?.item?.id}
397
410
  collapsedAiMessages={collapsedAiMessages}
398
411
  onToggleAiMessageCollapse={toggleAiMessageCollapse}
399
412
  />
@@ -405,8 +418,9 @@ export function TimelineWrapper({
405
418
  <ResizableHandle />
406
419
  {/* Side Panel */}
407
420
  {selected && (
408
- <ResizablePanel order={3}>
421
+ <ResizablePanel id="activity-details-sidepane" order={3}>
409
422
  <ActivityDetailsSidePane
423
+ key={selected.item.id}
410
424
  title={panelTitle(selected)}
411
425
  open={panelVisible}
412
426
  onClose={closePanel}
@@ -73,6 +73,9 @@ export interface ActivityItem {
73
73
  aiStreamTextModel?: string;
74
74
  aiStreamTextProvider?: string;
75
75
  aiStreamTextOperationId?: string;
76
+ toolCallArgs?: string;
77
+ toolCallResult?: string;
78
+ aiResponseText?: string;
76
79
  }
77
80
 
78
81
  export interface ToolCall {
@@ -128,6 +131,7 @@ export interface ConversationDetail {
128
131
  data: Record<string, any>;
129
132
  }>;
130
133
  mcpToolErrors?: Array<{
134
+ id: string;
131
135
  spanId: string;
132
136
  toolName: string;
133
137
  error: string;
@@ -3,7 +3,13 @@ import Link from 'next/link';
3
3
  import type { ComponentProps } from 'react';
4
4
  import { cn } from '@/lib/utils';
5
5
 
6
- export function ExternalLink({ href, children, className, ...props }: ComponentProps<typeof Link>) {
6
+ export function ExternalLink({
7
+ href,
8
+ children,
9
+ className,
10
+ iconClassName,
11
+ ...props
12
+ }: ComponentProps<typeof Link> & { iconClassName?: string }) {
7
13
  return (
8
14
  <Link
9
15
  href={href}
@@ -16,7 +22,12 @@ export function ExternalLink({ href, children, className, ...props }: ComponentP
16
22
  {...props}
17
23
  >
18
24
  {children}
19
- <ArrowUpRight className="size-3.5 text-muted-foreground/60 group-hover/link:text-primary" />
25
+ <ArrowUpRight
26
+ className={cn(
27
+ 'size-3.5 text-muted-foreground/60 group-hover/link:text-primary',
28
+ iconClassName
29
+ )}
30
+ />
20
31
  </Link>
21
32
  );
22
33
  }
@@ -15,7 +15,7 @@ export const artifactDescription = (
15
15
 
16
16
  export const dataComponentDescription = (
17
17
  <>
18
- Data components are structured components that agents can use to display rich data.
18
+ Components are structured components that agents can use to display rich data.
19
19
  {'\n'}
20
20
  <ExternalLink href={`${DOCS_BASE_URL}/visual-builder/data-components`}>Learn more</ExternalLink>
21
21
  </>
@@ -43,13 +43,13 @@ function calculateNodeHeight(node: Node): number {
43
43
  height += 30;
44
44
  }
45
45
 
46
- // Add height for data components section
46
+ // Add height for components section
47
47
  if (data.dataComponents && data.dataComponents.length > 0) {
48
48
  // Title + items section
49
49
  height += 60 + Math.ceil(data.dataComponents.length / 3) * 30;
50
50
  }
51
51
 
52
- // Add height for artifact components section
52
+ // Add height for artifacts section
53
53
  if (data.artifactComponents && data.artifactComponents.length > 0) {
54
54
  // Title + items section
55
55
  height += 60 + Math.ceil(data.artifactComponents.length / 3) * 30;
@@ -16,7 +16,7 @@ import { ApiError } from '../types/errors';
16
16
  import type { ActionResult } from './types';
17
17
 
18
18
  /**
19
- * Fetch all data components
19
+ * Fetch all artifacts
20
20
  */
21
21
  export async function fetchArtifactComponentsAction(
22
22
  tenantId: string,
@@ -46,7 +46,7 @@ export async function fetchArtifactComponentsAction(
46
46
  }
47
47
 
48
48
  /**
49
- * Create a new artifact component
49
+ * Create a new artifact
50
50
  */
51
51
  export async function createArtifactComponentAction(
52
52
  tenantId: string,
@@ -55,7 +55,7 @@ export async function createArtifactComponentAction(
55
55
  ): Promise<ActionResult<ArtifactComponent>> {
56
56
  try {
57
57
  const result = await createArtifactComponent(tenantId, projectId, data);
58
- revalidatePath(`/${tenantId}/projects/${projectId}/artifact-components`);
58
+ revalidatePath(`/${tenantId}/projects/${projectId}/artifacts`);
59
59
  return {
60
60
  success: true,
61
61
  data: result,
@@ -78,7 +78,7 @@ export async function createArtifactComponentAction(
78
78
  }
79
79
 
80
80
  /**
81
- * Update an existing artifact component
81
+ * Update an existing artifact
82
82
  */
83
83
  export async function updateArtifactComponentAction(
84
84
  tenantId: string,
@@ -87,8 +87,8 @@ export async function updateArtifactComponentAction(
87
87
  ): Promise<ActionResult<ArtifactComponent>> {
88
88
  try {
89
89
  const result = await updateArtifactComponent(tenantId, projectId, data);
90
- revalidatePath(`/${tenantId}/projects/${projectId}/artifact-components`);
91
- revalidatePath(`/${tenantId}/projects/${projectId}/artifact-components/${data.id}`);
90
+ revalidatePath(`/${tenantId}/projects/${projectId}/artifacts`);
91
+ revalidatePath(`/${tenantId}/projects/${projectId}/artifacts/${data.id}`);
92
92
  return {
93
93
  success: true,
94
94
  data: result,
@@ -111,7 +111,7 @@ export async function updateArtifactComponentAction(
111
111
  }
112
112
 
113
113
  /**
114
- * Delete an artifact component
114
+ * Delete an artifact
115
115
  */
116
116
  export async function deleteArtifactComponentAction(
117
117
  tenantId: string,
@@ -120,8 +120,8 @@ export async function deleteArtifactComponentAction(
120
120
  ): Promise<ActionResult<void>> {
121
121
  try {
122
122
  await deleteArtifactComponent(tenantId, projectId, artifactComponentId);
123
- revalidatePath(`/${tenantId}/projects/${projectId}/artifact-components`);
124
- revalidatePath(`/${tenantId}/projects/${projectId}/artifact-components/${artifactComponentId}`);
123
+ revalidatePath(`/${tenantId}/projects/${projectId}/artifacts`);
124
+ revalidatePath(`/${tenantId}/projects/${projectId}/artifacts/${artifactComponentId}`);
125
125
  return {
126
126
  success: true,
127
127
  };
@@ -55,7 +55,7 @@ export async function createDataComponentAction(
55
55
  ): Promise<ActionResult<DataComponent>> {
56
56
  try {
57
57
  const result = await createDataComponent(tenantId, projectId, data);
58
- revalidatePath(`/${tenantId}/projects/${projectId}/data-components`);
58
+ revalidatePath(`/${tenantId}/projects/${projectId}/components`);
59
59
  return {
60
60
  success: true,
61
61
  data: result,
@@ -87,8 +87,8 @@ export async function updateDataComponentAction(
87
87
  ): Promise<ActionResult<DataComponent>> {
88
88
  try {
89
89
  const result = await updateDataComponent(tenantId, projectId, data);
90
- revalidatePath(`/${tenantId}/projects/${projectId}/data-components`);
91
- revalidatePath(`/${tenantId}/projects/${projectId}/data-components/${data.id}`);
90
+ revalidatePath(`/${tenantId}/projects/${projectId}/components`);
91
+ revalidatePath(`/${tenantId}/projects/${projectId}/components/${data.id}`);
92
92
  return {
93
93
  success: true,
94
94
  data: result,
@@ -120,8 +120,8 @@ export async function deleteDataComponentAction(
120
120
  ): Promise<ActionResult<void>> {
121
121
  try {
122
122
  await deleteDataComponent(tenantId, projectId, dataComponentId);
123
- revalidatePath(`/${tenantId}/projects/${projectId}/data-components`);
124
- revalidatePath(`/${tenantId}/projects/${projectId}/data-components/${dataComponentId}`);
123
+ revalidatePath(`/${tenantId}/projects/${projectId}/components`);
124
+ revalidatePath(`/${tenantId}/projects/${projectId}/components/${dataComponentId}`);
125
125
  return {
126
126
  success: true,
127
127
  };
@@ -50,7 +50,7 @@ export async function fetchArtifactComponents(
50
50
  }
51
51
 
52
52
  /**
53
- * Fetch a single artifact component by ID
53
+ * Fetch a single artifact by ID
54
54
  */
55
55
  export async function fetchArtifactComponent(
56
56
  tenantId: string,
@@ -73,7 +73,7 @@ export async function fetchArtifactComponent(
73
73
  }
74
74
 
75
75
  /**
76
- * Create a new artifact component
76
+ * Create a new artifact
77
77
  */
78
78
  export async function createArtifactComponent(
79
79
  tenantId: string,
@@ -100,7 +100,7 @@ export async function createArtifactComponent(
100
100
  }
101
101
 
102
102
  /**
103
- * Update an existing artifact component
103
+ * Update an existing artifact
104
104
  */
105
105
  export async function updateArtifactComponent(
106
106
  tenantId: string,
@@ -127,7 +127,7 @@ export async function updateArtifactComponent(
127
127
  }
128
128
 
129
129
  /**
130
- * Delete an artifact component
130
+ * Delete an artifact
131
131
  */
132
132
  export async function deleteArtifactComponent(
133
133
  tenantId: string,
@@ -175,8 +175,8 @@ function getFieldDisplayName(field: string): string {
175
175
  maxTokens: 'Max Tokens',
176
176
  systemPrompt: 'System Prompt',
177
177
  tools: 'Tools',
178
- dataComponents: 'Data Components',
179
- artifactComponents: 'Artifact Components',
178
+ dataComponents: 'Components',
179
+ artifactComponents: 'Artifacts',
180
180
  relationships: 'Relationships',
181
181
  transferTargetToSource: 'Transfer (Target to Source)',
182
182
  transferSourceToTarget: 'Transfer (Source to Target)',
@@ -52,8 +52,7 @@ export function getOAuthLoginUrl({
52
52
  );
53
53
  }
54
54
 
55
- // Build URL with proper encoding
56
- const url = `${INKEEP_AGENTS_MANAGE_API_URL}/tenants/${encodeURIComponent(tenantId)}/projects/${encodeURIComponent(projectId)}/tools/${encodeURIComponent(id)}/oauth-login`;
55
+ const url = `${INKEEP_AGENTS_MANAGE_API_URL}/oauth/login?tenantId=${encodeURIComponent(tenantId)}&projectId=${encodeURIComponent(projectId)}&toolId=${encodeURIComponent(id)}`;
57
56
 
58
57
  // Verify the final URL starts with our expected base
59
58
  if (!url.startsWith(INKEEP_AGENTS_MANAGE_API_URL)) {
@@ -1,2 +0,0 @@
1
- (()=>{var a={};a.id=8489,a.ids=[8489],a.modules={261:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/app-paths")},3295:a=>{"use strict";a.exports=require("next/dist/server/app-render/after-task-async-storage.external.js")},10846:a=>{"use strict";a.exports=require("next/dist/compiled/next-server/app-page.runtime.prod.js")},19121:a=>{"use strict";a.exports=require("next/dist/server/app-render/action-async-storage.external.js")},24975:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"40cd5eaee616787cf1427e0ea298bfc9c5ded3b0ec":()=>d.vj,"60117624eefdf4d0fabeca4eefd3eebb422a3ce216":()=>d.gA,"60155821740f703f49fdfc5f15a35c26a0bea01a46":()=>d.Sw,"609a0d7e0a27b0cfdf033f32c05c54dc788136fb18":()=>e.Vg,"60a7c7644a7895be39beb54696f5a9ead44600c7a7":()=>d.xx,"700e1f0618be6a27301873a20b507eff4633c25be7":()=>e.y$,"701659c099186b18431f4c5f57da6c7eda6a818cbe":()=>e.Ty,"7074ac50de29b86c6569b29bb575f40098f8d3d28d":()=>e._2,"709d629750df3b592aab47d64ebe62d60526c21d54":()=>d.vr,"70bb172e722140b24004f71dde5fb284b8889ea4e7":()=>e.b5});var d=c(54637),e=c(90610)},26713:a=>{"use strict";a.exports=require("next/dist/shared/lib/router/utils/is-bot")},28354:a=>{"use strict";a.exports=require("util")},28641:(a,b,c)=>{"use strict";c.r(b),c.d(b,{GlobalError:()=>D.a,__next_app__:()=>J,handler:()=>L,pages:()=>I,routeModule:()=>K,tree:()=>H});var d=c(95983),e=c(31680),f=c(33628),g=c(60737),h=c(79847),i=c(86303),j=c(78838),k=c(40443),l=c(44035),m=c(31937),n=c(38933),o=c(37346),p=c(37388),q=c(67757),r=c(261),s=c(3156),t=c(63217),u=c(26713),v=c(23997),w=c(48374),x=c(55546),y=c(49191),z=c(14633),A=c(70563),B=c(86439),C=c(45277),D=c.n(C),E=c(48725),F=c(1948),G={};for(let a in E)0>["default","tree","pages","GlobalError","__next_app__","routeModule","handler"].indexOf(a)&&(G[a]=()=>E[a]);c.d(b,G);let H={children:["",{children:["[tenantId]",{children:["projects",{children:["[projectId]",{children:["artifact-components",{children:["[artifactComponentId]",{children:["__PAGE__",{},{page:[()=>Promise.resolve().then(c.bind(c,61024)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page.tsx"]}]},{error:[()=>Promise.resolve().then(c.bind(c,68595)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/error.tsx"]}]},{error:[()=>Promise.resolve().then(c.bind(c,36132)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,74402)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/loading.tsx"]}]},{layout:[()=>Promise.resolve().then(c.bind(c,29160)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/layout.tsx"],"not-found":[()=>Promise.resolve().then(c.bind(c,8636)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/not-found.tsx"]}]},{error:[()=>Promise.resolve().then(c.bind(c,75125)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/error.tsx"],loading:[()=>Promise.resolve().then(c.bind(c,8003)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/loading.tsx"]}]},{metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,47065))).default(a),async a=>(await Promise.resolve().then(c.bind(c,4564))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]},{layout:[()=>Promise.resolve().then(c.bind(c,99272)),"/home/runner/work/agents/agents/agents-manage-ui/src/app/layout.tsx"],"global-error":[()=>Promise.resolve().then(c.t.bind(c,45277,23)),"next/dist/client/components/builtin/global-error.js"],"not-found":[()=>Promise.resolve().then(c.t.bind(c,12153,23)),"next/dist/client/components/builtin/not-found.js"],forbidden:[()=>Promise.resolve().then(c.t.bind(c,83860,23)),"next/dist/client/components/builtin/forbidden.js"],unauthorized:[()=>Promise.resolve().then(c.t.bind(c,60471,23)),"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await Promise.resolve().then(c.bind(c,47065))).default(a),async a=>(await Promise.resolve().then(c.bind(c,4564))).default(a)],apple:[],openGraph:[],twitter:[],manifest:void 0}}]}.children,I=["/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page.tsx"],J={require:c,loadChunk:()=>Promise.resolve()},K=new d.AppPageRouteModule({definition:{kind:e.RouteKind.APP_PAGE,page:"/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page",pathname:"/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]",bundlePath:"",filename:"",appPaths:[]},userland:{loaderTree:H},distDir:".next",relativeProjectDir:""});async function L(a,b,d){var C;let G="/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/page";"/index"===G&&(G="/");let M=(0,h.getRequestMeta)(a,"postponed"),N=(0,h.getRequestMeta)(a,"minimalMode"),O=await K.prepare(a,b,{srcPage:G,multiZoneDraftMode:!1});if(!O)return b.statusCode=400,b.end("Bad Request"),null==d.waitUntil||d.waitUntil.call(d,Promise.resolve()),null;let{buildId:P,query:Q,params:R,parsedUrl:S,pageIsDynamic:T,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,serverActionsManifest:X,clientReferenceManifest:Y,subresourceIntegrityManifest:Z,prerenderManifest:$,isDraftMode:_,resolvedPathname:aa,revalidateOnlyGenerated:ab,routerServerContext:ac,nextConfig:ad,interceptionRoutePatterns:ae}=O,af=S.pathname||"/",ag=(0,r.normalizeAppPath)(G),{isOnDemandRevalidate:ah}=O,ai=K.match(af,$),aj=!!$.routes[aa],ak=!!(ai||aj||$.routes[ag]),al=a.headers["user-agent"]||"",am=(0,u.getBotType)(al),an=(0,p.isHtmlBotRequest)(a),ao=(0,h.getRequestMeta)(a,"isPrefetchRSCRequest")??"1"===a.headers[t.NEXT_ROUTER_PREFETCH_HEADER],ap=(0,h.getRequestMeta)(a,"isRSCRequest")??!!a.headers[t.RSC_HEADER],aq=(0,s.getIsPossibleServerAction)(a),ar=(0,m.checkIsAppPPREnabled)(ad.experimental.ppr)&&(null==(C=$.routes[ag]??$.dynamicRoutes[ag])?void 0:C.renderingMode)==="PARTIALLY_STATIC",as=!1,at=!1,au=ar?M:void 0,av=ar&&ap&&!ao,aw=(0,h.getRequestMeta)(a,"segmentPrefetchRSCRequest"),ax=!al||(0,p.shouldServeStreamingMetadata)(al,ad.htmlLimitedBots);an&&ar&&(ak=!1,ax=!1);let ay=!0===K.isDev||!ak||"string"==typeof M||av,az=an&&ar,aA=null;_||!ak||ay||aq||au||av||(aA=aa);let aB=aA;!aB&&K.isDev&&(aB=aa),K.isDev||_||!ak||!ap||av||(0,k.d)(a.headers);let aC={...E,tree:H,pages:I,GlobalError:D(),handler:L,routeModule:K,__next_app__:J};X&&Y&&(0,o.setReferenceManifestsSingleton)({page:G,clientReferenceManifest:Y,serverActionsManifest:X,serverModuleMap:(0,q.createServerModuleMap)({serverActionsManifest:X})});let aD=a.method||"GET",aE=(0,g.getTracer)(),aF=aE.getActiveScopeSpan();try{let f=K.getVaryHeader(aa,ae);b.setHeader("Vary",f);let k=async(c,d)=>{let e=new l.NodeNextRequest(a),f=new l.NodeNextResponse(b);return K.render(e,f,d).finally(()=>{if(!c)return;c.setAttributes({"http.status_code":b.statusCode,"next.rsc":!1});let d=aE.getRootSpanAttributes();if(!d)return;if(d.get("next.span_type")!==i.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${d.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let e=d.get("next.route");if(e){let a=`${aD} ${e}`;c.setAttributes({"next.route":e,"http.route":e,"next.span_name":a}),c.updateName(a)}else c.updateName(`${aD} ${a.url}`)})},m=async({span:e,postponed:f,fallbackRouteParams:g})=>{let i={query:Q,params:R,page:ag,sharedContext:{buildId:P},serverComponentsHmrCache:(0,h.getRequestMeta)(a,"serverComponentsHmrCache"),fallbackRouteParams:g,renderOpts:{App:()=>null,Document:()=>null,pageConfig:{},ComponentMod:aC,Component:(0,j.T)(aC),params:R,routeModule:K,page:G,postponed:f,shouldWaitOnAllReady:az,serveStreamingMetadata:ax,supportsDynamicResponse:"string"==typeof f||ay,buildManifest:U,nextFontManifest:V,reactLoadableManifest:W,subresourceIntegrityManifest:Z,serverActionsManifest:X,clientReferenceManifest:Y,setIsrStatus:null==ac?void 0:ac.setIsrStatus,dir:c(33873).join(process.cwd(),K.relativeProjectDir),isDraftMode:_,isRevalidate:ak&&!f&&!av,botType:am,isOnDemandRevalidate:ah,isPossibleServerAction:aq,assetPrefix:ad.assetPrefix,nextConfigOutput:ad.output,crossOrigin:ad.crossOrigin,trailingSlash:ad.trailingSlash,previewProps:$.preview,deploymentId:ad.deploymentId,enableTainting:ad.experimental.taint,htmlLimitedBots:ad.htmlLimitedBots,devtoolSegmentExplorer:ad.experimental.devtoolSegmentExplorer,reactMaxHeadersLength:ad.reactMaxHeadersLength,multiZoneDraftMode:!1,incrementalCache:(0,h.getRequestMeta)(a,"incrementalCache"),cacheLifeProfiles:ad.experimental.cacheLife,basePath:ad.basePath,serverActions:ad.experimental.serverActions,...as?{nextExport:!0,supportsDynamicResponse:!1,isStaticGeneration:!0,isRevalidate:!0,isDebugDynamicAccesses:as}:{},experimental:{isRoutePPREnabled:ar,expireTime:ad.expireTime,staleTimes:ad.experimental.staleTimes,cacheComponents:!!ad.experimental.cacheComponents,clientSegmentCache:!!ad.experimental.clientSegmentCache,clientParamParsing:!!ad.experimental.clientParamParsing,dynamicOnHover:!!ad.experimental.dynamicOnHover,inlineCss:!!ad.experimental.inlineCss,authInterrupts:!!ad.experimental.authInterrupts,clientTraceMetadata:ad.experimental.clientTraceMetadata||[]},waitUntil:d.waitUntil,onClose:a=>{b.on("close",a)},onAfterTaskError:()=>{},onInstrumentationRequestError:(b,c,d)=>K.onRequestError(a,b,d,ac),err:(0,h.getRequestMeta)(a,"invokeError"),dev:K.isDev}},l=await k(e,i),{metadata:m}=l,{cacheControl:n,headers:o={},fetchTags:p}=m;if(p&&(o[y.NEXT_CACHE_TAGS_HEADER]=p),a.fetchMetrics=m.fetchMetrics,ak&&(null==n?void 0:n.revalidate)===0&&!K.isDev&&!ar){let a=m.staticBailoutInfo,b=Object.defineProperty(Error(`Page changed from static to dynamic at runtime ${aa}${(null==a?void 0:a.description)?`, reason: ${a.description}`:""}
2
- see more here https://nextjs.org/docs/messages/app-static-to-dynamic-error`),"__NEXT_ERROR_CODE",{value:"E132",enumerable:!1,configurable:!0});if(null==a?void 0:a.stack){let c=a.stack;b.stack=b.message+c.substring(c.indexOf("\n"))}throw b}return{value:{kind:v.CachedRouteKind.APP_PAGE,html:l,headers:o,rscData:m.flightData,postponed:m.postponed,status:m.statusCode,segmentData:m.segmentData},cacheControl:n}},o=async({hasResolved:c,previousCacheEntry:f,isRevalidating:g,span:i})=>{let j,k=!1===K.isDev,l=c||b.writableEnded;if(ah&&ab&&!f&&!N)return(null==ac?void 0:ac.render404)?await ac.render404(a,b):(b.statusCode=404,b.end("This page could not be found")),null;if(ai&&(j=(0,w.parseFallbackField)(ai.fallback)),j===w.FallbackMode.PRERENDER&&(0,u.isBot)(al)&&(!ar||an)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),(null==f?void 0:f.isStale)===-1&&(ah=!0),ah&&(j!==w.FallbackMode.NOT_FOUND||f)&&(j=w.FallbackMode.BLOCKING_STATIC_RENDER),!N&&j!==w.FallbackMode.BLOCKING_STATIC_RENDER&&aB&&!l&&!_&&T&&(k||!aj)){let b;if((k||ai)&&j===w.FallbackMode.NOT_FOUND)throw new B.NoFallbackError;if(ar&&!ap){let c="string"==typeof(null==ai?void 0:ai.fallback)?ai.fallback:k?ag:null;if(b=await K.handleResponse({cacheKey:c,req:a,nextConfig:ad,routeKind:e.RouteKind.APP_PAGE,isFallback:!0,prerenderManifest:$,isRoutePPREnabled:ar,responseGenerator:async()=>m({span:i,postponed:void 0,fallbackRouteParams:k||at?(0,n.u)(ag):null}),waitUntil:d.waitUntil}),null===b)return null;if(b)return delete b.cacheControl,b}}let o=ah||g||!au?void 0:au;if(as&&void 0!==o)return{cacheControl:{revalidate:1,expire:void 0},value:{kind:v.CachedRouteKind.PAGES,html:x.default.EMPTY,pageData:{},headers:void 0,status:void 0}};let p=T&&ar&&((0,h.getRequestMeta)(a,"renderFallbackShell")||at)?(0,n.u)(af):null;return m({span:i,postponed:o,fallbackRouteParams:p})},p=async c=>{var f,g,i,j,k;let l,n=await K.handleResponse({cacheKey:aA,responseGenerator:a=>o({span:c,...a}),routeKind:e.RouteKind.APP_PAGE,isOnDemandRevalidate:ah,isRoutePPREnabled:ar,req:a,nextConfig:ad,prerenderManifest:$,waitUntil:d.waitUntil});if(_&&b.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate"),K.isDev&&b.setHeader("Cache-Control","no-store, must-revalidate"),!n){if(aA)throw Object.defineProperty(Error("invariant: cache entry required but not generated"),"__NEXT_ERROR_CODE",{value:"E62",enumerable:!1,configurable:!0});return null}if((null==(f=n.value)?void 0:f.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant app-page handler received invalid cache entry ${null==(i=n.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E707",enumerable:!1,configurable:!0});let p="string"==typeof n.value.postponed;ak&&!av&&(!p||ao)&&(N||b.setHeader("x-nextjs-cache",ah?"REVALIDATED":n.isMiss?"MISS":n.isStale?"STALE":"HIT"),b.setHeader(t.NEXT_IS_PRERENDER_HEADER,"1"));let{value:q}=n;if(au)l={revalidate:0,expire:void 0};else if(N&&ap&&!ao&&ar)l={revalidate:0,expire:void 0};else if(!K.isDev)if(_)l={revalidate:0,expire:void 0};else if(ak){if(n.cacheControl)if("number"==typeof n.cacheControl.revalidate){if(n.cacheControl.revalidate<1)throw Object.defineProperty(Error(`Invalid revalidate configuration provided: ${n.cacheControl.revalidate} < 1`),"__NEXT_ERROR_CODE",{value:"E22",enumerable:!1,configurable:!0});l={revalidate:n.cacheControl.revalidate,expire:(null==(j=n.cacheControl)?void 0:j.expire)??ad.expireTime}}else l={revalidate:y.CACHE_ONE_YEAR,expire:void 0}}else b.getHeader("Cache-Control")||(l={revalidate:0,expire:void 0});if(n.cacheControl=l,"string"==typeof aw&&(null==q?void 0:q.kind)===v.CachedRouteKind.APP_PAGE&&q.segmentData){b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"2");let c=null==(k=q.headers)?void 0:k[y.NEXT_CACHE_TAGS_HEADER];N&&ak&&c&&"string"==typeof c&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,c);let d=q.segmentData.get(aw);return void 0!==d?(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(d,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl}):(b.statusCode=204,(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.EMPTY,cacheControl:n.cacheControl}))}let r=(0,h.getRequestMeta)(a,"onCacheEntry");if(r&&await r({...n,value:{...n.value,kind:"PAGE"}},{url:(0,h.getRequestMeta)(a,"initURL")}))return null;if(p&&au)throw Object.defineProperty(Error("Invariant: postponed state should not be present on a resume request"),"__NEXT_ERROR_CODE",{value:"E396",enumerable:!1,configurable:!0});if(q.headers){let a={...q.headers};for(let[c,d]of(N&&ak||delete a[y.NEXT_CACHE_TAGS_HEADER],Object.entries(a)))if(void 0!==d)if(Array.isArray(d))for(let a of d)b.appendHeader(c,a);else"number"==typeof d&&(d=d.toString()),b.appendHeader(c,d)}let s=null==(g=q.headers)?void 0:g[y.NEXT_CACHE_TAGS_HEADER];if(N&&ak&&s&&"string"==typeof s&&b.setHeader(y.NEXT_CACHE_TAGS_HEADER,s),!q.status||ap&&ar||(b.statusCode=q.status),!N&&q.status&&F.RedirectStatusCode[q.status]&&ap&&(b.statusCode=200),p&&b.setHeader(t.NEXT_DID_POSTPONE_HEADER,"1"),ap&&!_){if(void 0===q.rscData){if(q.postponed)throw Object.defineProperty(Error("Invariant: Expected postponed to be undefined"),"__NEXT_ERROR_CODE",{value:"E372",enumerable:!1,configurable:!0});return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:q.html,cacheControl:av?{revalidate:0,expire:void 0}:n.cacheControl})}return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:x.default.fromStatic(q.rscData,t.RSC_CONTENT_TYPE_HEADER),cacheControl:n.cacheControl})}let u=q.html;if(!p||N||ap)return(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:n.cacheControl});if(as)return u.push(new ReadableStream({start(a){a.enqueue(z.ENCODED_TAGS.CLOSED.BODY_AND_HTML),a.close()}})),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}});let w=new TransformStream;return u.push(w.readable),m({span:c,postponed:q.postponed,fallbackRouteParams:null}).then(async a=>{var b,c;if(!a)throw Object.defineProperty(Error("Invariant: expected a result to be returned"),"__NEXT_ERROR_CODE",{value:"E463",enumerable:!1,configurable:!0});if((null==(b=a.value)?void 0:b.kind)!==v.CachedRouteKind.APP_PAGE)throw Object.defineProperty(Error(`Invariant: expected a page response, got ${null==(c=a.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E305",enumerable:!1,configurable:!0});await a.value.html.pipeTo(w.writable)}).catch(a=>{w.writable.abort(a).catch(a=>{console.error("couldn't abort transformer",a)})}),(0,A.sendRenderResult)({req:a,res:b,generateEtags:ad.generateEtags,poweredByHeader:ad.poweredByHeader,result:u,cacheControl:{revalidate:0,expire:void 0}})};if(!aF)return await aE.withPropagatedContext(a.headers,()=>aE.trace(i.BaseServerSpan.handleRequest,{spanName:`${aD} ${a.url}`,kind:g.SpanKind.SERVER,attributes:{"http.method":aD,"http.target":a.url}},p));await p(aF)}catch(b){throw b instanceof B.NoFallbackError||await K.onRequestError(a,b,{routerKind:"App Router",routePath:G,routeType:"render",revalidateReason:(0,f.c)({isRevalidate:ak,isOnDemandRevalidate:ah})},ac),b}}},29294:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-async-storage.external.js")},33873:a=>{"use strict";a.exports=require("path")},41025:a=>{"use strict";a.exports=require("next/dist/server/app-render/dynamic-access-async-storage.external.js")},49692:(a,b,c)=>{Promise.resolve().then(c.bind(c,60033))},60033:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>g});var d=c(59111),e=c(485),f=c(43433);function g(){let{tenantId:a,projectId:b}=(0,e.useParams)();return(0,d.jsx)(f.A,{description:"Something went wrong.",link:`/${a}/projects/${b}/artifact-components`,linkText:"Go back to artifact components"})}},61024:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>j,dynamic:()=>i});var d=c(72669),e=c(44733),f=c(17932),g=c(96737),h=c(90610);let i="force-dynamic";async function j({params:a}){let{artifactComponentId:b,tenantId:c,projectId:i}=await a,j=await (0,h._2)(c,i,b),{name:k,description:l,summaryProps:m,fullProps:n}=j;return(0,d.jsx)(f.H,{breadcrumbs:[{label:"Artifact components",href:`/${c}/projects/${i}/artifact-components`},{label:j.name}],children:(0,d.jsx)(g.D,{children:(0,d.jsx)("div",{className:"max-w-2xl mx-auto py-4",children:(0,d.jsx)(e.ArtifactComponentForm,{tenantId:c,projectId:i,id:b,initialData:{id:b,name:k,description:l??"",summaryProps:m,fullProps:n}})})})})}},63033:a=>{"use strict";a.exports=require("next/dist/server/app-render/work-unit-async-storage.external.js")},68595:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>d});let d=(0,c(60241).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/error.tsx\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agents/agents/agents-manage-ui/src/app/[tenantId]/projects/[projectId]/artifact-components/[artifactComponentId]/error.tsx","default")},86439:a=>{"use strict";a.exports=require("next/dist/shared/lib/no-fallback-error.external")},90610:(a,b,c)=>{"use strict";c.d(b,{Ty:()=>k,Vg:()=>g,_2:()=>h,b5:()=>j,y$:()=>i});var d=c(1274);c(2082);var e=c(53842),f=c(41979);async function g(a,b){(0,f.M2)(a),(0,f.nt)(b);let c=await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components`);return{...c,data:c.data.map(a=>({...a,summaryProps:a.summaryProps||{},fullProps:a.fullProps||{}}))}}async function h(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`);return{...d.data,summaryProps:d.data.summaryProps||{},fullProps:d.data.fullProps||{}}}async function i(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components`,{method:"POST",body:JSON.stringify(c)});return{...d.data,summaryProps:d.data.summaryProps||{},fullProps:d.data.fullProps||{}}}async function j(a,b,c){(0,f.M2)(a),(0,f.nt)(b);let d=await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)});return{...d.data,summaryProps:d.data.summaryProps||{},fullProps:d.data.fullProps||{}}}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`,{method:"DELETE"})}(0,c(95454).D)([g,h,i,j,k]),(0,d.A)(g,"609a0d7e0a27b0cfdf033f32c05c54dc788136fb18",null),(0,d.A)(h,"7074ac50de29b86c6569b29bb575f40098f8d3d28d",null),(0,d.A)(i,"700e1f0618be6a27301873a20b507eff4633c25be7",null),(0,d.A)(j,"70bb172e722140b24004f71dde5fb284b8889ea4e7",null),(0,d.A)(k,"701659c099186b18431f4c5f57da6c7eda6a818cbe",null)},91548:(a,b,c)=>{Promise.resolve().then(c.bind(c,68595))}};var b=require("../../../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[5743,5479,2787,6061,1720,8449,3547,9831],()=>b(b.s=28641));module.exports=c})();