@inkeep/agents-manage-ui 0.11.1 → 0.11.3
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.
- package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
- package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +179 -179
- package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +8 -8
- package/.next/standalone/agents-manage-ui/.next/build-manifest.json +5 -5
- package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2309.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2539.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3859.js +23 -19
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3981.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4702.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/544.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{6847.js → 5616.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{5634.js → 7577.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8449.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{6122.js → 8835.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/2063-3f9e00e568b9fbd9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{3023-7903e7b102b972eb.js → 2706-8d6852e4f38c2068.js} +8 -8
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{6550.bb60e05a00a6253b.js → 4169.808bb74a234140c9.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{4805.2bcf78beb7261189.js → 4805.deb96c6337ad6922.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{5418-be4d6d44125363e7.js → 6550-51aa7da8be9d90a5.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/7143-b3731044529a566f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-074e34f38369470a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/929-cc251a7a8ca04af8.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-342913575ce3d3d4.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-fef4d7d7fd7b8092.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-fef4d7d7fd7b8092.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-017ada6e50411751.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-9e6887d2897ac9ee.js → page-2d27034d4d63c5b8.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-9e6887d2897ac9ee.js → page-2d27034d4d63c5b8.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-9cc88cb8c7b1fc20.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-d8adb95f3270c27c.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-bfa2ae8536d8bb5f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-b89dcddfdd2f1c10.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-38b9ec61d904adae.js → page-58d11ac42f61ecd4.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/{page-2b3647052f03a92a.js → page-c49abd7e45c6621e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/new/{page-5fa87b9255d9faa8.js → page-0343ee5133a2c717.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-b28487f6ca95d30f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-2993859f442af094.js → page-cfad1fad7222b283.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-f69b94c3b9043ad4.js → page-76a29c75d1416a1d.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/{page-78e244f6ea091f12.js → page-e68478e4a7416619.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-b86c05b4baf32cb6.js → page-ab0436aa700f67d5.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-6eb122638434c9cf.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-924004e316c0e468.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-622e36e5b334e5c9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-7e49dc1eb2150661.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-e0349a2e97646204.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-b20dc8e12f728891.js → webpack-2e00dfb974dac679.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/css/35104f76c2884833.css +1 -0
- package/.next/standalone/agents-manage-ui/package.json +1 -1
- package/.next/standalone/packages/agents-core/package.json +1 -1
- package/package.json +4 -4
- package/src/app/api/signoz/conversations/[conversationId]/route.ts +92 -55
- package/src/components/graph/nodes/mcp-node.tsx +38 -44
- package/src/components/graph/nodes/mcp-placeholder-node.tsx +1 -1
- package/src/components/traces/conversation-detail.tsx +90 -75
- package/src/components/traces/conversation-stats/conversation-list-item.tsx +3 -3
- package/src/components/traces/signoz-link.tsx +2 -2
- package/src/components/traces/timeline/render-panel-content.tsx +116 -8
- package/src/components/traces/timeline/timeline-item.tsx +36 -2
- package/src/components/traces/timeline/timeline-wrapper.tsx +2 -0
- package/src/components/traces/timeline/types.ts +11 -10
- package/src/constants/signoz.ts +6 -0
- package/src/lib/utils/signoz-links.ts +53 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1405.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1680.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4735.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7955.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/2063-af61e7c864e76f4f.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/3520-2e1a81f03d10dde7.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/7143-de3bf969c411ad87.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-4c04ea99416d3fbe.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-8a95ebae051f85b0.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-1e72d29f341799b2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-1e72d29f341799b2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-8ee82cf7734a0b47.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-f8fbf99a80d7c7fe.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-d8a14a1a1e1a7c53.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-01f46406fce1b2b9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-dc38270e07ab46c3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-e1932a1ee52dcfa3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-77edde19179afc5b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-280212bccc58a9fd.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-89af26371322f8c0.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-a863c0cf820ba84c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-5c6135deb59fcb7b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/css/65192dc2a70f093d.css +0 -1
- package/src/components/traces/conversation-errors.tsx +0 -320
- /package/.next/standalone/agents-manage-ui/.next/static/{A1Gwp87RoCoeHYIQU5Y4L → KoBJ9LsM4YjnplSYXwd-F}/_buildManifest.js +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{A1Gwp87RoCoeHYIQU5Y4L → KoBJ9LsM4YjnplSYXwd-F}/_ssgManifest.js +0 -0
|
@@ -95,6 +95,66 @@ export function renderPanelContent({
|
|
|
95
95
|
</Bubble>
|
|
96
96
|
</LabeledBlock>
|
|
97
97
|
)}
|
|
98
|
+
{a.aiPromptMessages && (
|
|
99
|
+
<LabeledBlock label="Prompt messages">
|
|
100
|
+
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
101
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
102
|
+
try {
|
|
103
|
+
return JSON.stringify(JSON.parse(a.aiPromptMessages), null, 2);
|
|
104
|
+
} catch {
|
|
105
|
+
return a.aiPromptMessages;
|
|
106
|
+
}
|
|
107
|
+
})()}\n\`\`\``}</Streamdown>
|
|
108
|
+
</CodeBubble>
|
|
109
|
+
</LabeledBlock>
|
|
110
|
+
)}
|
|
111
|
+
{a.aiResponseToolCalls && (
|
|
112
|
+
<LabeledBlock label="Tool calls">
|
|
113
|
+
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
114
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
115
|
+
try {
|
|
116
|
+
return JSON.stringify(JSON.parse(a.aiResponseToolCalls), null, 2);
|
|
117
|
+
} catch {
|
|
118
|
+
return a.aiResponseToolCalls;
|
|
119
|
+
}
|
|
120
|
+
})()}\n\`\`\``}</Streamdown>
|
|
121
|
+
</CodeBubble>
|
|
122
|
+
</LabeledBlock>
|
|
123
|
+
)}
|
|
124
|
+
{/* Show error message if there's an error */}
|
|
125
|
+
{a.hasError && a.otelStatusDescription && (
|
|
126
|
+
<LabeledBlock label="Error">
|
|
127
|
+
<Bubble className="bg-red-50 border-red-200 text-red-800 dark:bg-red-900/20 dark:border-red-800 dark:text-red-300">
|
|
128
|
+
{a.otelStatusDescription}
|
|
129
|
+
</Bubble>
|
|
130
|
+
</LabeledBlock>
|
|
131
|
+
)}
|
|
132
|
+
{a.hasError && a.otelStatusCode && (
|
|
133
|
+
<Info label="Status code" value={a.otelStatusCode} />
|
|
134
|
+
)}
|
|
135
|
+
<StatusBadge status={a.status} />
|
|
136
|
+
<Info label="Timestamp" value={formatDateTime(a.timestamp)} />
|
|
137
|
+
</Section>
|
|
138
|
+
<Divider />
|
|
139
|
+
{SignozButton}
|
|
140
|
+
{AdvancedBlock}
|
|
141
|
+
</>
|
|
142
|
+
);
|
|
143
|
+
|
|
144
|
+
case 'agent_generation':
|
|
145
|
+
return (
|
|
146
|
+
<>
|
|
147
|
+
<Section>
|
|
148
|
+
{a.hasError && a.otelStatusDescription && (
|
|
149
|
+
<LabeledBlock label="Error">
|
|
150
|
+
<Bubble className="bg-red-50 border-red-200 text-red-800 dark:bg-red-900/20 dark:border-red-800 dark:text-red-300">
|
|
151
|
+
{a.otelStatusDescription}
|
|
152
|
+
</Bubble>
|
|
153
|
+
</LabeledBlock>
|
|
154
|
+
)}
|
|
155
|
+
{a.hasError && a.otelStatusCode && (
|
|
156
|
+
<Info label="Status code" value={a.otelStatusCode} />
|
|
157
|
+
)}
|
|
98
158
|
<StatusBadge status={a.status} />
|
|
99
159
|
<Info label="Timestamp" value={formatDateTime(a.timestamp)} />
|
|
100
160
|
</Section>
|
|
@@ -231,14 +291,26 @@ export function renderPanelContent({
|
|
|
231
291
|
{a.toolCallArgs && (
|
|
232
292
|
<LabeledBlock label="Tool arguments">
|
|
233
293
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
234
|
-
<Streamdown>{`\`\`\`json\n${
|
|
294
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
295
|
+
try {
|
|
296
|
+
return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
|
|
297
|
+
} catch {
|
|
298
|
+
return a.toolCallArgs;
|
|
299
|
+
}
|
|
300
|
+
})()}\n\`\`\``}</Streamdown>
|
|
235
301
|
</CodeBubble>
|
|
236
302
|
</LabeledBlock>
|
|
237
303
|
)}
|
|
238
304
|
{a.toolCallResult && (
|
|
239
305
|
<LabeledBlock label="Tool result">
|
|
240
306
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
241
|
-
<Streamdown>{`\`\`\`json\n${
|
|
307
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
308
|
+
try {
|
|
309
|
+
return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
|
|
310
|
+
} catch {
|
|
311
|
+
return a.toolCallResult;
|
|
312
|
+
}
|
|
313
|
+
})()}\n\`\`\``}</Streamdown>
|
|
242
314
|
</CodeBubble>
|
|
243
315
|
</LabeledBlock>
|
|
244
316
|
)}
|
|
@@ -276,14 +348,26 @@ export function renderPanelContent({
|
|
|
276
348
|
{a.toolCallArgs && (
|
|
277
349
|
<LabeledBlock label="Tool arguments">
|
|
278
350
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
279
|
-
<Streamdown>{`\`\`\`json\n${
|
|
351
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
352
|
+
try {
|
|
353
|
+
return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
|
|
354
|
+
} catch {
|
|
355
|
+
return a.toolCallArgs;
|
|
356
|
+
}
|
|
357
|
+
})()}\n\`\`\``}</Streamdown>
|
|
280
358
|
</CodeBubble>
|
|
281
359
|
</LabeledBlock>
|
|
282
360
|
)}
|
|
283
361
|
{a.toolCallResult && (
|
|
284
362
|
<LabeledBlock label="Tool result">
|
|
285
363
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
286
|
-
<Streamdown>{`\`\`\`json\n${
|
|
364
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
365
|
+
try {
|
|
366
|
+
return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
|
|
367
|
+
} catch {
|
|
368
|
+
return a.toolCallResult;
|
|
369
|
+
}
|
|
370
|
+
})()}\n\`\`\``}</Streamdown>
|
|
287
371
|
</CodeBubble>
|
|
288
372
|
</LabeledBlock>
|
|
289
373
|
)}
|
|
@@ -322,14 +406,26 @@ export function renderPanelContent({
|
|
|
322
406
|
{a.toolCallArgs && (
|
|
323
407
|
<LabeledBlock label="Tool arguments">
|
|
324
408
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
325
|
-
<Streamdown>{`\`\`\`json\n${
|
|
409
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
410
|
+
try {
|
|
411
|
+
return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
|
|
412
|
+
} catch {
|
|
413
|
+
return a.toolCallArgs;
|
|
414
|
+
}
|
|
415
|
+
})()}\n\`\`\``}</Streamdown>
|
|
326
416
|
</CodeBubble>
|
|
327
417
|
</LabeledBlock>
|
|
328
418
|
)}
|
|
329
419
|
{a.toolCallResult && (
|
|
330
420
|
<LabeledBlock label="Tool result">
|
|
331
421
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
332
|
-
<Streamdown>{`\`\`\`json\n${
|
|
422
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
423
|
+
try {
|
|
424
|
+
return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
|
|
425
|
+
} catch {
|
|
426
|
+
return a.toolCallResult;
|
|
427
|
+
}
|
|
428
|
+
})()}\n\`\`\``}</Streamdown>
|
|
333
429
|
</CodeBubble>
|
|
334
430
|
</LabeledBlock>
|
|
335
431
|
)}
|
|
@@ -364,14 +460,26 @@ export function renderPanelContent({
|
|
|
364
460
|
{a.toolCallArgs && (
|
|
365
461
|
<LabeledBlock label="Tool arguments">
|
|
366
462
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
367
|
-
<Streamdown>{`\`\`\`json\n${
|
|
463
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
464
|
+
try {
|
|
465
|
+
return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
|
|
466
|
+
} catch {
|
|
467
|
+
return a.toolCallArgs;
|
|
468
|
+
}
|
|
469
|
+
})()}\n\`\`\``}</Streamdown>
|
|
368
470
|
</CodeBubble>
|
|
369
471
|
</LabeledBlock>
|
|
370
472
|
)}
|
|
371
473
|
{a.toolCallResult && (
|
|
372
474
|
<LabeledBlock label="Tool result">
|
|
373
475
|
<CodeBubble className="max-h-60 overflow-y-auto">
|
|
374
|
-
<Streamdown>{`\`\`\`json\n${
|
|
476
|
+
<Streamdown>{`\`\`\`json\n${(() => {
|
|
477
|
+
try {
|
|
478
|
+
return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
|
|
479
|
+
} catch {
|
|
480
|
+
return a.toolCallResult;
|
|
481
|
+
}
|
|
482
|
+
})()}\n\`\`\``}</Streamdown>
|
|
375
483
|
</CodeBubble>
|
|
376
484
|
</LabeledBlock>
|
|
377
485
|
)}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
|
+
AlertCircle,
|
|
2
3
|
ArrowRight,
|
|
3
4
|
ArrowUpRight,
|
|
4
5
|
CheckCircle,
|
|
5
6
|
ChevronDown,
|
|
6
7
|
ChevronRight,
|
|
8
|
+
Cpu,
|
|
7
9
|
Database,
|
|
8
10
|
Hammer,
|
|
9
11
|
Settings,
|
|
@@ -45,6 +47,7 @@ function statusIcon(
|
|
|
45
47
|
const base: Record<string, { Icon: any; cls: string }> = {
|
|
46
48
|
user_message: { Icon: User, cls: 'text-primary' },
|
|
47
49
|
ai_generation: { Icon: Sparkles, cls: 'text-primary' },
|
|
50
|
+
agent_generation: { Icon: Cpu, cls: 'text-purple-500' },
|
|
48
51
|
ai_assistant_message: { Icon: Sparkles, cls: 'text-primary' },
|
|
49
52
|
ai_model_streamed_text: { Icon: Sparkles, cls: 'text-primary' },
|
|
50
53
|
context_fetch: { Icon: Settings, cls: 'text-indigo-400' },
|
|
@@ -101,6 +104,12 @@ export function TimelineItem({
|
|
|
101
104
|
const formattedDateTime = formatDateTime(activity.timestamp);
|
|
102
105
|
const isoDateTime = new Date(activity.timestamp).toISOString();
|
|
103
106
|
|
|
107
|
+
// Determine text color based on status
|
|
108
|
+
const textColorClass =
|
|
109
|
+
activity.status === 'error'
|
|
110
|
+
? 'text-red-500 hover:text-red-700'
|
|
111
|
+
: 'text-foreground hover:text-primary';
|
|
112
|
+
|
|
104
113
|
return (
|
|
105
114
|
<div className={`flex flex-col text-muted-foreground relative text-xs`}>
|
|
106
115
|
<div className="flex items-start">
|
|
@@ -117,14 +126,14 @@ export function TimelineItem({
|
|
|
117
126
|
<button
|
|
118
127
|
type="button"
|
|
119
128
|
onClick={onSelect}
|
|
120
|
-
className=
|
|
129
|
+
className={`flex items-center gap-1 group cursor-pointer transition-colors duration-200 ${textColorClass}`}
|
|
121
130
|
title="Click to view details"
|
|
122
131
|
>
|
|
123
132
|
<span className="font-medium">
|
|
124
133
|
<Streamdown>{activity.description}</Streamdown>
|
|
125
134
|
</span>
|
|
126
135
|
<ArrowUpRight
|
|
127
|
-
className=
|
|
136
|
+
className={`h-4 w-4 transition-colors ${activity.status === 'error' ? 'text-red-700 group-hover:text-red-800' : 'text-muted-foreground group-hover:text-primary'}`}
|
|
128
137
|
aria-hidden="true"
|
|
129
138
|
/>
|
|
130
139
|
</button>
|
|
@@ -382,6 +391,31 @@ export function TimelineItem({
|
|
|
382
391
|
</div>
|
|
383
392
|
)}
|
|
384
393
|
|
|
394
|
+
{/* OTEL status for failed agent.generate spans */}
|
|
395
|
+
{activity.type === ACTIVITY_TYPES.AI_GENERATION &&
|
|
396
|
+
activity.name === 'agent.generate' &&
|
|
397
|
+
activity.hasError &&
|
|
398
|
+
(activity.otelStatusCode || activity.otelStatusDescription) && (
|
|
399
|
+
<div className="mt-2">
|
|
400
|
+
<div className="flex items-start gap-2">
|
|
401
|
+
<AlertCircle className="h-4 w-4 text-red-600 mt-0.5 flex-shrink-0" />
|
|
402
|
+
<div className="space-y-1.5 flex-1">
|
|
403
|
+
{activity.otelStatusCode && (
|
|
404
|
+
<div className="text-xs text-muted-foreground">
|
|
405
|
+
<span className="font-medium">Status Code:</span>{' '}
|
|
406
|
+
<span className="font-mono">{activity.otelStatusCode}</span>
|
|
407
|
+
</div>
|
|
408
|
+
)}
|
|
409
|
+
{activity.otelStatusDescription && (
|
|
410
|
+
<CodeBubble className="bg-red-50 border-red-200 text-red-800 dark:bg-red-900/20 dark:border-red-800 dark:text-red-300">
|
|
411
|
+
{activity.otelStatusDescription}
|
|
412
|
+
</CodeBubble>
|
|
413
|
+
)}
|
|
414
|
+
</div>
|
|
415
|
+
</div>
|
|
416
|
+
</div>
|
|
417
|
+
)}
|
|
418
|
+
|
|
385
419
|
<time
|
|
386
420
|
className="text-xs mb-2 inline-block text-gray-500 dark:text-white/50"
|
|
387
421
|
dateTime={isoDateTime}
|
|
@@ -23,6 +23,8 @@ function panelTitle(selected: SelectedPanel) {
|
|
|
23
23
|
switch (selected.type) {
|
|
24
24
|
case 'ai_generation':
|
|
25
25
|
return 'AI generation details';
|
|
26
|
+
case 'agent_generation':
|
|
27
|
+
return 'Agent generation details';
|
|
26
28
|
case 'user_message':
|
|
27
29
|
return 'User message details';
|
|
28
30
|
case 'ai_assistant_message':
|
|
@@ -15,6 +15,7 @@ export type SelectedPanel =
|
|
|
15
15
|
export const ACTIVITY_TYPES = {
|
|
16
16
|
TOOL_CALL: 'tool_call',
|
|
17
17
|
AI_GENERATION: 'ai_generation',
|
|
18
|
+
AGENT_GENERATION: 'agent_generation',
|
|
18
19
|
CONTEXT_FETCH: 'context_fetch',
|
|
19
20
|
CONTEXT_RESOLUTION: 'context_resolution',
|
|
20
21
|
USER_MESSAGE: 'user_message',
|
|
@@ -27,6 +28,7 @@ export type ActivityKind = (typeof ACTIVITY_TYPES)[keyof typeof ACTIVITY_TYPES];
|
|
|
27
28
|
export interface ActivityItem {
|
|
28
29
|
id: string;
|
|
29
30
|
type: ActivityKind;
|
|
31
|
+
name?: string;
|
|
30
32
|
description: string;
|
|
31
33
|
timestamp: string;
|
|
32
34
|
agentId?: string;
|
|
@@ -76,6 +78,12 @@ export interface ActivityItem {
|
|
|
76
78
|
toolCallArgs?: string;
|
|
77
79
|
toolCallResult?: string;
|
|
78
80
|
aiResponseText?: string;
|
|
81
|
+
aiResponseToolCalls?: string;
|
|
82
|
+
aiPromptMessages?: string;
|
|
83
|
+
traceId?: string;
|
|
84
|
+
// OTEL status fields
|
|
85
|
+
otelStatusCode?: string;
|
|
86
|
+
otelStatusDescription?: string;
|
|
79
87
|
}
|
|
80
88
|
|
|
81
89
|
export interface ToolCall {
|
|
@@ -124,6 +132,9 @@ export interface ConversationDetail {
|
|
|
124
132
|
traceId?: string;
|
|
125
133
|
graphId?: string;
|
|
126
134
|
graphName?: string;
|
|
135
|
+
spansWithErrorsCount?: number;
|
|
136
|
+
errorCount?: number;
|
|
137
|
+
warningCount?: number;
|
|
127
138
|
allSpanAttributes?: Array<{
|
|
128
139
|
spanId: string;
|
|
129
140
|
traceId: string;
|
|
@@ -138,16 +149,6 @@ export interface ConversationDetail {
|
|
|
138
149
|
failureReason: string;
|
|
139
150
|
timestamp: string;
|
|
140
151
|
}>;
|
|
141
|
-
contextErrors?: Array<{
|
|
142
|
-
spanId: string;
|
|
143
|
-
timestamp: string;
|
|
144
|
-
statusDescription: string;
|
|
145
|
-
}>;
|
|
146
|
-
agentGenerationErrors?: Array<{
|
|
147
|
-
spanId: string;
|
|
148
|
-
timestamp: string;
|
|
149
|
-
statusDescription: string;
|
|
150
|
-
}>;
|
|
151
152
|
}
|
|
152
153
|
|
|
153
154
|
export const TOOL_TYPES = {
|
package/src/constants/signoz.ts
CHANGED
|
@@ -20,6 +20,7 @@ export const SPAN_KEYS = {
|
|
|
20
20
|
TIMESTAMP: 'timestamp',
|
|
21
21
|
HAS_ERROR: 'hasError',
|
|
22
22
|
STATUS_MESSAGE: 'status_message',
|
|
23
|
+
OTEL_STATUS_CODE: 'otel.status_code',
|
|
23
24
|
OTEL_STATUS_DESCRIPTION: 'otel.status_description',
|
|
24
25
|
|
|
25
26
|
// Graph attributes
|
|
@@ -36,6 +37,8 @@ export const SPAN_KEYS = {
|
|
|
36
37
|
AI_RESPONSE_CONTENT: 'ai.response.content',
|
|
37
38
|
AI_RESPONSE_TEXT: 'ai.response.text',
|
|
38
39
|
AI_RESPONSE_MODEL: 'ai.response.model',
|
|
40
|
+
AI_RESPONSE_TOOL_CALLS: 'ai.response.toolCalls',
|
|
41
|
+
AI_PROMPT_MESSAGES: 'ai.prompt.messages',
|
|
39
42
|
AI_MODEL_PROVIDER: 'ai.model.provider',
|
|
40
43
|
AI_TELEMETRY_FUNCTION_ID: 'ai.telemetry.functionId',
|
|
41
44
|
AI_MODEL_ID: 'ai.model.id',
|
|
@@ -153,6 +156,7 @@ export const UNKNOWN_VALUE = 'unknown' as const;
|
|
|
153
156
|
export const ACTIVITY_TYPES = {
|
|
154
157
|
TOOL_CALL: 'tool_call',
|
|
155
158
|
AI_GENERATION: 'ai_generation',
|
|
159
|
+
AGENT_GENERATION: 'agent_generation',
|
|
156
160
|
CONTEXT_FETCH: 'context_fetch',
|
|
157
161
|
CONTEXT_RESOLUTION: 'context_resolution',
|
|
158
162
|
USER_MESSAGE: 'user_message',
|
|
@@ -245,6 +249,8 @@ export const QUERY_EXPRESSIONS = {
|
|
|
245
249
|
AI_STREAMING_TEXT: 'aiStreamingText',
|
|
246
250
|
CONTEXT_FETCHERS: 'contextFetchers',
|
|
247
251
|
DURATION_SPANS: 'durationSpans',
|
|
252
|
+
AGENT_GENERATIONS: 'agentGenerations',
|
|
253
|
+
SPANS_WITH_ERRORS: 'spansWithErrors',
|
|
248
254
|
} as const;
|
|
249
255
|
|
|
250
256
|
/** Query Reduce Operations */
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generate a SigNoz Traces Explorer URL scoped to a conversation that has errors.
|
|
3
|
+
* Keeps columns/pagination; strips non-essential builder fields.
|
|
4
|
+
*/
|
|
5
|
+
export function getSignozTracesExplorerUrl(conversationId: string): string {
|
|
6
|
+
const compositeQuery = {
|
|
7
|
+
queryType: 'builder',
|
|
8
|
+
builder: {
|
|
9
|
+
queryData: [
|
|
10
|
+
{
|
|
11
|
+
dataSource: 'traces',
|
|
12
|
+
queryName: 'A',
|
|
13
|
+
// count over matching traces/spans
|
|
14
|
+
aggregateOperator: 'count',
|
|
15
|
+
timeAggregation: 'rate',
|
|
16
|
+
spaceAggregation: 'sum',
|
|
17
|
+
filters: {
|
|
18
|
+
op: 'AND',
|
|
19
|
+
items: [
|
|
20
|
+
{
|
|
21
|
+
op: 'not in',
|
|
22
|
+
key: { id: 'hasError', key: 'hasError', dataType: 'bool', type: 'tag' },
|
|
23
|
+
value: false,
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
op: 'in',
|
|
27
|
+
key: {
|
|
28
|
+
id: 'conversation.id',
|
|
29
|
+
key: 'conversation.id',
|
|
30
|
+
dataType: 'string',
|
|
31
|
+
type: 'tag',
|
|
32
|
+
},
|
|
33
|
+
value: conversationId,
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
expression: 'A',
|
|
38
|
+
},
|
|
39
|
+
],
|
|
40
|
+
queryFormulas: [],
|
|
41
|
+
queryTraceOperator: [],
|
|
42
|
+
},
|
|
43
|
+
promql: [{ name: 'A', query: '', legend: '', disabled: false }],
|
|
44
|
+
clickhouse_sql: [{ name: 'A', query: '', legend: '', disabled: false }],
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const encodedCompositeQuery = encodeURIComponent(
|
|
48
|
+
encodeURIComponent(JSON.stringify(compositeQuery))
|
|
49
|
+
);
|
|
50
|
+
const signozUrl = process.env.SIGNOZ_URL || 'http://localhost:3080';
|
|
51
|
+
|
|
52
|
+
return `${signozUrl}/traces-explorer?compositeQuery=${encodedCompositeQuery}&relativeTime=1month`;
|
|
53
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=1405,exports.ids=[1405],exports.modules={13177:(a,b,c)=>{c.r(b),c.d(b,{"40d750db8eb44ef029c2c3aad00cba5a29ecfaaaac":()=>d.vj,"601cf05c1486d99c3f946999a30e8dfa41c8756384":()=>d.Sw,"60b405d7681ae04f6acd77f26601e30ecd99d12e25":()=>d.xx,"60f9dd19a0896d61b28d76fe8485cdeb0b99d585f1":()=>d.gA,"707386544582b198bb8fd826edd5b63243eacb8d7f":()=>d.vr});var d=c(54637)},35406:(a,b,c)=>{c.d(b,{A3:()=>i,Nv:()=>q,PC:()=>j,SH:()=>f,SL:()=>o,U_:()=>n,XQ:()=>m,YL:()=>r,aR:()=>d,cZ:()=>k,qf:()=>s,we:()=>l,yR:()=>e,yZ:()=>t,zD:()=>p});let d={AI_TOOL_CALL:"ai.toolCall",CONTEXT_RESOLUTION:"context-resolver.resolve_single_fetch_definition",CONTEXT_HANDLE:"context.handle_context_resolution",AGENT_GENERATION:"agent.generate",CONTEXT_FETCHER:"context-fetcher.http-request"},e={GENERATE_TEXT:"ai.generateText.doGenerate",STREAM_TEXT:"ai.streamText.doStream"},f={SPAN_ID:"spanID",TRACE_ID:"traceID",DURATION_NANO:"durationNano",TIMESTAMP:"timestamp",HAS_ERROR:"hasError",STATUS_MESSAGE:"status_message",OTEL_STATUS_DESCRIPTION:"otel.status_description",GRAPH_ID:"graph.id",GRAPH_NAME:"graph.name",TENANT_ID:"tenant.id",PROJECT_ID:"project.id",AI_AGENT_NAME:"ai.agentName",AI_AGENT_NAME_ALT:"ai.agent.name",AI_OPERATION_ID:"ai.operationId",AI_RESPONSE_TIMESTAMP:"ai.response.timestamp",AI_RESPONSE_CONTENT:"ai.response.content",AI_RESPONSE_TEXT:"ai.response.text",AI_RESPONSE_MODEL:"ai.response.model",AI_MODEL_PROVIDER:"ai.model.provider",AI_TELEMETRY_FUNCTION_ID:"ai.telemetry.functionId",AI_MODEL_ID:"ai.model.id",AI_TOOL_CALL_NAME:"ai.toolCall.name",AI_TOOL_CALL_RESULT:"ai.toolCall.result",AI_TOOL_CALL_ARGS:"ai.toolCall.args",AI_TOOL_CALL_ID:"ai.toolCall.id",AI_TOOL_TYPE:"ai.toolType",TOOL_PURPOSE:"tool.purpose",AGENT_ID:"agent.id",AGENT_NAME:"agent.name",GEN_AI_USAGE_INPUT_TOKENS:"gen_ai.usage.input_tokens",GEN_AI_USAGE_OUTPUT_TOKENS:"gen_ai.usage.output_tokens",CONTEXT_URL:"context.url",CONTEXT_CONFIG_ID:"context.context_config_id",CONTEXT_AGENT_GRAPH_ID:"context.agent_graph_id",CONTEXT_REQUEST_KEYS:"context.request_context_keys",MESSAGE_CONTENT:"message.content",MESSAGE_TIMESTAMP:"message.timestamp",MCP_TOOL_DESCRIPTION:"mcp.tool.description",DELEGATION_FROM_AGENT_ID:"delegation.from_agent_id",DELEGATION_TO_AGENT_ID:"delegation.to_agent_id",TRANSFER_FROM_AGENT_ID:"transfer.from_agent_id",TRANSFER_TO_AGENT_ID:"transfer.to_agent_id",HTTP_URL:"http.url",HTTP_STATUS_CODE:"http.status_code",HTTP_RESPONSE_BODY_SIZE:"http.response.body_size",NAME:"name",PARENT_SPAN_ID:"parentSpanID",CONVERSATION_ID:"conversation.id"},g={STRING:"string",INT64:"int64",FLOAT64:"float64",BOOL:"bool"},h={TAG:"tag"},i={STRING_TAG:{dataType:g.STRING,type:h.TAG,isColumn:!1},STRING_TAG_COLUMN:{dataType:g.STRING,type:h.TAG,isColumn:!0},INT64_TAG:{dataType:g.INT64,type:h.TAG,isColumn:!1},INT64_TAG_COLUMN:{dataType:g.INT64,type:h.TAG,isColumn:!0},FLOAT64_TAG:{dataType:g.FLOAT64,type:h.TAG,isColumn:!1},FLOAT64_TAG_COLUMN:{dataType:g.FLOAT64,type:h.TAG,isColumn:!0},BOOL_TAG:{dataType:g.BOOL,type:h.TAG,isColumn:!1},BOOL_TAG_COLUMN:{dataType:g.BOOL,type:h.TAG,isColumn:!0}},j="unknown",k={MCP:"mcp",TRANSFER:"transfer",DELEGATION:"delegation"},l={EQUALS:"=",NOT_EQUALS:"!=",LESS_THAN:"<",GREATER_THAN:">",LESS_THAN_OR_EQUAL:"<=",GREATER_THAN_OR_EQUAL:">=",LIKE:"like",NOT_LIKE:"nlike",EXISTS:"exists",NOT_EXISTS:"nexists",AND:"AND",OR:"OR"},m={SPAN_NAMES:"spanNames",AGENT_MODEL_CALLS:"agentModelCalls",MODEL_CALLS:"modelCalls",LAST_ACTIVITY:"lastActivity",CONVERSATION_METADATA:"conversationMetadata",FILTERED_CONVERSATIONS:"filteredConversations",TOOLS:"tools",TRANSFERS:"transfers",DELEGATIONS:"delegations",AI_CALLS:"aiCalls",CONTEXT_ERRORS:"contextErrors",AGENT_GENERATION_ERRORS:"agentGenerationErrors",USER_MESSAGES:"userMessages",UNIQUE_GRAPHS:"uniqueGraphs",UNIQUE_MODELS:"uniqueModels",TOOL_CALLS:"toolCalls",CONTEXT_RESOLUTION:"contextResolution",CONTEXT_HANDLE:"contextHandle",AI_ASSISTANT_MESSAGES:"aiAssistantMessages",AI_GENERATIONS:"aiGenerations",AI_STREAMING_TEXT:"aiStreamingText",CONTEXT_FETCHERS:"contextFetchers",DURATION_SPANS:"durationSpans"},n={SUM:"sum",MAX:"max",MIN:"min",AVG:"avg",COUNT:"count"},o={ASC:"asc",DESC:"desc"},p={BUILDER:"builder",CLICKHOUSE:"clickhouse",PROMQL:"promql"},q={LIST:"list",TABLE:"table",GRAPH:"graph",VALUE:"value"},r={TRACES:"traces",METRICS:"metrics",LOGS:"logs"},s={COUNT:"count",SUM:"sum",AVG:"avg",MIN:"min",MAX:"max",NOOP:"noop"},t={STEP:60,STEP_INTERVAL:60,OFFSET:0,DISABLED:!1,HAVING:[],LEGEND:"",LIMIT_NULL:null,LIMIT_ZERO:0,LIMIT_1000:1e3,EMPTY_GROUP_BY:[]}},40367:(a,b,c)=>{c.d(b,{H:()=>p});var d=c(36532),e=c(68764),f=c(45809),g=c(35406);let h=a=>Math.floor(a/1e6),i=f.union([f.string(),f.number(),f.boolean()]),j=a=>{try{if("true"===a)return i.parse(!0);if("false"===a)return i.parse(!1);let b=(a=>/^-?\d+(\.\d+)?$/.test(a)?Number(a):a)(a);if("number"==typeof b)return i.parse(b);return i.parse(a)}catch(b){return console.warn(`Failed to parse filter value "${a}":`,b),i.parse(a)}},k=a=>parseInt(a.values?.[0]?.value??"0",10)||0,l=a=>Number(a.values?.[0]?.value??0)||0,m=(a,b)=>{let c=new Date(a);c.setHours(0,0,0,0);let d=new Date(b);d.setHours(0,0,0,0);let e=[];for(let a=new Date(c);a<=d;a.setDate(a.getDate()+1))e.push(`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`);return e};(0,e.Ay)(d.A,{retries:3,retryDelay:e.Ay.exponentialDelay});class n{async makeRequest(a){return(await d.A.post("/api/signoz",a,{timeout:3e4,headers:{"Content-Type":"application/json"}})).data}extractSeries(a,b){return a?.data?.result?.find(a=>a?.queryName===b)?.series??[]}async getConversationStats(a,b,c,d,e,f,i){try{let j=this.buildCombinedPayload(a,b,c,d,i),k=await this.makeRequest(j),m=this.extractSeries(k,g.XQ.TOOLS),n=this.extractSeries(k,g.XQ.TRANSFERS),o=this.extractSeries(k,g.XQ.DELEGATIONS),p=this.extractSeries(k,g.XQ.AI_CALLS),q=this.extractSeries(k,g.XQ.LAST_ACTIVITY),r=this.extractSeries(k,g.XQ.CONVERSATION_METADATA),s=this.extractSeries(k,g.XQ.CONTEXT_ERRORS),t=this.extractSeries(k,g.XQ.AGENT_GENERATION_ERRORS),u=this.extractSeries(k,g.XQ.USER_MESSAGES),v=new Map;for(let a of r){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&v.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,graphId:a.labels?.[g.SH.GRAPH_ID]??g.PC,graphName:a.labels?.[g.SH.GRAPH_NAME]??g.PC})}let w=new Map;for(let a of q){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&w.set(b,l(a))}let x=new Map,y=new Map;for(let a of u){let b=a.labels?.[g.SH.CONVERSATION_ID],c=a.labels?.[g.SH.MESSAGE_CONTENT],d=l(a);b&&c&&(y.get(b)??y.set(b,[]).get(b))?.push({t:d,c:c})}for(let[a,b]of y){b.sort((a,b)=>a.t-b.t);let c=b[0];if(c){let b=c.c.length>100?`${c.c.slice(0,100)}...`:c.c;x.set(a,{content:b,timestamp:h(c.t)})}}let z=this.toConversationStats(m,n,o,p,v,s,t,x);if((c?.spanName||c?.attributes?.length)&&(z=await this.applySpanFilters(z,a,b,c,d)),f?.trim()){let a=f.toLowerCase().trim();z=z.filter(b=>b.firstUserMessage?.toLowerCase().includes(a)||b.conversationId.toLowerCase().includes(a)||b.graphId.toLowerCase().includes(a))}if(z.sort((a,b)=>((a=0,b=0)=>b-a)(w.get(a.conversationId),w.get(b.conversationId))),!e)return z;let{page:A,limit:B}=e,C=z.length,D=Math.ceil(C/B),E=(A-1)*B;return{data:z.slice(E,E+B),pagination:{page:A,limit:B,total:C,totalPages:D,hasNextPage:A<D,hasPreviousPage:A>1}}}catch(a){return console.error("getConversationStats error:",a),[]}}async getAICallsByGraph(a,b,c){try{let d=await this.makeRequest(this.buildCombinedPayload(a,b,void 0,c)),e=this.extractSeries(d,g.XQ.AI_CALLS),f=new Map;for(let a of e){let b=a.labels?.[g.SH.GRAPH_ID]||g.PC,c=k(a);c&&f.set(b,(f.get(b)||0)+c)}return[...f].map(([a,b])=>({graphId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByGraph error:",a),[]}}async getAICallsByAgent(a,b,c,d,e){try{let f=await this.makeRequest(this.buildAgentModelBreakdownPayload(a,b,e)),h=this.extractSeries(f,"agentModelCalls"),i=new Map;for(let a of h){let b=a.labels?.[g.SH.AI_TELEMETRY_FUNCTION_ID]||g.PC,e=a.labels?.[g.SH.GRAPH_ID]||g.PC,f=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,h=k(a);if(!h||c&&"all"!==c&&e!==c||d&&"all"!==d&&f!==d)continue;let j=`${b}::${e}::${f}`,l=i.get(j)||{agentId:b,graphId:e,modelId:f,totalCalls:0};l.totalCalls+=h,i.set(j,l)}return[...i.values()].sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByAgent error:",a),[]}}async getAICallsByModel(a,b,c,d){try{let e=await this.makeRequest(this.buildModelBreakdownPayload(a,b,d)),f=this.extractSeries(e,"modelCalls"),h=new Map;for(let a of f){let b=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,d=a.labels?.[g.SH.GRAPH_ID]||g.PC,e=k(a);e&&(c&&"all"!==c&&d!==c||h.set(b,(h.get(b)||0)+e))}return[...h].map(([a,b])=>({modelId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByModel error:",a),[]}}async getUniqueGraphs(a,b,c){try{let d=await this.makeRequest(this.buildUniqueGraphsPayload(a,b,c)),e=this.extractSeries(d,"uniqueGraphs").map(a=>a.labels?.[g.SH.GRAPH_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueGraphs error:",a),[]}}async getUniqueModels(a,b,c){try{let d=await this.makeRequest(this.buildUniqueModelsPayload(a,b,c)),e=this.extractSeries(d,"uniqueModels").map(a=>a.labels?.[g.SH.AI_MODEL_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueModels error:",a),[]}}async getConversationsPerDay(a,b,c,d){try{let e=await this.makeRequest(this.buildConversationMetadataPayload(a,b,c,d)),f=this.extractSeries(e,"conversationMetadata").length?this.extractSeries(await this.makeRequest(this.buildConversationActivityPayload(a,b,c,d)),"lastActivity"):[],g=new Map;for(let a of f){let b=h(l(a));if(!b)continue;let c=new Date(b),d=`${c.getFullYear()}-${String(c.getMonth()+1).padStart(2,"0")}-${String(c.getDate()).padStart(2,"0")}`;g.set(d,(g.get(d)||0)+1)}return m(a,b).map(a=>({date:a,count:g.get(a)||0}))}catch(c){return console.error("getConversationsPerDay error:",c),m(a,b).map(a=>({date:a,count:0}))}}async getAggregateStats(a,b,c,d,e){try{let f=await this.makeRequest(this.buildCombinedPayload(a,b,c,d,e)),h=this.extractSeries(f,"tools"),i=this.extractSeries(f,"transfers"),j=this.extractSeries(f,"delegations"),k=this.extractSeries(f,"aiCalls"),l=this.extractSeries(f,"conversationMetadata"),m=this.extractSeries(f,"contextErrors"),n=this.extractSeries(f,"agentGenerationErrors"),o=new Map;for(let a of l){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&o.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,graphId:a.labels?.[g.SH.GRAPH_ID]??g.PC,graphName:a.labels?.[g.SH.GRAPH_NAME]??g.PC})}let p=this.toConversationStats(h,i,j,k,o,m,n,new Map);return(c?.spanName||c?.attributes?.length)&&(p=await this.applySpanFilters(p,a,b,c,d)),{totalToolCalls:p.reduce((a,b)=>a+b.totalToolCalls,0),totalTransfers:p.reduce((a,b)=>a+b.totalTransfers,0),totalDelegations:p.reduce((a,b)=>a+b.totalDelegations,0),totalConversations:p.length,totalAICalls:p.reduce((a,b)=>a+b.totalAICalls,0)}}catch(a){return console.error("getAggregateStats error:",a),{totalToolCalls:0,totalTransfers:0,totalDelegations:0,totalConversations:0,totalAICalls:0}}}async getAvailableSpanNames(a,b,c,d){try{let e=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EXISTS,value:""}];c&&"all"!==c&&e.push({key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}),d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d});let f={start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.LIST,builderQueries:{spanNames:{dataSource:g.YL.TRACES,queryName:g.XQ.SPAN_NAMES,aggregateOperator:g.qf.NOOP,aggregateAttribute:{},filters:{op:g.we.AND,items:e},selectColumns:[{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.SPAN_NAMES,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,stepInterval:g.yZ.STEP_INTERVAL,limit:g.yZ.LIMIT_1000,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],groupBy:g.yZ.EMPTY_GROUP_BY,offset:g.yZ.OFFSET}}},dataSource:g.YL.TRACES,projectId:d},h=await this.makeRequest(f),i=h?.data?.result?.find(a=>a?.queryName==="spanNames")?.list??[],j=new Set;for(let a of i){let b=a?.data?.name??a?.name;b&&j.add(b)}return[...j].sort()}catch(a){return console.error("getAvailableSpanNames error:",a),[]}}toConversationStats(a,b,c,d,e,f,h,i){let j=new Map,l=a=>{let b=j.get(a);if(b)return b;let c={totalToolCalls:0,toolsUsed:new Map,transfers:new Map,totalTransfers:0,delegations:new Map,totalDelegations:0,totalAICalls:0,totalErrors:0};return j.set(a,c),c};for(let b of a){let a=b.labels?.[g.SH.CONVERSATION_ID];if(!a)continue;let c=b.labels?.[g.SH.AI_TOOL_CALL_NAME];if(!c)continue;let d=k(b);if(!d)continue;let e=b.labels?.[g.SH.MCP_TOOL_DESCRIPTION]||"",f=l(a);f.totalToolCalls+=d;let h=f.toolsUsed.get(c)||{name:c,calls:0,description:e};h.calls+=d,f.toolsUsed.set(c,h)}for(let a of b){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.TRANSFER_FROM_AGENT_ID],d=a.labels?.[g.SH.TRANSFER_TO_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=l(b);f.totalTransfers+=e;let h=`${c}→${d}`,i=f.transfers.get(h)||{from:c,to:d,count:0};i.count+=e,f.transfers.set(h,i)}for(let a of c){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.DELEGATION_FROM_AGENT_ID],d=a.labels?.[g.SH.DELEGATION_TO_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=l(b);f.totalDelegations+=e;let h=`${c}→${d}`,i=f.delegations.get(h)||{from:c,to:d,count:0};i.count+=e,f.delegations.set(h,i)}for(let a of d){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=k(a);c&&(l(b).totalAICalls+=c)}for(let a of[...f,...h]){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=k(a);c&&(l(b).totalErrors+=c)}let m=[];for(let a of new Set([...j.keys(),...e.keys()])){let b=j.get(a)||l(a),c=e.get(a)||{tenantId:g.PC,graphId:g.PC,graphName:g.PC};m.push({conversationId:a,tenantId:c.tenantId,graphId:c.graphId,graphName:c.graphName||"",totalToolCalls:b.totalToolCalls,toolsUsed:[...b.toolsUsed.values()],transfers:[...b.transfers.values()],totalTransfers:b.totalTransfers,delegations:[...b.delegations.values()],totalDelegations:b.totalDelegations,totalAICalls:b.totalAICalls,totalErrors:b.totalErrors,hasErrors:b.totalErrors>0,firstUserMessage:i.get(a)?.content,startTime:i.get(a)?.timestamp})}return m}async applySpanFilters(a,b,c,d,e){try{let f=await this.makeRequest(this.buildFilteredConversationsPayload(b,c,d,e)),h=this.extractSeries(f,"filteredConversations"),i=new Set(h.map(a=>a.labels?.[g.SH.CONVERSATION_ID]).filter(Boolean));return a.filter(a=>i.has(a.conversationId))}catch(b){return console.error("applySpanFilters error:",b),a}}buildAgentModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{agentModelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AGENT_MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TELEMETRY_FUNCTION_ID,...g.A3.STRING_TAG_COLUMN},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.AGENT_MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}buildModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{modelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG}],expression:g.XQ.MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_ZERO}}},dataSource:g.YL.TRACES,projectId:c}}buildConversationActivityPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildConversationMetadataPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildFilteredConversationsPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];for(let a of(c.spanName&&e.push({key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:c.spanName}),c.attributes??[])){let b=a.operator??g.we.EQUALS,c=j(a.value),d="string";if("boolean"==typeof c?d="bool":"number"==typeof c&&(d=Number.isInteger(c)?"int64":"float64"),b===g.we.EXISTS||b===g.we.NOT_EXISTS){e.push({key:{key:a.key,...g.A3.STRING_TAG},op:b,value:""});continue}if(b!==g.we.LIKE&&b!==g.we.NOT_LIKE||"string"!=typeof c||c.includes("%")||(c=`%${c}%`),("int64"===d||"float64"===d)&&b===g.we.EQUALS){let b="int64"===d?g.A3.INT64_TAG:g.A3.FLOAT64_TAG;e.push({key:{key:a.key,...b},op:g.we.GREATER_THAN_OR_EQUAL,value:c}),e.push({key:{key:a.key,...b},op:g.we.LESS_THAN_OR_EQUAL,value:c})}else{let f="string"===d?g.A3.STRING_TAG:"int64"===d?g.A3.INT64_TAG:"float64"===d?g.A3.FLOAT64_TAG:g.A3.BOOL_TAG;e.push({key:{key:a.key,...f},op:b,value:c})}}return d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{filteredConversations:{dataSource:g.YL.TRACES,queryName:g.XQ.FILTERED_CONVERSATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.FILTERED_CONVERSATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildCombinedPayload(a,b,c,d,e){let f=a=>{let b=a;return d&&(b=[...b,{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]),e&&(b=[...b,{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:e}]),b};return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{tools:{dataSource:g.YL.TRACES,queryName:g.XQ.TOOLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG}],expression:g.XQ.TOOLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},transfers:{dataSource:g.YL.TRACES,queryName:g.XQ.TRANSFERS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.TRANSFER},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_FROM_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_TO_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.TRANSFERS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},delegations:{dataSource:g.YL.TRACES,queryName:g.XQ.DELEGATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.DELEGATION},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_FROM_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_TO_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.DELEGATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},aiCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AI_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},{key:"ai.telemetry.functionId",...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.AI_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},contextErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.CONTEXT_ERRORS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.CONTEXT_HANDLE},{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.CONTEXT_ERRORS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},agentGenerationErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.AGENT_GENERATION_ERRORS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AGENT_GENERATION},{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.AGENT_GENERATION_ERRORS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL},userMessages:{dataSource:g.YL.TRACES,queryName:g.XQ.USER_MESSAGES,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:f([{key:{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG}],expression:g.XQ.USER_MESSAGES,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:d}}buildUniqueGraphsPayload(a,b,c){let d=[{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueGraphs:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_GRAPHS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.GRAPH_ID,...g.A3.STRING_TAG}],expression:g.XQ.UNIQUE_GRAPHS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.GRAPH_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}buildUniqueModelsPayload(a,b,c){let d=[{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueModels:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_MODELS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.UNIQUE_MODELS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AI_MODEL_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_NULL}}},dataSource:g.YL.TRACES,projectId:c}}}let o=null;function p(){return o??=new n}},49540:(a,b,c)=>{c.d(b,{bq:()=>l,eb:()=>n,gC:()=>m,l6:()=>j,yv:()=>k});var d=c(59111),e=c(41404),f=c(67048),g=c(39108),h=c(25773),i=c(42723);function j({...a}){return(0,d.jsx)(e.bL,{"data-slot":"select",...a})}function k({...a}){return(0,d.jsx)(e.WT,{"data-slot":"select-value",...a})}function l({className:a,size:b="default",children:c,...g}){return(0,d.jsxs)(e.l9,{"data-slot":"select-trigger","data-size":b,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 font-normal normal-case",a),...g,children:[c,(0,d.jsx)(e.In,{asChild:!0,children:(0,d.jsx)(f.A,{className:"size-4 opacity-50"})})]})}function m({className:a,children:b,position:c="popper",...f}){return(0,d.jsx)(e.ZL,{children:(0,d.jsxs)(e.UC,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent rounded-md border shadow-md","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...f,children:[(0,d.jsx)(o,{}),(0,d.jsx)(e.LM,{className:(0,i.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:b}),(0,d.jsx)(p,{})]})})}function n({className:a,children:b,...c}){return(0,d.jsxs)(e.q7,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...c,children:[(0,d.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,d.jsx)(e.VF,{children:(0,d.jsx)(g.A,{className:"size-4"})})}),(0,d.jsx)(e.p4,{children:b})]})}function o({className:a,...b}){return(0,d.jsx)(e.PP,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(h.A,{className:"size-4"})})}function p({className:a,...b}){return(0,d.jsx)(e.wn,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(f.A,{className:"size-4"})})}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=1680,exports.ids=[1680],exports.modules={7066:(a,b,c)=>{"use strict";c.d(b,{DataComponentForm:()=>x});var d=c(59111),e=c(59099),f=c(485),g=c(94150),h=c(68156),i=c(17130),j=c(16426),k=c(23413),l=c(2856),m=c(93622),n=c(35283),o=c(90147);let p=(0,o.createServerReference)("70a32f67d072633f3c5f7326ac11629970f03c4673",o.callServer,void 0,o.findSourceMapURL,"updateDataComponentAction"),q=(0,o.createServerReference)("7008afb752aec1fe4397bb6ce5ba8ab5c869478fb3",o.callServer,void 0,o.findSourceMapURL,"createDataComponentAction");var r=c(42723);let s={id:"",name:"",description:"",props:""};var t=c(45809),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.string().min(1,"Props schema is required.").transform((a,b)=>{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({tenantId:a,projectId:b,id: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:!!c});let x=async d=>{try{let e={...d};if(c){let c=await p(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 q(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)(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:"ListOrders",description:"This name is used to identify the component in chat widget integration. Example: components: { ListOrders: MyListOrdersComponent }",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}),(0,d.jsx)(l.$,{type:"submit",disabled:u,children:"Save"})]})})}},8636:(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]/not-found.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]/not-found.tsx","default")},23413:(a,b,c)=>{"use strict";c.d(b,{S:()=>k});var d=c(59111),e=c(71771),f=c(2856),g=c(80974),h=c(42723),i=c(67466);function j(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)(f.$,{type:"button",onClick:()=>{let b=(0,g.Fc)();a.onChange(b)},variant:"outline",size:"sm",className:"h-6 px-2 text-xs rounded-sm",children:"Template"}),(0,d.jsx)(f.$,{type:"button",onClick:()=>{let b=a.value;if(b?.trim()){let c=(0,h.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)(i.i,{value:a.value||"",onChange:a.onChange,placeholder:a.placeholder,disabled:a.disabled,readOnly:a.readOnly})]})}function k({control:a,name:b,label:c="JSON Schema",placeholder:f,disabled:g,description:h,readOnly:i,isRequired:k=!1}){return(0,d.jsx)(e.u,{control:a,name:b,label:c,description:h,isRequired:k,children:a=>(0,d.jsx)(j,{placeholder:f,...a,onChange:a.onChange,readOnly:i,disabled:g})})}},29160:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>g});var d=c(72669),e=c(95460),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){(0,e.notFound)()}return(0,d.jsx)(d.Fragment,{children:a})}},35859:(a,b,c)=>{Promise.resolve().then(c.bind(c,8636))},37830:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h});var d=c(59111),e=c(437),f=c(485);c(14450);var g=c(2856);function h(){let a=(0,f.useParams)(),b=(0,f.useRouter)(),c=a.tenantId,h=a.projectId;return(0,d.jsx)("div",{className:"flex min-h-[400px] flex-col items-center justify-center p-8",children:(0,d.jsxs)("div",{className:"text-center max-w-md",children:[(0,d.jsx)("div",{className:"mb-4 flex justify-center",children:(0,d.jsx)(e.A,{className:"h-12 w-12 text-muted-foreground"})}),(0,d.jsx)("h1",{className:"text-2xl font-semibold mb-2",children:"Project Not Found"}),(0,d.jsxs)("p",{className:"text-muted-foreground mb-6",children:['The project "',h,"\" does not exist or you don't have access to it."]}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground mb-6",children:"Redirecting to projects list in 3 seconds..."}),(0,d.jsx)(g.$,{onClick:()=>b.push(`/${c}/projects`),variant:"default",children:"Go to Projects List"})]})})}},38581:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"40f8bba3e4b88656adde2f6da6f756a4871d8a7cdc":()=>d.bW,"601f46f3029003c408f8a4ac20a0709857e7ec264d":()=>d.Dv,"60646680f566338e694d5ae0cdba6dd0bd11cc4e9c":()=>d.qf,"6088ab23224bc44d14866c5c0cccdf6818a62586df":()=>p,"60c75e83ce259469c223f678f5eaff79ef49f9b8d1":()=>d.gL,"7008afb752aec1fe4397bb6ce5ba8ab5c869478fb3":()=>q,"7049e1a036ddd0b5a6508e1566c9d4b7413f35ad70":()=>d.Tg,"70a32f67d072633f3c5f7326ac11629970f03c4673":()=>r,"70ed30b6c2dd7ee5d9745a894862a94ab1d6abdbb5":()=>s});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){(0,h.M2)(a),(0,h.nt)(b);let c=await (0,g.J)(`tenants/${a}/projects/${b}/data-components`);return{...c,data:c.data.map(a=>({...a,props:a.props||{}}))}}async function k(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.J)(`tenants/${a}/projects/${b}/data-components/${c}`);return{...d.data,props:d.data.props||{}}}async function l(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.J)(`tenants/${a}/projects/${b}/data-components`,{method:"POST",body:JSON.stringify(c)});return{...d.data,props:d.data.props||{}}}async function m(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.J)(`tenants/${a}/projects/${b}/data-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)});return{...d.data,props:d.data.props||{}}}async function n(a,b,c){(0,h.M2)(a),(0,h.nt)(b),await (0,g.J)(`tenants/${a}/projects/${b}/data-components/${c}`,{method:"DELETE"})}(0,i.D)([j,k,l,m,n]),(0,e.A)(j,"60c0490ee136a63ce223811bb180d1a1c4bf8bbad5",null),(0,e.A)(k,"7085bdb4fb091c4a5766bbdb2f7f21e2b094ae8ce9",null),(0,e.A)(l,"7028e2b41fc236384177f0eb2e7a131497c72ed5fc",null),(0,e.A)(m,"708dda3b44314c13b3eb483823e701400e367d5bf9",null),(0,e.A)(n,"702751b6c18f3a75dd0790e9b0838f65616d3b3152",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}/components`),{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}/components`),(0,f.revalidatePath)(`/${a}/projects/${b}/components/${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}/components`),(0,f.revalidatePath)(`/${a}/projects/${b}/components/${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,"6088ab23224bc44d14866c5c0cccdf6818a62586df",null),(0,e.A)(q,"7008afb752aec1fe4397bb6ce5ba8ab5c869478fb3",null),(0,e.A)(r,"70a32f67d072633f3c5f7326ac11629970f03c4673",null),(0,e.A)(s,"70ed30b6c2dd7ee5d9745a894862a94ab1d6abdbb5",null)},41325:(a,b,c)=>{Promise.resolve().then(c.bind(c,7066)),Promise.resolve().then(c.bind(c,24003)),Promise.resolve().then(c.bind(c,19603)),Promise.resolve().then(c.t.bind(c,61678,23))},45622:()=>{},53261:(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]/components/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]/components/error.tsx","default")},62503:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});let d=c(45809).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.")},71708:(a,b,c)=>{Promise.resolve().then(c.bind(c,81331))},77709:(a,b,c)=>{Promise.resolve().then(c.bind(c,98261)),Promise.resolve().then(c.bind(c,97633)),Promise.resolve().then(c.bind(c,80248)),Promise.resolve().then(c.t.bind(c,93520,23))},80974:(a,b,c)=>{"use strict";c.d(b,{Fc:()=>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"}},81331:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(59111),e=c(43433);function f(){return(0,d.jsx)(e.A,{description:"Something went wrong."})}},85276:(a,b,c)=>{Promise.resolve().then(c.bind(c,53261))},92107:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>j});var d=c(72669),e=c(17932),f=c(96737),g=c(39885),h=c(3687),i=c(82058);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}`))})]})})}},92478:()=>{},96107:(a,b,c)=>{Promise.resolve().then(c.bind(c,37830))},98261:(a,b,c)=>{"use strict";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
|
-
exports.id=4735,exports.ids=[4735],exports.modules={5294:(a,b,c)=>{"use strict";c.d(b,{$Y:()=>g,GO:()=>i,K3:()=>h,h9:()=>k});var d=c(29991);c(58415);var e=c(8703),f=c(45796);async function g(a,b,c=1,d=50){(0,f.M2)(a),(0,f.nt)(b);let h=new URLSearchParams({page:c.toString(),limit:d.toString()});return(await (0,e.J)(`tenants/${a}/projects/${b}/credentials?${h}`)).data}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.J)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"DELETE"})}(0,c(33451).D)([g,h,i,j,k]),(0,d.A)(g,"78176b4d5ca7f9e270306c19e33bfbde76c31f2ca2",null),(0,d.A)(h,"704b558bfbb30a0b5e880a0f381673bc4a96ff2ce0",null),(0,d.A)(i,"70b59c306e9530292f4c34bdc7d209050df4291aa4",null),(0,d.A)(j,"78e2a7d0361277cffde47a9fcf2844da197a8e0ab7",null),(0,d.A)(k,"706c73f25357ea459edc1217e084f55a4988164f68",null)},13177:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"40d750db8eb44ef029c2c3aad00cba5a29ecfaaaac":()=>d.vj,"601cf05c1486d99c3f946999a30e8dfa41c8756384":()=>d.Sw,"60b405d7681ae04f6acd77f26601e30ecd99d12e25":()=>d.xx,"60f9dd19a0896d61b28d76fe8485cdeb0b99d585f1":()=>d.gA,"707386544582b198bb8fd826edd5b63243eacb8d7f":()=>d.vr});var d=c(54637)},19329:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(29991);c(58415);var e=c(5294);async function f(a,b,c){try{let d=await (0,e.K3)(a,b,c.id);if(d)return d}catch{}try{return await (0,e.GO)(a,b,c)}catch(a){throw console.error("Failed to save credential to database:",a),Error(`Failed to save credential '${c.id}' to database`)}}(0,c(33451).D)([f]),(0,d.A)(f,"7007b089a209c1a43a8bfcadaae3c2b5cdf5552858",null)},21395:(a,b,c)=>{"use strict";c.d(b,{RN:()=>s,Ak:()=>p,uP:()=>t,tN:()=>q,Mj:()=>o,tQ:()=>n,pv:()=>m,Mb:()=>l,H6:()=>u,P:()=>v});var d=c(29991);c(58415);var e=c(34843),f=c(55797),g=c(67417);class h extends Error{constructor(a,b,c){super(a),this.operation=b,this.cause=c,this.name="NangoError"}}function i(a,b,c){if(a instanceof h)throw a;throw new h(b,c,a)}var j=c(33451);let k=()=>{let a=process.env.NANGO_SECRET_KEY;if(!a)throw new h("NANGO_SECRET_KEY environment variable is required for Nango integration");try{return new f.CA({secretKey:a,host:process.env.NANGO_SERVER_URL||void 0})}catch(a){throw new h("Failed to initialize Nango client","new Nango",a)}};async function l(){try{let a=k();return(await a.listProviders({})).data}catch(a){console.error("Failed to fetch providers:",a),i(a,"Unable to retrieve available providers from Nango","listProviders")}}async function m(a){try{let b=k();return(await b.getProvider({provider:a})).data}catch(b){console.error(`Failed to fetch provider ${a}:`,b),i(b,`Provider '${a}' not found or inaccessible`,"getProvider")}}async function n(){try{let a=k();return(await a.listIntegrations()).configs}catch(a){console.error("Failed to fetch integrations:",a),i(a,"Unable to retrieve existing integrations","listIntegrations")}}async function o(a){try{let b=k(),c=(await b.getIntegration({uniqueKey:a},{include:["credentials"]})).data,d=!1;d=c.credentials?.type==="OAUTH2"||c.credentials?.type==="OAUTH1"||c.credentials?.type==="TBA"?!!(c.credentials?.client_id&&c.credentials?.client_secret):c.credentials?.type!=="APP"||!!(c.credentials?.app_id&&c.credentials?.app_link);let{credentials:e,...f}=c;return{...f,areCredentialsSet:d}}catch(b){if(b&&"object"==typeof b&&"status"in b&&404===b.status)return null;console.error(`Failed to fetch integration ${a}:`,b),i(b,`Unable to fetch integration with key '${a}'`,"getIntegration")}}async function p(a){try{let b=k();return(await b.createIntegration({provider:a.provider,unique_key:a.uniqueKey,display_name:a.displayName,credentials:a.credentials})).data}catch(b){console.error("Failed to create integration:",b),i(b,`Failed to create integration '${a.uniqueKey}' for provider '${a.provider}'`,"createIntegration")}}async function q(a){try{let a=k();return(await a.listConnections()).connections}catch(c){let b=a?` for integration '${a}'`:"";console.error(`Failed to fetch connections${b}:`,c),i(c,`Unable to retrieve connections${b}`,"listConnections")}}async function r({endUserId:a="test-tenant",endUserEmail:b="test@test-tenant.com",endUserDisplayName:c="Test User",organizationId:d=process.env.TENANT_ID||g.P3,organizationDisplayName:e="Test Organization",integrationId:f}){try{let g=k(),{data:h}=await g.createConnectSession({end_user:{id:a,email:b,display_name:c},organization:{id:d,display_name:e},allowed_integrations:[f]});return h}catch(a){console.error("Failed to create connect session:",a),i(a,`Unable to create connect session for integration '${f}'`,"createConnectSession")}}async function s({name:a,apiKeyToSet:b,metadata:c}){let d=(0,e.K_)(a);try{let e;try{e=await p({provider:"private-api-bearer",uniqueKey:d,displayName:a})}catch(a){if(a instanceof h&&a.cause&&"object"==typeof a.cause&&"status"in a.cause&&400===a.cause.status){let b=await o(d);b?e=b:i(a,"Integration creation failed for unexpected reasons","create")}else i(a,`Failed to create or retrieve integration '${d}'`,"create")}try{let a=`${process.env.NANGO_SERVER_URL||"https://api.nango.dev"}/connections`,f={provider_config_key:e.unique_key,connection_id:d,metadata:c,credentials:{type:"API_KEY",apiKey:b}},g=await fetch(a,{method:"POST",headers:{Authorization:`Bearer ${process.env.NANGO_SECRET_KEY}`,"Content-Type":"application/json"},body:JSON.stringify(f)});if(!g.ok)throw new h(`Failed to import connection: HTTP ${g.status} - ${g.statusText}`,"importConnection")}catch(a){i(a,"Failed to import API key connection to Nango","importConnection")}try{await v({providerConfigKey:e.unique_key,connectionId:d,metadata:c})}catch(a){console.warn(`Failed to set metadata for connection ${d}:`,a)}return{integration:e}}catch(b){console.error("Unexpected error creating API key credential:",b),i(b,`Unexpected error creating API key credential '${a}'`,"createNangoApiKeyConnection")}}async function t({providerName:a,credentials:b}){try{let c,d=null;try{d=await o(a)}catch(b){if(b instanceof h)throw b;console.debug(`Integration '${a}' not found, will create new one`)}if(d?.areCredentialsSet)c=d;else try{c=await p({provider:a,uniqueKey:a,displayName:a,credentials:b})}catch(b){i(b,`Failed to create integration for provider '${a}'`,"create")}try{return(await r({integrationId:c.unique_key})).token}catch(a){i(a,`Failed to create connect session for integration '${c.unique_key}'`,"createConnectSession")}}catch(b){console.error("Unexpected error creating provider connect session:",b),i(b,`Unexpected error creating connect session for provider '${a}'`,"createProviderConnectSession")}}async function u({providerConfigKey:a,connectionId:b}){try{let c=k();return await c.getMetadata(a,b)}catch(a){if(a&&"object"==typeof a&&"status"in a&&404===a.status)return null;console.error("Failed to get connection metadata:",a),i(a,`Unable to retrieve metadata for connection '${b}'`,"getMetadata")}}async function v({providerConfigKey:a,connectionId:b,metadata:c}){try{let d=k();await d.setMetadata(a,b,c)}catch(a){console.error("Failed to set connection metadata:",a),i(a,`Unable to update metadata for connection '${b}'`,"setMetadata")}}(0,j.D)([l,m,n,o,p,q,s,t,u,v]),(0,d.A)(l,"002e552f78f658cedf48a92d756db4f5368f4cc938",null),(0,d.A)(m,"40eb18a0069573791f431e78103d3f3c4b6b922d22",null),(0,d.A)(n,"00e7166029d62361a03ef6aec029dbce6fd656e331",null),(0,d.A)(o,"40b7a7e533b4495c3d4aa6f12e21bdf903f9780931",null),(0,d.A)(p,"4009c1edc23bd913c8dc6db58087b2234f99c06a43",null),(0,d.A)(q,"403854688f20b875f7c9bcd87778d5fe197c78800a",null),(0,d.A)(s,"40606e629e4692f94c6887fa27fd3527d1764f0d03",null),(0,d.A)(t,"40092acbdc2b53ea3917871a9851770122580a303c",null),(0,d.A)(u,"4037629ffa5f4e260ab9676a1866207cff1b6a8a62",null),(0,d.A)(v,"4020b5265a14a11ffd1e9a5d2ad47aeded6c4cb2cf",null)},22427:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(59111),e=c(43433);function f(){return(0,d.jsx)(e.A,{description:"Something went wrong."})}},25600:(a,b,c)=>{Promise.resolve().then(c.bind(c,22427))},31736:(a,b,c)=>{"use strict";c.d(b,{U:()=>e});var d=c(90147);let e=(0,d.createServerReference)("7007b089a209c1a43a8bfcadaae3c2b5cdf5552858",d.callServer,void 0,d.findSourceMapURL,"findOrCreateCredential")},62048:(a,b,c)=>{Promise.resolve().then(c.bind(c,80969))},80969:(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]/credentials/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]/credentials/error.tsx","default")}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
exports.id=7955,exports.ids=[7955],exports.modules={3339:(a,b,c)=>{Promise.resolve().then(c.bind(c,7838))},7838:(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]/artifacts/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]/artifacts/error.tsx","default")},8636:(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]/not-found.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]/not-found.tsx","default")},23413:(a,b,c)=>{"use strict";c.d(b,{S:()=>k});var d=c(59111),e=c(71771),f=c(2856),g=c(80974),h=c(42723),i=c(67466);function j(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)(f.$,{type:"button",onClick:()=>{let b=(0,g.Fc)();a.onChange(b)},variant:"outline",size:"sm",className:"h-6 px-2 text-xs rounded-sm",children:"Template"}),(0,d.jsx)(f.$,{type:"button",onClick:()=>{let b=a.value;if(b?.trim()){let c=(0,h.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)(i.i,{value:a.value||"",onChange:a.onChange,placeholder:a.placeholder,disabled:a.disabled,readOnly:a.readOnly})]})}function k({control:a,name:b,label:c="JSON Schema",placeholder:f,disabled:g,description:h,readOnly:i,isRequired:k=!1}){return(0,d.jsx)(e.u,{control:a,name:b,label:c,description:h,isRequired:k,children:a=>(0,d.jsx)(j,{placeholder:f,...a,onChange:a.onChange,readOnly:i,disabled:g})})}},29160:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h,dynamic:()=>g});var d=c(72669),e=c(95460),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){(0,e.notFound)()}return(0,d.jsx)(d.Fragment,{children:a})}},35859:(a,b,c)=>{Promise.resolve().then(c.bind(c,8636))},37830:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>h});var d=c(59111),e=c(437),f=c(485);c(14450);var g=c(2856);function h(){let a=(0,f.useParams)(),b=(0,f.useRouter)(),c=a.tenantId,h=a.projectId;return(0,d.jsx)("div",{className:"flex min-h-[400px] flex-col items-center justify-center p-8",children:(0,d.jsxs)("div",{className:"text-center max-w-md",children:[(0,d.jsx)("div",{className:"mb-4 flex justify-center",children:(0,d.jsx)(e.A,{className:"h-12 w-12 text-muted-foreground"})}),(0,d.jsx)("h1",{className:"text-2xl font-semibold mb-2",children:"Project Not Found"}),(0,d.jsxs)("p",{className:"text-muted-foreground mb-6",children:['The project "',h,"\" does not exist or you don't have access to it."]}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground mb-6",children:"Redirecting to projects list in 3 seconds..."}),(0,d.jsx)(g.$,{onClick:()=>b.push(`/${c}/projects`),variant:"default",children:"Go to Projects List"})]})})}},42363:(a,b,c)=>{"use strict";c.r(b),c.d(b,{"40f8bba3e4b88656adde2f6da6f756a4871d8a7cdc":()=>d.bW,"601f46f3029003c408f8a4ac20a0709857e7ec264d":()=>d.Dv,"60646680f566338e694d5ae0cdba6dd0bd11cc4e9c":()=>d.qf,"6073c7e0effab8ab0f5f5f42817ce4f21e7e9ed9a6":()=>p,"60c75e83ce259469c223f678f5eaff79ef49f9b8d1":()=>d.gL,"700cbb4663916b797ce4186958c43ed6ed816cd7b5":()=>q,"7049e1a036ddd0b5a6508e1566c9d4b7413f35ad70":()=>d.Tg,"70c101eb55dd141e69edfce644dbfea93bd26891fe":()=>r,"70cc7759fc683746339e34a3096828af3466d098f8":()=>s});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){(0,h.M2)(a),(0,h.nt)(b);let c=await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components`);return{...c,data:c.data.map(a=>({...a,summaryProps:a.summaryProps||{},fullProps:a.fullProps||{}}))}}async function k(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.J)(`tenants/${a}/projects/${b}/artifact-components/${c}`);return{...d.data,summaryProps:d.data.summaryProps||{},fullProps:d.data.fullProps||{}}}async function l(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.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 m(a,b,c){(0,h.M2)(a),(0,h.nt)(b);let d=await (0,g.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 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,"60df447f858e52e7dea294c73664b1fa45906212f8",null),(0,e.A)(k,"70bfdad2f3da2f97bdcddca17139e7e96a67963eed",null),(0,e.A)(l,"70f3ff51856bcdfebb242386636ef713f551a5d2ae",null),(0,e.A)(m,"70b9682525be48b5e8b917451c6381903553599f2f",null),(0,e.A)(n,"708c1b03f3a409de34d3ef7381a58a54613603d66c",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,"6073c7e0effab8ab0f5f5f42817ce4f21e7e9ed9a6",null),(0,e.A)(q,"700cbb4663916b797ce4186958c43ed6ed816cd7b5",null),(0,e.A)(r,"70c101eb55dd141e69edfce644dbfea93bd26891fe",null),(0,e.A)(s,"70cc7759fc683746339e34a3096828af3466d098f8",null)},44733:(a,b,c)=>{"use strict";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")},45622:()=>{},59567:(a,b,c)=>{Promise.resolve().then(c.bind(c,44733)),Promise.resolve().then(c.bind(c,97633)),Promise.resolve().then(c.bind(c,80248)),Promise.resolve().then(c.t.bind(c,93520,23))},62503:(a,b,c)=>{"use strict";c.d(b,{f:()=>d});let d=c(45809).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.")},67815:(a,b,c)=>{Promise.resolve().then(c.bind(c,73702)),Promise.resolve().then(c.bind(c,24003)),Promise.resolve().then(c.bind(c,19603)),Promise.resolve().then(c.t.bind(c,61678,23))},73702:(a,b,c)=>{"use strict";c.d(b,{ArtifactComponentForm:()=>y});var d=c(59111),e=c(59099),f=c(485),g=c(94150),h=c(68156),i=c(17130),j=c(16426),k=c(23413),l=c(2856),m=c(93622),n=c(35283),o=c(90147);let p=(0,o.createServerReference)("70c101eb55dd141e69edfce644dbfea93bd26891fe",o.callServer,void 0,o.findSourceMapURL,"updateArtifactComponentAction"),q=(0,o.createServerReference)("700cbb4663916b797ce4186958c43ed6ed816cd7b5",o.callServer,void 0,o.findSourceMapURL,"createArtifactComponentAction");var r=c(42723);let s={id:"",name:"",description:"",summaryProps:"",fullProps:""};var t=c(45809),u=c(80974),v=c(62503);let w=a=>t.string().min(1,`${a} schema is required.`).transform((a,b)=>{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}}),x=t.object({id:v.f,name:t.string().min(1,"Name is required."),description:t.string().min(1,"Description is required."),summaryProps:w("Summary props").optional(),fullProps:w("Full props").optional()});function y({id:a,tenantId:b,projectId:c,initialData:o}){let t=(0,g.mN)({resolver:(0,e.u)(x),defaultValues:(a=>{if(!a)return s;let b={...a};return b.summaryProps&&(b.summaryProps=(0,r.S_)(b.summaryProps)),b.fullProps&&(b.fullProps=(0,r.S_)(b.fullProps)),b})(o)}),{isSubmitting:u}=t.formState,v=(0,f.useRouter)();(0,n.S)({form:t,nameField:"name",idField:"id",isEditing:!!a});let w=async d=>{try{let e={...d};if(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(w),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:"summaryProps",label:"Summary props (JSON schema)",placeholder:"Enter a valid JSON Schema...",isRequired:!0}),(0,d.jsx)(k.S,{control:t.control,name:"fullProps",label:"Full props (JSON schema)",placeholder:"Enter a valid JSON Schema...",isRequired:!0}),(0,d.jsx)(l.$,{type:"submit",disabled:u,children:"Save"})]})})}},79363:(a,b,c)=>{Promise.resolve().then(c.bind(c,82408))},80974:(a,b,c)=>{"use strict";c.d(b,{Fc:()=>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"}},82408:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(59111),e=c(43433);function f(){return(0,d.jsx)(e.A,{description:"Something went wrong."})}},92478:()=>{},93056:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>j});var d=c(72669),e=c(17932),f=c(96737),g=c(39885),h=c(3687),i=c(82058);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}`))})]})})}},96107:(a,b,c)=>{Promise.resolve().then(c.bind(c,37830))}};
|