@stigmer/react 3.1.16 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +16 -1
- package/agent-instance/AgentInstanceList.d.ts.map +1 -1
- package/agent-instance/AgentInstanceList.js +11 -3
- package/agent-instance/AgentInstanceList.js.map +1 -1
- package/channel/AgentChannelsPanel.d.ts +60 -0
- package/channel/AgentChannelsPanel.d.ts.map +1 -0
- package/channel/AgentChannelsPanel.js +255 -0
- package/channel/AgentChannelsPanel.js.map +1 -0
- package/channel/ChannelConversationsDialog.d.ts +41 -0
- package/channel/ChannelConversationsDialog.d.ts.map +1 -0
- package/channel/ChannelConversationsDialog.js +94 -0
- package/channel/ChannelConversationsDialog.js.map +1 -0
- package/channel/ChannelCredentialsDialog.d.ts +37 -0
- package/channel/ChannelCredentialsDialog.d.ts.map +1 -0
- package/channel/ChannelCredentialsDialog.js +75 -0
- package/channel/ChannelCredentialsDialog.js.map +1 -0
- package/channel/ChannelToolCredentials.d.ts +31 -0
- package/channel/ChannelToolCredentials.d.ts.map +1 -0
- package/channel/ChannelToolCredentials.js +41 -0
- package/channel/ChannelToolCredentials.js.map +1 -0
- package/channel/ConnectSlackDialog.d.ts +61 -0
- package/channel/ConnectSlackDialog.d.ts.map +1 -0
- package/channel/ConnectSlackDialog.js +238 -0
- package/channel/ConnectSlackDialog.js.map +1 -0
- package/channel/ConnectWhatsAppDialog.d.ts +70 -0
- package/channel/ConnectWhatsAppDialog.d.ts.map +1 -0
- package/channel/ConnectWhatsAppDialog.js +256 -0
- package/channel/ConnectWhatsAppDialog.js.map +1 -0
- package/channel/SlackMarkIcon.d.ts +11 -0
- package/channel/SlackMarkIcon.d.ts.map +1 -0
- package/channel/SlackMarkIcon.js +13 -0
- package/channel/SlackMarkIcon.js.map +1 -0
- package/channel/WhatsAppMarkIcon.d.ts +12 -0
- package/channel/WhatsAppMarkIcon.d.ts.map +1 -0
- package/channel/WhatsAppMarkIcon.js +14 -0
- package/channel/WhatsAppMarkIcon.js.map +1 -0
- package/channel/connect/ServingAppSection.d.ts +57 -0
- package/channel/connect/ServingAppSection.d.ts.map +1 -0
- package/channel/connect/ServingAppSection.js +49 -0
- package/channel/connect/ServingAppSection.js.map +1 -0
- package/channel/connect/ToolCredentialsSection.d.ts +20 -0
- package/channel/connect/ToolCredentialsSection.d.ts.map +1 -0
- package/channel/connect/ToolCredentialsSection.js +22 -0
- package/channel/connect/ToolCredentialsSection.js.map +1 -0
- package/channel/connect/VerbatimRefusal.d.ts +16 -0
- package/channel/connect/VerbatimRefusal.d.ts.map +1 -0
- package/channel/connect/VerbatimRefusal.js +18 -0
- package/channel/connect/VerbatimRefusal.js.map +1 -0
- package/channel/connect/icons.d.ts +16 -0
- package/channel/connect/icons.d.ts.map +1 -0
- package/channel/connect/icons.js +21 -0
- package/channel/connect/icons.js.map +1 -0
- package/channel/index.d.ts +36 -0
- package/channel/index.d.ts.map +1 -0
- package/channel/index.js +19 -0
- package/channel/index.js.map +1 -0
- package/channel/providerPresentation.d.ts +44 -0
- package/channel/providerPresentation.d.ts.map +1 -0
- package/channel/providerPresentation.js +106 -0
- package/channel/providerPresentation.js.map +1 -0
- package/channel/providers.d.ts +62 -0
- package/channel/providers.d.ts.map +1 -0
- package/channel/providers.js +26 -0
- package/channel/providers.js.map +1 -0
- package/channel/useAgentChannel.d.ts +31 -0
- package/channel/useAgentChannel.d.ts.map +1 -0
- package/channel/useAgentChannel.js +34 -0
- package/channel/useAgentChannel.js.map +1 -0
- package/channel/useAgentChannelList.d.ts +43 -0
- package/channel/useAgentChannelList.d.ts.map +1 -0
- package/channel/useAgentChannelList.js +39 -0
- package/channel/useAgentChannelList.js.map +1 -0
- package/channel/useChannelSessions.d.ts +47 -0
- package/channel/useChannelSessions.d.ts.map +1 -0
- package/channel/useChannelSessions.js +38 -0
- package/channel/useChannelSessions.js.map +1 -0
- package/channel/useChannelToolReadiness.d.ts +23 -0
- package/channel/useChannelToolReadiness.d.ts.map +1 -0
- package/channel/useChannelToolReadiness.js +28 -0
- package/channel/useChannelToolReadiness.js.map +1 -0
- package/channel/useConnectSlackChannel.d.ts +75 -0
- package/channel/useConnectSlackChannel.d.ts.map +1 -0
- package/channel/useConnectSlackChannel.js +115 -0
- package/channel/useConnectSlackChannel.js.map +1 -0
- package/channel/useCreateAgentChannel.d.ts +42 -0
- package/channel/useCreateAgentChannel.d.ts.map +1 -0
- package/channel/useCreateAgentChannel.js +48 -0
- package/channel/useCreateAgentChannel.js.map +1 -0
- package/channel/useDeleteAgentChannel.d.ts +40 -0
- package/channel/useDeleteAgentChannel.d.ts.map +1 -0
- package/channel/useDeleteAgentChannel.js +44 -0
- package/channel/useDeleteAgentChannel.js.map +1 -0
- package/channel/useInstallChannel.d.ts +60 -0
- package/channel/useInstallChannel.d.ts.map +1 -0
- package/channel/useInstallChannel.js +63 -0
- package/channel/useInstallChannel.js.map +1 -0
- package/channel/useOrgAgentChannelList.d.ts +32 -0
- package/channel/useOrgAgentChannelList.d.ts.map +1 -0
- package/channel/useOrgAgentChannelList.js +29 -0
- package/channel/useOrgAgentChannelList.js.map +1 -0
- package/channel/useSaveAgentChannel.d.ts +63 -0
- package/channel/useSaveAgentChannel.d.ts.map +1 -0
- package/channel/useSaveAgentChannel.js +104 -0
- package/channel/useSaveAgentChannel.js.map +1 -0
- package/channel-app/ChannelAppDetailPanel.d.ts +46 -0
- package/channel-app/ChannelAppDetailPanel.d.ts.map +1 -0
- package/channel-app/ChannelAppDetailPanel.js +142 -0
- package/channel-app/ChannelAppDetailPanel.js.map +1 -0
- package/channel-app/ChannelAppListPanel.d.ts +36 -0
- package/channel-app/ChannelAppListPanel.d.ts.map +1 -0
- package/channel-app/ChannelAppListPanel.js +63 -0
- package/channel-app/ChannelAppListPanel.js.map +1 -0
- package/channel-app/CreateChannelAppForm.d.ts +54 -0
- package/channel-app/CreateChannelAppForm.d.ts.map +1 -0
- package/channel-app/CreateChannelAppForm.js +140 -0
- package/channel-app/CreateChannelAppForm.js.map +1 -0
- package/channel-app/index.d.ts +18 -0
- package/channel-app/index.d.ts.map +1 -0
- package/channel-app/index.js +10 -0
- package/channel-app/index.js.map +1 -0
- package/channel-app/internal.d.ts +33 -0
- package/channel-app/internal.d.ts.map +1 -0
- package/channel-app/internal.js +44 -0
- package/channel-app/internal.js.map +1 -0
- package/channel-app/slackAppSetup.d.ts +80 -0
- package/channel-app/slackAppSetup.d.ts.map +1 -0
- package/channel-app/slackAppSetup.js +123 -0
- package/channel-app/slackAppSetup.js.map +1 -0
- package/channel-app/useChannelAppList.d.ts +35 -0
- package/channel-app/useChannelAppList.d.ts.map +1 -0
- package/channel-app/useChannelAppList.js +34 -0
- package/channel-app/useChannelAppList.js.map +1 -0
- package/channel-app/useCreateChannelApp.d.ts +39 -0
- package/channel-app/useCreateChannelApp.d.ts.map +1 -0
- package/channel-app/useCreateChannelApp.js +50 -0
- package/channel-app/useCreateChannelApp.js.map +1 -0
- package/channel-app/useDeleteChannelApp.d.ts +31 -0
- package/channel-app/useDeleteChannelApp.d.ts.map +1 -0
- package/channel-app/useDeleteChannelApp.js +43 -0
- package/channel-app/useDeleteChannelApp.js.map +1 -0
- package/channel-app/useUpdateChannelApp.d.ts +39 -0
- package/channel-app/useUpdateChannelApp.d.ts.map +1 -0
- package/channel-app/useUpdateChannelApp.js +50 -0
- package/channel-app/useUpdateChannelApp.js.map +1 -0
- package/channel-app/whatsappAppSetup.d.ts +51 -0
- package/channel-app/whatsappAppSetup.d.ts.map +1 -0
- package/channel-app/whatsappAppSetup.js +57 -0
- package/channel-app/whatsappAppSetup.js.map +1 -0
- package/environment/index.d.ts +2 -0
- package/environment/index.d.ts.map +1 -1
- package/environment/index.js +1 -0
- package/environment/index.js.map +1 -1
- package/environment/useToolCredentialsReadiness.d.ts +52 -0
- package/environment/useToolCredentialsReadiness.d.ts.map +1 -0
- package/environment/useToolCredentialsReadiness.js +84 -0
- package/environment/useToolCredentialsReadiness.js.map +1 -0
- package/execution/ArtifactContentBody.d.ts.map +1 -1
- package/execution/ArtifactContentBody.js +5 -21
- package/execution/ArtifactContentBody.js.map +1 -1
- package/execution/ArtifactFileContent.d.ts +28 -0
- package/execution/ArtifactFileContent.d.ts.map +1 -0
- package/execution/ArtifactFileContent.js +36 -0
- package/execution/ArtifactFileContent.js.map +1 -0
- package/execution/ArtifactRow.d.ts +8 -20
- package/execution/ArtifactRow.d.ts.map +1 -1
- package/execution/ArtifactRow.js +12 -45
- package/execution/ArtifactRow.js.map +1 -1
- package/execution/ArtifactRowView.d.ts +43 -0
- package/execution/ArtifactRowView.d.ts.map +1 -0
- package/execution/ArtifactRowView.js +35 -0
- package/execution/ArtifactRowView.js.map +1 -0
- package/execution/FileChangesView.d.ts.map +1 -1
- package/execution/FileChangesView.js +1 -61
- package/execution/FileChangesView.js.map +1 -1
- package/execution/SubAgentSection.d.ts.map +1 -1
- package/execution/SubAgentSection.js +4 -15
- package/execution/SubAgentSection.js.map +1 -1
- package/execution/ToolCallItem.d.ts.map +1 -1
- package/execution/ToolCallItem.js +16 -61
- package/execution/ToolCallItem.js.map +1 -1
- package/execution/agent-execution-document.d.ts +31 -0
- package/execution/agent-execution-document.d.ts.map +1 -0
- package/execution/agent-execution-document.js +48 -0
- package/execution/agent-execution-document.js.map +1 -0
- package/{session → execution}/artifact-document.d.ts +2 -3
- package/execution/artifact-document.d.ts.map +1 -0
- package/execution/artifact-document.js +23 -0
- package/execution/artifact-document.js.map +1 -0
- package/execution/artifact-row-item.d.ts +56 -0
- package/execution/artifact-row-item.d.ts.map +1 -0
- package/execution/artifact-row-item.js +57 -0
- package/execution/artifact-row-item.js.map +1 -0
- package/execution/deriveExecutionFileChanges.d.ts +55 -0
- package/execution/deriveExecutionFileChanges.d.ts.map +1 -0
- package/execution/deriveExecutionFileChanges.js +216 -0
- package/execution/deriveExecutionFileChanges.js.map +1 -0
- package/execution/file-change-document.d.ts +22 -0
- package/execution/file-change-document.d.ts.map +1 -0
- package/execution/file-change-document.js +34 -0
- package/execution/file-change-document.js.map +1 -0
- package/execution/index.d.ts +14 -0
- package/execution/index.d.ts.map +1 -1
- package/execution/index.js +9 -0
- package/execution/index.js.map +1 -1
- package/execution/useArtifactContentById.d.ts +61 -0
- package/execution/useArtifactContentById.d.ts.map +1 -0
- package/execution/useArtifactContentById.js +63 -0
- package/execution/useArtifactContentById.js.map +1 -0
- package/execution/useArtifactDownload.d.ts +4 -3
- package/execution/useArtifactDownload.d.ts.map +1 -1
- package/execution/useArtifactDownload.js +4 -3
- package/execution/useArtifactDownload.js.map +1 -1
- package/execution/useCreateAgentExecution.d.ts +1 -1
- package/execution/useLiveAgentExecution.d.ts +59 -0
- package/execution/useLiveAgentExecution.d.ts.map +1 -0
- package/execution/useLiveAgentExecution.js +73 -0
- package/execution/useLiveAgentExecution.js.map +1 -0
- package/index.d.ts +15 -10
- package/index.d.ts.map +1 -1
- package/index.js +21 -6
- package/index.js.map +1 -1
- package/internal/DecisionButton.d.ts +4 -3
- package/internal/DecisionButton.d.ts.map +1 -1
- package/internal/DecisionButton.js +4 -3
- package/internal/DecisionButton.js.map +1 -1
- package/internal/oauthPopup.d.ts +101 -0
- package/internal/oauthPopup.d.ts.map +1 -0
- package/internal/oauthPopup.js +208 -0
- package/internal/oauthPopup.js.map +1 -0
- package/internal/store/index.d.ts +0 -2
- package/internal/store/index.d.ts.map +1 -1
- package/internal/store/index.js +0 -1
- package/internal/store/index.js.map +1 -1
- package/internal/store/workflow-execution-event-store.d.ts +34 -1
- package/internal/store/workflow-execution-event-store.d.ts.map +1 -1
- package/internal/store/workflow-execution-event-store.js +81 -3
- package/internal/store/workflow-execution-event-store.js.map +1 -1
- package/internal/store/workspace-file-selection-store.d.ts +1 -2
- package/internal/store/workspace-file-selection-store.d.ts.map +1 -1
- package/internal/store/workspace-file-selection-store.js +2 -5
- package/internal/store/workspace-file-selection-store.js.map +1 -1
- package/internal/thread-card/ThreadCardShell.d.ts +91 -0
- package/internal/thread-card/ThreadCardShell.d.ts.map +1 -0
- package/internal/thread-card/ThreadCardShell.js +41 -0
- package/internal/thread-card/ThreadCardShell.js.map +1 -0
- package/internal/thread-card/glyphs.d.ts +34 -0
- package/internal/thread-card/glyphs.d.ts.map +1 -0
- package/internal/thread-card/glyphs.js +50 -0
- package/internal/thread-card/glyphs.js.map +1 -0
- package/internal/thread-card/index.d.ts +3 -0
- package/internal/thread-card/index.d.ts.map +1 -0
- package/internal/thread-card/index.js +3 -0
- package/internal/thread-card/index.js.map +1 -0
- package/internal/useRevealLine.d.ts +2 -2
- package/internal/useRevealLine.js +2 -2
- package/mcp-server/OAuthCallbackHandler.js +1 -1
- package/mcp-server/OAuthCallbackHandler.js.map +1 -1
- package/mcp-server/useMcpServerOAuthConnect.d.ts +4 -23
- package/mcp-server/useMcpServerOAuthConnect.d.ts.map +1 -1
- package/mcp-server/useMcpServerOAuthConnect.js +12 -145
- package/mcp-server/useMcpServerOAuthConnect.js.map +1 -1
- package/package.json +4 -4
- package/provider.d.ts +32 -0
- package/provider.d.ts.map +1 -1
- package/provider.js +25 -1
- package/provider.js.map +1 -1
- package/session/NewSessionViewer.d.ts.map +1 -1
- package/session/NewSessionViewer.js +0 -1
- package/session/NewSessionViewer.js.map +1 -1
- package/session/SessionPanelChip.d.ts +7 -22
- package/session/SessionPanelChip.d.ts.map +1 -1
- package/session/SessionPanelChip.js +8 -36
- package/session/SessionPanelChip.js.map +1 -1
- package/session/SessionViewer.d.ts +7 -4
- package/session/SessionViewer.d.ts.map +1 -1
- package/session/SessionViewer.js +32 -30
- package/session/SessionViewer.js.map +1 -1
- package/session/audience.d.ts +15 -1
- package/session/audience.d.ts.map +1 -1
- package/session/channelOrigin.d.ts +33 -0
- package/session/channelOrigin.d.ts.map +1 -0
- package/session/channelOrigin.js +36 -0
- package/session/channelOrigin.js.map +1 -0
- package/session/facets/index.d.ts +0 -2
- package/session/facets/index.d.ts.map +1 -1
- package/session/facets/index.js +0 -1
- package/session/facets/index.js.map +1 -1
- package/session/index.d.ts +2 -2
- package/session/index.d.ts.map +1 -1
- package/session/index.js +5 -3
- package/session/index.js.map +1 -1
- package/session/useSessionFileChanges.d.ts +10 -34
- package/session/useSessionFileChanges.d.ts.map +1 -1
- package/session/useSessionFileChanges.js +9 -141
- package/session/useSessionFileChanges.js.map +1 -1
- package/session/useSessionPanel.d.ts +5 -15
- package/session/useSessionPanel.d.ts.map +1 -1
- package/session/useSessionPanel.js +3 -35
- package/session/useSessionPanel.js.map +1 -1
- package/session/useSessionRailViews.d.ts +3 -6
- package/session/useSessionRailViews.d.ts.map +1 -1
- package/session/useSessionRailViews.js +3 -17
- package/session/useSessionRailViews.js.map +1 -1
- package/settings/ChannelAppsSection.d.ts +13 -0
- package/settings/ChannelAppsSection.d.ts.map +1 -0
- package/settings/ChannelAppsSection.js +48 -0
- package/settings/ChannelAppsSection.js.map +1 -0
- package/settings/index.d.ts +1 -0
- package/settings/index.d.ts.map +1 -1
- package/settings/index.js +1 -0
- package/settings/index.js.map +1 -1
- package/settings/settings-nav.d.ts.map +1 -1
- package/settings/settings-nav.js +6 -1
- package/settings/settings-nav.js.map +1 -1
- package/sharing/AgentShareList.d.ts.map +1 -1
- package/sharing/AgentShareList.js +11 -3
- package/sharing/AgentShareList.js.map +1 -1
- package/sharing/ShareAgentDialog.js +1 -1
- package/sharing/useShareToolReadiness.d.ts +9 -38
- package/sharing/useShareToolReadiness.d.ts.map +1 -1
- package/sharing/useShareToolReadiness.js +7 -72
- package/sharing/useShareToolReadiness.js.map +1 -1
- package/src/__tests__/provider-container.layout.test.tsx +165 -0
- package/src/__tests__/provider-theme-scope.test.tsx +31 -0
- package/src/agent-instance/AgentInstanceList.tsx +60 -42
- package/src/agent-instance/__tests__/AgentInstanceList.test.tsx +161 -0
- package/src/channel/AgentChannelsPanel.tsx +688 -0
- package/src/channel/ChannelConversationsDialog.tsx +267 -0
- package/src/channel/ChannelCredentialsDialog.tsx +219 -0
- package/src/channel/ChannelToolCredentials.tsx +124 -0
- package/src/channel/ConnectSlackDialog.tsx +611 -0
- package/src/channel/ConnectWhatsAppDialog.tsx +624 -0
- package/src/channel/SlackMarkIcon.tsx +21 -0
- package/src/channel/WhatsAppMarkIcon.tsx +22 -0
- package/src/channel/__tests__/AgentChannelsPanel.test.tsx +638 -0
- package/src/channel/__tests__/ChannelConversationsDialog.test.tsx +114 -0
- package/src/channel/__tests__/ChannelCredentialsDialog.test.tsx +240 -0
- package/src/channel/__tests__/ConnectSlackDialog.test.tsx +659 -0
- package/src/channel/__tests__/ConnectWhatsAppDialog.test.tsx +564 -0
- package/src/channel/__tests__/providers.test.ts +118 -0
- package/src/channel/__tests__/useAgentChannel.test.tsx +116 -0
- package/src/channel/__tests__/useAgentChannelList.test.tsx +166 -0
- package/src/channel/__tests__/useChannelSessions.test.tsx +95 -0
- package/src/channel/__tests__/useChannelToolReadiness.test.tsx +158 -0
- package/src/channel/__tests__/useConnectSlackChannel.test.tsx +276 -0
- package/src/channel/__tests__/useDeleteAgentChannel.test.tsx +97 -0
- package/src/channel/__tests__/useInstallChannel.test.tsx +177 -0
- package/src/channel/__tests__/useSaveAgentChannel.test.tsx +294 -0
- package/src/channel/connect/ServingAppSection.tsx +185 -0
- package/src/channel/connect/ToolCredentialsSection.tsx +67 -0
- package/src/channel/connect/VerbatimRefusal.tsx +27 -0
- package/src/channel/connect/icons.tsx +42 -0
- package/src/channel/index.ts +65 -0
- package/src/channel/providerPresentation.ts +154 -0
- package/src/channel/providers.ts +73 -0
- package/src/channel/useAgentChannel.ts +58 -0
- package/src/channel/useAgentChannelList.ts +69 -0
- package/src/channel/useChannelSessions.ts +73 -0
- package/src/channel/useChannelToolReadiness.ts +39 -0
- package/src/channel/useConnectSlackChannel.ts +195 -0
- package/src/channel/useCreateAgentChannel.ts +73 -0
- package/src/channel/useDeleteAgentChannel.ts +71 -0
- package/src/channel/useInstallChannel.ts +117 -0
- package/src/channel/useOrgAgentChannelList.ts +60 -0
- package/src/channel/useSaveAgentChannel.ts +133 -0
- package/src/channel-app/ChannelAppDetailPanel.tsx +510 -0
- package/src/channel-app/ChannelAppListPanel.tsx +201 -0
- package/src/channel-app/CreateChannelAppForm.tsx +529 -0
- package/src/channel-app/__tests__/channelAppWhatsApp.test.tsx +270 -0
- package/src/channel-app/__tests__/slackAppSetup.test.ts +75 -0
- package/src/channel-app/__tests__/useChannelAppHooks.test.tsx +157 -0
- package/src/channel-app/__tests__/whatsappAppSetup.test.ts +39 -0
- package/src/channel-app/index.ts +30 -0
- package/src/channel-app/internal.tsx +180 -0
- package/src/channel-app/slackAppSetup.ts +153 -0
- package/src/channel-app/useChannelAppList.ts +59 -0
- package/src/channel-app/useCreateChannelApp.ts +70 -0
- package/src/channel-app/useDeleteChannelApp.ts +62 -0
- package/src/channel-app/useUpdateChannelApp.ts +70 -0
- package/src/channel-app/whatsappAppSetup.ts +62 -0
- package/src/environment/index.ts +2 -0
- package/src/environment/useToolCredentialsReadiness.ts +122 -0
- package/src/execution/ArtifactContentBody.tsx +6 -88
- package/src/execution/ArtifactFileContent.tsx +110 -0
- package/src/execution/ArtifactRow.tsx +28 -118
- package/src/execution/ArtifactRowView.tsx +137 -0
- package/src/execution/FileChangesView.tsx +4 -69
- package/src/execution/SubAgentSection.tsx +2 -36
- package/src/execution/ToolCallItem.tsx +48 -175
- package/src/execution/__tests__/ArtifactFileContent.test.tsx +60 -0
- package/src/execution/__tests__/ArtifactRowView.test.tsx +78 -0
- package/src/execution/__tests__/agent-execution-document.test.ts +45 -0
- package/src/execution/__tests__/artifact-row-item.test.ts +128 -0
- package/src/execution/__tests__/deriveExecutionFileChanges.test.ts +270 -0
- package/src/execution/__tests__/useArtifactContentById.test.tsx +85 -0
- package/src/execution/__tests__/useLiveAgentExecution.test.tsx +202 -0
- package/src/execution/agent-execution-document.ts +54 -0
- package/src/execution/artifact-document.ts +24 -0
- package/src/execution/artifact-row-item.ts +97 -0
- package/src/execution/deriveExecutionFileChanges.ts +237 -0
- package/src/execution/file-change-document.ts +37 -0
- package/src/execution/index.ts +36 -0
- package/src/execution/useArtifactContentById.ts +120 -0
- package/src/execution/useArtifactDownload.ts +4 -3
- package/src/execution/useCreateAgentExecution.ts +1 -1
- package/src/execution/useLiveAgentExecution.ts +127 -0
- package/src/index.ts +155 -11
- package/src/internal/DecisionButton.tsx +4 -3
- package/src/internal/__tests__/ThreadCardShell.test.tsx +105 -0
- package/src/internal/__tests__/oauthPopup.test.ts +245 -0
- package/src/internal/oauthPopup.ts +261 -0
- package/src/internal/store/__tests__/workflow-execution-event-store.test.ts +375 -5
- package/src/internal/store/index.ts +0 -3
- package/src/internal/store/workflow-execution-event-store.ts +123 -4
- package/src/internal/store/workspace-file-selection-store.ts +2 -5
- package/src/internal/thread-card/ThreadCardShell.tsx +189 -0
- package/src/internal/thread-card/glyphs.tsx +108 -0
- package/src/internal/thread-card/index.ts +19 -0
- package/src/internal/useRevealLine.ts +2 -2
- package/src/mcp-server/OAuthCallbackHandler.tsx +2 -2
- package/src/mcp-server/useMcpServerOAuthConnect.ts +22 -184
- package/src/provider.tsx +42 -0
- package/src/session/NewSessionViewer.tsx +0 -1
- package/src/session/SessionPanelChip.tsx +10 -96
- package/src/session/SessionViewer.tsx +170 -144
- package/src/session/__tests__/SessionViewer-artifactTabs.test.tsx +1 -1
- package/src/session/__tests__/observerAudience.test.tsx +241 -0
- package/src/session/__tests__/useSessionPanel.test.ts +6 -61
- package/src/session/__tests__/useSessionRailViews.test.tsx +5 -27
- package/src/session/audience.ts +15 -1
- package/src/session/channelOrigin.ts +45 -0
- package/src/session/facets/index.ts +0 -3
- package/src/session/index.ts +9 -6
- package/src/session/useSessionFileChanges.ts +12 -153
- package/src/session/useSessionPanel.ts +8 -51
- package/src/session/useSessionRailViews.tsx +2 -27
- package/src/settings/ChannelAppsSection.tsx +133 -0
- package/src/settings/index.ts +1 -0
- package/src/settings/settings-nav.ts +6 -0
- package/src/sharing/AgentShareList.tsx +85 -64
- package/src/sharing/ShareAgentDialog.tsx +1 -1
- package/src/sharing/__tests__/AgentShareList.test.tsx +92 -12
- package/src/sharing/useShareToolReadiness.ts +13 -101
- package/src/styles.css +14 -0
- package/src/workflow/WorkflowAgentExecutionDocument.tsx +283 -0
- package/src/workflow/WorkflowApprovalList.tsx +158 -0
- package/src/workflow/WorkflowArtifactDocument.tsx +257 -0
- package/src/workflow/WorkflowExecutionGraph.tsx +40 -78
- package/src/workflow/WorkflowExecutionViewer.tsx +610 -287
- package/src/workflow/WorkflowFileReviewList.tsx +1 -1
- package/src/workflow/WorkflowTaskApprovalCard.tsx +5 -4
- package/src/workflow/WorkflowTaskApprovalSummary.tsx +6 -6
- package/src/workflow/__tests__/WorkflowAgentExecutionDocument.test.tsx +651 -0
- package/src/workflow/__tests__/WorkflowApprovalList.test.tsx +229 -0
- package/src/workflow/__tests__/WorkflowArtifactDocument.test.tsx +90 -0
- package/src/workflow/__tests__/WorkflowArtifactsTab.test.tsx +85 -0
- package/src/workflow/__tests__/WorkflowChangesTab.test.tsx +113 -0
- package/src/workflow/__tests__/WorkflowExecutionViewer.approvals.test.tsx +473 -0
- package/src/workflow/__tests__/WorkflowExecutionViewer.reconciliation.test.tsx +632 -0
- package/src/workflow/__tests__/WorkflowTaskApprovalSummary.test.tsx +1 -1
- package/src/workflow/__tests__/WorkflowTaskThread.test.tsx +947 -0
- package/src/workflow/__tests__/WorkflowUsageTab.test.tsx +163 -0
- package/src/workflow/__tests__/agent-call-live-experience.test.ts +6 -53
- package/src/workflow/__tests__/derive-execution-overlays.test.ts +4 -0
- package/src/workflow/__tests__/deriveWorkflowArtifactItems.test.ts +71 -0
- package/src/workflow/__tests__/deriveWorkflowUsageItems.test.ts +132 -0
- package/src/workflow/__tests__/execution-graph.test.ts +8 -0
- package/src/workflow/__tests__/project-thread-items.test.ts +428 -0
- package/src/workflow/__tests__/structured-data-viewer.test.tsx +1 -1
- package/src/workflow/__tests__/task-approval.test.ts +149 -0
- package/src/workflow/__tests__/task-detail-io.test.ts +40 -0
- package/src/workflow/__tests__/task-presentation.test.ts +479 -0
- package/src/workflow/__tests__/useActiveTaskName.test.ts +4 -0
- package/src/workflow/__tests__/useApprovalBoundary.test.ts +158 -0
- package/src/workflow/__tests__/useExecutionAnnouncements.test.ts +4 -0
- package/src/workflow/__tests__/useFollowExecution.test.ts +2 -89
- package/src/workflow/__tests__/useWorkflowExecutionFileChanges.test.tsx +412 -0
- package/src/workflow/__tests__/useWorkflowExecutionPanel.test.ts +297 -0
- package/src/workflow/__tests__/useWorkflowExecutionRailViews.test.tsx +115 -0
- package/src/workflow/deriveWorkflowArtifactItems.ts +59 -0
- package/src/workflow/deriveWorkflowUsageItems.ts +73 -0
- package/src/workflow/diagnosis-document.ts +31 -0
- package/src/workflow/execution/index.ts +0 -15
- package/src/workflow/facets/WorkflowArtifactsTab.tsx +99 -0
- package/src/workflow/facets/WorkflowChangesTab.tsx +129 -0
- package/src/workflow/facets/WorkflowUsageTab.tsx +258 -0
- package/src/workflow/format-utils.ts +2 -3
- package/src/workflow/index.ts +106 -62
- package/src/workflow/inspector/index.ts +0 -4
- package/src/workflow/instance/WorkflowInstanceList.tsx +59 -41
- package/src/workflow/instance/__tests__/WorkflowInstanceList.test.tsx +156 -0
- package/src/workflow/task-detail/index.ts +11 -0
- package/src/workflow/task-detail/task-approval.ts +158 -0
- package/src/workflow/task-detail/task-detail-io.ts +65 -0
- package/src/workflow/thread/WorkflowTaskThread.tsx +845 -0
- package/src/workflow/thread/project-thread-items.ts +235 -0
- package/src/workflow/thread/task-presentation.ts +427 -0
- package/src/workflow/thread/thread-presentation.ts +59 -0
- package/src/workflow/thread/useWorkflowThreadItems.ts +34 -0
- package/src/workflow/useApprovalBoundary.ts +72 -0
- package/src/workflow/useFollowExecution.ts +0 -26
- package/src/workflow/useWorkflowArtifactDownload.ts +68 -0
- package/src/workflow/useWorkflowExecutionActions.ts +3 -2
- package/src/workflow/useWorkflowExecutionFileChanges.ts +341 -0
- package/src/workflow/useWorkflowExecutionGraph.ts +3 -43
- package/src/workflow/useWorkflowExecutionPanel.ts +292 -0
- package/src/workflow/useWorkflowExecutionRailViews.tsx +173 -0
- package/src/workspace/FileViewer.tsx +3 -3
- package/src/workspace/PanelChip.tsx +103 -0
- package/src/workspace/WorkspaceSurface.tsx +50 -6
- package/src/workspace/__tests__/WorkspaceSurface.test.tsx +110 -0
- package/src/workspace/index.ts +3 -0
- package/styles.css +1 -1
- package/workflow/WorkflowAgentExecutionDocument.d.ts +79 -0
- package/workflow/WorkflowAgentExecutionDocument.d.ts.map +1 -0
- package/workflow/WorkflowAgentExecutionDocument.js +87 -0
- package/workflow/WorkflowAgentExecutionDocument.js.map +1 -0
- package/workflow/WorkflowApprovalList.d.ts +62 -0
- package/workflow/WorkflowApprovalList.d.ts.map +1 -0
- package/workflow/WorkflowApprovalList.js +52 -0
- package/workflow/WorkflowApprovalList.js.map +1 -0
- package/workflow/WorkflowArtifactDocument.d.ts +29 -0
- package/workflow/WorkflowArtifactDocument.d.ts.map +1 -0
- package/workflow/WorkflowArtifactDocument.js +89 -0
- package/workflow/WorkflowArtifactDocument.js.map +1 -0
- package/workflow/WorkflowExecutionGraph.d.ts +15 -13
- package/workflow/WorkflowExecutionGraph.d.ts.map +1 -1
- package/workflow/WorkflowExecutionGraph.js +18 -53
- package/workflow/WorkflowExecutionGraph.js.map +1 -1
- package/workflow/WorkflowExecutionViewer.d.ts +8 -5
- package/workflow/WorkflowExecutionViewer.d.ts.map +1 -1
- package/workflow/WorkflowExecutionViewer.js +329 -54
- package/workflow/WorkflowExecutionViewer.js.map +1 -1
- package/workflow/WorkflowFileReviewList.d.ts +1 -1
- package/workflow/WorkflowFileReviewList.js +1 -1
- package/workflow/WorkflowTaskApprovalCard.d.ts +4 -3
- package/workflow/WorkflowTaskApprovalCard.d.ts.map +1 -1
- package/workflow/WorkflowTaskApprovalCard.js +5 -4
- package/workflow/WorkflowTaskApprovalCard.js.map +1 -1
- package/workflow/WorkflowTaskApprovalSummary.d.ts +6 -6
- package/workflow/WorkflowTaskApprovalSummary.js +5 -5
- package/workflow/deriveWorkflowArtifactItems.d.ts +30 -0
- package/workflow/deriveWorkflowArtifactItems.d.ts.map +1 -0
- package/workflow/deriveWorkflowArtifactItems.js +38 -0
- package/workflow/deriveWorkflowArtifactItems.js.map +1 -0
- package/workflow/deriveWorkflowUsageItems.d.ts +36 -0
- package/workflow/deriveWorkflowUsageItems.d.ts.map +1 -0
- package/workflow/deriveWorkflowUsageItems.js +50 -0
- package/workflow/deriveWorkflowUsageItems.js.map +1 -0
- package/workflow/diagnosis-document.d.ts +17 -0
- package/workflow/diagnosis-document.d.ts.map +1 -0
- package/workflow/diagnosis-document.js +29 -0
- package/workflow/diagnosis-document.js.map +1 -0
- package/workflow/execution/index.d.ts +0 -2
- package/workflow/execution/index.d.ts.map +1 -1
- package/workflow/execution/index.js +0 -2
- package/workflow/execution/index.js.map +1 -1
- package/workflow/facets/WorkflowArtifactsTab.d.ts +26 -0
- package/workflow/facets/WorkflowArtifactsTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowArtifactsTab.js +34 -0
- package/workflow/facets/WorkflowArtifactsTab.js.map +1 -0
- package/workflow/facets/WorkflowChangesTab.d.ts +37 -0
- package/workflow/facets/WorkflowChangesTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowChangesTab.js +50 -0
- package/workflow/facets/WorkflowChangesTab.js.map +1 -0
- package/workflow/facets/WorkflowUsageTab.d.ts +27 -0
- package/workflow/facets/WorkflowUsageTab.d.ts.map +1 -0
- package/workflow/facets/WorkflowUsageTab.js +87 -0
- package/workflow/facets/WorkflowUsageTab.js.map +1 -0
- package/workflow/format-utils.d.ts +2 -3
- package/workflow/format-utils.d.ts.map +1 -1
- package/workflow/format-utils.js +2 -3
- package/workflow/format-utils.js.map +1 -1
- package/workflow/index.d.ts +21 -10
- package/workflow/index.d.ts.map +1 -1
- package/workflow/index.js +29 -14
- package/workflow/index.js.map +1 -1
- package/workflow/inspector/index.d.ts +0 -2
- package/workflow/inspector/index.d.ts.map +1 -1
- package/workflow/inspector/index.js +0 -2
- package/workflow/inspector/index.js.map +1 -1
- package/workflow/instance/WorkflowInstanceList.d.ts.map +1 -1
- package/workflow/instance/WorkflowInstanceList.js +11 -3
- package/workflow/instance/WorkflowInstanceList.js.map +1 -1
- package/workflow/task-detail/StructuredDataViewer.d.ts.map +1 -0
- package/workflow/task-detail/StructuredDataViewer.js.map +1 -0
- package/workflow/task-detail/index.d.ts +4 -0
- package/workflow/task-detail/index.d.ts.map +1 -0
- package/workflow/task-detail/index.js +4 -0
- package/workflow/task-detail/index.js.map +1 -0
- package/workflow/task-detail/task-approval.d.ts +89 -0
- package/workflow/task-detail/task-approval.d.ts.map +1 -0
- package/workflow/task-detail/task-approval.js +84 -0
- package/workflow/task-detail/task-approval.js.map +1 -0
- package/workflow/task-detail/task-detail-io.d.ts +39 -0
- package/workflow/task-detail/task-detail-io.d.ts.map +1 -0
- package/workflow/task-detail/task-detail-io.js +42 -0
- package/workflow/task-detail/task-detail-io.js.map +1 -0
- package/workflow/thread/WorkflowTaskThread.d.ts +91 -0
- package/workflow/thread/WorkflowTaskThread.d.ts.map +1 -0
- package/workflow/thread/WorkflowTaskThread.js +318 -0
- package/workflow/thread/WorkflowTaskThread.js.map +1 -0
- package/workflow/thread/project-thread-items.d.ts +108 -0
- package/workflow/thread/project-thread-items.d.ts.map +1 -0
- package/workflow/thread/project-thread-items.js +126 -0
- package/workflow/thread/project-thread-items.js.map +1 -0
- package/workflow/thread/task-presentation.d.ts +73 -0
- package/workflow/thread/task-presentation.d.ts.map +1 -0
- package/workflow/thread/task-presentation.js +331 -0
- package/workflow/thread/task-presentation.js.map +1 -0
- package/workflow/thread/thread-presentation.d.ts +28 -0
- package/workflow/thread/thread-presentation.d.ts.map +1 -0
- package/workflow/thread/thread-presentation.js +28 -0
- package/workflow/thread/thread-presentation.js.map +1 -0
- package/workflow/thread/useWorkflowThreadItems.d.ts +16 -0
- package/workflow/thread/useWorkflowThreadItems.d.ts.map +1 -0
- package/workflow/thread/useWorkflowThreadItems.js +22 -0
- package/workflow/thread/useWorkflowThreadItems.js.map +1 -0
- package/workflow/useApprovalBoundary.d.ts +38 -0
- package/workflow/useApprovalBoundary.d.ts.map +1 -0
- package/workflow/useApprovalBoundary.js +55 -0
- package/workflow/useApprovalBoundary.js.map +1 -0
- package/workflow/useFollowExecution.d.ts +0 -20
- package/workflow/useFollowExecution.d.ts.map +1 -1
- package/workflow/useFollowExecution.js +0 -17
- package/workflow/useFollowExecution.js.map +1 -1
- package/workflow/useWorkflowArtifactDownload.d.ts +28 -0
- package/workflow/useWorkflowArtifactDownload.d.ts.map +1 -0
- package/workflow/useWorkflowArtifactDownload.js +45 -0
- package/workflow/useWorkflowArtifactDownload.js.map +1 -0
- package/workflow/useWorkflowExecutionActions.d.ts +3 -2
- package/workflow/useWorkflowExecutionActions.d.ts.map +1 -1
- package/workflow/useWorkflowExecutionActions.js.map +1 -1
- package/workflow/useWorkflowExecutionFileChanges.d.ts +107 -0
- package/workflow/useWorkflowExecutionFileChanges.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionFileChanges.js +244 -0
- package/workflow/useWorkflowExecutionFileChanges.js.map +1 -0
- package/workflow/useWorkflowExecutionGraph.d.ts +1 -14
- package/workflow/useWorkflowExecutionGraph.d.ts.map +1 -1
- package/workflow/useWorkflowExecutionGraph.js +2 -25
- package/workflow/useWorkflowExecutionGraph.js.map +1 -1
- package/workflow/useWorkflowExecutionPanel.d.ts +108 -0
- package/workflow/useWorkflowExecutionPanel.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionPanel.js +103 -0
- package/workflow/useWorkflowExecutionPanel.js.map +1 -0
- package/workflow/useWorkflowExecutionRailViews.d.ts +46 -0
- package/workflow/useWorkflowExecutionRailViews.d.ts.map +1 -0
- package/workflow/useWorkflowExecutionRailViews.js +81 -0
- package/workflow/useWorkflowExecutionRailViews.js.map +1 -0
- package/workspace/FileViewer.d.ts +1 -1
- package/workspace/FileViewer.js +3 -3
- package/workspace/FileViewer.js.map +1 -1
- package/workspace/PanelChip.d.ts +27 -0
- package/workspace/PanelChip.d.ts.map +1 -0
- package/workspace/PanelChip.js +42 -0
- package/workspace/PanelChip.js.map +1 -0
- package/workspace/WorkspaceSurface.d.ts +25 -1
- package/workspace/WorkspaceSurface.d.ts.map +1 -1
- package/workspace/WorkspaceSurface.js +21 -9
- package/workspace/WorkspaceSurface.js.map +1 -1
- package/workspace/index.d.ts +3 -1
- package/workspace/index.d.ts.map +1 -1
- package/workspace/index.js +1 -0
- package/workspace/index.js.map +1 -1
- package/execution/ThreadSelectionContext.d.ts +0 -17
- package/execution/ThreadSelectionContext.d.ts.map +0 -1
- package/execution/ThreadSelectionContext.js +0 -18
- package/execution/ThreadSelectionContext.js.map +0 -1
- package/execution/useThreadSelection.d.ts +0 -35
- package/execution/useThreadSelection.d.ts.map +0 -1
- package/execution/useThreadSelection.js +0 -65
- package/execution/useThreadSelection.js.map +0 -1
- package/internal/store/selection-store.d.ts +0 -53
- package/internal/store/selection-store.d.ts.map +0 -1
- package/internal/store/selection-store.js +0 -88
- package/internal/store/selection-store.js.map +0 -1
- package/session/artifact-document.d.ts.map +0 -1
- package/session/artifact-document.js +0 -22
- package/session/artifact-document.js.map +0 -1
- package/session/facets/InspectTab.d.ts +0 -13
- package/session/facets/InspectTab.d.ts.map +0 -1
- package/session/facets/InspectTab.js +0 -19
- package/session/facets/InspectTab.js.map +0 -1
- package/src/execution/ThreadSelectionContext.tsx +0 -20
- package/src/execution/useThreadSelection.ts +0 -95
- package/src/internal/store/__tests__/selection-store.test.ts +0 -115
- package/src/internal/store/selection-store.ts +0 -112
- package/src/session/artifact-document.ts +0 -23
- package/src/session/facets/InspectTab.tsx +0 -57
- package/src/workflow/WorkflowExecutionApprovalCard.tsx +0 -154
- package/src/workflow/WorkflowExecutionArtifactPanel.tsx +0 -107
- package/src/workflow/WorkflowExecutionCostPanel.tsx +0 -120
- package/src/workflow/WorkflowExecutionTaskPanel.tsx +0 -129
- package/src/workflow/WorkflowExecutionTimeline.tsx +0 -151
- package/src/workflow/WorkflowExecutionTimelineEvent.tsx +0 -497
- package/src/workflow/__tests__/ExecutionInspector.test.tsx +0 -155
- package/src/workflow/__tests__/WorkflowExecutionApprovalCard.test.tsx +0 -129
- package/src/workflow/__tests__/derive-task-detail.test.ts +0 -1265
- package/src/workflow/__tests__/derive-waterfall-entries.test.ts +0 -521
- package/src/workflow/__tests__/execution-inspector.test.tsx +0 -332
- package/src/workflow/execution/derive-waterfall-entries.ts +0 -377
- package/src/workflow/execution/useWaterfallEntries.ts +0 -125
- package/src/workflow/execution-inspector/AgentCallTab.tsx +0 -169
- package/src/workflow/execution-inspector/ErrorTab.tsx +0 -110
- package/src/workflow/execution-inspector/EventLogTab.tsx +0 -79
- package/src/workflow/execution-inspector/ExecutionInspector.tsx +0 -341
- package/src/workflow/execution-inspector/InputOutputTab.tsx +0 -325
- package/src/workflow/execution-inspector/RetriesTab.tsx +0 -68
- package/src/workflow/execution-inspector/SummaryTab.tsx +0 -62
- package/src/workflow/execution-inspector/derive-task-detail.ts +0 -584
- package/src/workflow/execution-inspector/index.ts +0 -14
- package/src/workflow/execution-inspector/useExecutionTaskDetail.ts +0 -55
- package/src/workflow/inspector/ExecutionInspectorAdapter.tsx +0 -40
- package/src/workflow/waterfall/WaterfallBar.tsx +0 -167
- package/src/workflow/waterfall/WaterfallRow.tsx +0 -112
- package/src/workflow/waterfall/WaterfallScale.tsx +0 -52
- package/src/workflow/waterfall/WaterfallTimeline.tsx +0 -138
- package/src/workflow/waterfall/WaterfallTooltip.tsx +0 -74
- package/src/workflow/waterfall/index.ts +0 -5
- package/workflow/WorkflowExecutionApprovalCard.d.ts +0 -34
- package/workflow/WorkflowExecutionApprovalCard.d.ts.map +0 -1
- package/workflow/WorkflowExecutionApprovalCard.js +0 -46
- package/workflow/WorkflowExecutionApprovalCard.js.map +0 -1
- package/workflow/WorkflowExecutionArtifactPanel.d.ts +0 -15
- package/workflow/WorkflowExecutionArtifactPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionArtifactPanel.js +0 -46
- package/workflow/WorkflowExecutionArtifactPanel.js.map +0 -1
- package/workflow/WorkflowExecutionCostPanel.d.ts +0 -18
- package/workflow/WorkflowExecutionCostPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionCostPanel.js +0 -31
- package/workflow/WorkflowExecutionCostPanel.js.map +0 -1
- package/workflow/WorkflowExecutionTaskPanel.d.ts +0 -24
- package/workflow/WorkflowExecutionTaskPanel.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTaskPanel.js +0 -51
- package/workflow/WorkflowExecutionTaskPanel.js.map +0 -1
- package/workflow/WorkflowExecutionTimeline.d.ts +0 -42
- package/workflow/WorkflowExecutionTimeline.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTimeline.js +0 -52
- package/workflow/WorkflowExecutionTimeline.js.map +0 -1
- package/workflow/WorkflowExecutionTimelineEvent.d.ts +0 -25
- package/workflow/WorkflowExecutionTimelineEvent.d.ts.map +0 -1
- package/workflow/WorkflowExecutionTimelineEvent.js +0 -179
- package/workflow/WorkflowExecutionTimelineEvent.js.map +0 -1
- package/workflow/execution/derive-waterfall-entries.d.ts +0 -85
- package/workflow/execution/derive-waterfall-entries.d.ts.map +0 -1
- package/workflow/execution/derive-waterfall-entries.js +0 -268
- package/workflow/execution/derive-waterfall-entries.js.map +0 -1
- package/workflow/execution/useWaterfallEntries.d.ts +0 -25
- package/workflow/execution/useWaterfallEntries.d.ts.map +0 -1
- package/workflow/execution/useWaterfallEntries.js +0 -67
- package/workflow/execution/useWaterfallEntries.js.map +0 -1
- package/workflow/execution-inspector/AgentCallTab.d.ts +0 -21
- package/workflow/execution-inspector/AgentCallTab.d.ts.map +0 -1
- package/workflow/execution-inspector/AgentCallTab.js +0 -36
- package/workflow/execution-inspector/AgentCallTab.js.map +0 -1
- package/workflow/execution-inspector/ErrorTab.d.ts +0 -9
- package/workflow/execution-inspector/ErrorTab.d.ts.map +0 -1
- package/workflow/execution-inspector/ErrorTab.js +0 -29
- package/workflow/execution-inspector/ErrorTab.js.map +0 -1
- package/workflow/execution-inspector/EventLogTab.d.ts +0 -11
- package/workflow/execution-inspector/EventLogTab.d.ts.map +0 -1
- package/workflow/execution-inspector/EventLogTab.js +0 -47
- package/workflow/execution-inspector/EventLogTab.js.map +0 -1
- package/workflow/execution-inspector/ExecutionInspector.d.ts +0 -69
- package/workflow/execution-inspector/ExecutionInspector.d.ts.map +0 -1
- package/workflow/execution-inspector/ExecutionInspector.js +0 -145
- package/workflow/execution-inspector/ExecutionInspector.js.map +0 -1
- package/workflow/execution-inspector/InputOutputTab.d.ts +0 -20
- package/workflow/execution-inspector/InputOutputTab.d.ts.map +0 -1
- package/workflow/execution-inspector/InputOutputTab.js +0 -124
- package/workflow/execution-inspector/InputOutputTab.js.map +0 -1
- package/workflow/execution-inspector/RetriesTab.d.ts +0 -7
- package/workflow/execution-inspector/RetriesTab.d.ts.map +0 -1
- package/workflow/execution-inspector/RetriesTab.js +0 -11
- package/workflow/execution-inspector/RetriesTab.js.map +0 -1
- package/workflow/execution-inspector/StructuredDataViewer.d.ts.map +0 -1
- package/workflow/execution-inspector/StructuredDataViewer.js.map +0 -1
- package/workflow/execution-inspector/SummaryTab.d.ts +0 -7
- package/workflow/execution-inspector/SummaryTab.d.ts.map +0 -1
- package/workflow/execution-inspector/SummaryTab.js +0 -10
- package/workflow/execution-inspector/SummaryTab.js.map +0 -1
- package/workflow/execution-inspector/derive-task-detail.d.ts +0 -140
- package/workflow/execution-inspector/derive-task-detail.d.ts.map +0 -1
- package/workflow/execution-inspector/derive-task-detail.js +0 -366
- package/workflow/execution-inspector/derive-task-detail.js.map +0 -1
- package/workflow/execution-inspector/index.d.ts +0 -4
- package/workflow/execution-inspector/index.d.ts.map +0 -1
- package/workflow/execution-inspector/index.js +0 -4
- package/workflow/execution-inspector/index.js.map +0 -1
- package/workflow/execution-inspector/useExecutionTaskDetail.d.ts +0 -38
- package/workflow/execution-inspector/useExecutionTaskDetail.d.ts.map +0 -1
- package/workflow/execution-inspector/useExecutionTaskDetail.js +0 -37
- package/workflow/execution-inspector/useExecutionTaskDetail.js.map +0 -1
- package/workflow/inspector/ExecutionInspectorAdapter.d.ts +0 -26
- package/workflow/inspector/ExecutionInspectorAdapter.d.ts.map +0 -1
- package/workflow/inspector/ExecutionInspectorAdapter.js +0 -23
- package/workflow/inspector/ExecutionInspectorAdapter.js.map +0 -1
- package/workflow/waterfall/WaterfallBar.d.ts +0 -19
- package/workflow/waterfall/WaterfallBar.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallBar.js +0 -70
- package/workflow/waterfall/WaterfallBar.js.map +0 -1
- package/workflow/waterfall/WaterfallRow.d.ts +0 -18
- package/workflow/waterfall/WaterfallRow.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallRow.js +0 -45
- package/workflow/waterfall/WaterfallRow.js.map +0 -1
- package/workflow/waterfall/WaterfallScale.d.ts +0 -14
- package/workflow/waterfall/WaterfallScale.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallScale.js +0 -22
- package/workflow/waterfall/WaterfallScale.js.map +0 -1
- package/workflow/waterfall/WaterfallTimeline.d.ts +0 -46
- package/workflow/waterfall/WaterfallTimeline.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallTimeline.js +0 -60
- package/workflow/waterfall/WaterfallTimeline.js.map +0 -1
- package/workflow/waterfall/WaterfallTooltip.d.ts +0 -15
- package/workflow/waterfall/WaterfallTooltip.d.ts.map +0 -1
- package/workflow/waterfall/WaterfallTooltip.js +0 -20
- package/workflow/waterfall/WaterfallTooltip.js.map +0 -1
- package/workflow/waterfall/index.d.ts +0 -6
- package/workflow/waterfall/index.d.ts.map +0 -1
- package/workflow/waterfall/index.js +0 -6
- package/workflow/waterfall/index.js.map +0 -1
- /package/src/workflow/{execution-inspector → task-detail}/StructuredDataViewer.tsx +0 -0
- /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.d.ts +0 -0
- /package/workflow/{execution-inspector → task-detail}/StructuredDataViewer.js +0 -0
package/README.md
CHANGED
|
@@ -61,7 +61,7 @@ Three things are required:
|
|
|
61
61
|
| `executionTarget` | `"local" \| "cloud"` | No | Default execution target for sessions and workflow executions created in this provider. Omit to let the server decide. See [Local Execution](#local-execution). |
|
|
62
62
|
| `runnerAdapter` | `RunnerAdapter` | No | Runner lifecycle adapter, required when `executionTarget` is `"local"`. Omit for cloud. See [Local Execution](#local-execution). |
|
|
63
63
|
| `preset` | `ThemePresetId` | No | Built-in theme preset to apply. Omit for the default Stigmer palette. |
|
|
64
|
-
| `className` | `string` | No | Additional CSS classes
|
|
64
|
+
| `className` | `string` | No | Additional CSS classes for theming. Applied to the scoping container *and* mirrored onto the portal container, so token overrides reach portaled surfaces — not a layout channel (see [Style Isolation](#style-isolation)). |
|
|
65
65
|
|
|
66
66
|
### `useStigmer()` Hook
|
|
67
67
|
|
|
@@ -198,6 +198,21 @@ Returns `"light"` or `"dark"` — never `"system"`. The provider resolves `"syst
|
|
|
198
198
|
|
|
199
199
|
This means you can mount `<StigmerProvider>` inside a sidebar, modal, or any section of your page and Stigmer's styles stay contained.
|
|
200
200
|
|
|
201
|
+
### Sizing
|
|
202
|
+
|
|
203
|
+
The scoping container ships with no layout styling — it sizes to its content, so document-flow embeddings need nothing. For fixed-height embeddings (docked panes, split layouts), height-filling components like `SessionViewer` need a percentage-height chain to reach them; opt the container into that chain from host CSS:
|
|
204
|
+
|
|
205
|
+
```css
|
|
206
|
+
.stgm[data-stgm-root] {
|
|
207
|
+
height: 100%;
|
|
208
|
+
min-height: 0;
|
|
209
|
+
}
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
This is opt-in rather than an SDK default because `height: 100%` is not safe in arbitrary layouts (under a `flex-1` parent it resolves against the flexed size and balloons) — only the host knows its layout.
|
|
213
|
+
|
|
214
|
+
Two marker attributes are stable public selectors: `data-stgm-root` on the in-tree container, `data-stgm-portal` on the portal container appended to `document.body`. See the [theming guide](../../docs/sdk/theme/theming.mdx) for the full sizing and embedding reference.
|
|
215
|
+
|
|
201
216
|
## Local Execution
|
|
202
217
|
|
|
203
218
|
By default, agent and workflow execution runs in the cloud — the Stigmer server provisions a sandbox with a runner. Desktop apps, CLIs, and self-hosted deployments can instead run execution on the client. Two provider props control this.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentInstanceList.d.ts","sourceRoot":"","sources":["../../src/agent-instance/AgentInstanceList.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AgentInstanceList.d.ts","sourceRoot":"","sources":["../../src/agent-instance/AgentInstanceList.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4DAA4D,CAAC;AAahG,2CAA2C;AAC3C,MAAM,WAAW,sBAAsB;IACrC,+CAA+C;IAC/C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,gGAAgG;IAChG,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC;;;;OAIG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB;;;;;OAKG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IACpC,kEAAkE;IAClE,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IAC7D,kEAAkE;IAClE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IACjE,2DAA2D;IAC3D,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IAC3D;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,kCAAkC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,iBAAiB,EACjB,GAAG,EACH,SAAS,EACT,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,SAAS,GACV,EAAE,sBAAsB,2CAgGxB"}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useCallback, useEffect, useMemo, useRef } from "react";
|
|
4
|
+
import { MoreHorizontal, Play, Trash2 } from "lucide-react";
|
|
4
5
|
import { cn } from "@stigmer/theme";
|
|
5
6
|
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
6
7
|
import { useAgentInstances } from "./useAgentInstances.js";
|
|
8
|
+
import { ActionMenu } from "../action-menu/index.js";
|
|
7
9
|
import { Button } from "../button/Button.js";
|
|
8
10
|
import { useEnvironmentList } from "../environment/useEnvironmentList.js";
|
|
9
11
|
import { ResourceVisibilityControl } from "../library/ResourceVisibilityControl.js";
|
|
10
|
-
import {
|
|
12
|
+
import { useCheckPermission } from "../iam-policy/useCheckPermission.js";
|
|
11
13
|
import { AgentInstanceEmptyState } from "./AgentInstanceEmptyState.js";
|
|
12
14
|
/** Label marking a user's auto-managed personal instance. */
|
|
13
15
|
const PERSONAL_LABEL = "stigmer.ai/personal";
|
|
@@ -50,14 +52,20 @@ export function AgentInstanceList({ agentId, defaultInstanceId, org, viewerOrg,
|
|
|
50
52
|
if (userInstances.length === 0) {
|
|
51
53
|
return _jsx(AgentInstanceEmptyState, { onCreateClick: onCreateClick, className: className });
|
|
52
54
|
}
|
|
53
|
-
return (_jsxs("div", { className: cn("space-y-3", className), children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("h3", { className: "text-sm font-medium text-foreground", children: [userInstances.length, " ", userInstances.length === 1 ? "instance" : "instances"] }), onCreateClick && (_jsx(Button, { variant: "outline", size: "xs", icon: _jsx(PlusIcon, {}), onClick: onCreateClick, children: "Create instance" }))] }), _jsx("div", { className: "overflow-hidden rounded-lg border border-border", children: _jsxs("table", { className: "w-full text-sm", children: [_jsx("thead", { children: _jsxs("tr", { className: "border-b border-border bg-muted-subtle", children: [_jsx("th", { className: "px-4 py-2 text-left font-medium text-muted-foreground", children: "Name" }), _jsx("th", { className: "px-4 py-2 text-left font-medium text-muted-foreground", children: "Environments" }), _jsx("th", { className: "px-4 py-2 text-left font-medium text-muted-foreground", children: "Visibility" }), _jsx("th", { className: "px-4 py-2 text-right font-medium text-muted-foreground", children: "Actions" })] }) }), _jsx("tbody", { className: "divide-y divide-border", children: userInstances.map((inst) => (_jsx(InstanceRow, { instance: inst, resolveEnvName: resolveEnvName, onRowClick: onInstanceClick, onStartSessionClick: onStartSessionClick, onDeleteClick: onDeleteClick, refetch: refetch }, inst.metadata?.id))) })] }) })] }));
|
|
55
|
+
return (_jsxs("div", { className: cn("space-y-3", className), children: [_jsxs("div", { className: "flex items-center justify-between", children: [_jsxs("h3", { className: "text-sm font-medium text-foreground", children: [userInstances.length, " ", userInstances.length === 1 ? "instance" : "instances"] }), onCreateClick && (_jsx(Button, { variant: "outline", size: "xs", icon: _jsx(PlusIcon, {}), onClick: onCreateClick, children: "Create instance" }))] }), _jsx("div", { className: "overflow-hidden rounded-lg border border-border", children: _jsxs("table", { className: "w-full table-fixed text-sm", children: [_jsx("thead", { children: _jsxs("tr", { className: "border-b border-border bg-muted-subtle", children: [_jsx("th", { className: "px-4 py-2 text-left font-medium text-muted-foreground", children: "Name" }), _jsx("th", { className: "px-4 py-2 text-left font-medium text-muted-foreground", children: "Environments" }), _jsx("th", { className: "w-36 px-4 py-2 text-left font-medium text-muted-foreground", children: "Visibility" }), _jsx("th", { className: "w-16 px-4 py-2 text-right font-medium text-muted-foreground", children: "Actions" })] }) }), _jsx("tbody", { className: "divide-y divide-border", children: userInstances.map((inst) => (_jsx(InstanceRow, { instance: inst, resolveEnvName: resolveEnvName, onRowClick: onInstanceClick, onStartSessionClick: onStartSessionClick, onDeleteClick: onDeleteClick, refetch: refetch }, inst.metadata?.id))) })] }) })] }));
|
|
54
56
|
}
|
|
55
57
|
function InstanceRow({ instance, resolveEnvName, onRowClick, onStartSessionClick, onDeleteClick, refetch, }) {
|
|
56
58
|
const meta = instance.metadata;
|
|
57
59
|
const id = meta?.id ?? "";
|
|
58
60
|
const isPersonal = meta?.labels?.[PERSONAL_LABEL] === "true";
|
|
59
61
|
const envRefs = instance.spec?.environmentRefs ?? [];
|
|
60
|
-
|
|
62
|
+
// Delete is the only permission-gated row action (Start session is offered
|
|
63
|
+
// whenever the host wires it). Resolved here so the kebab is hidden when it
|
|
64
|
+
// would hold no items — never an empty overflow menu.
|
|
65
|
+
const { allowed: canDelete } = useCheckPermission({ kind: "agent_instance", id }, "can_delete");
|
|
66
|
+
const showStartSession = !!onStartSessionClick;
|
|
67
|
+
const showDelete = !!onDeleteClick && canDelete;
|
|
68
|
+
return (_jsxs("tr", { className: cn("transition-colors", onRowClick && "cursor-pointer hover:bg-accent-hover"), onClick: () => onRowClick?.(instance), children: [_jsx("td", { className: "px-4 py-2.5", children: _jsxs("div", { className: "min-w-0", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2", children: [_jsx("span", { className: "truncate font-medium text-foreground", title: meta?.name || meta?.slug || undefined, children: meta?.name || meta?.slug || "\u2014" }), isPersonal && (_jsx("span", { className: cn("inline-flex shrink-0 items-center rounded-md px-1.5 py-0.5", "text-[0.6rem] font-medium uppercase tracking-wide", "bg-muted text-muted-foreground border border-border"), children: "Personal" }))] }), instance.spec?.description && (_jsx("p", { className: "text-[0.65rem] text-muted-foreground truncate", children: instance.spec.description }))] }) }), _jsx("td", { className: "px-4 py-2.5", children: envRefs.length === 0 ? (_jsx("span", { className: "text-xs text-muted-foreground", children: "None" })) : (_jsx("div", { className: "flex flex-wrap gap-1", children: envRefs.map((ref, idx) => (_jsx("span", { className: cn("inline-flex items-center rounded-md px-1.5 py-0.5", "text-[0.65rem] font-medium", "bg-muted text-muted-foreground", "border border-border"), children: resolveEnvName(ref.slug) }, `${ref.slug}-${idx}`))) })) }), _jsx("td", { className: "px-4 py-2.5", onClick: (e) => e.stopPropagation(), children: id ? (_jsx(ResourceVisibilityControl, { kind: "agentInstance", resourceId: id, visibility: meta?.visibility ?? ApiResourceVisibility.visibility_private, onChanged: refetch })) : (_jsx("span", { className: "text-xs text-muted-foreground", children: "\u2014" })) }), _jsx("td", { className: "px-4 py-2.5 text-right", onClick: (e) => e.stopPropagation(), children: (showStartSession || showDelete) && (_jsxs(ActionMenu, { children: [_jsx(ActionMenu.Trigger, { className: "ml-auto", "aria-label": `Actions for ${meta?.name || meta?.slug}`, children: _jsx(MoreHorizontal, { className: "size-4" }) }), _jsxs(ActionMenu.Content, { children: [showStartSession && (_jsx(ActionMenu.Item, { icon: _jsx(Play, {}), onSelect: () => onStartSessionClick?.(instance), children: "Start session" })), showStartSession && showDelete && _jsx(ActionMenu.Separator, {}), showDelete && (_jsx(ActionMenu.Item, { icon: _jsx(Trash2, {}), variant: "destructive", onSelect: () => onDeleteClick?.(instance), children: "Delete" }))] })] })) })] }));
|
|
61
69
|
}
|
|
62
70
|
function LoadingSkeleton() {
|
|
63
71
|
return (_jsx("div", { className: "space-y-2 py-4", children: [1, 2, 3].map((i) => (_jsx("div", { className: "h-12 animate-pulse rounded-md bg-muted-faint" }, i))) }));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentInstanceList.js","sourceRoot":"","sources":["../../src/agent-instance/AgentInstanceList.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAChE,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAEpC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,yBAAyB,EAAE,MAAM,yCAAyC,CAAC;AACpF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"AgentInstanceList.js","sourceRoot":"","sources":["../../src/agent-instance/AgentInstanceList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import type { Agent } from "@stigmer/protos/ai/stigmer/agentic/agent/v1/api_pb";
|
|
2
|
+
import type { AgentChannel } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/api_pb";
|
|
3
|
+
/** Props for {@link AgentChannelsPanel}. */
|
|
4
|
+
export interface AgentChannelsPanelProps {
|
|
5
|
+
/** The agent whose channels are managed. */
|
|
6
|
+
readonly agent: Agent;
|
|
7
|
+
/**
|
|
8
|
+
* When provided, connect actions for redirect-style providers (Slack)
|
|
9
|
+
* delegate to the host instead of running the in-app popup flow. For
|
|
10
|
+
* hosts whose webview cannot open popups (the desktop app): the
|
|
11
|
+
* delegate typically opens the web console in the system browser.
|
|
12
|
+
* Called with the channel being (re)connected, or `null` for a
|
|
13
|
+
* brand-new connection. Direct-install providers (WhatsApp) always
|
|
14
|
+
* connect in-app — their flow is a plain API call with nothing for a
|
|
15
|
+
* popup to do — so they never invoke the delegate.
|
|
16
|
+
*/
|
|
17
|
+
readonly onConnectExternal?: (channel: AgentChannel | null) => void;
|
|
18
|
+
/**
|
|
19
|
+
* Where the host manages Channel Apps (the console passes
|
|
20
|
+
* `/settings/channel-apps`). Threaded to the connect dialog's
|
|
21
|
+
* "Register a channel app" affordance; absent, the affordance
|
|
22
|
+
* degrades to plain guidance text.
|
|
23
|
+
*/
|
|
24
|
+
readonly channelAppsHref?: string;
|
|
25
|
+
/**
|
|
26
|
+
* Maps a session id to the host's session route (the console passes
|
|
27
|
+
* `` (id) => `/sessions/${id}` ``). Threaded to each card's
|
|
28
|
+
* Conversations dialog so rows link to the read-only transcript;
|
|
29
|
+
* absent, the rows render without links (DD-004 — the SDK never
|
|
30
|
+
* assumes a routing scheme).
|
|
31
|
+
*/
|
|
32
|
+
readonly sessionHref?: (sessionId: string) => string;
|
|
33
|
+
/** Additional CSS class names. */
|
|
34
|
+
readonly className?: string;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Management surface for an agent's {@link AgentChannel} connections —
|
|
38
|
+
* rendered in the agent detail view's Channels tab.
|
|
39
|
+
*
|
|
40
|
+
* One card per channel showing the two serving axes side by side: the
|
|
41
|
+
* observed provider install state (`pending_install` / `installed` /
|
|
42
|
+
* `revoked`) and the owner's serving switch (`spec.enabled`). Traffic
|
|
43
|
+
* flows only when installed AND enabled. Channels always live in the
|
|
44
|
+
* agent's own org (no cross-org arm, unlike shares), so no org selector
|
|
45
|
+
* is needed.
|
|
46
|
+
*
|
|
47
|
+
* Connecting runs the provider's own dialog — {@link ConnectSlackDialog}
|
|
48
|
+
* (OAuth popup) or {@link ConnectWhatsAppDialog} (direct install). On a
|
|
49
|
+
* `local` (OSS) backend, channel CRUD works but installs are cloud-only —
|
|
50
|
+
* connect affordances are replaced by a cloud-feature notice, matching
|
|
51
|
+
* the server's FAILED_PRECONDITION posture.
|
|
52
|
+
*
|
|
53
|
+
* Self-contained: owns its dialog, its confirmation prompts, and its
|
|
54
|
+
* refetch-after-mutation — hosts render it with just the agent (plus the
|
|
55
|
+
* external-connect delegate where popups are unavailable).
|
|
56
|
+
*
|
|
57
|
+
* This is an SDK component (DD-001) — embeddable by platform builders.
|
|
58
|
+
*/
|
|
59
|
+
export declare function AgentChannelsPanel({ agent, onConnectExternal, channelAppsHref, sessionHref, className, }: AgentChannelsPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
60
|
+
//# sourceMappingURL=AgentChannelsPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentChannelsPanel.d.ts","sourceRoot":"","sources":["../../src/channel/AgentChannelsPanel.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oDAAoD,CAAC;AAChF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAgC9F,4CAA4C;AAC5C,MAAM,WAAW,uBAAuB;IACtC,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB;;;;;;;;;OASG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI,KAAK,IAAI,CAAC;IACpE;;;;;OAKG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD,kCAAkC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,iBAAiB,EACjB,eAAe,EACf,WAAW,EACX,SAAS,GACV,EAAE,uBAAuB,2CA2PzB"}
|
|
@@ -0,0 +1,255 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useState } from "react";
|
|
4
|
+
import { KeyRound, MessageSquare, MoreHorizontal, Trash2 } from "lucide-react";
|
|
5
|
+
import { cn } from "@stigmer/theme";
|
|
6
|
+
import { getUserMessage } from "@stigmer/sdk";
|
|
7
|
+
import { AgentChannelInstallState } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/status_pb";
|
|
8
|
+
import { toast } from "../feedback/toast.js";
|
|
9
|
+
import { ActionMenu } from "../action-menu/index.js";
|
|
10
|
+
import { Button } from "../button/Button.js";
|
|
11
|
+
import { EmptyState } from "../empty-state/EmptyState.js";
|
|
12
|
+
import { Switch } from "../switch/Switch.js";
|
|
13
|
+
import { useChannelAppList } from "../channel-app/useChannelAppList.js";
|
|
14
|
+
import { useCheckPermission } from "../iam-policy/useCheckPermission.js";
|
|
15
|
+
import { ConfirmDialog } from "../resource-detail/ConfirmDialog.js";
|
|
16
|
+
import { useConfirmAction } from "../resource-detail/useConfirmAction.js";
|
|
17
|
+
import { useDeploymentMode } from "../deployment-mode.js";
|
|
18
|
+
import { CloudFeatureNotice } from "../internal/CloudFeatureNotice.js";
|
|
19
|
+
import { ChannelConversationsDialog } from "./ChannelConversationsDialog.js";
|
|
20
|
+
import { ChannelCredentialsDialog } from "./ChannelCredentialsDialog.js";
|
|
21
|
+
import { ConnectSlackDialog } from "./ConnectSlackDialog.js";
|
|
22
|
+
import { ConnectWhatsAppDialog } from "./ConnectWhatsAppDialog.js";
|
|
23
|
+
import { CHANNEL_PROVIDERS, channelProviderOf, } from "./providers.js";
|
|
24
|
+
import { channelPresentationOf, DEFAULT_CHANNEL_PRESENTATION, } from "./providerPresentation.js";
|
|
25
|
+
import { useAgentChannelList } from "./useAgentChannelList.js";
|
|
26
|
+
import { useChannelToolReadiness } from "./useChannelToolReadiness.js";
|
|
27
|
+
import { useDeleteAgentChannel } from "./useDeleteAgentChannel.js";
|
|
28
|
+
import { agentChannelToInput, useSaveAgentChannel } from "./useSaveAgentChannel.js";
|
|
29
|
+
/**
|
|
30
|
+
* Management surface for an agent's {@link AgentChannel} connections —
|
|
31
|
+
* rendered in the agent detail view's Channels tab.
|
|
32
|
+
*
|
|
33
|
+
* One card per channel showing the two serving axes side by side: the
|
|
34
|
+
* observed provider install state (`pending_install` / `installed` /
|
|
35
|
+
* `revoked`) and the owner's serving switch (`spec.enabled`). Traffic
|
|
36
|
+
* flows only when installed AND enabled. Channels always live in the
|
|
37
|
+
* agent's own org (no cross-org arm, unlike shares), so no org selector
|
|
38
|
+
* is needed.
|
|
39
|
+
*
|
|
40
|
+
* Connecting runs the provider's own dialog — {@link ConnectSlackDialog}
|
|
41
|
+
* (OAuth popup) or {@link ConnectWhatsAppDialog} (direct install). On a
|
|
42
|
+
* `local` (OSS) backend, channel CRUD works but installs are cloud-only —
|
|
43
|
+
* connect affordances are replaced by a cloud-feature notice, matching
|
|
44
|
+
* the server's FAILED_PRECONDITION posture.
|
|
45
|
+
*
|
|
46
|
+
* Self-contained: owns its dialog, its confirmation prompts, and its
|
|
47
|
+
* refetch-after-mutation — hosts render it with just the agent (plus the
|
|
48
|
+
* external-connect delegate where popups are unavailable).
|
|
49
|
+
*
|
|
50
|
+
* This is an SDK component (DD-001) — embeddable by platform builders.
|
|
51
|
+
*/
|
|
52
|
+
export function AgentChannelsPanel({ agent, onConnectExternal, channelAppsHref, sessionHref, className, }) {
|
|
53
|
+
const agentId = agent.metadata?.id ?? "";
|
|
54
|
+
// Channels are same-org by invariant; scope the list to the agent's org.
|
|
55
|
+
const { channels, isLoading, error, refetch } = useAgentChannelList(agentId, agent.metadata?.org ?? "");
|
|
56
|
+
// One fetch for all cards: a channel's spec.app_ref carries only the
|
|
57
|
+
// slug, but the app's name is the bot name members @mention — the
|
|
58
|
+
// label worth showing.
|
|
59
|
+
const { channelApps } = useChannelAppList(agent.metadata?.org || null);
|
|
60
|
+
// Mirrors the server's create bar (agent can_edit — the permission the
|
|
61
|
+
// create/apply handlers enforce on the referenced agent) so the connect
|
|
62
|
+
// affordance never appears to a viewer whose create would be refused.
|
|
63
|
+
const { allowed: canCreate } = useCheckPermission(agentId ? { kind: "agent", id: agentId } : null, "can_edit");
|
|
64
|
+
// Installs are cloud-only; CRUD is not. In local mode the cards render
|
|
65
|
+
// and toggles work, but connect affordances give way to the notice.
|
|
66
|
+
const installsAvailable = useDeploymentMode() === "cloud";
|
|
67
|
+
const { deleteChannel } = useDeleteAgentChannel();
|
|
68
|
+
const { confirmState, confirm, handleConfirm, handleCancel } = useConfirmAction();
|
|
69
|
+
// One dialog mount serves both flows per provider: connecting the
|
|
70
|
+
// chosen channel, or creating a new one and connecting it in the same
|
|
71
|
+
// session. The provider picks which dialog renders.
|
|
72
|
+
const [connecting, setConnecting] = useState(null);
|
|
73
|
+
// The channel whose tool-credential bindings are being edited.
|
|
74
|
+
const [editingCredentials, setEditingCredentials] = useState(null);
|
|
75
|
+
// The channel whose conversations are being viewed (DD-012: read-only
|
|
76
|
+
// channel-session observability for the channel's viewers).
|
|
77
|
+
const [viewingConversations, setViewingConversations] = useState(null);
|
|
78
|
+
const handleConnect = useCallback((channel, provider) => {
|
|
79
|
+
// Only redirect-style installs need the host hand-off (they open a
|
|
80
|
+
// popup the desktop webview cannot); direct installs are a plain
|
|
81
|
+
// API call and run in-app everywhere.
|
|
82
|
+
if (provider.installStyle === "redirect" && onConnectExternal) {
|
|
83
|
+
onConnectExternal(channel);
|
|
84
|
+
return;
|
|
85
|
+
}
|
|
86
|
+
setConnecting(channel ? { mode: "reconnect", channel } : { mode: "create", provider });
|
|
87
|
+
}, [onConnectExternal]);
|
|
88
|
+
const handleDelete = useCallback(async (channel) => {
|
|
89
|
+
const name = channel.metadata?.name || channel.metadata?.slug || "this channel";
|
|
90
|
+
const presentation = channelPresentationOf(channel.spec?.providerConfig?.case) ??
|
|
91
|
+
DEFAULT_CHANNEL_PRESENTATION;
|
|
92
|
+
const confirmed = await confirm({
|
|
93
|
+
title: "Disconnect channel?",
|
|
94
|
+
description: presentation.disconnectDescription(name),
|
|
95
|
+
confirmLabel: "Disconnect",
|
|
96
|
+
variant: "destructive",
|
|
97
|
+
});
|
|
98
|
+
if (!confirmed)
|
|
99
|
+
return;
|
|
100
|
+
try {
|
|
101
|
+
await deleteChannel(channel.metadata?.id ?? "");
|
|
102
|
+
toast.success("Channel disconnected");
|
|
103
|
+
refetch();
|
|
104
|
+
}
|
|
105
|
+
catch (err) {
|
|
106
|
+
toast.error(getUserMessage(err));
|
|
107
|
+
}
|
|
108
|
+
}, [confirm, deleteChannel, refetch]);
|
|
109
|
+
if (isLoading) {
|
|
110
|
+
return _jsx(LoadingSkeleton, {});
|
|
111
|
+
}
|
|
112
|
+
if (error) {
|
|
113
|
+
return (_jsx("div", { className: "py-8 text-center text-sm text-destructive", children: "Failed to load channels" }));
|
|
114
|
+
}
|
|
115
|
+
const showCloudNotice = !installsAvailable &&
|
|
116
|
+
(channels.length === 0 ||
|
|
117
|
+
channels.some((c) => installStateOf(c) !== AgentChannelInstallState.installed));
|
|
118
|
+
// Whether a provider's connect affordance is actionable here: installs
|
|
119
|
+
// are cloud-only, but redirect-style providers can still hand off to
|
|
120
|
+
// the host (the desktop → system-browser path). Direct-style providers
|
|
121
|
+
// have no hand-off — in local mode their affordance yields to the
|
|
122
|
+
// cloud notice.
|
|
123
|
+
const canConnectVia = (p) => canCreate &&
|
|
124
|
+
(installsAvailable || (p.installStyle === "redirect" && !!onConnectExternal));
|
|
125
|
+
const connectableProviders = CHANNEL_PROVIDERS.filter(canConnectVia);
|
|
126
|
+
// The provider of the in-flight connect flow: chosen by the user in
|
|
127
|
+
// create mode, the channel's own on a reconnect. Unknown cases (a
|
|
128
|
+
// newer server) fall back to the default provider, matching the card.
|
|
129
|
+
const connectingProvider = connecting === null
|
|
130
|
+
? null
|
|
131
|
+
: connecting.mode === "create"
|
|
132
|
+
? connecting.provider
|
|
133
|
+
: channelProviderOf(connecting.channel.spec?.providerConfig?.case) ??
|
|
134
|
+
CHANNEL_PROVIDERS[0];
|
|
135
|
+
return (_jsxs("div", { className: cn("space-y-3", className), children: [showCloudNotice && (_jsx(CloudFeatureNotice, { children: "Channel installs require Stigmer Cloud \u2014 connecting an agent to Slack or WhatsApp runs through the platform's hosted webhook infrastructure. Channel configuration still works here." })), channels.length === 0 ? (_jsx(ChannelEmptyState, { providers: connectableProviders, onConnectClick: (p) => handleConnect(null, p) })) : (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center justify-between gap-2", children: [_jsxs("h3", { className: "text-sm font-medium text-foreground", children: [channels.length, " ", channels.length === 1 ? "channel" : "channels"] }), connectableProviders.length > 0 && (_jsx("div", { className: "flex shrink-0 items-center gap-2", children: connectableProviders.map((p) => (_jsxs(Button, { variant: "outline", size: "xs", icon: _jsx(p.Icon, { className: "size-3" }), onClick: () => handleConnect(null, p), "data-cursor-target": `connect-${p.id}`, children: ["Connect to ", p.label] }, p.id))) }))] }), _jsx("div", { className: "space-y-2", children: channels.map((channel) => {
|
|
136
|
+
const cardProvider = channelProviderOf(channel.spec?.providerConfig?.case) ??
|
|
137
|
+
CHANNEL_PROVIDERS[0];
|
|
138
|
+
return (_jsx(ChannelCard, { agent: agent, channel: channel, channelApps: channelApps, connectAvailable: installsAvailable ||
|
|
139
|
+
(cardProvider.installStyle === "redirect" &&
|
|
140
|
+
!!onConnectExternal), onConnectClick: () => handleConnect(channel, cardProvider), onDeleteClick: () => void handleDelete(channel), onEditCredentials: () => setEditingCredentials(channel), onViewConversations: () => setViewingConversations(channel), refetch: refetch }, channel.metadata?.id));
|
|
141
|
+
}) })] })), connecting && connectingProvider?.id === "whatsapp" ? (_jsx(ConnectWhatsAppDialog, { open: true, onOpenChange: (open) => {
|
|
142
|
+
if (!open)
|
|
143
|
+
setConnecting(null);
|
|
144
|
+
}, agent: agent, channel: connecting.mode === "reconnect" ? connecting.channel : undefined, onChannelsChanged: refetch, channelAppsHref: channelAppsHref })) : connecting ? (_jsx(ConnectSlackDialog, { open: true, onOpenChange: (open) => {
|
|
145
|
+
if (!open)
|
|
146
|
+
setConnecting(null);
|
|
147
|
+
}, agent: agent, channel: connecting.mode === "reconnect" ? connecting.channel : undefined, onChannelsChanged: refetch, channelAppsHref: channelAppsHref })) : null, editingCredentials && (_jsx(ChannelCredentialsDialog, { open: true, onOpenChange: (open) => {
|
|
148
|
+
if (!open)
|
|
149
|
+
setEditingCredentials(null);
|
|
150
|
+
}, agent: agent, channel: editingCredentials, onSaved: refetch })), viewingConversations && (_jsx(ChannelConversationsDialog, { open: true, onOpenChange: (open) => {
|
|
151
|
+
if (!open)
|
|
152
|
+
setViewingConversations(null);
|
|
153
|
+
}, channel: viewingConversations, sessionHref: sessionHref })), _jsx(ConfirmDialog, { state: confirmState, onConfirm: handleConfirm, onCancel: handleCancel })] }));
|
|
154
|
+
}
|
|
155
|
+
function ChannelCard({ agent, channel, channelApps, connectAvailable, onConnectClick, onDeleteClick, onEditCredentials, onViewConversations, refetch, }) {
|
|
156
|
+
const meta = channel.metadata;
|
|
157
|
+
const id = meta?.id ?? "";
|
|
158
|
+
const enabled = channel.spec?.enabled ?? false;
|
|
159
|
+
const installState = installStateOf(channel);
|
|
160
|
+
// The serving app (T04 item 2): set means the channel installs through
|
|
161
|
+
// the org's own channel app; absent means the platform Stigmer app
|
|
162
|
+
// (Slack only — WhatsApp always has one, DD-WA-2). The app's NAME is
|
|
163
|
+
// the identity people address, so prefer it over the ref's slug when
|
|
164
|
+
// the app is in the fetched list (it may not be — e.g. the app was
|
|
165
|
+
// deleted after install).
|
|
166
|
+
const servingAppSlug = channel.spec?.appRef?.slug || null;
|
|
167
|
+
const servingAppName = servingAppSlug
|
|
168
|
+
? channelApps.find((app) => app.metadata?.slug === servingAppSlug)
|
|
169
|
+
?.metadata?.name || servingAppSlug
|
|
170
|
+
: null;
|
|
171
|
+
// The spec's provider marker is set at create; unknown cases (a newer
|
|
172
|
+
// server) fall back to the default provider mark rather than no icon,
|
|
173
|
+
// and to the default presentation rather than no copy.
|
|
174
|
+
const provider = channelProviderOf(channel.spec?.providerConfig?.case) ?? CHANNEL_PROVIDERS[0];
|
|
175
|
+
const presentation = channelPresentationOf(channel.spec?.providerConfig?.case) ??
|
|
176
|
+
DEFAULT_CHANNEL_PRESENTATION;
|
|
177
|
+
const { save, isPending } = useSaveAgentChannel();
|
|
178
|
+
// Decide the card's actions here (not via nested permission wrappers) so
|
|
179
|
+
// affordances are hidden entirely when the viewer can do nothing —
|
|
180
|
+
// permissive in OSS, so local single-user sees all.
|
|
181
|
+
const { allowed: canEdit } = useCheckPermission({ kind: "agent_channel", id }, "can_edit");
|
|
182
|
+
const { allowed: canDelete } = useCheckPermission({ kind: "agent_channel", id }, "can_delete");
|
|
183
|
+
// On/off is a full-input save with only `enabled` flipped —
|
|
184
|
+
// agentChannelToInput guarantees the toggle can never wipe the agent
|
|
185
|
+
// reference or the provider marker (the fails-closed posture shares use).
|
|
186
|
+
const handleToggleEnabled = useCallback(async (next) => {
|
|
187
|
+
try {
|
|
188
|
+
await save({ ...agentChannelToInput(channel), enabled: next });
|
|
189
|
+
toast.success(next ? "Channel turned on" : "Channel turned off");
|
|
190
|
+
refetch();
|
|
191
|
+
}
|
|
192
|
+
catch (err) {
|
|
193
|
+
toast.error(getUserMessage(err));
|
|
194
|
+
}
|
|
195
|
+
}, [save, channel, refetch]);
|
|
196
|
+
return (_jsxs("div", { className: "rounded-lg border border-border p-4", children: [_jsxs("div", { className: "flex items-start justify-between gap-3", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [_jsx(provider.Icon, { className: "size-5 shrink-0 text-foreground" }), _jsxs("div", { className: "min-w-0", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "truncate text-sm font-medium text-foreground", title: meta?.name || meta?.slug || undefined, children: meta?.name || meta?.slug || "\u2014" }), _jsx(InstallStatePill, { state: installState })] }), _jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: presentation.describeChannel(channel) }), _jsx("p", { className: "mt-0.5 text-xs text-muted-foreground-faint", children: presentation.servingLine(servingAppName) })] })] }), _jsxs("div", { className: "flex shrink-0 items-center gap-2", children: [canEdit && installState === AgentChannelInstallState.installed && (_jsx(Switch, { checked: enabled, onCheckedChange: (next) => void handleToggleEnabled(next), disabled: isPending, "aria-label": `Turn ${meta?.name || meta?.slug || "channel"} ${enabled ? "off" : "on"}` })), canEdit &&
|
|
197
|
+
connectAvailable &&
|
|
198
|
+
installState !== AgentChannelInstallState.installed && (_jsx(Button, { variant: "outline", size: "xs", onClick: onConnectClick, children: installState === AgentChannelInstallState.revoked
|
|
199
|
+
? "Reconnect"
|
|
200
|
+
: "Connect" })), _jsxs(ActionMenu, { children: [_jsx(ActionMenu.Trigger, { "aria-label": `Actions for ${meta?.name || meta?.slug}`, children: _jsx(MoreHorizontal, { className: "size-4" }) }), _jsxs(ActionMenu.Content, { children: [_jsx(ActionMenu.Item, { icon: _jsx(MessageSquare, {}), onSelect: onViewConversations, "data-cursor-target": "channel-conversations", children: "Conversations" }), canEdit && (_jsx(ActionMenu.Item, { icon: _jsx(KeyRound, {}), onSelect: onEditCredentials, children: "Tool credentials" })), canDelete && (_jsx(ActionMenu.Item, { icon: _jsx(Trash2, {}), variant: "destructive", onSelect: onDeleteClick, children: "Disconnect" }))] })] })] })] }), _jsx(CardReadinessWarning, { agent: agent, channel: channel, canEdit: canEdit, onEditCredentials: onEditCredentials })] }));
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Serving-readiness warning for tool-using agents: channel executions
|
|
204
|
+
* receive credentials only from the channel's own bindings, so an
|
|
205
|
+
* installed, enabled channel with none (or with a private binding) will
|
|
206
|
+
* refuse the first workspace message that needs a tool. The card is
|
|
207
|
+
* where an owner — including one who connected before credential
|
|
208
|
+
* binding existed — discovers the gap, instead of hearing about it from
|
|
209
|
+
* a confused workspace member.
|
|
210
|
+
*/
|
|
211
|
+
function CardReadinessWarning({ agent, channel, canEdit, onEditCredentials, }) {
|
|
212
|
+
const serving = (channel.spec?.enabled ?? false) &&
|
|
213
|
+
installStateOf(channel) === AgentChannelInstallState.installed;
|
|
214
|
+
const readiness = useChannelToolReadiness(agent, serving, channel.spec?.environmentRefs ?? []);
|
|
215
|
+
if (readiness.status !== "needs-credentials" && readiness.status !== "blocked") {
|
|
216
|
+
return null;
|
|
217
|
+
}
|
|
218
|
+
const message = readiness.status === "needs-credentials"
|
|
219
|
+
? "This agent uses tools, but no credentials are bound to this channel — workspace messages that need a tool will be refused."
|
|
220
|
+
: `Bound environment${readiness.privateEnvironments.length > 1 ? "s" : ""} ${readiness.privateEnvironments.join(", ")} ${readiness.privateEnvironments.length > 1 ? "are" : "is"} private — share ${readiness.privateEnvironments.length > 1 ? "them" : "it"} with your organization so workspace messages can use the credentials.`;
|
|
221
|
+
return (_jsxs("p", { className: "mt-2 text-xs text-warning", role: "status", children: [message, canEdit && (_jsxs(_Fragment, { children: [" ", _jsx("button", { type: "button", onClick: onEditCredentials, className: cn("font-medium underline underline-offset-2", "hover:text-foreground", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded"), children: "Bind credentials" })] }))] }));
|
|
222
|
+
}
|
|
223
|
+
// ---------------------------------------------------------------------------
|
|
224
|
+
// Install-state rendering
|
|
225
|
+
// ---------------------------------------------------------------------------
|
|
226
|
+
function installStateOf(channel) {
|
|
227
|
+
return (channel.status?.installState ??
|
|
228
|
+
AgentChannelInstallState.agent_channel_install_state_unspecified);
|
|
229
|
+
}
|
|
230
|
+
function InstallStatePill({ state }) {
|
|
231
|
+
const { label, tone } = (() => {
|
|
232
|
+
switch (state) {
|
|
233
|
+
case AgentChannelInstallState.installed:
|
|
234
|
+
return { label: "Installed", tone: "text-success" };
|
|
235
|
+
case AgentChannelInstallState.revoked:
|
|
236
|
+
return { label: "Revoked", tone: "text-destructive" };
|
|
237
|
+
default:
|
|
238
|
+
return { label: "Pending install", tone: "text-muted-foreground" };
|
|
239
|
+
}
|
|
240
|
+
})();
|
|
241
|
+
return (_jsxs("span", { className: cn("inline-flex shrink-0 items-center gap-1.5 text-xs", tone), children: [_jsx("span", { "aria-hidden": "true", className: "size-1.5 rounded-full bg-current" }), label] }));
|
|
242
|
+
}
|
|
243
|
+
// ---------------------------------------------------------------------------
|
|
244
|
+
// Empty + loading states
|
|
245
|
+
// ---------------------------------------------------------------------------
|
|
246
|
+
function ChannelEmptyState({ providers, onConnectClick, }) {
|
|
247
|
+
const providerLabels = CHANNEL_PROVIDERS.map((p) => p.label).join(" or ");
|
|
248
|
+
return (_jsx(EmptyState, { variant: "first-use", icon: _jsx("span", { className: "flex items-center gap-2", children: CHANNEL_PROVIDERS.map((p) => (_jsx(p.Icon, { className: "size-10" }, p.id))) }), title: "No channels yet", description: `Connect this agent to ${providerLabels} and people chat with it ` +
|
|
249
|
+
"right where they work — with policy, rate limits, and billing " +
|
|
250
|
+
"enforced by Stigmer.", children: providers.length > 0 && (_jsx("span", { className: "flex items-center gap-2", children: providers.map((p) => (_jsxs(Button, { variant: "primary", icon: _jsx(p.Icon, { className: "size-3" }), onClick: () => onConnectClick(p), "data-cursor-target": `connect-${p.id}`, children: ["Connect to ", p.label] }, p.id))) })) }));
|
|
251
|
+
}
|
|
252
|
+
function LoadingSkeleton() {
|
|
253
|
+
return (_jsx("div", { className: "space-y-2 py-4", children: [1, 2].map((i) => (_jsx("div", { className: "h-20 animate-pulse rounded-lg bg-muted-faint" }, i))) }));
|
|
254
|
+
}
|
|
255
|
+
//# sourceMappingURL=AgentChannelsPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AgentChannelsPanel.js","sourceRoot":"","sources":["../../src/channel/AgentChannelsPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { AgentChannel } from "@stigmer/protos/ai/stigmer/agentic/agentchannel/v1/api_pb";
|
|
2
|
+
/** Props for {@link ChannelConversationsDialog}. */
|
|
3
|
+
export interface ChannelConversationsDialogProps {
|
|
4
|
+
/** Whether the dialog is open. */
|
|
5
|
+
readonly open: boolean;
|
|
6
|
+
/** Called when the dialog requests an open-state change. */
|
|
7
|
+
readonly onOpenChange: (open: boolean) => void;
|
|
8
|
+
/** The channel whose conversations are listed. */
|
|
9
|
+
readonly channel: AgentChannel;
|
|
10
|
+
/**
|
|
11
|
+
* Maps a session id to the host's session route (the console passes
|
|
12
|
+
* `` (id) => `/sessions/${id}` ``). When absent, rows render without
|
|
13
|
+
* links — the SDK never assumes a routing scheme (DD-004).
|
|
14
|
+
*/
|
|
15
|
+
readonly sessionHref?: (sessionId: string) => string;
|
|
16
|
+
/**
|
|
17
|
+
* When `false`, renders as an in-flow open dialog instead of a
|
|
18
|
+
* top-layer modal — for embedding in constrained surfaces
|
|
19
|
+
* (documentation demos, visual tests). Interactive hosts keep the
|
|
20
|
+
* default.
|
|
21
|
+
* @default true
|
|
22
|
+
*/
|
|
23
|
+
readonly modal?: boolean;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Lists the conversations a channel created — the Slack/WhatsApp sessions
|
|
27
|
+
* the channel runtime owns, visible to exactly the channel's viewers (the
|
|
28
|
+
* connector and org admins; design decision 012).
|
|
29
|
+
*
|
|
30
|
+
* Each row shows the conversation subject, the external platform user it
|
|
31
|
+
* belongs to (an opaque provider id in v1), and the last activity time.
|
|
32
|
+
* Rows link to the host's session route, where `SessionViewer` renders the
|
|
33
|
+
* transcript read-only (the observer audience — channel viewers hold
|
|
34
|
+
* `can_view` only, never `can_create_execution_in`).
|
|
35
|
+
*
|
|
36
|
+
* Built on the native `<dialog>` element, matching the SDK's modal
|
|
37
|
+
* convention. Most hosts mount it via {@link AgentChannelsPanel}'s
|
|
38
|
+
* channel card action.
|
|
39
|
+
*/
|
|
40
|
+
export declare function ChannelConversationsDialog({ open, onOpenChange, channel, sessionHref, modal, }: ChannelConversationsDialogProps): import("react/jsx-runtime").JSX.Element;
|
|
41
|
+
//# sourceMappingURL=ChannelConversationsDialog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChannelConversationsDialog.d.ts","sourceRoot":"","sources":["../../src/channel/ChannelConversationsDialog.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2DAA2D,CAAC;AAO9F,oDAAoD;AACpD,MAAM,WAAW,+BAA+B;IAC9C,kCAAkC;IAClC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,4DAA4D;IAC5D,QAAQ,CAAC,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,kDAAkD;IAClD,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;IAC/B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,CAAC;IACrD;;;;;;OAMG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,0BAA0B,CAAC,EACzC,IAAI,EACJ,YAAY,EACZ,OAAO,EACP,WAAW,EACX,KAAY,GACb,EAAE,+BAA+B,2CA4CjC"}
|