@stigmer/react 3.12.0 → 3.12.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/access/ManageAccessDialog.d.ts.map +1 -1
- package/access/ManageAccessDialog.js +7 -2
- package/access/ManageAccessDialog.js.map +1 -1
- package/activity/format-relative-time.d.ts +11 -9
- package/activity/format-relative-time.d.ts.map +1 -1
- package/activity/format-relative-time.js +11 -9
- package/activity/format-relative-time.js.map +1 -1
- package/agent/steps/CapabilitiesStep.js +5 -2
- package/agent/steps/CapabilitiesStep.js.map +1 -1
- package/agent/steps/IdentityStep.d.ts.map +1 -1
- package/agent/steps/IdentityStep.js +6 -5
- package/agent/steps/IdentityStep.js.map +1 -1
- package/agent-instance/CreateAgentInstanceDialog.d.ts.map +1 -1
- package/agent-instance/CreateAgentInstanceDialog.js +10 -2
- package/agent-instance/CreateAgentInstanceDialog.js.map +1 -1
- package/api-key/ApiKeyCreatedAlert.d.ts.map +1 -1
- package/api-key/ApiKeyCreatedAlert.js +12 -20
- package/api-key/ApiKeyCreatedAlert.js.map +1 -1
- package/api-key/ApiKeyListPanel.d.ts.map +1 -1
- package/api-key/ApiKeyListPanel.js +3 -23
- package/api-key/ApiKeyListPanel.js.map +1 -1
- package/api-key/CreateApiKeyForm.d.ts.map +1 -1
- package/api-key/CreateApiKeyForm.js +6 -10
- package/api-key/CreateApiKeyForm.js.map +1 -1
- package/approval-defaults-context.d.ts +47 -0
- package/approval-defaults-context.d.ts.map +1 -0
- package/approval-defaults-context.js +27 -0
- package/approval-defaults-context.js.map +1 -0
- package/attachment/index.d.ts +2 -0
- package/attachment/index.d.ts.map +1 -1
- package/attachment/index.js +1 -0
- package/attachment/index.js.map +1 -1
- package/attachment/vision-preflight.d.ts +113 -0
- package/attachment/vision-preflight.d.ts.map +1 -0
- package/attachment/vision-preflight.js +143 -0
- package/attachment/vision-preflight.js.map +1 -0
- package/billing/AutoRechargeCard.d.ts.map +1 -1
- package/billing/AutoRechargeCard.js +3 -2
- package/billing/AutoRechargeCard.js.map +1 -1
- package/billing/BillingSection.d.ts.map +1 -1
- package/billing/BillingSection.js +3 -2
- package/billing/BillingSection.js.map +1 -1
- package/channel/ChannelConversationsDialog.d.ts.map +1 -1
- package/channel/ChannelConversationsDialog.js +5 -4
- package/channel/ChannelConversationsDialog.js.map +1 -1
- package/channel/ChannelCredentialsDialog.d.ts.map +1 -1
- package/channel/ChannelCredentialsDialog.js +9 -4
- package/channel/ChannelCredentialsDialog.js.map +1 -1
- package/channel/ChannelTemplatesDialog.d.ts.map +1 -1
- package/channel/ChannelTemplatesDialog.js +5 -4
- package/channel/ChannelTemplatesDialog.js.map +1 -1
- package/channel/ConnectSlackDialog.d.ts.map +1 -1
- package/channel/ConnectSlackDialog.js +9 -4
- package/channel/ConnectSlackDialog.js.map +1 -1
- package/channel/ConnectWhatsAppDialog.d.ts.map +1 -1
- package/channel/ConnectWhatsAppDialog.js +9 -4
- package/channel/ConnectWhatsAppDialog.js.map +1 -1
- package/channel/useChannelSessions.d.ts.map +1 -1
- package/channel/useChannelSessions.js.map +1 -1
- package/channel-app/ChannelAppDetailPanel.d.ts.map +1 -1
- package/channel-app/ChannelAppDetailPanel.js +8 -5
- package/channel-app/ChannelAppDetailPanel.js.map +1 -1
- package/channel-app/CreateChannelAppForm.d.ts.map +1 -1
- package/channel-app/CreateChannelAppForm.js +12 -7
- package/channel-app/CreateChannelAppForm.js.map +1 -1
- package/channel-app/internal.d.ts +0 -1
- package/channel-app/internal.d.ts.map +1 -1
- package/channel-app/internal.js +5 -10
- package/channel-app/internal.js.map +1 -1
- package/composer/ComposerToolbar.js +2 -1
- package/composer/ComposerToolbar.js.map +1 -1
- package/composer/SessionComposer.d.ts +1 -1
- package/composer/SessionComposer.d.ts.map +1 -1
- package/composer/SessionComposer.js +120 -13
- package/composer/SessionComposer.js.map +1 -1
- package/composer/icons.d.ts +0 -1
- package/composer/icons.d.ts.map +1 -1
- package/composer/icons.js +0 -3
- package/composer/icons.js.map +1 -1
- package/conversation/ConversationComposer.js +1 -1
- package/conversation/ConversationComposer.js.map +1 -1
- package/conversation/ConversationListPane.d.ts.map +1 -1
- package/conversation/ConversationListPane.js +3 -2
- package/conversation/ConversationListPane.js.map +1 -1
- package/cursor-accounts/MemberCoverageTable.js +3 -14
- package/cursor-accounts/MemberCoverageTable.js.map +1 -1
- package/dashboard/DashboardFailedRuns.d.ts.map +1 -1
- package/dashboard/DashboardFailedRuns.js +2 -14
- package/dashboard/DashboardFailedRuns.js.map +1 -1
- package/environment/CreateEnvironmentForm.d.ts.map +1 -1
- package/environment/CreateEnvironmentForm.js +4 -8
- package/environment/CreateEnvironmentForm.js.map +1 -1
- package/environment/EnvVarForm.d.ts.map +1 -1
- package/environment/EnvVarForm.js +2 -4
- package/environment/EnvVarForm.js.map +1 -1
- package/environment/EnvironmentVariableEditor.d.ts.map +1 -1
- package/environment/EnvironmentVariableEditor.js +5 -7
- package/environment/EnvironmentVariableEditor.js.map +1 -1
- package/execution/ArtifactApplyButton.d.ts.map +1 -1
- package/execution/ArtifactApplyButton.js +2 -4
- package/execution/ArtifactApplyButton.js.map +1 -1
- package/execution/ExecutionErrorNotice.d.ts +36 -0
- package/execution/ExecutionErrorNotice.d.ts.map +1 -0
- package/execution/ExecutionErrorNotice.js +39 -0
- package/execution/ExecutionErrorNotice.js.map +1 -0
- package/execution/FilePathLink.d.ts.map +1 -1
- package/execution/FilePathLink.js +5 -8
- package/execution/FilePathLink.js.map +1 -1
- package/execution/FileReviewCard.d.ts.map +1 -1
- package/execution/FileReviewCard.js +1 -6
- package/execution/FileReviewCard.js.map +1 -1
- package/execution/FollowUpInput.d.ts.map +1 -1
- package/execution/FollowUpInput.js +1 -3
- package/execution/FollowUpInput.js.map +1 -1
- package/execution/LivenessStatusLine.d.ts +40 -0
- package/execution/LivenessStatusLine.d.ts.map +1 -0
- package/execution/LivenessStatusLine.js +34 -0
- package/execution/LivenessStatusLine.js.map +1 -0
- package/execution/MessageEntry.d.ts.map +1 -1
- package/execution/MessageEntry.js +31 -3
- package/execution/MessageEntry.js.map +1 -1
- package/execution/MessageThread.d.ts +25 -0
- package/execution/MessageThread.d.ts.map +1 -1
- package/execution/MessageThread.js +51 -36
- package/execution/MessageThread.js.map +1 -1
- package/execution/SetupProgress.d.ts.map +1 -1
- package/execution/SetupProgress.js +1 -1
- package/execution/SetupProgress.js.map +1 -1
- package/execution/SubAgentSection.d.ts.map +1 -1
- package/execution/SubAgentSection.js +9 -7
- package/execution/SubAgentSection.js.map +1 -1
- package/execution/TerminalSession.d.ts +30 -0
- package/execution/TerminalSession.d.ts.map +1 -1
- package/execution/TerminalSession.js +37 -1
- package/execution/TerminalSession.js.map +1 -1
- package/execution/ToolCallDetail.d.ts +9 -0
- package/execution/ToolCallDetail.d.ts.map +1 -1
- package/execution/ToolCallDetail.js +16 -0
- package/execution/ToolCallDetail.js.map +1 -1
- package/execution/ToolCallItem.d.ts +20 -6
- package/execution/ToolCallItem.d.ts.map +1 -1
- package/execution/ToolCallItem.js +102 -29
- package/execution/ToolCallItem.js.map +1 -1
- package/execution/ToolRunGroup.d.ts.map +1 -1
- package/execution/ToolRunGroup.js +11 -11
- package/execution/ToolRunGroup.js.map +1 -1
- package/execution/WriteBackCard.d.ts.map +1 -1
- package/execution/WriteBackCard.js +5 -20
- package/execution/WriteBackCard.js.map +1 -1
- package/execution/index.d.ts +6 -2
- package/execution/index.d.ts.map +1 -1
- package/execution/index.js +3 -1
- package/execution/index.js.map +1 -1
- package/execution/tool-categories.d.ts +42 -7
- package/execution/tool-categories.d.ts.map +1 -1
- package/execution/tool-categories.js +38 -4
- package/execution/tool-categories.js.map +1 -1
- package/execution/tool-presenter.d.ts +17 -1
- package/execution/tool-presenter.d.ts.map +1 -1
- package/execution/tool-presenter.js +4 -1
- package/execution/tool-presenter.js.map +1 -1
- package/execution/useArtifactInspection.d.ts.map +1 -1
- package/execution/useArtifactInspection.js +4 -7
- package/execution/useArtifactInspection.js.map +1 -1
- package/execution/useCreateAgentExecution.d.ts +3 -2
- package/execution/useCreateAgentExecution.d.ts.map +1 -1
- package/execution/useCreateAgentExecution.js.map +1 -1
- package/iam-policy/GrantAccessForm.d.ts.map +1 -1
- package/iam-policy/GrantAccessForm.js +2 -4
- package/iam-policy/GrantAccessForm.js.map +1 -1
- package/iam-policy/OrgMembersPanel.d.ts.map +1 -1
- package/iam-policy/OrgMembersPanel.js +3 -5
- package/iam-policy/OrgMembersPanel.js.map +1 -1
- package/iam-policy/RoleSelector.d.ts.map +1 -1
- package/iam-policy/RoleSelector.js +7 -1
- package/iam-policy/RoleSelector.js.map +1 -1
- package/identity-provider/CreateIdentityProviderForm.d.ts.map +1 -1
- package/identity-provider/CreateIdentityProviderForm.js +6 -9
- package/identity-provider/CreateIdentityProviderForm.js.map +1 -1
- package/identity-provider/IdentityProviderDetailPanel.d.ts.map +1 -1
- package/identity-provider/IdentityProviderDetailPanel.js +17 -26
- package/identity-provider/IdentityProviderDetailPanel.js.map +1 -1
- package/identity-provider/IdentityProviderListPanel.d.ts.map +1 -1
- package/identity-provider/IdentityProviderListPanel.js +2 -4
- package/identity-provider/IdentityProviderListPanel.js.map +1 -1
- package/identity-provider/IdentityProviderWizard.d.ts.map +1 -1
- package/identity-provider/IdentityProviderWizard.js +8 -7
- package/identity-provider/IdentityProviderWizard.js.map +1 -1
- package/identity-provider/SsoLoginPrompt.js +5 -6
- package/identity-provider/SsoLoginPrompt.js.map +1 -1
- package/index.d.ts +9 -8
- package/index.d.ts.map +1 -1
- package/index.js +4 -4
- package/index.js.map +1 -1
- package/internal/DecisionButton.d.ts.map +1 -1
- package/internal/DecisionButton.js +1 -6
- package/internal/DecisionButton.js.map +1 -1
- package/internal/SpinnerIcon.d.ts +22 -0
- package/internal/SpinnerIcon.d.ts.map +1 -0
- package/internal/SpinnerIcon.js +23 -0
- package/internal/SpinnerIcon.js.map +1 -0
- package/internal/isUnimplemented.d.ts +17 -0
- package/internal/isUnimplemented.d.ts.map +1 -0
- package/internal/isUnimplemented.js +26 -0
- package/internal/isUnimplemented.js.map +1 -0
- package/internal/select-element-text.d.ts +11 -0
- package/internal/select-element-text.d.ts.map +1 -0
- package/internal/select-element-text.js +19 -0
- package/internal/select-element-text.js.map +1 -0
- package/internal/thread-card/ThreadCardShell.d.ts +27 -10
- package/internal/thread-card/ThreadCardShell.d.ts.map +1 -1
- package/internal/thread-card/ThreadCardShell.js +11 -5
- package/internal/thread-card/ThreadCardShell.js.map +1 -1
- package/internal/thread-card/glyphs.d.ts +11 -2
- package/internal/thread-card/glyphs.d.ts.map +1 -1
- package/internal/thread-card/glyphs.js +9 -3
- package/internal/thread-card/glyphs.js.map +1 -1
- package/internal/thread-card/index.d.ts +1 -1
- package/internal/thread-card/index.d.ts.map +1 -1
- package/internal/thread-card/index.js.map +1 -1
- package/internal/useCopyFeedback.d.ts +28 -0
- package/internal/useCopyFeedback.d.ts.map +1 -0
- package/internal/useCopyFeedback.js +40 -0
- package/internal/useCopyFeedback.js.map +1 -0
- package/invitation/InvitationCreatedAlert.d.ts.map +1 -1
- package/invitation/InvitationCreatedAlert.js +12 -19
- package/invitation/InvitationCreatedAlert.js.map +1 -1
- package/invitation/InvitationManager.d.ts.map +1 -1
- package/invitation/InvitationManager.js +14 -21
- package/invitation/InvitationManager.js.map +1 -1
- package/invitation/InvitationRedemption.d.ts.map +1 -1
- package/invitation/InvitationRedemption.js +2 -4
- package/invitation/InvitationRedemption.js.map +1 -1
- package/library/useExportResource.d.ts.map +1 -1
- package/library/useExportResource.js +16 -27
- package/library/useExportResource.js.map +1 -1
- package/manifest/ApplyManifestDialog.js +1 -1
- package/manifest/EditResourceYamlDialog.js +1 -1
- package/mcp-server/DefinitionDriftNotice.d.ts +42 -0
- package/mcp-server/DefinitionDriftNotice.d.ts.map +1 -0
- package/mcp-server/DefinitionDriftNotice.js +52 -0
- package/mcp-server/DefinitionDriftNotice.js.map +1 -0
- package/mcp-server/McpServerConnectDialog.js +8 -4
- package/mcp-server/McpServerConnectDialog.js.map +1 -1
- package/mcp-server/McpServerDetailView.d.ts.map +1 -1
- package/mcp-server/McpServerDetailView.js +47 -14
- package/mcp-server/McpServerDetailView.js.map +1 -1
- package/mcp-server/OAuthAppForm.d.ts.map +1 -1
- package/mcp-server/OAuthAppForm.js +2 -4
- package/mcp-server/OAuthAppForm.js.map +1 -1
- package/mcp-server/internal/definitionDrift.d.ts +39 -0
- package/mcp-server/internal/definitionDrift.d.ts.map +1 -0
- package/mcp-server/internal/definitionDrift.js +122 -0
- package/mcp-server/internal/definitionDrift.js.map +1 -0
- package/mcp-server/internal/mcpServerToInput.d.ts.map +1 -1
- package/mcp-server/internal/mcpServerToInput.js +3 -0
- package/mcp-server/internal/mcpServerToInput.js.map +1 -1
- package/mcp-server/steps/EnvironmentAuthStep.d.ts.map +1 -1
- package/mcp-server/steps/EnvironmentAuthStep.js +8 -4
- package/mcp-server/steps/EnvironmentAuthStep.js.map +1 -1
- package/mcp-server/steps/IdentityTransportStep.d.ts.map +1 -1
- package/mcp-server/steps/IdentityTransportStep.js +5 -4
- package/mcp-server/steps/IdentityTransportStep.js.map +1 -1
- package/mcp-server/useMcpServerConnect.d.ts +1 -1
- package/mcp-server/useMcpServerCredentials.d.ts +38 -10
- package/mcp-server/useMcpServerCredentials.d.ts.map +1 -1
- package/mcp-server/useMcpServerCredentials.js +50 -7
- package/mcp-server/useMcpServerCredentials.js.map +1 -1
- package/mcp-server/useMcpServerDefinitionDrift.d.ts +44 -0
- package/mcp-server/useMcpServerDefinitionDrift.d.ts.map +1 -0
- package/mcp-server/useMcpServerDefinitionDrift.js +61 -0
- package/mcp-server/useMcpServerDefinitionDrift.js.map +1 -0
- package/mcp-server/useOrgOAuthApp.d.ts +22 -0
- package/mcp-server/useOrgOAuthApp.d.ts.map +1 -1
- package/mcp-server/useOrgOAuthApp.js +39 -7
- package/mcp-server/useOrgOAuthApp.js.map +1 -1
- package/models/ModelRegistryContext.d.ts +7 -1
- package/models/ModelRegistryContext.d.ts.map +1 -1
- package/models/ModelRegistryContext.js.map +1 -1
- package/models/ModelSelector.js +9 -1
- package/models/ModelSelector.js.map +1 -1
- package/models/index.d.ts +2 -2
- package/models/index.d.ts.map +1 -1
- package/models/index.js +1 -1
- package/models/index.js.map +1 -1
- package/models/registry.d.ts +88 -6
- package/models/registry.d.ts.map +1 -1
- package/models/registry.js +133 -27
- package/models/registry.js.map +1 -1
- package/models/useModelRegistry.d.ts +7 -1
- package/models/useModelRegistry.d.ts.map +1 -1
- package/models/useModelRegistry.js +3 -2
- package/models/useModelRegistry.js.map +1 -1
- package/oauth-app/CreateOAuthAppForm.d.ts.map +1 -1
- package/oauth-app/CreateOAuthAppForm.js +4 -5
- package/oauth-app/CreateOAuthAppForm.js.map +1 -1
- package/oauth-app/OAuthAppDetailPanel.d.ts.map +1 -1
- package/oauth-app/OAuthAppDetailPanel.js +5 -6
- package/oauth-app/OAuthAppDetailPanel.js.map +1 -1
- package/organization/CreateOrganizationForm.d.ts.map +1 -1
- package/organization/CreateOrganizationForm.js +5 -9
- package/organization/CreateOrganizationForm.js.map +1 -1
- package/organization/OrgProfilePanel.d.ts.map +1 -1
- package/organization/OrgProfilePanel.js +7 -16
- package/organization/OrgProfilePanel.js.map +1 -1
- package/package.json +4 -4
- package/platform-client/CreatePlatformClientForm.d.ts.map +1 -1
- package/platform-client/CreatePlatformClientForm.js +5 -6
- package/platform-client/CreatePlatformClientForm.js.map +1 -1
- package/platform-client/PlatformClientDetailPanel.d.ts.map +1 -1
- package/platform-client/PlatformClientDetailPanel.js +6 -7
- package/platform-client/PlatformClientDetailPanel.js.map +1 -1
- package/platform-client/PlatformClientListPanel.d.ts.map +1 -1
- package/platform-client/PlatformClientListPanel.js +2 -4
- package/platform-client/PlatformClientListPanel.js.map +1 -1
- package/platform-client/PlatformClientSecretAlert.d.ts.map +1 -1
- package/platform-client/PlatformClientSecretAlert.js +18 -25
- package/platform-client/PlatformClientSecretAlert.js.map +1 -1
- package/provider.d.ts +34 -1
- package/provider.d.ts.map +1 -1
- package/provider.js +14 -7
- package/provider.js.map +1 -1
- package/resource-creation/WizardNav.d.ts.map +1 -1
- package/resource-creation/WizardNav.js +2 -4
- package/resource-creation/WizardNav.js.map +1 -1
- package/resource-detail/ConfirmDialog.js +1 -1
- package/resource-detail/useCopyResource.d.ts +4 -3
- package/resource-detail/useCopyResource.d.ts.map +1 -1
- package/resource-detail/useCopyResource.js +10 -19
- package/resource-detail/useCopyResource.js.map +1 -1
- package/schedule/ScheduleDetailView.d.ts.map +1 -1
- package/schedule/ScheduleDetailView.js +2 -4
- package/schedule/ScheduleDetailView.js.map +1 -1
- package/schedule/ScheduleForm.d.ts.map +1 -1
- package/schedule/ScheduleForm.js +6 -7
- package/schedule/ScheduleForm.js.map +1 -1
- package/session/NewSessionViewer.d.ts +52 -2
- package/session/NewSessionViewer.d.ts.map +1 -1
- package/session/NewSessionViewer.js +21 -6
- package/session/NewSessionViewer.js.map +1 -1
- package/session/SessionViewer.d.ts +63 -2
- package/session/SessionViewer.d.ts.map +1 -1
- package/session/SessionViewer.js +43 -17
- package/session/SessionViewer.js.map +1 -1
- package/session/audience.d.ts +17 -0
- package/session/audience.d.ts.map +1 -1
- package/session/index.d.ts +2 -1
- package/session/index.d.ts.map +1 -1
- package/session/index.js.map +1 -1
- package/session/run-config.d.ts +50 -0
- package/session/run-config.d.ts.map +1 -0
- package/session/run-config.js +15 -0
- package/session/run-config.js.map +1 -0
- package/session/useNewSessionFlow.d.ts +11 -0
- package/session/useNewSessionFlow.d.ts.map +1 -1
- package/session/useNewSessionFlow.js +29 -2
- package/session/useNewSessionFlow.js.map +1 -1
- package/session/useSessionConversation.d.ts +11 -9
- package/session/useSessionConversation.d.ts.map +1 -1
- package/session/useSessionConversation.js +2 -0
- package/session/useSessionConversation.js.map +1 -1
- package/session/useSessionPageFlow.d.ts +18 -4
- package/session/useSessionPageFlow.d.ts.map +1 -1
- package/session/useSessionPageFlow.js +33 -6
- package/session/useSessionPageFlow.js.map +1 -1
- package/session/useSessionPanel.d.ts +37 -2
- package/session/useSessionPanel.d.ts.map +1 -1
- package/session/useSessionPanel.js +44 -10
- package/session/useSessionPanel.js.map +1 -1
- package/settings/ApiKeysSection.d.ts.map +1 -1
- package/settings/ApiKeysSection.js +3 -2
- package/settings/ApiKeysSection.js.map +1 -1
- package/settings/ChannelAppsSection.d.ts.map +1 -1
- package/settings/ChannelAppsSection.js +3 -2
- package/settings/ChannelAppsSection.js.map +1 -1
- package/settings/EnvironmentsSection.js +5 -3
- package/settings/EnvironmentsSection.js.map +1 -1
- package/settings/IdentityProvidersSection.d.ts.map +1 -1
- package/settings/IdentityProvidersSection.js +3 -2
- package/settings/IdentityProvidersSection.js.map +1 -1
- package/settings/InvitationsSection.d.ts.map +1 -1
- package/settings/InvitationsSection.js +3 -1
- package/settings/InvitationsSection.js.map +1 -1
- package/settings/MembersSection.d.ts.map +1 -1
- package/settings/MembersSection.js +3 -1
- package/settings/MembersSection.js.map +1 -1
- package/settings/OAuthAppsSection.d.ts.map +1 -1
- package/settings/OAuthAppsSection.js +3 -2
- package/settings/OAuthAppsSection.js.map +1 -1
- package/settings/OrgProfileSection.d.ts.map +1 -1
- package/settings/OrgProfileSection.js +3 -2
- package/settings/OrgProfileSection.js.map +1 -1
- package/settings/PlatformClientsSection.d.ts.map +1 -1
- package/settings/PlatformClientsSection.js +3 -2
- package/settings/PlatformClientsSection.js.map +1 -1
- package/settings/UsageSection.d.ts.map +1 -1
- package/settings/UsageSection.js +3 -1
- package/settings/UsageSection.js.map +1 -1
- package/sharing/ShareAgentDialog.d.ts.map +1 -1
- package/sharing/ShareAgentDialog.js +18 -7
- package/sharing/ShareAgentDialog.js.map +1 -1
- package/sidebar/chrome.d.ts +3 -4
- package/sidebar/chrome.d.ts.map +1 -1
- package/sidebar/chrome.js +5 -4
- package/sidebar/chrome.js.map +1 -1
- package/skill/SkillDiffDialog.js +1 -1
- package/skill/useSkillVersions.d.ts.map +1 -1
- package/skill/useSkillVersions.js +1 -9
- package/skill/useSkillVersions.js.map +1 -1
- package/src/access/ManageAccessDialog.tsx +10 -4
- package/src/activity/format-relative-time.ts +11 -9
- package/src/agent/steps/CapabilitiesStep.tsx +6 -3
- package/src/agent/steps/IdentityStep.tsx +19 -12
- package/src/agent-instance/CreateAgentInstanceDialog.tsx +17 -8
- package/src/api-key/ApiKeyCreatedAlert.tsx +10 -19
- package/src/api-key/ApiKeyListPanel.tsx +3 -39
- package/src/api-key/CreateApiKeyForm.tsx +12 -26
- package/src/approval-defaults-context.ts +56 -0
- package/src/attachment/__tests__/vision-preflight.test.ts +311 -0
- package/src/attachment/index.ts +12 -0
- package/src/attachment/vision-preflight.ts +236 -0
- package/src/billing/AutoRechargeCard.tsx +5 -4
- package/src/billing/BillingSection.tsx +4 -3
- package/src/channel/ChannelConversationsDialog.tsx +8 -4
- package/src/channel/ChannelCredentialsDialog.tsx +14 -4
- package/src/channel/ChannelTemplatesDialog.tsx +8 -4
- package/src/channel/ConnectSlackDialog.tsx +14 -4
- package/src/channel/ConnectWhatsAppDialog.tsx +14 -4
- package/src/channel/useChannelSessions.ts +3 -0
- package/src/channel-app/ChannelAppDetailPanel.tsx +15 -12
- package/src/channel-app/CreateChannelAppForm.tsx +17 -12
- package/src/channel-app/internal.tsx +5 -25
- package/src/composer/ComposerToolbar.tsx +1 -1
- package/src/composer/SessionComposer.tsx +160 -13
- package/src/composer/__tests__/SessionComposer-modelCoherence.test.tsx +220 -0
- package/src/composer/__tests__/SessionComposer-visionPreflight.test.tsx +222 -0
- package/src/composer/icons.tsx +0 -18
- package/src/conversation/ConversationComposer.tsx +1 -1
- package/src/conversation/ConversationListPane.tsx +4 -3
- package/src/cursor-accounts/MemberCoverageTable.tsx +3 -14
- package/src/cursor-accounts/__tests__/CursorAccountsConsole.test.tsx +2 -10
- package/src/dashboard/DashboardFailedRuns.tsx +2 -12
- package/src/environment/CreateEnvironmentForm.tsx +8 -27
- package/src/environment/EnvVarForm.tsx +2 -18
- package/src/environment/EnvironmentVariableEditor.tsx +5 -21
- package/src/execution/ArtifactApplyButton.tsx +2 -17
- package/src/execution/ExecutionErrorNotice.tsx +99 -0
- package/src/execution/FilePathLink.tsx +5 -9
- package/src/execution/FileReviewCard.tsx +1 -20
- package/src/execution/FollowUpInput.tsx +1 -16
- package/src/execution/LivenessStatusLine.tsx +59 -0
- package/src/execution/MessageEntry.tsx +136 -25
- package/src/execution/MessageThread.tsx +84 -83
- package/src/execution/SetupProgress.tsx +5 -1
- package/src/execution/SubAgentSection.tsx +9 -20
- package/src/execution/TerminalSession.tsx +97 -10
- package/src/execution/ToolCallDetail.tsx +19 -0
- package/src/execution/ToolCallItem.tsx +157 -37
- package/src/execution/ToolRunGroup.tsx +30 -32
- package/src/execution/WriteBackCard.tsx +5 -24
- package/src/execution/__tests__/MessageEntry-copy.test.tsx +125 -0
- package/src/execution/__tests__/MessageThread.test.tsx +97 -0
- package/src/execution/__tests__/TerminalSession.test.tsx +71 -1
- package/src/execution/__tests__/ToolCallDetail.test.tsx +33 -1
- package/src/execution/__tests__/ToolCallItem.test.tsx +299 -11
- package/src/execution/__tests__/ToolRunGroup.test.tsx +41 -9
- package/src/execution/__tests__/message-thread-slots.test.tsx +92 -0
- package/src/execution/__tests__/tool-presenter.test.tsx +41 -4
- package/src/execution/index.ts +8 -2
- package/src/execution/tool-categories.ts +72 -8
- package/src/execution/tool-presenter.ts +22 -1
- package/src/execution/useArtifactInspection.ts +4 -8
- package/src/execution/useCreateAgentExecution.ts +3 -2
- package/src/iam-policy/GrantAccessForm.tsx +2 -18
- package/src/iam-policy/OrgMembersPanel.tsx +3 -19
- package/src/iam-policy/RoleSelector.tsx +8 -1
- package/src/identity-provider/CreateIdentityProviderForm.tsx +13 -31
- package/src/identity-provider/IdentityProviderDetailPanel.tsx +24 -49
- package/src/identity-provider/IdentityProviderListPanel.tsx +2 -18
- package/src/identity-provider/IdentityProviderWizard.tsx +15 -32
- package/src/identity-provider/SsoLoginPrompt.tsx +6 -21
- package/src/index.ts +23 -1
- package/src/internal/DecisionButton.tsx +1 -20
- package/src/internal/SpinnerIcon.tsx +42 -0
- package/src/internal/__tests__/ThreadCardShell.test.tsx +43 -7
- package/src/internal/__tests__/useCopyFeedback.test.ts +92 -0
- package/src/internal/isUnimplemented.ts +26 -0
- package/src/internal/select-element-text.ts +17 -0
- package/src/internal/thread-card/ThreadCardShell.tsx +53 -21
- package/src/internal/thread-card/glyphs.tsx +24 -3
- package/src/internal/thread-card/index.ts +1 -0
- package/src/internal/useCopyFeedback.ts +61 -0
- package/src/invitation/InvitationCreatedAlert.tsx +10 -18
- package/src/invitation/InvitationManager.tsx +23 -34
- package/src/invitation/InvitationRedemption.tsx +2 -18
- package/src/library/useExportResource.ts +15 -29
- package/src/manifest/ApplyManifestDialog.tsx +1 -1
- package/src/manifest/EditResourceYamlDialog.tsx +1 -1
- package/src/mcp-server/DefinitionDriftNotice.tsx +120 -0
- package/src/mcp-server/McpServerConnectDialog.tsx +30 -12
- package/src/mcp-server/McpServerDetailView.tsx +58 -26
- package/src/mcp-server/OAuthAppForm.tsx +2 -18
- package/src/mcp-server/__tests__/DefinitionDriftNotice.test.tsx +57 -0
- package/src/mcp-server/__tests__/VendorApprovalBlocked.surfaces.test.tsx +103 -5
- package/src/mcp-server/__tests__/byoaEditionDegradation.test.tsx +323 -0
- package/src/mcp-server/__tests__/definitionDrift.test.ts +245 -0
- package/src/mcp-server/__tests__/mcpServerToInput.test.ts +201 -0
- package/src/mcp-server/__tests__/useMcpServerCredentials.test.tsx +306 -0
- package/src/mcp-server/__tests__/useMcpServerDefinitionDrift.test.tsx +173 -0
- package/src/mcp-server/internal/definitionDrift.ts +158 -0
- package/src/mcp-server/internal/mcpServerToInput.ts +3 -0
- package/src/mcp-server/steps/EnvironmentAuthStep.tsx +19 -19
- package/src/mcp-server/steps/IdentityTransportStep.tsx +24 -23
- package/src/mcp-server/useMcpServerConnect.ts +1 -1
- package/src/mcp-server/useMcpServerCredentials.ts +87 -19
- package/src/mcp-server/useMcpServerDefinitionDrift.ts +95 -0
- package/src/mcp-server/useOrgOAuthApp.ts +54 -8
- package/src/models/ModelRegistryContext.ts +7 -1
- package/src/models/ModelSelector.tsx +37 -0
- package/src/models/__tests__/ModelSelector-visionIndicator.test.tsx +129 -0
- package/src/models/__tests__/resolveDefaultModel.test.ts +115 -0
- package/src/models/__tests__/useModelRegistry.test.tsx +99 -4
- package/src/models/index.ts +2 -2
- package/src/models/registry.ts +196 -29
- package/src/models/useModelRegistry.ts +10 -2
- package/src/oauth-app/CreateOAuthAppForm.tsx +16 -31
- package/src/oauth-app/OAuthAppDetailPanel.tsx +16 -31
- package/src/organization/CreateOrganizationForm.tsx +10 -29
- package/src/organization/OrgProfilePanel.tsx +13 -44
- package/src/platform-client/CreatePlatformClientForm.tsx +9 -29
- package/src/platform-client/PlatformClientDetailPanel.tsx +10 -30
- package/src/platform-client/PlatformClientListPanel.tsx +2 -18
- package/src/platform-client/PlatformClientSecretAlert.tsx +26 -55
- package/src/provider.tsx +76 -33
- package/src/resource-creation/WizardNav.tsx +2 -18
- package/src/resource-detail/ConfirmDialog.tsx +1 -1
- package/src/resource-detail/useCopyResource.ts +17 -23
- package/src/schedule/ScheduleDetailView.tsx +2 -18
- package/src/schedule/ScheduleForm.tsx +19 -34
- package/src/session/NewSessionViewer.tsx +85 -7
- package/src/session/SessionViewer.tsx +120 -17
- package/src/session/__tests__/audienceWiring.test.tsx +76 -0
- package/src/session/__tests__/panelNegotiation.test.tsx +302 -0
- package/src/session/__tests__/useNewSessionFlow.test.tsx +134 -5
- package/src/session/__tests__/useSessionPageFlow.autoApprove.test.tsx +74 -0
- package/src/session/__tests__/useSessionPageFlow.runConfig.test.tsx +157 -0
- package/src/session/__tests__/useSessionPanel.test.ts +114 -0
- package/src/session/audience.ts +18 -0
- package/src/session/index.ts +2 -1
- package/src/session/run-config.ts +59 -0
- package/src/session/useNewSessionFlow.ts +39 -2
- package/src/session/useSessionConversation.ts +14 -10
- package/src/session/useSessionPageFlow.ts +51 -10
- package/src/session/useSessionPanel.ts +91 -10
- package/src/settings/ApiKeysSection.tsx +4 -3
- package/src/settings/ChannelAppsSection.tsx +4 -3
- package/src/settings/EnvironmentsSection.tsx +8 -5
- package/src/settings/IdentityProvidersSection.tsx +4 -3
- package/src/settings/InvitationsSection.tsx +4 -2
- package/src/settings/MembersSection.tsx +4 -2
- package/src/settings/OAuthAppsSection.tsx +4 -3
- package/src/settings/OrgProfileSection.tsx +4 -3
- package/src/settings/PlatformClientsSection.tsx +4 -3
- package/src/settings/UsageSection.tsx +4 -2
- package/src/sharing/ShareAgentDialog.tsx +28 -10
- package/src/sidebar/__tests__/WorkspaceSidebar.test.tsx +4 -1
- package/src/sidebar/chrome.tsx +6 -6
- package/src/skill/SkillDiffDialog.tsx +1 -1
- package/src/skill/useSkillVersions.ts +1 -11
- package/src/styles.css +43 -0
- package/src/version-history/VersionTimelineEntry.tsx +1 -21
- package/src/workflow/FailedRunsWidget.tsx +2 -9
- package/src/workflow/PendingApprovalsWidget.tsx +2 -9
- package/src/workflow/ViewYamlDialog.tsx +7 -22
- package/src/workflow/WorkflowArchitectDialog.tsx +8 -27
- package/src/workflow/WorkflowArtifactDocument.tsx +5 -9
- package/src/workflow/WorkflowCanvasEditor.tsx +39 -7
- package/src/workflow/WorkflowCanvasInner.tsx +14 -1
- package/src/workflow/WorkflowDiffGraph.tsx +7 -1
- package/src/workflow/WorkflowExecutionGraph.tsx +26 -1
- package/src/workflow/WorkflowExecutionViewer.tsx +115 -24
- package/src/workflow/WorkflowExplainDialog.tsx +8 -24
- package/src/workflow/WorkflowNode.tsx +5 -2
- package/src/workflow/WorkflowOverviewGraph.tsx +9 -1
- package/src/workflow/WorkflowRefinePanel.tsx +2 -18
- package/src/workflow/WorkflowRepairCard.tsx +2 -18
- package/src/workflow/WorkflowRunDialog.tsx +31 -24
- package/src/workflow/WorkflowTaskApprovalSummary.tsx +2 -17
- package/src/workflow/WorkflowVersionBadge.tsx +4 -13
- package/src/workflow/WorkflowVersionTimeline.tsx +1 -25
- package/src/workflow/__tests__/WorkflowExecutionViewer.reconciliation.test.tsx +48 -1
- package/src/workflow/__tests__/WorkflowNode.test.tsx +93 -0
- package/src/workflow/__tests__/WorkflowRunDialog.test.tsx +127 -0
- package/src/workflow/__tests__/graph-history.test.ts +103 -0
- package/src/workflow/__tests__/overview-graph.test.ts +17 -0
- package/src/workflow/__tests__/panelNegotiation.test.tsx +230 -0
- package/src/workflow/__tests__/useCanvasKeyboardShortcuts.undo.test.ts +115 -0
- package/src/workflow/__tests__/useWorkflowCanvas.dirty.test.tsx +178 -0
- package/src/workflow/__tests__/useWorkflowCanvas.drag.test.tsx +224 -0
- package/src/workflow/__tests__/useWorkflowCanvas.undo.test.tsx +133 -0
- package/src/workflow/__tests__/useWorkflowExecutionPanel.test.ts +100 -0
- package/src/workflow/execution-comparison/ExecutionComparisonPicker.tsx +7 -11
- package/src/workflow/execution-history/ExecutionHistoryTable.tsx +1 -25
- package/src/workflow/index.ts +1 -0
- package/src/workflow/instance/CreateWorkflowInstanceDialog.tsx +17 -8
- package/src/workflow/instance/WorkflowInstanceDetailPanel.tsx +2 -1
- package/src/workflow/instance/useDeleteWorkflowInstance.ts +9 -4
- package/src/workflow/layout/registry-dimensions.ts +2 -5
- package/src/workflow/node-shell/NodeShell.tsx +4 -0
- package/src/workflow/picker/BranchAddPopover.tsx +4 -3
- package/src/workflow/task-type-visual-registry.ts +5 -3
- package/src/workflow/templates/WorkflowTemplatePreview.tsx +1 -1
- package/src/workflow/useApprovalBoundary.ts +1 -1
- package/src/workflow/useCanvasKeyboardShortcuts.ts +33 -3
- package/src/workflow/useGraphHistory.ts +22 -41
- package/src/workflow/useWorkflowCanvas.ts +126 -21
- package/src/workflow/useWorkflowExecutionPanel.ts +95 -13
- package/src/workflow/useWorkflowSave.ts +2 -15
- package/src/workflow/workflow-graph-conversions.ts +25 -3
- package/styles.css +1 -1
- package/version-history/VersionTimelineEntry.d.ts.map +1 -1
- package/version-history/VersionTimelineEntry.js +1 -23
- package/version-history/VersionTimelineEntry.js.map +1 -1
- package/workflow/CanvasTransitionEdge.d.ts +1 -1
- package/workflow/FailedRunsWidget.d.ts.map +1 -1
- package/workflow/FailedRunsWidget.js +2 -11
- package/workflow/FailedRunsWidget.js.map +1 -1
- package/workflow/PendingApprovalsWidget.d.ts.map +1 -1
- package/workflow/PendingApprovalsWidget.js +2 -11
- package/workflow/PendingApprovalsWidget.js.map +1 -1
- package/workflow/ViewYamlDialog.d.ts.map +1 -1
- package/workflow/ViewYamlDialog.js +7 -23
- package/workflow/ViewYamlDialog.js.map +1 -1
- package/workflow/WorkflowArchitectDialog.d.ts.map +1 -1
- package/workflow/WorkflowArchitectDialog.js +7 -11
- package/workflow/WorkflowArchitectDialog.js.map +1 -1
- package/workflow/WorkflowArtifactDocument.d.ts.map +1 -1
- package/workflow/WorkflowArtifactDocument.js +5 -8
- package/workflow/WorkflowArtifactDocument.js.map +1 -1
- package/workflow/WorkflowCanvasEditor.d.ts.map +1 -1
- package/workflow/WorkflowCanvasEditor.js +31 -6
- package/workflow/WorkflowCanvasEditor.js.map +1 -1
- package/workflow/WorkflowCanvasInner.d.ts +4 -2
- package/workflow/WorkflowCanvasInner.d.ts.map +1 -1
- package/workflow/WorkflowCanvasInner.js +7 -3
- package/workflow/WorkflowCanvasInner.js.map +1 -1
- package/workflow/WorkflowDiffGraph.js +6 -2
- package/workflow/WorkflowDiffGraph.js.map +1 -1
- package/workflow/WorkflowExecutionGraph.d.ts.map +1 -1
- package/workflow/WorkflowExecutionGraph.js +27 -1
- package/workflow/WorkflowExecutionGraph.js.map +1 -1
- package/workflow/WorkflowExecutionViewer.d.ts +51 -0
- package/workflow/WorkflowExecutionViewer.d.ts.map +1 -1
- package/workflow/WorkflowExecutionViewer.js +49 -18
- package/workflow/WorkflowExecutionViewer.js.map +1 -1
- package/workflow/WorkflowExplainDialog.d.ts.map +1 -1
- package/workflow/WorkflowExplainDialog.js +6 -8
- package/workflow/WorkflowExplainDialog.js.map +1 -1
- package/workflow/WorkflowNode.d.ts.map +1 -1
- package/workflow/WorkflowNode.js +2 -2
- package/workflow/WorkflowNode.js.map +1 -1
- package/workflow/WorkflowOverviewGraph.js +8 -2
- package/workflow/WorkflowOverviewGraph.js.map +1 -1
- package/workflow/WorkflowRefinePanel.d.ts.map +1 -1
- package/workflow/WorkflowRefinePanel.js +2 -4
- package/workflow/WorkflowRefinePanel.js.map +1 -1
- package/workflow/WorkflowRepairCard.d.ts.map +1 -1
- package/workflow/WorkflowRepairCard.js +2 -4
- package/workflow/WorkflowRepairCard.js.map +1 -1
- package/workflow/WorkflowRunDialog.d.ts +11 -1
- package/workflow/WorkflowRunDialog.d.ts.map +1 -1
- package/workflow/WorkflowRunDialog.js +18 -9
- package/workflow/WorkflowRunDialog.js.map +1 -1
- package/workflow/WorkflowTaskApprovalSummary.d.ts.map +1 -1
- package/workflow/WorkflowTaskApprovalSummary.js +2 -4
- package/workflow/WorkflowTaskApprovalSummary.js.map +1 -1
- package/workflow/WorkflowVersionBadge.d.ts.map +1 -1
- package/workflow/WorkflowVersionBadge.js +4 -13
- package/workflow/WorkflowVersionBadge.js.map +1 -1
- package/workflow/WorkflowVersionTimeline.d.ts.map +1 -1
- package/workflow/WorkflowVersionTimeline.js +1 -26
- package/workflow/WorkflowVersionTimeline.js.map +1 -1
- package/workflow/execution-comparison/ExecutionComparisonPicker.d.ts.map +1 -1
- package/workflow/execution-comparison/ExecutionComparisonPicker.js +7 -15
- package/workflow/execution-comparison/ExecutionComparisonPicker.js.map +1 -1
- package/workflow/execution-history/ExecutionHistoryTable.d.ts.map +1 -1
- package/workflow/execution-history/ExecutionHistoryTable.js +1 -24
- package/workflow/execution-history/ExecutionHistoryTable.js.map +1 -1
- package/workflow/index.d.ts +1 -1
- package/workflow/index.d.ts.map +1 -1
- package/workflow/index.js.map +1 -1
- package/workflow/instance/CreateWorkflowInstanceDialog.d.ts.map +1 -1
- package/workflow/instance/CreateWorkflowInstanceDialog.js +10 -2
- package/workflow/instance/CreateWorkflowInstanceDialog.js.map +1 -1
- package/workflow/instance/WorkflowInstanceDetailPanel.d.ts.map +1 -1
- package/workflow/instance/WorkflowInstanceDetailPanel.js +1 -1
- package/workflow/instance/WorkflowInstanceDetailPanel.js.map +1 -1
- package/workflow/instance/useDeleteWorkflowInstance.d.ts +9 -4
- package/workflow/instance/useDeleteWorkflowInstance.d.ts.map +1 -1
- package/workflow/instance/useDeleteWorkflowInstance.js +4 -2
- package/workflow/instance/useDeleteWorkflowInstance.js.map +1 -1
- package/workflow/layout/registry-dimensions.d.ts.map +1 -1
- package/workflow/layout/registry-dimensions.js +2 -5
- package/workflow/layout/registry-dimensions.js.map +1 -1
- package/workflow/node-shell/NodeShell.js +1 -1
- package/workflow/node-shell/NodeShell.js.map +1 -1
- package/workflow/picker/BranchAddPopover.d.ts.map +1 -1
- package/workflow/picker/BranchAddPopover.js +3 -2
- package/workflow/picker/BranchAddPopover.js.map +1 -1
- package/workflow/task-type-visual-registry.d.ts.map +1 -1
- package/workflow/task-type-visual-registry.js +5 -3
- package/workflow/task-type-visual-registry.js.map +1 -1
- package/workflow/templates/WorkflowTemplatePreview.js +1 -1
- package/workflow/useApprovalBoundary.d.ts +1 -1
- package/workflow/useApprovalBoundary.js +1 -1
- package/workflow/useCanvasKeyboardShortcuts.d.ts +15 -4
- package/workflow/useCanvasKeyboardShortcuts.d.ts.map +1 -1
- package/workflow/useCanvasKeyboardShortcuts.js +25 -4
- package/workflow/useCanvasKeyboardShortcuts.js.map +1 -1
- package/workflow/useGraphHistory.d.ts +16 -9
- package/workflow/useGraphHistory.d.ts.map +1 -1
- package/workflow/useGraphHistory.js +19 -33
- package/workflow/useGraphHistory.js.map +1 -1
- package/workflow/useWorkflowCanvas.d.ts +6 -4
- package/workflow/useWorkflowCanvas.d.ts.map +1 -1
- package/workflow/useWorkflowCanvas.js +115 -23
- package/workflow/useWorkflowCanvas.js.map +1 -1
- package/workflow/useWorkflowExecutionPanel.d.ts +38 -2
- package/workflow/useWorkflowExecutionPanel.d.ts.map +1 -1
- package/workflow/useWorkflowExecutionPanel.js +46 -13
- package/workflow/useWorkflowExecutionPanel.js.map +1 -1
- package/workflow/useWorkflowSave.d.ts.map +1 -1
- package/workflow/useWorkflowSave.js +2 -15
- package/workflow/useWorkflowSave.js.map +1 -1
- package/workflow/workflow-graph-conversions.d.ts +19 -1
- package/workflow/workflow-graph-conversions.d.ts.map +1 -1
- package/workflow/workflow-graph-conversions.js +17 -3
- package/workflow/workflow-graph-conversions.js.map +1 -1
|
@@ -6,12 +6,13 @@ import { useRenderTracer } from "../internal/dev/index.js";
|
|
|
6
6
|
import { useAutoDisclosure } from "../internal/useAutoDisclosure.js";
|
|
7
7
|
import { useElapsedSince, formatElapsed } from "../internal/useElapsedSince.js";
|
|
8
8
|
import { cn } from "@stigmer/theme";
|
|
9
|
-
import {
|
|
9
|
+
import { formatHeaderDuration } from "./ToolCallDetail.js";
|
|
10
10
|
import { MessageEntry } from "./MessageEntry.js";
|
|
11
11
|
import { ToolCallGroup } from "./ToolCallGroup.js";
|
|
12
12
|
import { ApprovalContext } from "./ApprovalContext.js";
|
|
13
13
|
import { isInternalTool } from "./tool-categories.js";
|
|
14
14
|
import { TodoList, TodoInProgressIcon, findActiveTodo, todoCompletionSummary, } from "./TodoList.js";
|
|
15
|
+
import { SpinnerIcon } from "../internal/thread-card/glyphs.js";
|
|
15
16
|
/**
|
|
16
17
|
* Renders a sub-agent execution as a nested mini-thread inside the
|
|
17
18
|
* parent conversation.
|
|
@@ -47,7 +48,10 @@ import { TodoList, TodoInProgressIcon, findActiveTodo, todoCompletionSummary, }
|
|
|
47
48
|
*/
|
|
48
49
|
export const SubAgentSection = memo(function SubAgentSection({ subAgentExecution: sub, collapsible = true, className, }) {
|
|
49
50
|
useRenderTracer("SubAgentSection", { status: sub.status, name: sub.name });
|
|
50
|
-
|
|
51
|
+
// Header chip threshold (>= 1s) shared with ToolCallItem — a sub-second
|
|
52
|
+
// sub-agent is noise by the same rule, and the two row kinds must speak
|
|
53
|
+
// one duration vocabulary.
|
|
54
|
+
const duration = formatHeaderDuration(sub.startedAt, sub.completedAt);
|
|
51
55
|
const statusInfo = SUB_AGENT_STATUS_MAP[sub.status];
|
|
52
56
|
const StatusIcon = statusInfo.icon;
|
|
53
57
|
const isFailed = sub.status === SubAgentStatus.SUB_AGENT_FAILED;
|
|
@@ -91,7 +95,7 @@ function CollapsibleCard({ sub, statusInfo, displayLabel, duration, isFailed, th
|
|
|
91
95
|
? completionLabel
|
|
92
96
|
: null;
|
|
93
97
|
const ariaLabel = `Sub-agent: ${displayLabel}, ${statusInfo.label}`;
|
|
94
|
-
return (_jsxs("div", { role: "group", "aria-label": ariaLabel, className: cn("stg:rounded-md stg:border stg:border-border stg:border-l-2 stg:border-l-primary/30 stg:bg-muted-faint", className), children: [_jsxs("button", { type: "button", "aria-expanded": expanded, onClick: handleToggle, className: cn("stg:flex stg:w-full stg:items-center stg:gap-2 stg:px-2.5 stg:py-1.5 stg:text-left stg:text-xs stg:text-muted-foreground stg:transition-colors", "stg:hover:bg-muted-subtle", "stg:cursor-pointer"), children: [_jsx("span", { className: "stg:shrink-0 stg:text-primary-muted", "aria-hidden": "true", children: _jsx(BotIcon, {}) }), _jsx("span", { className: "stg:min-w-0 stg:flex-1 stg:truncate", children: displayLabel }), isRunning && (_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx(SpinnerIcon, {}) })), _jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", statusInfo.badgeClass), children: statusInfo.label }), isRunning ? (_jsx(RunningDuration, { startedAt: sub.startedAt })) : (duration && (_jsx("span", { className: "stg:shrink-0 stg:tabular-nums stg:text-muted-foreground", children: duration }))), _jsx(ChevronIcon, { expanded: expanded })] }), collapsedPreview && !expanded && (_jsxs("div", { className: "stg:flex stg:items-center stg:gap-1.5 stg:px-2.5 stg:pb-1.5 stg:text-xs stg:text-muted-foreground", children: [_jsx("span", { className: "stg:ml-[20px] stg:shrink-0", "aria-hidden": "true", children: isRunning && activeTodo ? (_jsx(TodoInProgressIcon, {})) : (_jsx(TodoCompletedSmallIcon, {})) }), _jsx("span", { className: "stg:min-w-0 stg:truncate", children: collapsedPreview })] })), _jsx("div", { className: cn("stg:grid stg:transition-[grid-template-rows] stg:duration-150 stg:ease-out", expanded ? "stg:grid-rows-[1fr]" : "stg:grid-rows-[0fr]"), children: _jsx("div", { className: "stg:overflow-hidden", children: expanded && (_jsx("div", { className: "stg:border-t stg:border-border-muted stg:px-2.5 stg:pb-2 stg:pt-1.5", children: _jsx(SubAgentThreadContent, { threadItems: threadItems, todos: sub.todos, input: sub.input, isFailed: isFailed, error: sub.error }) })) }) })] }));
|
|
98
|
+
return (_jsxs("div", { role: "group", "aria-label": ariaLabel, className: cn("stg:rounded-md stg:border stg:border-border stg:border-l-2 stg:border-l-primary/30 stg:bg-muted-faint", className), children: [_jsxs("button", { type: "button", "aria-expanded": expanded, onClick: handleToggle, className: cn("stg:flex stg:w-full stg:items-center stg:gap-2 stg:px-2.5 stg:py-1.5 stg:text-left stg:text-xs stg:text-muted-foreground stg:transition-colors", "stg:hover:bg-muted-subtle", "stg:cursor-pointer"), children: [_jsx("span", { className: "stg:shrink-0 stg:text-primary-muted", "aria-hidden": "true", children: _jsx(BotIcon, {}) }), _jsx("span", { className: "stg:min-w-0 stg:flex-1 stg:truncate", children: displayLabel }), isRunning && (_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx(SpinnerIcon, { size: 12 }) })), _jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", statusInfo.badgeClass), children: statusInfo.label }), isRunning ? (_jsx(RunningDuration, { startedAt: sub.startedAt })) : (duration && (_jsx("span", { className: "stg:shrink-0 stg:tabular-nums stg:text-muted-foreground", children: duration }))), _jsx(ChevronIcon, { expanded: expanded })] }), collapsedPreview && !expanded && (_jsxs("div", { className: "stg:flex stg:items-center stg:gap-1.5 stg:px-2.5 stg:pb-1.5 stg:text-xs stg:text-muted-foreground", children: [_jsx("span", { className: "stg:ml-[20px] stg:shrink-0", "aria-hidden": "true", children: isRunning && activeTodo ? (_jsx(TodoInProgressIcon, {})) : (_jsx(TodoCompletedSmallIcon, {})) }), _jsx("span", { className: "stg:min-w-0 stg:truncate", children: collapsedPreview })] })), _jsx("div", { className: cn("stg:grid stg:transition-[grid-template-rows] stg:duration-150 stg:ease-out", expanded ? "stg:grid-rows-[1fr]" : "stg:grid-rows-[0fr]"), children: _jsx("div", { className: "stg:overflow-hidden", children: expanded && (_jsx("div", { className: "stg:border-t stg:border-border-muted stg:px-2.5 stg:pb-2 stg:pt-1.5", children: _jsx(SubAgentThreadContent, { threadItems: threadItems, todos: sub.todos, input: sub.input, isFailed: isFailed, error: sub.error }) })) }) })] }));
|
|
95
99
|
}
|
|
96
100
|
/**
|
|
97
101
|
* Ticking elapsed time for an IN_PROGRESS sub-agent's header, where the
|
|
@@ -163,7 +167,8 @@ const SUB_AGENT_STATUS_MAP = {
|
|
|
163
167
|
label: "Running",
|
|
164
168
|
colorClass: "stg:text-foreground",
|
|
165
169
|
badgeClass: "stg:bg-muted stg:text-foreground",
|
|
166
|
-
|
|
170
|
+
// Sized up to match this map's 12px siblings (the glyph defaults to 10).
|
|
171
|
+
icon: () => _jsx(SpinnerIcon, { size: 12 }),
|
|
167
172
|
},
|
|
168
173
|
[SubAgentStatus.SUB_AGENT_COMPLETED]: {
|
|
169
174
|
label: "Completed",
|
|
@@ -187,9 +192,6 @@ const SUB_AGENT_STATUS_MAP = {
|
|
|
187
192
|
// ---------------------------------------------------------------------------
|
|
188
193
|
// Inline SVG icons
|
|
189
194
|
// ---------------------------------------------------------------------------
|
|
190
|
-
function SpinnerIcon() {
|
|
191
|
-
return (_jsx("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.5", className: "stg:animate-spin", children: _jsx("path", { d: "M6 1.5A4.5 4.5 0 1 1 1.5 6", strokeLinecap: "round" }) }));
|
|
192
|
-
}
|
|
193
195
|
function CheckCircleIcon() {
|
|
194
196
|
return (_jsxs("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", children: [_jsx("circle", { cx: "6", cy: "6", r: "4.5" }), _jsx("path", { d: "M4 6L5.5 7.5L8 4.5" })] }));
|
|
195
197
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubAgentSection.js","sourceRoot":"","sources":["../../src/execution/SubAgentSection.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SubAgentSection.js","sourceRoot":"","sources":["../../src/execution/SubAgentSection.tsx"],"names":[],"mappings":"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"}
|
|
@@ -31,4 +31,34 @@ export interface TerminalSessionProps {
|
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
33
|
export declare function TerminalSession({ command, stdout, stderr, exitCode, className, }: TerminalSessionProps): import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
/** Props for {@link TerminalTail}. */
|
|
35
|
+
export interface TerminalTailProps {
|
|
36
|
+
/** The command that was run, shown as the `$ <command>` prompt line. */
|
|
37
|
+
readonly command?: string;
|
|
38
|
+
/** Standard output. */
|
|
39
|
+
readonly stdout?: string;
|
|
40
|
+
/** Standard error. */
|
|
41
|
+
readonly stderr?: string;
|
|
42
|
+
/** Process exit code. A non-zero code renders a trailing `exit N` badge. */
|
|
43
|
+
readonly exitCode?: number;
|
|
44
|
+
/** Additional CSS class names for the root container. */
|
|
45
|
+
readonly className?: string;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The collapsed teaser of a settled terminal session: the `$ command` prompt
|
|
49
|
+
* line plus a dimmed tail of the last few output lines — enough to see at a
|
|
50
|
+
* glance that the command ran and what it printed last, without the full
|
|
51
|
+
* output competing with the conversation.
|
|
52
|
+
*
|
|
53
|
+
* The reduced contrast is deliberate and load-bearing: the tail is *context*,
|
|
54
|
+
* not content, so it renders one contrast step below the reading text
|
|
55
|
+
* (`muted-foreground`), while the command — the user-relevant intent — keeps
|
|
56
|
+
* full contrast. stderr is not colored here for the same reason; the full
|
|
57
|
+
* session (one disclosure away) restores the destructive treatment.
|
|
58
|
+
*
|
|
59
|
+
* Rendered by the tool-call row's `"tail"` disclosure state (see
|
|
60
|
+
* {@link ToolCallItem}); the row's header chevron is the expand control, so
|
|
61
|
+
* this component is presentation-only.
|
|
62
|
+
*/
|
|
63
|
+
export declare function TerminalTail({ command, stdout, stderr, exitCode, className, }: TerminalTailProps): import("react/jsx-runtime").JSX.Element;
|
|
34
64
|
//# sourceMappingURL=TerminalSession.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalSession.d.ts","sourceRoot":"","sources":["../../src/execution/TerminalSession.tsx"],"names":[],"mappings":"AAWA,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,oBAAoB,
|
|
1
|
+
{"version":3,"file":"TerminalSession.d.ts","sourceRoot":"","sources":["../../src/execution/TerminalSession.tsx"],"names":[],"mappings":"AAWA,yCAAyC;AACzC,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,yDAAyD;IACzD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,oBAAoB,2CA8BtB;AAKD,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,wEAAwE;IACxE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,uBAAuB;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,sBAAsB;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,YAAY,CAAC,EAC3B,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,iBAAiB,2CAyCnB"}
|
|
@@ -29,6 +29,42 @@ export function TerminalSession({ command, stdout, stderr, exitCode, className,
|
|
|
29
29
|
// A plain <pre> (not CollapsiblePre): the command is the user's intent
|
|
30
30
|
// and renders in full — even a multi-line heredoc — without a second
|
|
31
31
|
// truncation toggle competing with stdout's.
|
|
32
|
-
_jsxs("pre", { className: "stg:whitespace-pre-wrap stg:break-words stg:text-foreground", children: [_jsx("span", { className: "stg:select-none stg:text-muted-foreground", children: "$ " }), normalize(command)] })), stdout && (_jsx(CollapsiblePre, { content: normalize(stdout), className: "stg:text-foreground" })), stderr && (_jsx(CollapsiblePre, { content: normalize(stderr), className: "stg:text-destructive" })), failed && (
|
|
32
|
+
_jsxs("pre", { className: "stg:whitespace-pre-wrap stg:break-words stg:text-foreground", children: [_jsx("span", { className: "stg:select-none stg:text-muted-foreground", children: "$ " }), normalize(command)] })), stdout && (_jsx(CollapsiblePre, { content: normalize(stdout), className: "stg:text-foreground" })), stderr && (_jsx(CollapsiblePre, { content: normalize(stderr), className: "stg:text-destructive" })), failed && _jsx(ExitBadge, { exitCode: exitCode })] }));
|
|
33
|
+
}
|
|
34
|
+
/** How many trailing output lines a collapsed terminal tail keeps visible. */
|
|
35
|
+
const TAIL_LINE_LIMIT = 3;
|
|
36
|
+
/**
|
|
37
|
+
* The collapsed teaser of a settled terminal session: the `$ command` prompt
|
|
38
|
+
* line plus a dimmed tail of the last few output lines — enough to see at a
|
|
39
|
+
* glance that the command ran and what it printed last, without the full
|
|
40
|
+
* output competing with the conversation.
|
|
41
|
+
*
|
|
42
|
+
* The reduced contrast is deliberate and load-bearing: the tail is *context*,
|
|
43
|
+
* not content, so it renders one contrast step below the reading text
|
|
44
|
+
* (`muted-foreground`), while the command — the user-relevant intent — keeps
|
|
45
|
+
* full contrast. stderr is not colored here for the same reason; the full
|
|
46
|
+
* session (one disclosure away) restores the destructive treatment.
|
|
47
|
+
*
|
|
48
|
+
* Rendered by the tool-call row's `"tail"` disclosure state (see
|
|
49
|
+
* {@link ToolCallItem}); the row's header chevron is the expand control, so
|
|
50
|
+
* this component is presentation-only.
|
|
51
|
+
*/
|
|
52
|
+
export function TerminalTail({ command, stdout, stderr, exitCode, className, }) {
|
|
53
|
+
const normalize = useSandboxNormalize();
|
|
54
|
+
const failed = exitCode !== undefined && exitCode !== 0;
|
|
55
|
+
// One combined stream, in the order the full session renders it. Trailing
|
|
56
|
+
// whitespace is trimmed so an ending newline doesn't blank the last slot.
|
|
57
|
+
const combined = [stdout, stderr]
|
|
58
|
+
.filter((s) => Boolean(s))
|
|
59
|
+
.join("\n")
|
|
60
|
+
.replace(/\s+$/, "");
|
|
61
|
+
const lines = combined ? normalize(combined).split("\n") : [];
|
|
62
|
+
const tail = lines.slice(-TAIL_LINE_LIMIT);
|
|
63
|
+
const hiddenCount = lines.length - tail.length;
|
|
64
|
+
return (_jsxs("div", { "data-cursor-target": "terminal-tail", className: cn("stg:space-y-1 stg:rounded-md stg:border stg:border-border stg:bg-muted-subtle stg:p-2.5 stg:font-mono stg:text-xs", className), children: [command && (_jsxs("pre", { className: "stg:whitespace-pre-wrap stg:break-words stg:text-foreground", children: [_jsx("span", { className: "stg:select-none stg:text-muted-foreground", children: "$ " }), normalize(command)] })), tail.length > 0 && (_jsxs("pre", { className: "stg:whitespace-pre-wrap stg:break-words stg:text-muted-foreground", children: [hiddenCount > 0 && (_jsxs("span", { className: "stg:block stg:select-none stg:text-muted-foreground-subtle", children: ["\u2026 +", hiddenCount, " ", hiddenCount === 1 ? "line" : "lines"] })), tail.join("\n")] })), failed && _jsx(ExitBadge, { exitCode: exitCode })] }));
|
|
65
|
+
}
|
|
66
|
+
/** The `exit N` failure badge, shared by the full session and the tail. */
|
|
67
|
+
function ExitBadge({ exitCode }) {
|
|
68
|
+
return (_jsxs("div", { children: [_jsxs("span", { className: "stg:sr-only", children: ["Command exited with code ", exitCode] }), _jsxs("span", { "aria-hidden": "true", className: "stg:inline-block stg:rounded stg:bg-destructive-subtle stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none stg:tabular-nums stg:text-destructive", children: ["exit ", exitCode] })] }));
|
|
33
69
|
}
|
|
34
70
|
//# sourceMappingURL=TerminalSession.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalSession.js","sourceRoot":"","sources":["../../src/execution/TerminalSession.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,6EAA6E;AAC7E,+EAA+E;AAC/E,wEAAwE;AACxE,0EAA0E;AAE1E,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AACpC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAoB1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,QAAQ,EACR,SAAS,GACY;IACrB,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,CAAC,CAAC;IAExD,OAAO,CACL,qCACqB,kBAAkB,EACrC,SAAS,EAAE,EAAE,CACX,mHAAmH,EACnH,SAAS,CACV,aAEA,OAAO,IAAI;YACV,uEAAuE;YACvE,qEAAqE;YACrE,6CAA6C;YAC7C,eAAK,SAAS,EAAC,6DAA6D,aAC1E,eAAM,SAAS,EAAC,2CAA2C,mBAAU,EACpE,SAAS,CAAC,OAAO,CAAC,IACf,CACP,EACA,MAAM,IAAI,CACT,KAAC,cAAc,IAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,EAAC,qBAAqB,GAAG,CAC/E,EACA,MAAM,IAAI,CACT,KAAC,cAAc,IAAC,OAAO,EAAE,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,EAAC,sBAAsB,GAAG,CAChF,EACA,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"TerminalSession.js","sourceRoot":"","sources":["../../src/execution/TerminalSession.tsx"],"names":[],"mappings":"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"}
|
|
@@ -43,4 +43,13 @@ export declare function ToolCallDetail({ toolCall, primaryArgTruncated, classNam
|
|
|
43
43
|
* `null` when either timestamp is empty or invalid.
|
|
44
44
|
*/
|
|
45
45
|
export declare function formatDuration(startedAt: string, completedAt: string): string | null;
|
|
46
|
+
/**
|
|
47
|
+
* {@link formatDuration} for header duration chips: returns `null` below one
|
|
48
|
+
* second. A duration chip earns its place only when it carries information —
|
|
49
|
+
* a `4ms` chip on a directory listing draws the eye to the least interesting
|
|
50
|
+
* row in the thread (stigmer#274), so sub-second work renders no chip at all.
|
|
51
|
+
* `formatDuration` itself stays exact — it is public API with consumers that
|
|
52
|
+
* want the precise value.
|
|
53
|
+
*/
|
|
54
|
+
export declare function formatHeaderDuration(startedAt: string, completedAt: string): string | null;
|
|
46
55
|
//# sourceMappingURL=ToolCallDetail.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCallDetail.d.ts","sourceRoot":"","sources":["../../src/execution/ToolCallDetail.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAkBhG,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,mBAA2B,EAC3B,SAAS,GACV,EAAE,mBAAmB,2CAyBrB;AA0OD;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAiBf"}
|
|
1
|
+
{"version":3,"file":"ToolCallDetail.d.ts","sourceRoot":"","sources":["../../src/execution/ToolCallDetail.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAkBhG,wCAAwC;AACxC,MAAM,WAAW,mBAAmB;IAClC,yCAAyC;IACzC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,mBAA2B,EAC3B,SAAS,GACV,EAAE,mBAAmB,2CAyBrB;AA0OD;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAiBf;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,MAAM,GAAG,IAAI,CAMf"}
|
|
@@ -184,4 +184,20 @@ export function formatDuration(startedAt, completedAt) {
|
|
|
184
184
|
const seconds = Math.round((ms % 60_000) / 1000);
|
|
185
185
|
return seconds > 0 ? `${minutes}m ${seconds}s` : `${minutes}m`;
|
|
186
186
|
}
|
|
187
|
+
/**
|
|
188
|
+
* {@link formatDuration} for header duration chips: returns `null` below one
|
|
189
|
+
* second. A duration chip earns its place only when it carries information —
|
|
190
|
+
* a `4ms` chip on a directory listing draws the eye to the least interesting
|
|
191
|
+
* row in the thread (stigmer#274), so sub-second work renders no chip at all.
|
|
192
|
+
* `formatDuration` itself stays exact — it is public API with consumers that
|
|
193
|
+
* want the precise value.
|
|
194
|
+
*/
|
|
195
|
+
export function formatHeaderDuration(startedAt, completedAt) {
|
|
196
|
+
const formatted = formatDuration(startedAt, completedAt);
|
|
197
|
+
// Exactly the sub-second arm of formatDuration ("123ms"); every other arm
|
|
198
|
+
// is >= 1s by construction.
|
|
199
|
+
if (formatted === null || formatted.endsWith("ms"))
|
|
200
|
+
return null;
|
|
201
|
+
return formatted;
|
|
202
|
+
}
|
|
187
203
|
//# sourceMappingURL=ToolCallDetail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCallDetail.js","sourceRoot":"","sources":["../../src/execution/ToolCallDetail.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ToolCallDetail.js","sourceRoot":"","sources":["../../src/execution/ToolCallDetail.tsx"],"names":[],"mappings":"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"}
|
|
@@ -30,18 +30,25 @@ export interface ToolCallItemProps {
|
|
|
30
30
|
/**
|
|
31
31
|
* Renders a single tool call as a row in the tool call group.
|
|
32
32
|
*
|
|
33
|
-
*
|
|
34
|
-
* one-line row cannot?**
|
|
33
|
+
* Four rendering modes, set by one rule — **does the body carry content the
|
|
34
|
+
* one-line row cannot, and does it stay content once the call settles?**
|
|
35
35
|
*
|
|
36
36
|
* - **Non-expandable** (completed/skipped Read): a static `<div>` row with a
|
|
37
37
|
* clickable {@link FilePathLink}. The path IS the complete information.
|
|
38
|
-
* - **Preview** (content-bearing:
|
|
38
|
+
* - **Preview** (content-bearing: edit / write / fetch / web-search /
|
|
39
39
|
* unknown / mcp): a plain (non-button) header above an **always-visible**
|
|
40
40
|
* {@link ToolCallDetail} body — Cursor-style "previews aren't collapsible".
|
|
41
41
|
* There is no header chevron; each content block self-bounds with its own
|
|
42
|
-
|
|
43
|
-
* never floods the thread. The body is suppressed only for an `empty` result
|
|
44
|
-
*
|
|
42
|
+
* single in-place reveal (`RevealToggle`), so a long diff or output
|
|
43
|
+
* never floods the thread. The body is suppressed only for an `empty` result,
|
|
44
|
+
* which stays a clean one-line row.
|
|
45
|
+
* - **Tail** (shell): live like preview — the full terminal session streams in
|
|
46
|
+
* view while the command runs or awaits its gate — but a *successful* settle
|
|
47
|
+
* collapses the row to a {@link TerminalTail} teaser (the `$ command` line
|
|
48
|
+
* plus a dimmed tail of the last output lines) behind the header chevron.
|
|
49
|
+
* A settled failure stays open: error output is content, not context. A
|
|
50
|
+
* result that isn't a terminal session (e.g. an offloaded `outputRef`)
|
|
51
|
+
* falls back to the preview layout — never hide evidence we cannot condense.
|
|
45
52
|
* - **Summary / sub-agent** (read / list / search / delete / think, and
|
|
46
53
|
* sub-agent delegations): a chevron-gated `div[role=button]` header that
|
|
47
54
|
* discloses a body hidden by default — {@link ToolCallDetail}, a
|
|
@@ -53,6 +60,13 @@ export interface ToolCallItemProps {
|
|
|
53
60
|
* content-overflow reveal — never govern the same body, which is what removes
|
|
54
61
|
* the old "expand, then Show more" double control.
|
|
55
62
|
*
|
|
63
|
+
* Orthogonal to the layout modes is the **chrome tier** (the density axis,
|
|
64
|
+
* stigmer#274): metadata-only categories (read / list / search / think)
|
|
65
|
+
* render as quiet unboxed lines — no card frame — while content-bearing
|
|
66
|
+
* categories keep their cards. A quiet row escalates to a card while gated
|
|
67
|
+
* or failed; its disclosed body renders under a light left rail instead of a
|
|
68
|
+
* border. See {@link ToolChrome}.
|
|
69
|
+
*
|
|
56
70
|
* Shows category-aware labels (e.g., "Shell", "Read", "Edit") with
|
|
57
71
|
* the primary argument as a subtitle, a category-specific icon, and
|
|
58
72
|
* an inline approval decision badge when applicable.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCallItem.d.ts","sourceRoot":"","sources":["../../src/execution/ToolCallItem.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAChG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;
|
|
1
|
+
{"version":3,"file":"ToolCallItem.d.ts","sourceRoot":"","sources":["../../src/execution/ToolCallItem.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iEAAiE,CAAC;AAChG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kEAAkE,CAAC;AA8B1G,OAAO,EAAkB,KAAK,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AAI1F,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,gDAAgD;IAChD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACtD;;;OAGG;IACH,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;IACnC;;;;;;OAMG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,yDAAyD;IACzD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,eAAO,MAAM,YAAY,yDAwXvB,CAAC;AA0FH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAevE,CAAC"}
|
|
@@ -6,31 +6,41 @@ import { cn } from "@stigmer/theme";
|
|
|
6
6
|
import { useRenderTracer } from "../internal/dev/index.js";
|
|
7
7
|
import { useAutoDisclosure } from "../internal/useAutoDisclosure.js";
|
|
8
8
|
import { useIsTextTruncated } from "../internal/useIsTextTruncated.js";
|
|
9
|
-
import { ThreadCardShell, ThreadCardHeader, ThreadCardBody, SpinnerIcon, ClockIcon,
|
|
10
|
-
import {
|
|
9
|
+
import { ThreadCardShell, ThreadCardHeader, ThreadCardBody, SpinnerIcon, ClockIcon, XCircleIcon, DotIcon, SlashCircleIcon, } from "../internal/thread-card/index.js";
|
|
10
|
+
import { TerminalTail } from "./TerminalSession.js";
|
|
11
|
+
import { ToolCallDetail, formatHeaderDuration } from "./ToolCallDetail.js";
|
|
11
12
|
import { SubAgentSection } from "./SubAgentSection.js";
|
|
12
13
|
import { ApprovalCardBody } from "./ApprovalCard.js";
|
|
13
14
|
import { useApproval } from "./ApprovalContext.js";
|
|
14
15
|
import { useFileReviewRowState } from "./FileReviewContext.js";
|
|
15
16
|
import { FilePathLink } from "./FilePathLink.js";
|
|
17
|
+
// ToolChrome is type-only here so the doc link below resolves; the strict
|
|
18
|
+
// tsdoc gate (tsdoc:check) guards it against removal.
|
|
16
19
|
import { isFileCategory } from "./tool-categories.js";
|
|
17
20
|
import { useToolPresentation } from "./tool-presenter.js";
|
|
18
21
|
import { Tooltip, TooltipContent, TooltipTrigger } from "../internal/tooltip.js";
|
|
19
22
|
/**
|
|
20
23
|
* Renders a single tool call as a row in the tool call group.
|
|
21
24
|
*
|
|
22
|
-
*
|
|
23
|
-
* one-line row cannot?**
|
|
25
|
+
* Four rendering modes, set by one rule — **does the body carry content the
|
|
26
|
+
* one-line row cannot, and does it stay content once the call settles?**
|
|
24
27
|
*
|
|
25
28
|
* - **Non-expandable** (completed/skipped Read): a static `<div>` row with a
|
|
26
29
|
* clickable {@link FilePathLink}. The path IS the complete information.
|
|
27
|
-
* - **Preview** (content-bearing:
|
|
30
|
+
* - **Preview** (content-bearing: edit / write / fetch / web-search /
|
|
28
31
|
* unknown / mcp): a plain (non-button) header above an **always-visible**
|
|
29
32
|
* {@link ToolCallDetail} body — Cursor-style "previews aren't collapsible".
|
|
30
33
|
* There is no header chevron; each content block self-bounds with its own
|
|
31
|
-
|
|
32
|
-
* never floods the thread. The body is suppressed only for an `empty` result
|
|
33
|
-
*
|
|
34
|
+
* single in-place reveal (`RevealToggle`), so a long diff or output
|
|
35
|
+
* never floods the thread. The body is suppressed only for an `empty` result,
|
|
36
|
+
* which stays a clean one-line row.
|
|
37
|
+
* - **Tail** (shell): live like preview — the full terminal session streams in
|
|
38
|
+
* view while the command runs or awaits its gate — but a *successful* settle
|
|
39
|
+
* collapses the row to a {@link TerminalTail} teaser (the `$ command` line
|
|
40
|
+
* plus a dimmed tail of the last output lines) behind the header chevron.
|
|
41
|
+
* A settled failure stays open: error output is content, not context. A
|
|
42
|
+
* result that isn't a terminal session (e.g. an offloaded `outputRef`)
|
|
43
|
+
* falls back to the preview layout — never hide evidence we cannot condense.
|
|
34
44
|
* - **Summary / sub-agent** (read / list / search / delete / think, and
|
|
35
45
|
* sub-agent delegations): a chevron-gated `div[role=button]` header that
|
|
36
46
|
* discloses a body hidden by default — {@link ToolCallDetail}, a
|
|
@@ -42,6 +52,13 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "../internal/tooltip.js"
|
|
|
42
52
|
* content-overflow reveal — never govern the same body, which is what removes
|
|
43
53
|
* the old "expand, then Show more" double control.
|
|
44
54
|
*
|
|
55
|
+
* Orthogonal to the layout modes is the **chrome tier** (the density axis,
|
|
56
|
+
* stigmer#274): metadata-only categories (read / list / search / think)
|
|
57
|
+
* render as quiet unboxed lines — no card frame — while content-bearing
|
|
58
|
+
* categories keep their cards. A quiet row escalates to a card while gated
|
|
59
|
+
* or failed; its disclosed body renders under a light left rail instead of a
|
|
60
|
+
* border. See {@link ToolChrome}.
|
|
61
|
+
*
|
|
45
62
|
* Shows category-aware labels (e.g., "Shell", "Read", "Edit") with
|
|
46
63
|
* the primary argument as a subtitle, a category-specific icon, and
|
|
47
64
|
* an inline approval decision badge when applicable.
|
|
@@ -59,20 +76,41 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "../internal/tooltip.js"
|
|
|
59
76
|
export const ToolCallItem = memo(function ToolCallItem({ toolCall, subAgentExecution, defaultExpanded = false, bordered = true, className, }) {
|
|
60
77
|
useRenderTracer("ToolCallItem", { status: toolCall.status, id: toolCall.id });
|
|
61
78
|
const status = mapToolCallStatus(toolCall);
|
|
79
|
+
const isRunning = status === "running";
|
|
80
|
+
// Success is the silent default: a completed row renders NO status icon —
|
|
81
|
+
// a green check on every settled row teaches the eye to ignore status
|
|
82
|
+
// entirely, so state is shown only when it says something (running, gated,
|
|
83
|
+
// failed, interrupted). Failure shouts; success is quiet (stigmer#274).
|
|
62
84
|
const StatusIcon = STATUS_ICON[status];
|
|
63
|
-
|
|
85
|
+
// Header chips only when the duration carries information (>= 1s); the
|
|
86
|
+
// sub-second chips were noise pinned to the least interesting rows.
|
|
87
|
+
const duration = formatHeaderDuration(toolCall.startedAt, toolCall.completedAt);
|
|
64
88
|
const isSubAgent = subAgentExecution != null;
|
|
65
|
-
const { category, label, primaryArg, result, resultSummary, disclosure } = useToolPresentation(toolCall);
|
|
89
|
+
const { category, label, primaryArg, result, resultSummary, disclosure, chrome } = useToolPresentation(toolCall);
|
|
66
90
|
const CategoryIcon = CATEGORY_ICON[category];
|
|
67
91
|
// An unresolved approval gating this exact call (parent or nested sub-agent),
|
|
68
92
|
// or null. Drives the inline approval panel and forces the row open.
|
|
69
93
|
const approval = useApproval(toolCall.id);
|
|
70
|
-
//
|
|
71
|
-
//
|
|
72
|
-
//
|
|
73
|
-
//
|
|
74
|
-
|
|
75
|
-
const
|
|
94
|
+
// Tail rows (shell): a settled failure keeps the row open — the error output
|
|
95
|
+
// is the content the user needs next, so it must never settle into a dimmed
|
|
96
|
+
// teaser. Detected on the result, not just the status: a command that
|
|
97
|
+
// "completed" with a non-zero exit is a failure to the reader.
|
|
98
|
+
const isTailCategory = !isSubAgent && disclosure === "tail";
|
|
99
|
+
const tailFailed = isTailCategory &&
|
|
100
|
+
(toolCall.status === ToolCallStatus.TOOL_CALL_FAILED ||
|
|
101
|
+
result.type === "error" ||
|
|
102
|
+
(result.type === "terminal" &&
|
|
103
|
+
result.exitCode !== undefined &&
|
|
104
|
+
result.exitCode !== 0));
|
|
105
|
+
// The card-level disclosure for *summary* and *tail* rows (preview rows
|
|
106
|
+
// ignore it — their body is always visible). Force-open only while the row
|
|
107
|
+
// carries live or actionable content: while it runs, while it awaits
|
|
108
|
+
// approval, or (tail rows) while it shows a failure; a manual toggle takes
|
|
109
|
+
// over from there. Called unconditionally to honour the rules of hooks even
|
|
110
|
+
// though preview rows do not read `expanded`.
|
|
111
|
+
const autoOpen = toolCall.status === ToolCallStatus.TOOL_CALL_RUNNING ||
|
|
112
|
+
approval != null ||
|
|
113
|
+
tailFailed;
|
|
76
114
|
const [expanded, handleToggle] = useAutoDisclosure(autoOpen, {
|
|
77
115
|
initialOpen: defaultExpanded || autoOpen,
|
|
78
116
|
});
|
|
@@ -101,6 +139,22 @@ export const ToolCallItem = memo(function ToolCallItem({ toolCall, subAgentExecu
|
|
|
101
139
|
// degrades to a divider-separated row (via `bordered={false}`) so we never
|
|
102
140
|
// draw a card inside a card.
|
|
103
141
|
const gateAccent = approval != null ? (category === "delete" ? "destructive" : "warning") : null;
|
|
142
|
+
// The chrome tier (the density axis, stigmer#274): metadata-only rows
|
|
143
|
+
// (read / list / search / think) render as quiet unboxed lines — no card
|
|
144
|
+
// frame — so the conversation reads as prose with quiet evidence attached.
|
|
145
|
+
// A row escalates to a card while it carries something a bare line cannot:
|
|
146
|
+
// a pending gate (the decision surface, including its accent) or a failure
|
|
147
|
+
// (error output is content). Running deliberately does NOT escalate — a
|
|
148
|
+
// quiet row's in-flight state rides its label and status glyph, not a
|
|
149
|
+
// frame. Nested rows (inside an expanded fold chip) stay divider rows:
|
|
150
|
+
// their container owns the frame.
|
|
151
|
+
const rowFailed = toolCall.status === ToolCallStatus.TOOL_CALL_FAILED ||
|
|
152
|
+
result.type === "error";
|
|
153
|
+
const variant = !bordered
|
|
154
|
+
? "row"
|
|
155
|
+
: chrome === "quiet" && !isSubAgent && approval == null && !rowFailed
|
|
156
|
+
? "quiet"
|
|
157
|
+
: "card";
|
|
104
158
|
// Completed/skipped Read items are non-expandable — the clickable
|
|
105
159
|
// path in the row is the complete information. Failed reads remain
|
|
106
160
|
// expandable to show the error.
|
|
@@ -108,9 +162,9 @@ export const ToolCallItem = memo(function ToolCallItem({ toolCall, subAgentExecu
|
|
|
108
162
|
category === "read" &&
|
|
109
163
|
(toolCall.status === ToolCallStatus.TOOL_CALL_COMPLETED ||
|
|
110
164
|
toolCall.status === ToolCallStatus.TOOL_CALL_SKIPPED);
|
|
111
|
-
const trailingContent = (_jsxs(_Fragment, { children: [approvalBadge && (_jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", approvalBadge.colorClass), children: approvalBadge.label })), reviewBadge && (_jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", reviewBadge.colorClass), "data-cursor-target": "file-review-row-badge", children: reviewBadge.label })), toolCall.mcpServerSlug && (_jsx("span", { className: "stg:shrink-0 stg:rounded stg:bg-muted stg:px-1 stg:py-0.5 stg:font-mono stg:text-muted-foreground", children: toolCall.mcpServerSlug })), _jsx("span", { className: cn("stg:shrink-0", STATUS_COLOR[status]), "aria-hidden": "true", children: _jsx(StatusIcon, {}) }), duration && (_jsx("span", { className: "stg:shrink-0 stg:tabular-nums stg:text-muted-foreground", children: duration }))] }));
|
|
165
|
+
const trailingContent = (_jsxs(_Fragment, { children: [approvalBadge && (_jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", approvalBadge.colorClass), children: approvalBadge.label })), reviewBadge && (_jsx("span", { className: cn("stg:shrink-0 stg:rounded stg:px-1 stg:py-0.5 stg:text-[10px] stg:font-medium stg:leading-none", reviewBadge.colorClass), "data-cursor-target": "file-review-row-badge", children: reviewBadge.label })), toolCall.mcpServerSlug && (_jsx("span", { className: "stg:shrink-0 stg:rounded stg:bg-muted stg:px-1 stg:py-0.5 stg:font-mono stg:text-muted-foreground", children: toolCall.mcpServerSlug })), StatusIcon && (_jsx("span", { className: cn("stg:shrink-0", STATUS_COLOR[status]), "aria-hidden": "true", children: _jsx(StatusIcon, {}) })), duration && (_jsx("span", { className: "stg:shrink-0 stg:tabular-nums stg:text-muted-foreground", children: duration }))] }));
|
|
112
166
|
if (isNonExpandableRead) {
|
|
113
|
-
return (_jsx(ThreadCardShell, {
|
|
167
|
+
return (_jsx(ThreadCardShell, { variant: variant, accent: gateAccent, cursorTarget: "tool-call-row", className: className, children: _jsxs(ThreadCardHeader, { children: [_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx(CategoryIcon, {}) }), _jsxs("span", { className: "stg:min-w-0 stg:flex-1 stg:flex stg:items-center stg:gap-1.5 stg:overflow-hidden", children: [_jsx("span", { className: "stg:shrink-0 stg:font-medium stg:text-foreground", children: displayLabel }), primaryArg && (_jsx(FilePathLink, { path: primaryArg, className: "stg:min-w-0 stg:text-xs" }))] }), trailingContent] }) }));
|
|
114
168
|
}
|
|
115
169
|
// Shell shows neither a command subtitle nor an exit summary in the header —
|
|
116
170
|
// both live in the terminal session body below, so the header stays minimal
|
|
@@ -120,13 +174,21 @@ export const ToolCallItem = memo(function ToolCallItem({ toolCall, subAgentExecu
|
|
|
120
174
|
// FilePathLink (full path on hover) rather than the raw, often-absolute string
|
|
121
175
|
// that buried the file name behind a long prefix.
|
|
122
176
|
const subtitleIsFilePath = !isSubAgent && primaryArg != null && isFileCategory(category);
|
|
123
|
-
//
|
|
124
|
-
//
|
|
125
|
-
//
|
|
177
|
+
// A tail row condenses only a terminal session. While gated it renders like
|
|
178
|
+
// preview — decision actions are never hidden behind a chevron — and any
|
|
179
|
+
// other result shape (an offloaded outputRef, bare error text) falls back to
|
|
180
|
+
// preview too: never hide evidence the tail cannot honestly condense.
|
|
181
|
+
const tailSession = isTailCategory && approval == null && result.type === "terminal"
|
|
182
|
+
? result
|
|
183
|
+
: null;
|
|
184
|
+
// Preview categories (edit, write, fetch, web-search, unknown, mcp) render
|
|
185
|
+
// their body ALWAYS — Cursor-style "previews aren't collapsible" — so no
|
|
186
|
+
// header chevron competes with the body's own in-place reveal. Summary
|
|
126
187
|
// categories and sub-agents keep the chevron: their body is genuinely hidden
|
|
127
188
|
// by default, so the chevron has a real job. The two disclosure axes
|
|
128
189
|
// (card-level chevron vs. content-overflow reveal) never govern one body.
|
|
129
|
-
const
|
|
190
|
+
const isPreviewLayout = !isSubAgent &&
|
|
191
|
+
(disclosure === "preview" || (isTailCategory && tailSession == null));
|
|
130
192
|
// The disclosed body, shared by both layouts: a pending gate decides inline,
|
|
131
193
|
// a sub-agent shows its delegation, otherwise the category detail.
|
|
132
194
|
const body = isSubAgent ? (_jsx(SubAgentSection, { subAgentExecution: subAgentExecution, collapsible: false })) : approval ? (
|
|
@@ -136,22 +198,30 @@ export const ToolCallItem = memo(function ToolCallItem({ toolCall, subAgentExecu
|
|
|
136
198
|
_jsx(ApprovalCardBody, { pendingApproval: approval.pendingApproval, onSubmit: approval.onSubmit, isSubmitting: approval.isSubmitting, error: approval.error })) : (_jsx(ToolCallDetail, { toolCall: toolCall, primaryArgTruncated: primaryArgTruncated }));
|
|
137
199
|
// The header's metadata, identical in both layouts (the chevron is appended
|
|
138
200
|
// only by the summary layout below).
|
|
139
|
-
const headerInner = (_jsxs(_Fragment, { children: [_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx(CategoryIcon, {}) }), _jsxs("span", { className: "stg:min-w-0 stg:flex-1 stg:flex stg:items-baseline stg:gap-1.5 stg:overflow-hidden", children: [_jsx("span", { className: "stg:shrink-0 stg:font-medium stg:text-foreground", children: displayLabel }), subtitleIsFilePath && primaryArg ? (_jsx(FilePathLink, { path: primaryArg, className: "stg:min-w-0 stg:text-xs stg:text-muted-foreground" })) : (displaySubtitle && (
|
|
201
|
+
const headerInner = (_jsxs(_Fragment, { children: [_jsx("span", { className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx(CategoryIcon, {}) }), _jsxs("span", { className: "stg:min-w-0 stg:flex-1 stg:flex stg:items-baseline stg:gap-1.5 stg:overflow-hidden", children: [_jsx("span", { className: cn("stg:shrink-0 stg:font-medium", isRunning ? "stgm-shimmer-label" : "stg:text-foreground"), children: displayLabel }), subtitleIsFilePath && primaryArg ? (_jsx(FilePathLink, { path: primaryArg, className: "stg:min-w-0 stg:text-xs stg:text-muted-foreground" })) : (displaySubtitle && (
|
|
140
202
|
// Not TruncatedText: the span must carry the external measurement
|
|
141
203
|
// ref (useIsTextTruncated) that the expanded detail reads.
|
|
142
204
|
_jsxs(Tooltip, { children: [_jsx(TooltipTrigger, { render: _jsx("span", { ref: measuresSubtitle ? subtitleRef : undefined, className: "stg:min-w-0 stg:truncate stg:text-muted-foreground stg:font-mono" }), children: displaySubtitle }), _jsx(TooltipContent, { side: "top", className: "stg:break-all", children: displaySubtitle })] }))), !isSubAgent && category !== "shell" && resultSummary && (_jsx("span", { className: "stg:shrink-0 stg:tabular-nums stg:text-muted-foreground", children: resultSummary }))] }), trailingContent] }));
|
|
143
205
|
// Preview layout: a plain (non-button) header above an always-visible body.
|
|
144
206
|
// The body renders only when it has something to show — a pending gate, or a
|
|
145
|
-
// non-empty result — so a
|
|
146
|
-
//
|
|
147
|
-
if (
|
|
207
|
+
// non-empty result — so a tool that produced nothing stays a clean one-line
|
|
208
|
+
// row, never an empty padded box.
|
|
209
|
+
if (isPreviewLayout) {
|
|
148
210
|
const showBody = approval != null || result.type !== "empty";
|
|
149
|
-
return (_jsxs(ThreadCardShell, {
|
|
211
|
+
return (_jsxs(ThreadCardShell, { variant: variant, accent: gateAccent, cursorTarget: "tool-call-row", className: className, children: [_jsx(ThreadCardHeader, { children: headerInner }), showBody && (_jsx(ThreadCardBody, { cursorTarget: "tool-preview", rail: variant === "quiet", children: body }))] }));
|
|
212
|
+
}
|
|
213
|
+
// Tail layout: a chevron-gated header whose body is never fully hidden —
|
|
214
|
+
// expanded it is the live/full terminal session, collapsed it is the dimmed
|
|
215
|
+
// TerminalTail teaser. useAutoDisclosure keeps it open while the command
|
|
216
|
+
// runs and settles a *successful* session closed (tailFailed holds a failed
|
|
217
|
+
// one open); a manual toggle always wins.
|
|
218
|
+
if (tailSession) {
|
|
219
|
+
return (_jsxs(ThreadCardShell, { variant: variant, accent: gateAccent, cursorTarget: "tool-call-row", className: className, children: [_jsx(ThreadCardHeader, { gesture: { kind: "expand", expanded, onToggle: handleToggle }, children: headerInner }), expanded ? (_jsx(ThreadCardBody, { cursorTarget: "tool-preview", children: body })) : (_jsx(ThreadCardBody, { children: _jsx(TerminalTail, { command: tailSession.command, stdout: tailSession.stdout, stderr: tailSession.stderr, exitCode: tailSession.exitCode }) }))] }));
|
|
150
220
|
}
|
|
151
221
|
// Summary / sub-agent layout: a chevron-gated header disclosing a body hidden
|
|
152
222
|
// by default. The shell's `expand` gesture renders the div[role=button]
|
|
153
223
|
// header with Enter/Space keyboard parity and the chevron.
|
|
154
|
-
return (_jsxs(ThreadCardShell, {
|
|
224
|
+
return (_jsxs(ThreadCardShell, { variant: variant, accent: gateAccent, cursorTarget: "tool-call-row", className: className, children: [_jsx(ThreadCardHeader, { gesture: { kind: "expand", expanded, onToggle: handleToggle }, children: headerInner }), expanded && (_jsx(ThreadCardBody, { rail: variant === "quiet", children: body }))] }));
|
|
155
225
|
});
|
|
156
226
|
function getApprovalBadge(toolCall) {
|
|
157
227
|
if (!toolCall.requiresApproval)
|
|
@@ -271,11 +341,14 @@ function McpPlugIcon() {
|
|
|
271
341
|
// ---------------------------------------------------------------------------
|
|
272
342
|
// Status icons — the shared thread-card glyph set (T05)
|
|
273
343
|
// ---------------------------------------------------------------------------
|
|
344
|
+
// `completed` is deliberately iconless — success is the silent default, so
|
|
345
|
+
// the states that remain visible (spinner, clock, cross, slash) all carry
|
|
346
|
+
// real signal (stigmer#274).
|
|
274
347
|
const STATUS_ICON = {
|
|
275
348
|
running: SpinnerIcon,
|
|
276
349
|
waiting: ClockIcon,
|
|
277
350
|
failed: XCircleIcon,
|
|
278
|
-
completed:
|
|
351
|
+
completed: null,
|
|
279
352
|
pending: DotIcon,
|
|
280
353
|
interrupted: SlashCircleIcon,
|
|
281
354
|
};
|