@stigmer/react 3.12.1 → 3.12.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/access/ManageAccessDialog.d.ts.map +1 -1
- package/access/ManageAccessDialog.js +8 -19
- 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 +15 -20
- 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/AttachmentImageLightbox.d.ts.map +1 -1
- package/attachment/AttachmentImageLightbox.js +8 -23
- package/attachment/AttachmentImageLightbox.js.map +1 -1
- 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 +6 -21
- package/channel/ChannelConversationsDialog.js.map +1 -1
- package/channel/ChannelCredentialsDialog.d.ts.map +1 -1
- package/channel/ChannelCredentialsDialog.js +10 -21
- package/channel/ChannelCredentialsDialog.js.map +1 -1
- package/channel/ChannelTemplatesDialog.d.ts.map +1 -1
- package/channel/ChannelTemplatesDialog.js +7 -22
- package/channel/ChannelTemplatesDialog.js.map +1 -1
- package/channel/ConnectSlackDialog.d.ts.map +1 -1
- package/channel/ConnectSlackDialog.js +10 -23
- package/channel/ConnectSlackDialog.js.map +1 -1
- package/channel/ConnectWhatsAppDialog.d.ts.map +1 -1
- package/channel/ConnectWhatsAppDialog.js +10 -23
- 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/ConversationAttentionBanner.d.ts +23 -6
- package/conversation/ConversationAttentionBanner.d.ts.map +1 -1
- package/conversation/ConversationAttentionBanner.js +25 -10
- package/conversation/ConversationAttentionBanner.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 +28 -8
- package/conversation/ConversationListPane.js.map +1 -1
- package/conversation/ConversationsWorkbench.d.ts.map +1 -1
- package/conversation/ConversationsWorkbench.js +1 -1
- package/conversation/ConversationsWorkbench.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/ApprovalCard.d.ts.map +1 -1
- package/execution/ApprovalCard.js +13 -3
- package/execution/ApprovalCard.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/ArtifactPreviewModal.d.ts.map +1 -1
- package/execution/ArtifactPreviewModal.js +11 -17
- package/execution/ArtifactPreviewModal.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 +23 -7
- package/execution/ToolCallItem.d.ts.map +1 -1
- package/execution/ToolCallItem.js +120 -35
- 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 +7 -3
- package/execution/index.d.ts.map +1 -1
- package/execution/index.js +4 -2
- package/execution/index.js.map +1 -1
- package/execution/tool-categories.d.ts +93 -7
- package/execution/tool-categories.d.ts.map +1 -1
- package/execution/tool-categories.js +141 -5
- package/execution/tool-categories.js.map +1 -1
- package/execution/tool-presenter.d.ts +32 -1
- package/execution/tool-presenter.d.ts.map +1 -1
- package/execution/tool-presenter.js +10 -2
- 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/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/DialogShell.d.ts +77 -0
- package/internal/DialogShell.d.ts.map +1 -0
- package/internal/DialogShell.js +77 -0
- package/internal/DialogShell.js.map +1 -0
- 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/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.d.ts.map +1 -1
- package/manifest/ApplyManifestDialog.js +7 -17
- package/manifest/ApplyManifestDialog.js.map +1 -1
- package/manifest/EditResourceYamlDialog.d.ts.map +1 -1
- package/manifest/EditResourceYamlDialog.js +3 -19
- package/manifest/EditResourceYamlDialog.js.map +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.d.ts.map +1 -1
- package/mcp-server/McpServerConnectDialog.js +8 -20
- package/mcp-server/McpServerConnectDialog.js.map +1 -1
- package/mcp-server/McpServerDetailView.d.ts.map +1 -1
- package/mcp-server/McpServerDetailView.js +50 -28
- 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/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/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.d.ts +2 -3
- package/resource-detail/ConfirmDialog.d.ts.map +1 -1
- package/resource-detail/ConfirmDialog.js +8 -20
- package/resource-detail/ConfirmDialog.js.map +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 +7 -7
- 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 +19 -26
- 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.d.ts.map +1 -1
- package/skill/SkillDiffDialog.js +5 -21
- package/skill/SkillDiffDialog.js.map +1 -1
- package/src/access/ManageAccessDialog.tsx +14 -28
- 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 +29 -33
- 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/AttachmentImageLightbox.tsx +13 -36
- 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 +14 -29
- package/src/channel/ChannelCredentialsDialog.tsx +19 -29
- package/src/channel/ChannelTemplatesDialog.tsx +16 -31
- package/src/channel/ConnectSlackDialog.tsx +19 -31
- package/src/channel/ConnectWhatsAppDialog.tsx +19 -31
- 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/ConversationAttentionBanner.tsx +64 -19
- package/src/conversation/ConversationComposer.tsx +1 -1
- package/src/conversation/ConversationListPane.tsx +46 -20
- package/src/conversation/ConversationsWorkbench.tsx +1 -0
- package/src/conversation/__tests__/ConversationAttentionBanner.test.tsx +76 -2
- package/src/conversation/__tests__/ConversationListPane.test.tsx +15 -4
- 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/ApprovalCard.tsx +23 -2
- package/src/execution/ArtifactApplyButton.tsx +2 -17
- package/src/execution/ArtifactPreviewModal.tsx +15 -27
- 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 +175 -44
- 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__/intent-title.test.tsx +221 -0
- 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 +11 -2
- package/src/execution/tool-categories.ts +195 -9
- package/src/execution/tool-presenter.ts +44 -2
- package/src/execution/useArtifactInspection.ts +4 -8
- 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 +26 -1
- package/src/internal/DecisionButton.tsx +1 -20
- package/src/internal/DialogShell.tsx +169 -0
- package/src/internal/SpinnerIcon.tsx +42 -0
- package/src/internal/__tests__/DialogShell.test.tsx +223 -0
- package/src/internal/__tests__/ThreadCardShell.test.tsx +43 -7
- package/src/internal/__tests__/useCopyFeedback.test.ts +92 -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 +8 -26
- package/src/manifest/EditResourceYamlDialog.tsx +4 -31
- package/src/mcp-server/DefinitionDriftNotice.tsx +120 -0
- package/src/mcp-server/McpServerConnectDialog.tsx +15 -29
- package/src/mcp-server/McpServerDetailView.tsx +69 -49
- package/src/mcp-server/OAuthAppForm.tsx +2 -18
- package/src/mcp-server/__tests__/DefinitionDriftNotice.test.tsx +57 -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__/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/useMcpServerDefinitionDrift.ts +95 -0
- 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 +9 -30
- 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 +10 -8
- 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 +33 -37
- package/src/sidebar/__tests__/WorkspaceSidebar.test.tsx +4 -1
- package/src/sidebar/chrome.tsx +6 -6
- package/src/skill/SkillDiffDialog.tsx +13 -36
- 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 +21 -55
- package/src/workflow/WorkflowArchitectDialog.tsx +17 -68
- package/src/workflow/WorkflowArtifactDocument.tsx +5 -9
- package/src/workflow/WorkflowCanvasEditor.tsx +2 -0
- package/src/workflow/WorkflowCanvasInner.tsx +14 -1
- package/src/workflow/WorkflowDiffGraph.tsx +7 -1
- package/src/workflow/WorkflowExecutionViewer.tsx +88 -11
- package/src/workflow/WorkflowExplainDialog.tsx +18 -60
- package/src/workflow/WorkflowGraphFullscreenDialog.tsx +14 -26
- 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 +23 -70
- 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__/panelNegotiation.test.tsx +230 -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__/useWorkflowExecutionPanel.test.ts +100 -0
- package/src/workflow/execution-comparison/ExecutionComparisonPicker.tsx +20 -41
- package/src/workflow/execution-history/ExecutionHistoryTable.tsx +1 -25
- package/src/workflow/index.ts +1 -0
- package/src/workflow/instance/CreateWorkflowInstanceDialog.tsx +14 -27
- package/src/workflow/instance/WorkflowInstanceDetailPanel.tsx +2 -1
- package/src/workflow/picker/BranchAddPopover.tsx +4 -3
- package/src/workflow/templates/WorkflowTemplatePreview.tsx +18 -28
- package/src/workflow/useApprovalBoundary.ts +1 -1
- package/src/workflow/useWorkflowCanvas.ts +114 -11
- package/src/workflow/useWorkflowExecutionPanel.ts +95 -13
- 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 +14 -49
- package/workflow/ViewYamlDialog.js.map +1 -1
- package/workflow/WorkflowArchitectDialog.d.ts.map +1 -1
- package/workflow/WorkflowArchitectDialog.js +10 -33
- 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 +1 -1
- 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/WorkflowExecutionViewer.d.ts +51 -0
- package/workflow/WorkflowExecutionViewer.d.ts.map +1 -1
- package/workflow/WorkflowExecutionViewer.js +23 -6
- package/workflow/WorkflowExecutionViewer.js.map +1 -1
- package/workflow/WorkflowExplainDialog.d.ts.map +1 -1
- package/workflow/WorkflowExplainDialog.js +10 -28
- package/workflow/WorkflowExplainDialog.js.map +1 -1
- package/workflow/WorkflowGraphFullscreenDialog.d.ts.map +1 -1
- package/workflow/WorkflowGraphFullscreenDialog.js +11 -17
- package/workflow/WorkflowGraphFullscreenDialog.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.map +1 -1
- package/workflow/WorkflowRunDialog.js +14 -35
- 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 +14 -40
- 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 +7 -20
- 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/picker/BranchAddPopover.d.ts.map +1 -1
- package/workflow/picker/BranchAddPopover.js +3 -2
- package/workflow/picker/BranchAddPopover.js.map +1 -1
- package/workflow/templates/WorkflowTemplatePreview.d.ts +1 -1
- package/workflow/templates/WorkflowTemplatePreview.d.ts.map +1 -1
- package/workflow/templates/WorkflowTemplatePreview.js +10 -22
- package/workflow/templates/WorkflowTemplatePreview.js.map +1 -1
- package/workflow/useApprovalBoundary.d.ts +1 -1
- package/workflow/useApprovalBoundary.js +1 -1
- package/workflow/useWorkflowCanvas.d.ts +5 -1
- package/workflow/useWorkflowCanvas.d.ts.map +1 -1
- package/workflow/useWorkflowCanvas.js +99 -13
- 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/schedule/ScheduleForm.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import { useCallback, useState } from "react";
|
|
3
|
+
import { useCallback, useId, useState } from "react";
|
|
4
4
|
import { cn } from "@stigmer/theme";
|
|
5
5
|
import { getUserMessage, } from "@stigmer/sdk";
|
|
6
6
|
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
@@ -19,6 +19,7 @@ import { CadenceField } from "./CadenceField.js";
|
|
|
19
19
|
import { TimeZoneField, browserTimeZone } from "./TimeZoneField.js";
|
|
20
20
|
import { useCreateSchedule } from "./useCreateSchedule.js";
|
|
21
21
|
import { cadenceToCron, validateCron } from "./cadence.js";
|
|
22
|
+
import { SpinnerIcon } from "../internal/SpinnerIcon.js";
|
|
22
23
|
/** invocation.proto pins AgentInvocation.message to 8192 characters. */
|
|
23
24
|
const MESSAGE_MAX_LEN = 8192;
|
|
24
25
|
/** Show the remaining-characters counter once within this margin. */
|
|
@@ -52,6 +53,7 @@ const MESSAGE_COUNTER_THRESHOLD = 500;
|
|
|
52
53
|
* ```
|
|
53
54
|
*/
|
|
54
55
|
export function ScheduleForm({ org, onComplete, onCancel, className, }) {
|
|
56
|
+
const baseId = useId();
|
|
55
57
|
const { create, isCreating, error, clearError } = useCreateSchedule();
|
|
56
58
|
const [name, setName] = useState("");
|
|
57
59
|
const [agentRef, setAgentRef] = useState(null);
|
|
@@ -157,12 +159,12 @@ export function ScheduleForm({ org, onComplete, onCancel, className, }) {
|
|
|
157
159
|
onComplete,
|
|
158
160
|
]);
|
|
159
161
|
const remaining = MESSAGE_MAX_LEN - message.length;
|
|
160
|
-
return (_jsxs("form", { onSubmit: handleSubmit, className: cn("stg:max-w-2xl stg:space-y-5", className), "aria-label": "New schedule", children: [_jsxs("div", { className: "stg:space-y-1", children: [_jsx("label", { htmlFor:
|
|
162
|
+
return (_jsxs("form", { onSubmit: handleSubmit, className: cn("stg:max-w-2xl stg:space-y-5", className), "aria-label": "New schedule", children: [_jsxs("div", { className: "stg:space-y-1", children: [_jsx("label", { htmlFor: `${baseId}-name`, className: labelClasses, children: "Name" }), _jsx("input", { id: `${baseId}-name`, type: "text", value: name, onChange: (e) => setName(e.target.value), placeholder: "e.g. daily-fee-reminders", disabled: isCreating, autoFocus: true, required: true, className: inputClasses })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsx("span", { id: `${baseId}-agent-label`, className: labelClasses, children: "Agent to run" }), _jsxs(Popover.Root, { open: pickerOpen, onOpenChange: setPickerOpen, children: [_jsxs(Popover.Trigger, { disabled: isCreating, "aria-labelledby": `${baseId}-agent-label`, className: cn("stg:flex stg:w-full stg:items-center stg:justify-between stg:rounded-md stg:border stg:border-input stg:bg-background stg:px-2.5 stg:py-1.5 stg:text-left stg:text-xs", "stg:focus-visible:outline-none stg:focus-visible:ring-1 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-50", agentRef ? "stg:text-foreground" : "stg:text-muted-foreground"), children: [_jsx("span", { className: "stg:truncate", children: agentRef
|
|
161
163
|
? (agentName ?? `${agentRef.org}/${agentRef.slug}`)
|
|
162
|
-
: "Choose an agent…" }), _jsx(ChevronIcon, {})] }), _jsx(AgentPickerPopup, { org: org, value: agentRef, onChange: handleAgentChange, onDisplayNameResolved: (_key, resolvedName) => setAgentName(resolvedName), disabled: isCreating })] }), _jsxs("p", { className: hintClasses, children: ["Each fire runs this agent unattended in a fresh session. Only agents in ", _jsx("span", { className: "stg:font-medium", children: org }), " can be scheduled."] })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsx("label", { htmlFor:
|
|
164
|
+
: "Choose an agent…" }), _jsx(ChevronIcon, {})] }), _jsx(AgentPickerPopup, { org: org, value: agentRef, onChange: handleAgentChange, onDisplayNameResolved: (_key, resolvedName) => setAgentName(resolvedName), disabled: isCreating })] }), _jsxs("p", { className: hintClasses, children: ["Each fire runs this agent unattended in a fresh session. Only agents in ", _jsx("span", { className: "stg:font-medium", children: org }), " can be scheduled."] })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsx("label", { htmlFor: `${baseId}-message`, className: labelClasses, children: "Message" }), _jsx("textarea", { id: `${baseId}-message`, value: message, onChange: (e) => setMessage(e.target.value), placeholder: "The instruction the agent receives on every fire \u2014 write it for a run with no human present.", disabled: isCreating, required: true, rows: 5, maxLength: MESSAGE_MAX_LEN, className: cn(inputClasses, "stg:resize-y") }), remaining <= MESSAGE_COUNTER_THRESHOLD && (_jsxs("p", { className: hintClasses, children: [remaining, " characters left"] }))] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsxs("span", { className: labelClasses, children: ["Workspace", " ", _jsx("span", { className: "stg:font-normal stg:text-muted-foreground", children: "(optional)" })] }), _jsx(WorkspaceEditor, { workspace: workspace, gitHubConnection: gitHub.isConnected ? gitHub : undefined, enableGitHub: true, enableLocal: false, disabled: isCreating }), _jsxs("p", { className: hintClasses, children: ["Each run clones these repositories fresh. Private repositories need a ", _jsx("code", { className: "stg:font-mono", children: "GITHUB_TOKEN" }), " in one of this schedule\u2019s environments; public ones need nothing."] })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsxs("span", { id: `${baseId}-env-label`, className: labelClasses, children: ["Environments ", _jsx("span", { className: "stg:font-normal stg:text-muted-foreground", children: "(optional)" })] }), _jsx(EnvironmentPicker, { org: org, value: environmentRefs, onChange: setEnvironmentRefs, disabled: isCreating, filterEnvironment: (env) => env.metadata?.visibility === ApiResourceVisibility.visibility_org }), _jsx("p", { className: hintClasses, children: "Bind org-shared credentials (for example an MCP server\u2019s secret) so the agent\u2019s tools work on an unattended fire. Without this, an agent whose tools need credentials will be refused every run." })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsx("span", { className: labelClasses, children: "Runs" }), _jsx(CadenceField, { value: cadence, onChange: setCadence, timeZone: timeZone, disabled: isCreating })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsxs("span", { className: labelClasses, children: ["Engine & model", " ", _jsx("span", { className: "stg:font-normal stg:text-muted-foreground", children: "(optional)" })] }), _jsxs("div", { className: "stg:flex stg:items-center stg:gap-2", children: [_jsx(ModelSelector, { value: modelName, onValueChange: setModelName, initialHarness: modelHarness, onHarnessChange: setModelHarness, serviceTier: serviceTier, onServiceTierChange: setServiceTier, placeholderLabel: "Platform default", disabled: isCreating }), modelName !== "" && (_jsx("button", { type: "button", onClick: () => {
|
|
163
165
|
setModelName("");
|
|
164
166
|
setServiceTier("standard");
|
|
165
|
-
}, disabled: isCreating, className: cn("stg:rounded-md stg:px-2 stg:py-1 stg:text-[0.65rem] stg:text-muted-foreground", "stg:hover:text-foreground stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-50"), children: "Reset to platform default" }))] }), _jsx("p", { className: hintClasses, children: "Runs use the platform\u2019s default engine and model unless you pick one here. Picking a model pins the engine it belongs to." })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsxs("label", { htmlFor:
|
|
167
|
+
}, disabled: isCreating, className: cn("stg:rounded-md stg:px-2 stg:py-1 stg:text-[0.65rem] stg:text-muted-foreground", "stg:hover:text-foreground stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-50"), children: "Reset to platform default" }))] }), _jsx("p", { className: hintClasses, children: "Runs use the platform\u2019s default engine and model unless you pick one here. Picking a model pins the engine it belongs to." })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsxs("label", { htmlFor: `${baseId}-budget`, className: labelClasses, children: ["Budget per run (USD)", " ", _jsx("span", { className: "stg:font-normal stg:text-muted-foreground", children: "(optional)" })] }), _jsx("input", { id: `${baseId}-budget`, type: "number", min: "0", step: "any", value: budgetUsd, onChange: (e) => setBudgetUsd(e.target.value), placeholder: "platform default", disabled: isCreating, className: cn(inputClasses, "stg:sm:max-w-48") }), _jsx("p", { className: hintClasses, children: "Each run stops when it reaches this spend. You can lower the platform\u2019s per-run cap, never raise it past the platform\u2019s ceiling." })] }), _jsxs("div", { className: "stg:space-y-1", children: [_jsx("label", { htmlFor: `${baseId}-tz`, className: labelClasses, children: "Time zone" }), _jsx(TimeZoneField, { id: `${baseId}-tz`, value: timeZone, onChange: setTimeZone, disabled: isCreating })] }), _jsxs("div", { className: "stg:flex stg:items-start stg:gap-3", children: [_jsx(Switch, { id: `${baseId}-enabled`, checked: enabled, onCheckedChange: setEnabled, disabled: isCreating, "aria-labelledby": `${baseId}-enabled-label` }), _jsxs("div", { className: "stg:space-y-0.5", children: [_jsx("label", { id: `${baseId}-enabled-label`, htmlFor: `${baseId}-enabled`, className: labelClasses, children: "Enabled" }), _jsx("p", { className: hintClasses, children: "Leave off to create the schedule staged: validate it with \u201CRun now\u201D on the schedule page, then enable it there." })] })] }), error && (_jsx("p", { className: "stg:text-xs stg:text-destructive", role: "alert", children: getUserMessage(error) })), _jsxs("div", { className: "stg:flex stg:items-center stg:gap-2", children: [_jsxs("button", { type: "submit", disabled: !canSubmit, className: cn("stg:inline-flex stg:items-center stg:gap-1.5 stg:rounded-md stg:px-3 stg:py-1.5 stg:text-sm stg:font-medium", "stg:bg-primary stg:text-primary-foreground stg:hover:bg-primary-hover", "stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", "stg:disabled:pointer-events-none stg:disabled:opacity-40"), children: [isCreating && _jsx(SpinnerIcon, { size: 14 }), "Create schedule"] }), onCancel && (_jsx("button", { type: "button", onClick: onCancel, disabled: isCreating, className: cn("stg:rounded-md stg:px-3 stg:py-1.5 stg:text-sm", "stg:text-muted-foreground stg:hover:bg-accent-hover stg:hover:text-foreground", "stg:disabled:pointer-events-none stg:disabled:opacity-50"), children: "Cancel" }))] })] }));
|
|
166
168
|
}
|
|
167
169
|
// ---------------------------------------------------------------------------
|
|
168
170
|
// Private helpers
|
|
@@ -209,7 +211,4 @@ function AgentPickerPopup({ org, value, onChange, onDisplayNameResolved, disable
|
|
|
209
211
|
function ChevronIcon() {
|
|
210
212
|
return (_jsx("svg", { width: "12", height: "12", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", className: "stg:shrink-0 stg:text-muted-foreground", "aria-hidden": "true", children: _jsx("path", { d: "M4 6l4 4 4-4" }) }));
|
|
211
213
|
}
|
|
212
|
-
function SpinnerIcon() {
|
|
213
|
-
return (_jsx("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", className: "stg:animate-spin", "aria-hidden": "true", children: _jsx("path", { d: "M8 2a6 6 0 1 0 6 6" }) }));
|
|
214
|
-
}
|
|
215
214
|
//# sourceMappingURL=ScheduleForm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScheduleForm.js","sourceRoot":"","sources":["../../src/schedule/ScheduleForm.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ScheduleForm.js","sourceRoot":"","sources":["../../src/schedule/ScheduleForm.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ import type { WorkspaceFileReader } from "../workspace/WorkspaceFileReader.js";
|
|
|
6
6
|
import type { WorkspaceContentSearcher } from "../workspace/WorkspaceContentSearcher.js";
|
|
7
7
|
import type { HarnessOption } from "../models/harness.js";
|
|
8
8
|
import type { RuntimeEnvProvider } from "./runtime-env.js";
|
|
9
|
-
import type { SessionAudience } from "./audience.js";
|
|
9
|
+
import type { SessionAudience, SessionPanelMode } from "./audience.js";
|
|
10
|
+
import type { SessionRunConfig } from "./run-config.js";
|
|
10
11
|
/** Props for {@link NewSessionViewer}. */
|
|
11
12
|
export interface NewSessionViewerProps {
|
|
12
13
|
/** Organization slug. Required for session creation. */
|
|
@@ -78,6 +79,55 @@ export interface NewSessionViewerProps {
|
|
|
78
79
|
* @default "integrator"
|
|
79
80
|
*/
|
|
80
81
|
readonly audience?: SessionAudience;
|
|
82
|
+
/**
|
|
83
|
+
* Owner-pinned model/tier for the session's first execution
|
|
84
|
+
* (stigmer/stigmer#664). Same contract as
|
|
85
|
+
* {@link SessionViewerProps.runConfig} (DD-016 parity): wins over the
|
|
86
|
+
* composer and the restored preference, hides the model picker, and
|
|
87
|
+
* is ignored for the `"guest"` audience. Pair with the same pin on
|
|
88
|
+
* the conversation's `SessionViewer` so follow-ups match. See
|
|
89
|
+
* {@link SessionRunConfig}.
|
|
90
|
+
*/
|
|
91
|
+
readonly runConfig?: SessionRunConfig;
|
|
92
|
+
/**
|
|
93
|
+
* Whether the composer offers the model picker. Same contract as
|
|
94
|
+
* {@link SessionViewerProps.showModelSelector} (DD-016 parity):
|
|
95
|
+
* forced off by a {@link NewSessionViewerProps.runConfig} model pin
|
|
96
|
+
* and for the `"guest"` audience.
|
|
97
|
+
*
|
|
98
|
+
* @default true
|
|
99
|
+
*/
|
|
100
|
+
readonly showModelSelector?: boolean;
|
|
101
|
+
/**
|
|
102
|
+
* Whether the launcher offers the session panel at all — `"none"` removes
|
|
103
|
+
* the panel and its toggle chip while keeping every composer capability
|
|
104
|
+
* the audience allows. Same contract as
|
|
105
|
+
* {@link SessionViewerProps.panel} (DD-016 parity); see
|
|
106
|
+
* {@link SessionPanelMode}.
|
|
107
|
+
*
|
|
108
|
+
* @default "auto"
|
|
109
|
+
*/
|
|
110
|
+
readonly panel?: SessionPanelMode;
|
|
111
|
+
/**
|
|
112
|
+
* Initial open state of the session panel in uncontrolled mode. Ignored
|
|
113
|
+
* when {@link NewSessionViewerProps.panelOpen} is provided. Same contract
|
|
114
|
+
* as {@link SessionViewerProps.defaultPanelOpen} (DD-016 parity).
|
|
115
|
+
*
|
|
116
|
+
* @default false
|
|
117
|
+
*/
|
|
118
|
+
readonly defaultPanelOpen?: boolean;
|
|
119
|
+
/**
|
|
120
|
+
* Controlled open state of the session panel. Same contract as
|
|
121
|
+
* {@link SessionViewerProps.panelOpen} (DD-016 parity).
|
|
122
|
+
*/
|
|
123
|
+
readonly panelOpen?: boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Called on every panel open/close transition, in both modes. Same
|
|
126
|
+
* contract as {@link SessionViewerProps.onPanelOpenChange} (DD-016
|
|
127
|
+
* parity); the launcher has no plan auto-open, so its transitions come
|
|
128
|
+
* from the chip toggle and file opens only.
|
|
129
|
+
*/
|
|
130
|
+
readonly onPanelOpenChange?: (open: boolean) => void;
|
|
81
131
|
/**
|
|
82
132
|
* Harness pre-selected for new sessions when the user has not made
|
|
83
133
|
* an explicit choice yet. The user can still switch before starting
|
|
@@ -152,5 +202,5 @@ export interface NewSessionViewerProps {
|
|
|
152
202
|
* />
|
|
153
203
|
* ```
|
|
154
204
|
*/
|
|
155
|
-
export declare function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience, defaultHarness, initialAgentRef, initialInstanceId, initialAttachments, heading, placeholder, initialRows, autoFocus, footerContent, className, }: NewSessionViewerProps): import("react/jsx-runtime").JSX.Element;
|
|
205
|
+
export declare function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience, runConfig, showModelSelector, panel: panelMode, defaultPanelOpen, panelOpen, onPanelOpenChange, defaultHarness, initialAgentRef, initialInstanceId, initialAttachments, heading, placeholder, initialRows, autoFocus, footerContent, className, }: NewSessionViewerProps): import("react/jsx-runtime").JSX.Element;
|
|
156
206
|
//# sourceMappingURL=NewSessionViewer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewSessionViewer.d.ts","sourceRoot":"","sources":["../../src/session/NewSessionViewer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA6C,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAGzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAS1D,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"NewSessionViewer.d.ts","sourceRoot":"","sources":["../../src/session/NewSessionViewer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,7 @@ import { SessionPanelChip } from "./SessionPanelChip.js";
|
|
|
45
45
|
* />
|
|
46
46
|
* ```
|
|
47
47
|
*/
|
|
48
|
-
export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnection, enableGitHub = true, enableLocal = false, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience = "integrator", defaultHarness, initialAgentRef, initialInstanceId, initialAttachments, heading = "What would you like to work on?", placeholder = "Describe what you need help with\u2026", initialRows = 3, autoFocus = true, footerContent, className, }) {
|
|
48
|
+
export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnection, enableGitHub = true, enableLocal = false, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience = "integrator", runConfig, showModelSelector = true, panel: panelMode = "auto", defaultPanelOpen, panelOpen, onPanelOpenChange, defaultHarness, initialAgentRef, initialInstanceId, initialAttachments, heading = "What would you like to work on?", placeholder = "Describe what you need help with\u2026", initialRows = 3, autoFocus = true, footerContent, className, }) {
|
|
49
49
|
const flow = useNewSessionFlow({
|
|
50
50
|
org,
|
|
51
51
|
onSessionCreated,
|
|
@@ -53,12 +53,21 @@ export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnect
|
|
|
53
53
|
getRuntimeEnv,
|
|
54
54
|
defaultHarness,
|
|
55
55
|
audience,
|
|
56
|
+
runConfig,
|
|
56
57
|
});
|
|
57
58
|
const [interactionMode, setInteractionMode] = useState("agent");
|
|
58
59
|
const isGuest = audience === "guest";
|
|
60
|
+
// A pinned model makes the picker a dead control (the pin wins over any
|
|
61
|
+
// choice it could offer), so the pin forces it hidden; the guest strip
|
|
62
|
+
// and the host's explicit opt-out compose with it (DD-016: same rule as
|
|
63
|
+
// SessionViewer).
|
|
64
|
+
const modelSelectorVisible = showModelSelector && !isGuest && runConfig?.modelName === undefined;
|
|
59
65
|
// Both curated audiences (endUser, guest) lock the agent and hide the
|
|
60
66
|
// integrator pickers; guest adds its own restrictions below.
|
|
61
67
|
const isCurated = audience !== "integrator";
|
|
68
|
+
// Host opt-out or audience restriction — the same single flag
|
|
69
|
+
// SessionViewer derives (DD-016), gating the chip and the region together.
|
|
70
|
+
const panelEnabled = panelMode !== "none" && !isGuest;
|
|
62
71
|
// Guest agent binding is host configuration, not a picker interaction:
|
|
63
72
|
// the composer's agent machinery (picker, env-collection, personal
|
|
64
73
|
// environments — all org reads a guest token cannot make) stays fully
|
|
@@ -82,6 +91,11 @@ export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnect
|
|
|
82
91
|
phase: null,
|
|
83
92
|
hasChanges: false,
|
|
84
93
|
defaultView: "configure",
|
|
94
|
+
// Same inertness contract as SessionViewer: a disabled panel is pinned
|
|
95
|
+
// controlled-closed and unobserved (DD-016).
|
|
96
|
+
open: panelEnabled ? panelOpen : false,
|
|
97
|
+
defaultOpen: defaultPanelOpen,
|
|
98
|
+
onOpenChange: panelEnabled ? onPanelOpenChange : undefined,
|
|
85
99
|
});
|
|
86
100
|
const { editors, activeKey, activeFile, reveal } = useWorkspaceEditors(panel.editorsStore);
|
|
87
101
|
// Honor a jump-to-line reveal only while it targets the active editor
|
|
@@ -147,7 +161,7 @@ export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnect
|
|
|
147
161
|
_jsx("div", { className: "stg:flex stg:h-full stg:flex-col stg:items-center stg:overflow-y-auto stg:px-4 stg:py-6", children: _jsxs("div", { className: "stg:my-auto stg:w-full stg:max-w-2xl stg:space-y-6", children: [_jsx("h1", { className: "stg:text-center stg:text-lg stg:font-medium stg:text-foreground", children: heading }), _jsx(SessionComposer, { onSubmit: flow.submit, isSubmitting: flow.isSubmitting, org: org, workspace: isGuest ? undefined : flow.workspace, gitHubConnection: enableGitHub && !isGuest ? gitHubConnection : undefined, enableGitHub: enableGitHub && !isGuest, enableLocal: enableLocal && !isGuest, onBrowseLocalFolder: onBrowseLocalFolder, agentRef: flow.agentRef,
|
|
148
162
|
// Guests get no agent machinery at all — the binding is applied
|
|
149
163
|
// by the launcher's pin effect above, not by picker resolution.
|
|
150
|
-
onAgentRefChange: isGuest ? undefined : flow.setAgentRef, onAgentResolutionChange: isGuest ? undefined : flow.setResolution, initialAgentRef: isGuest ? undefined : initialAgentRef, initialInstanceId: isGuest ? undefined : initialInstanceId, initialAttachments: isGuest ? undefined : initialAttachments, lockAgent: isCurated && initialAgentRef != null, mcpServerUsages: isCurated ? undefined : flow.mcpServerUsages, onMcpServerUsagesChange: isCurated ? undefined : flow.setMcpServerUsages, skillRefs: isCurated ? undefined : flow.skillRefs, onSkillRefsChange: isCurated ? undefined : flow.setSkillRefs, sessionVariables: isCurated ? undefined : flow.sessionVariables, showHarnessSelector: !isGuest, harness: flow.harness, onHarnessChange: flow.setHarness, interactionMode: interactionMode, onInteractionModeChange: setInteractionMode, showInteractionModePicker: !isGuest, showModelSelector:
|
|
164
|
+
onAgentRefChange: isGuest ? undefined : flow.setAgentRef, onAgentResolutionChange: isGuest ? undefined : flow.setResolution, initialAgentRef: isGuest ? undefined : initialAgentRef, initialInstanceId: isGuest ? undefined : initialInstanceId, initialAttachments: isGuest ? undefined : initialAttachments, lockAgent: isCurated && initialAgentRef != null, mcpServerUsages: isCurated ? undefined : flow.mcpServerUsages, onMcpServerUsagesChange: isCurated ? undefined : flow.setMcpServerUsages, skillRefs: isCurated ? undefined : flow.skillRefs, onSkillRefsChange: isCurated ? undefined : flow.setSkillRefs, sessionVariables: isCurated ? undefined : flow.sessionVariables, showHarnessSelector: !isGuest, harness: flow.harness, onHarnessChange: flow.setHarness, interactionMode: interactionMode, onInteractionModeChange: setInteractionMode, showInteractionModePicker: !isGuest, showModelSelector: modelSelectorVisible, enableAttachments: !isGuest, defaultModelId: flow.modelId, onModelChange: flow.setModelId, placeholder: placeholder, initialRows: initialRows, autoFocus: autoFocus, ariaLabel: "Start a new session" }), footerContent, _jsx("p", { className: "stg:text-center stg:text-[0.65rem] stg:text-muted-foreground", children: "Press Enter to send, Shift+Enter for a new line" })] }) }));
|
|
151
165
|
return (
|
|
152
166
|
// The launcher renders the same SessionViewerLayout as SessionViewer
|
|
153
167
|
// (DD-016) — the shared frame is what makes "the two viewers behave
|
|
@@ -160,9 +174,10 @@ export function NewSessionViewer({ org, onSessionCreated, onError, gitHubConnect
|
|
|
160
174
|
// collapse control when the last context item is removed. Always-on is
|
|
161
175
|
// the predictable, discoverable shape; opening homes on the Config
|
|
162
176
|
// facet, which carries useful defaults (harness/model) pre-session.
|
|
163
|
-
//
|
|
164
|
-
// has no business with
|
|
165
|
-
//
|
|
166
|
-
|
|
177
|
+
// A panel-less viewer is the exception: guests (the panel exposes
|
|
178
|
+
// configuration a visitor has no business with) and hosts passing
|
|
179
|
+
// panel="none" get no chip — the panel's only toggle is simply
|
|
180
|
+
// absent and the panel can never open.
|
|
181
|
+
chip: panelEnabled ? (_jsx(SessionPanelChip, { isOpen: panel.isOpen, onToggle: panel.isOpen ? panel.closePanel : panel.openPanel })) : undefined, conversation: composerNode, panel: panel.isOpen && panelEnabled ? (_jsx(WorkspaceSurface, { entries: flow.workspace.entries, lister: workspaceFileLister, reader: workspaceFileReader, searcher: workspaceContentSearcher, view: panel.view, onViewChange: panel.setView, extraViews: railViews, onRemoveEntry: flow.workspace.remove, onAddLocalFolder: canAddLocalFolder ? handleAddLocalFolder : undefined, editors: editors, selectedFile: activeFile, onOpenFile: panel.openFile, onActivateEditor: panel.activateEditor, onPinEditor: panel.pinEditor, onCloseEditor: panel.closeEditor, onCollapse: panel.closePanel, reveal: activeReveal, className: "stg:h-full" })) : null }));
|
|
167
182
|
}
|
|
168
183
|
//# sourceMappingURL=NewSessionViewer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewSessionViewer.js","sourceRoot":"","sources":["../../src/session/NewSessionViewer.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AAOlF,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"NewSessionViewer.js","sourceRoot":"","sources":["../../src/session/NewSessionViewer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,8 @@ import type { WorkspaceContentSearcher } from "../workspace/WorkspaceContentSear
|
|
|
6
6
|
import type { ApplyResourceResult } from "../library/useApplyResource.js";
|
|
7
7
|
import { type MessageThreadSlots } from "../execution/MessageThread.js";
|
|
8
8
|
import type { RuntimeEnvProvider } from "./runtime-env.js";
|
|
9
|
-
import type { SessionAudience } from "./audience.js";
|
|
9
|
+
import type { SessionAudience, SessionPanelMode } from "./audience.js";
|
|
10
|
+
import type { SessionRunConfig } from "./run-config.js";
|
|
10
11
|
/** Props for {@link SessionViewer}. */
|
|
11
12
|
export interface SessionViewerProps {
|
|
12
13
|
/** Session ID to load and display. */
|
|
@@ -97,6 +98,66 @@ export interface SessionViewerProps {
|
|
|
97
98
|
* @default "integrator"
|
|
98
99
|
*/
|
|
99
100
|
readonly audience?: SessionAudience;
|
|
101
|
+
/**
|
|
102
|
+
* Owner-pinned model/tier for every execution sent from this viewer
|
|
103
|
+
* (stigmer/stigmer#664) — for product-embedded conversations where
|
|
104
|
+
* the platform, not the end user, decides what serves the session
|
|
105
|
+
* (pair with `audience="endUser"`). A pinned model wins over the
|
|
106
|
+
* composer, the persisted Console preference, and the last
|
|
107
|
+
* execution's model — follow-ups and retries included — and hides
|
|
108
|
+
* the model picker (a control that has no effect must not render).
|
|
109
|
+
* Ignored for the `"guest"` audience, whose execution config the
|
|
110
|
+
* server-side share policy owns. See {@link SessionRunConfig}.
|
|
111
|
+
*/
|
|
112
|
+
readonly runConfig?: SessionRunConfig;
|
|
113
|
+
/**
|
|
114
|
+
* Whether the follow-up composer offers the model picker. `false`
|
|
115
|
+
* hides the picker while keeping the SDK's model sourcing (persisted
|
|
116
|
+
* preference, then the last execution's model) — for hosts whose
|
|
117
|
+
* surrounding surface owns model choice without pinning it. Forced
|
|
118
|
+
* off by a {@link SessionViewerProps.runConfig} model pin and for the
|
|
119
|
+
* `"guest"` audience.
|
|
120
|
+
*
|
|
121
|
+
* @default true
|
|
122
|
+
*/
|
|
123
|
+
readonly showModelSelector?: boolean;
|
|
124
|
+
/**
|
|
125
|
+
* Whether the viewer offers the session panel at all. `"none"` removes the
|
|
126
|
+
* panel AND its toggle chip, suppresses plan-mode auto-open, and lets
|
|
127
|
+
* transcript file paths keep their default copy behavior — for hosts whose
|
|
128
|
+
* surrounding surface already renders the workspace — while keeping every
|
|
129
|
+
* composer capability the audience allows. This is the panel half of what
|
|
130
|
+
* `audience="guest"` does, WITHOUT guest's composer strip-down; guest
|
|
131
|
+
* still forces it regardless of this prop. A union (not a boolean) so a
|
|
132
|
+
* future mode (e.g. a host-rendered panel) extends rather than breaks it.
|
|
133
|
+
*
|
|
134
|
+
* @default "auto"
|
|
135
|
+
*/
|
|
136
|
+
readonly panel?: SessionPanelMode;
|
|
137
|
+
/**
|
|
138
|
+
* Initial open state of the session panel in uncontrolled mode — a docking
|
|
139
|
+
* host that wants the workspace visible from the first paint passes `true`.
|
|
140
|
+
* Ignored when {@link SessionViewerProps.panelOpen} is provided.
|
|
141
|
+
*
|
|
142
|
+
* @default false
|
|
143
|
+
*/
|
|
144
|
+
readonly defaultPanelOpen?: boolean;
|
|
145
|
+
/**
|
|
146
|
+
* Controlled open state of the session panel. When provided, the host owns
|
|
147
|
+
* the panel: the chip toggle, file/plan/artifact opens, and plan-mode
|
|
148
|
+
* auto-open surface through {@link SessionViewerProps.onPanelOpenChange}
|
|
149
|
+
* instead of flipping state, and the panel follows this value. Leave
|
|
150
|
+
* `undefined` for the self-managing default.
|
|
151
|
+
*/
|
|
152
|
+
readonly panelOpen?: boolean;
|
|
153
|
+
/**
|
|
154
|
+
* Called on every panel open/close transition, in BOTH modes — pass it
|
|
155
|
+
* alone (uncontrolled) to simply observe the panel, e.g. widening a docked
|
|
156
|
+
* pane when a streaming plan auto-opens it and reclaiming the room on
|
|
157
|
+
* close. See {@link UseSessionPanelOptions.onOpenChange} for the exact
|
|
158
|
+
* request-vs-transition semantics in each mode.
|
|
159
|
+
*/
|
|
160
|
+
readonly onPanelOpenChange?: (open: boolean) => void;
|
|
100
161
|
/**
|
|
101
162
|
* Slot for host-injected header actions. Rendered in the top-right corner
|
|
102
163
|
* of the viewer, beside the panel chip. Keeps the SDK organism
|
|
@@ -164,5 +225,5 @@ export interface SessionViewerProps {
|
|
|
164
225
|
* />
|
|
165
226
|
* ```
|
|
166
227
|
*/
|
|
167
|
-
export declare function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience, headerActions, accessSlot, onApplied, threadSlots, className, }: SessionViewerProps): import("react/jsx-runtime").JSX.Element;
|
|
228
|
+
export declare function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience, runConfig, showModelSelector, panel: panelMode, defaultPanelOpen, panelOpen, onPanelOpenChange, headerActions, accessSlot, onApplied, threadSlots, className, }: SessionViewerProps): import("react/jsx-runtime").JSX.Element;
|
|
168
229
|
//# sourceMappingURL=SessionViewer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionViewer.d.ts","sourceRoot":"","sources":["../../src/session/SessionViewer.tsx"],"names":[],"mappings":"AAEA,OAAO,EAA2D,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAQhG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC/E,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AAOzF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAI1E,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAsCvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"SessionViewer.d.ts","sourceRoot":"","sources":["../../src/session/SessionViewer.tsx"],"names":[],"mappings":"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"}
|
package/session/SessionViewer.js
CHANGED
|
@@ -126,10 +126,20 @@ const CONVERSATION_COLUMN_CLASS = "stg:mx-auto stg:w-full stg:max-w-3xl";
|
|
|
126
126
|
* />
|
|
127
127
|
* ```
|
|
128
128
|
*/
|
|
129
|
-
export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub = true, enableLocal = false, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience = "integrator", headerActions, accessSlot, onApplied, threadSlots, className, }) {
|
|
130
|
-
const flow = useSessionPageFlow({
|
|
129
|
+
export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub = true, enableLocal = false, onBrowseLocalFolder, workspaceFileLister, workspaceFileReader, workspaceContentSearcher, getRuntimeEnv, audience = "integrator", runConfig, showModelSelector = true, panel: panelMode = "auto", defaultPanelOpen, panelOpen, onPanelOpenChange, headerActions, accessSlot, onApplied, threadSlots, className, }) {
|
|
130
|
+
const flow = useSessionPageFlow({
|
|
131
|
+
sessionId,
|
|
132
|
+
org,
|
|
133
|
+
getRuntimeEnv,
|
|
134
|
+
audience,
|
|
135
|
+
runConfig,
|
|
136
|
+
});
|
|
131
137
|
const { conv } = flow;
|
|
132
138
|
const isGuest = audience === "guest";
|
|
139
|
+
// A pinned model makes the picker a dead control (the pin wins over any
|
|
140
|
+
// choice it could offer), so the pin forces it hidden; the guest strip
|
|
141
|
+
// and the host's explicit opt-out compose with it.
|
|
142
|
+
const modelSelectorVisible = showModelSelector && !isGuest && runConfig?.modelName === undefined;
|
|
133
143
|
// Channel-originated sessions (Slack/WhatsApp conversations owned by the
|
|
134
144
|
// channel runtime) are read-only for every console caller — the server
|
|
135
145
|
// grants channel viewers can_view without can_create_execution_in — so the
|
|
@@ -140,6 +150,12 @@ export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub =
|
|
|
140
150
|
// Curated audiences (endUser, guest, observer) lock the agent and hide the
|
|
141
151
|
// integrator configuration; guest and observer add their own restrictions.
|
|
142
152
|
const isCurated = audience !== "integrator" || isObserver;
|
|
153
|
+
// The one flag every panel affordance keys on: the host opted out
|
|
154
|
+
// (`panel="none"`) or the audience forbids it (guests have no business
|
|
155
|
+
// with session configuration). Everything the panel touches — the chip,
|
|
156
|
+
// the region, plan auto-open, transcript path clicks — gates on this, so
|
|
157
|
+
// the four affordances can never drift apart.
|
|
158
|
+
const panelEnabled = panelMode !== "none" && !isGuest;
|
|
143
159
|
const [modelId, setModelId] = flow.model;
|
|
144
160
|
const [interactionMode, setInteractionMode] = flow.interactionMode;
|
|
145
161
|
const composerRef = useRef(null);
|
|
@@ -206,9 +222,16 @@ export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub =
|
|
|
206
222
|
const panel = useSessionPanel({
|
|
207
223
|
phase: hasPhase ? phase : null,
|
|
208
224
|
hasChanges: hasWriteBacks,
|
|
209
|
-
// A streaming plan auto-opens the panel via its key — but
|
|
210
|
-
//
|
|
211
|
-
|
|
225
|
+
// A streaming plan auto-opens the panel via its key — but a viewer
|
|
226
|
+
// without a panel (guest, or panel="none") suppresses the trigger
|
|
227
|
+
// along with the chip.
|
|
228
|
+
planKey: panelEnabled ? panelPlanKey : null,
|
|
229
|
+
// With the panel disabled the controller is pinned controlled-closed
|
|
230
|
+
// and unobserved — airtight inertness, not just hidden UI: no intent
|
|
231
|
+
// can flip state or reach the host's callback.
|
|
232
|
+
open: panelEnabled ? panelOpen : false,
|
|
233
|
+
defaultOpen: defaultPanelOpen,
|
|
234
|
+
onOpenChange: panelEnabled ? onPanelOpenChange : undefined,
|
|
212
235
|
});
|
|
213
236
|
const handleBuildFromPlan = useCallback(() => {
|
|
214
237
|
// Switch the picker to Agent (so subsequent turns stay in Agent) and submit
|
|
@@ -300,17 +323,17 @@ export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub =
|
|
|
300
323
|
// behavior. Writing the editor store re-renders only the panel subtree
|
|
301
324
|
// (which subscribes), never this streaming column.
|
|
302
325
|
const handleTranscriptFilePathClick = useCallback((path) => {
|
|
303
|
-
//
|
|
304
|
-
// default copy behavior instead of opening a surface that
|
|
305
|
-
// render.
|
|
306
|
-
if (
|
|
326
|
+
// No panel (guest, or panel="none") means no file viewer, so paths
|
|
327
|
+
// keep their default copy behavior instead of opening a surface that
|
|
328
|
+
// cannot render.
|
|
329
|
+
if (!panelEnabled)
|
|
307
330
|
return false;
|
|
308
331
|
const selection = resolveWorkspaceFileSelection(path, flow.workspace.entries, flow.sandboxWorkspaceRoot);
|
|
309
332
|
if (!selection)
|
|
310
333
|
return false;
|
|
311
334
|
panel.openFile(selection.entryId, selection.path);
|
|
312
335
|
return true;
|
|
313
|
-
}, [
|
|
336
|
+
}, [panelEnabled, flow.workspace.entries, flow.sandboxWorkspaceRoot, panel.openFile]);
|
|
314
337
|
if (conv.isLoading) {
|
|
315
338
|
return (_jsx("div", { className: cn("stg:flex stg:h-full stg:w-full stg:flex-col", className), children: _jsx(ThreadSkeleton, { className: "stg:flex-1 stg:px-0" }) }));
|
|
316
339
|
}
|
|
@@ -324,10 +347,10 @@ export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub =
|
|
|
324
347
|
// Top-right controls: host actions + the panel chip. The chip is the
|
|
325
348
|
// panel's always-mounted toggle; while collapsed it carries only the
|
|
326
349
|
// pending-item count. Execution status is never surfaced as header
|
|
327
|
-
// chrome — the thread itself communicates run state.
|
|
328
|
-
//
|
|
329
|
-
//
|
|
330
|
-
headerActions: headerActions, chip:
|
|
350
|
+
// chrome — the thread itself communicates run state. A viewer without
|
|
351
|
+
// a panel (guests — session configuration is not a visitor's business
|
|
352
|
+
// — or a host's panel="none") has no toggle: it is simply absent.
|
|
353
|
+
headerActions: headerActions, chip: panelEnabled ? (_jsx(SessionPanelChip, { isOpen: panel.isOpen, onToggle: panel.isOpen ? panel.closePanel : panel.openPanel, badgeCount: writeBackCount + artifactCount })) : undefined, splitStorageKey: "stgm-session-chat-width", conversation: _jsx(ConversationColumn, { flow: flow, modelId: modelId, setModelId: setModelId, interactionMode: interactionMode, setInteractionMode: setInteractionMode, composerRef: composerRef, org: org, gitHubConnection: gitHubConnection, enableGitHub: enableGitHub, enableLocal: enableLocal, onBrowseLocalFolder: onBrowseLocalFolder, onBuildFromPlan: handleBuildFromPlan, onOpenPlan: handleOpenPlan, isBuildingFromPlan: isBuildingFromPlan, planAttachFailed: planAttachFailed, onDismissPlanAttachFailed: () => setPlanAttachFailed(false), onFilePathClick: handleTranscriptFilePathClick, isCurated: isCurated, isGuest: isGuest, isObserver: isObserver, modelSelectorVisible: modelSelectorVisible, threadSlots: threadSlots }), panel: panel.isOpen && panelEnabled ? (_jsx(SessionPanelRegion, { flow: flow, org: org, panel: panel,
|
|
331
354
|
// Observers cannot manage access (no can_grant_access /
|
|
332
355
|
// can_view_access on a channel session) — the control is
|
|
333
356
|
// withheld rather than left to fail server-side.
|
|
@@ -337,7 +360,7 @@ export function SessionViewer({ sessionId, org, gitHubConnection, enableGitHub =
|
|
|
337
360
|
// owner/viewer-only).
|
|
338
361
|
onImplementPlan: isObserver ? undefined : handleBuildFromPlan, implementPlanDisabled: isObserver || !conv.canSendFollowUp || isBuildingFromPlan, sessionPlan: sessionPlan, streamingPlan: streamingPlan, planDraft: planDraft, openPlanExecutionId: openPlanExecutionId, onOpenPlan: handleOpenPlan, onOpenArtifact: handleOpenArtifact, onActivateArtifact: handleActivateArtifact, enableLocal: enableLocal, onBrowseLocalFolder: onBrowseLocalFolder, workspaceFileLister: workspaceFileLister, workspaceFileReader: workspaceFileReader, workspaceContentSearcher: workspaceContentSearcher, isCurated: isCurated })) : null }));
|
|
339
362
|
}
|
|
340
|
-
const ConversationColumn = memo(function ConversationColumn({ flow, modelId, setModelId, interactionMode, setInteractionMode, composerRef, org, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, onBuildFromPlan, onOpenPlan, isBuildingFromPlan, planAttachFailed, onDismissPlanAttachFailed, onFilePathClick, isCurated, isGuest, isObserver, threadSlots, }) {
|
|
363
|
+
const ConversationColumn = memo(function ConversationColumn({ flow, modelId, setModelId, interactionMode, setInteractionMode, composerRef, org, gitHubConnection, enableGitHub, enableLocal, onBrowseLocalFolder, onBuildFromPlan, onOpenPlan, isBuildingFromPlan, planAttachFailed, onDismissPlanAttachFailed, onFilePathClick, isCurated, isGuest, isObserver, modelSelectorVisible, threadSlots, }) {
|
|
341
364
|
const { conv } = flow;
|
|
342
365
|
// Approval failures are NOT folded into this banner: they now surface in-card,
|
|
343
366
|
// beside the exact gate that failed (see MessageThread's approvalErrors →
|
|
@@ -408,7 +431,7 @@ const ConversationColumn = memo(function ConversationColumn({ flow, modelId, set
|
|
|
408
431
|
// (gated tools auto-skip server-side), so nothing is ever pending on
|
|
409
432
|
// a new execution — withholding the callback is the belt-and-braces
|
|
410
433
|
// for pre-existing sessions and embedders composing the SDK directly.
|
|
411
|
-
onApprovalSubmit: isObserver || isGuest ? undefined : flow.submitApproval, submittingApprovalIds: conv.submittingApprovalIds, approvalErrors: conv.approvalErrors, showFileReviewRecords: true, onEditMessage: isObserver || !conv.isStoppable ? undefined : handleEditMessage, workspaceEntries: conv.workspaceEntries, onFilePathClick: onFilePathClick, sandboxWorkspaceRoot: flow.sandboxWorkspaceRoot, onBuildFromPlan: isObserver ? undefined : onBuildFromPlan, onOpenPlan: onOpenPlan, org: org, planActionsDisabled: isObserver || !conv.canSendFollowUp || isBuildingFromPlan, planBuildPending: isBuildingFromPlan, contentColumn: "center", slots: threadSlots, className: "stg:flex-1" }), _jsxs("div", { className: CONVERSATION_COLUMN_CLASS, children: [planAttachFailed && (_jsx(PlanAttachFailedNotice, { onDismiss: onDismissPlanAttachFailed })), conv.isReconnecting && _jsx(ReconnectingIndicator, {}), conv.connectTimedOut && (_jsx(ConnectTimedOutBanner, { onRetry: conv.reconnectStream })), conv.isSlow && !conv.connectTimedOut && _jsx(SlowIndicator, {}), conv.streamError && (_jsx(StreamErrorBanner, { error: conv.streamError, onReconnect: conv.reconnectStream })), !isObserver && sendError && _jsx(SendErrorBanner, { error: sendError }), !isObserver && flow.autoApproveAll && (_jsx(AutoApproveIndicator, { onTurnOff: () => flow.setAutoApproveAll(false) })), _jsxs(FilePathContext.Provider, { value: dockFilePathCtx, children: [_jsx(FileChangeProgressBar, { progress: conv.fileChangeProgress }), !isObserver && (_jsx(FileReviewDock, { changeSets: conv.fileChangeSets, onSubmit: conv.submitFileDecision, submittingDecisionKeys: conv.submittingFileDecisionKeys, decisionErrors: conv.fileDecisionErrors }))] }), !isObserver && (_jsx(SessionComposer, { ref: composerRef, onSubmit: handleComposerSubmit, isSubmitting: conv.isSending, disabled: !conv.canSendFollowUp, onStop: conv.isStoppable ? handleStop : undefined, isStopping: conv.isStopping, isEditing: editingExecutionId != null, onCancelEdit: handleCancelEdit, org: org, harness: flow.harness, defaultModelId: modelId, onModelChange: setModelId, interactionMode: interactionMode, onInteractionModeChange: setInteractionMode, showInteractionModePicker: !isGuest, showModelSelector:
|
|
434
|
+
onApprovalSubmit: isObserver || isGuest ? undefined : flow.submitApproval, submittingApprovalIds: conv.submittingApprovalIds, approvalErrors: conv.approvalErrors, showFileReviewRecords: true, onEditMessage: isObserver || !conv.isStoppable ? undefined : handleEditMessage, workspaceEntries: conv.workspaceEntries, onFilePathClick: onFilePathClick, sandboxWorkspaceRoot: flow.sandboxWorkspaceRoot, onBuildFromPlan: isObserver ? undefined : onBuildFromPlan, onOpenPlan: onOpenPlan, org: org, planActionsDisabled: isObserver || !conv.canSendFollowUp || isBuildingFromPlan, planBuildPending: isBuildingFromPlan, contentColumn: "center", slots: threadSlots, className: "stg:flex-1" }), _jsxs("div", { className: CONVERSATION_COLUMN_CLASS, children: [planAttachFailed && (_jsx(PlanAttachFailedNotice, { onDismiss: onDismissPlanAttachFailed })), conv.isReconnecting && _jsx(ReconnectingIndicator, {}), conv.connectTimedOut && (_jsx(ConnectTimedOutBanner, { onRetry: conv.reconnectStream })), conv.isSlow && !conv.connectTimedOut && _jsx(SlowIndicator, {}), conv.streamError && (_jsx(StreamErrorBanner, { error: conv.streamError, onReconnect: conv.reconnectStream })), !isObserver && sendError && _jsx(SendErrorBanner, { error: sendError }), !isObserver && flow.autoApproveAll && (_jsx(AutoApproveIndicator, { onTurnOff: () => flow.setAutoApproveAll(false) })), _jsxs(FilePathContext.Provider, { value: dockFilePathCtx, children: [_jsx(FileChangeProgressBar, { progress: conv.fileChangeProgress }), !isObserver && (_jsx(FileReviewDock, { changeSets: conv.fileChangeSets, onSubmit: conv.submitFileDecision, submittingDecisionKeys: conv.submittingFileDecisionKeys, decisionErrors: conv.fileDecisionErrors }))] }), !isObserver && (_jsx(SessionComposer, { ref: composerRef, onSubmit: handleComposerSubmit, isSubmitting: conv.isSending, disabled: !conv.canSendFollowUp, onStop: conv.isStoppable ? handleStop : undefined, isStopping: conv.isStopping, isEditing: editingExecutionId != null, onCancelEdit: handleCancelEdit, org: org, harness: flow.harness, defaultModelId: modelId, onModelChange: setModelId, interactionMode: interactionMode, onInteractionModeChange: setInteractionMode, showInteractionModePicker: !isGuest, showModelSelector: modelSelectorVisible, enableAttachments: !isGuest, workspace: isGuest ? undefined : flow.workspace, gitHubConnection: isGuest ? undefined : gitHubConnection, enableGitHub: enableGitHub && !isGuest, enableLocal: enableLocal && !isGuest, onBrowseLocalFolder: onBrowseLocalFolder, agentRef: flow.agentRef,
|
|
412
435
|
// Guests get no agent machinery: the session's agent is already
|
|
413
436
|
// bound server-side, and the picker's resolution path performs
|
|
414
437
|
// org reads a guest token cannot make.
|
|
@@ -578,7 +601,10 @@ function SessionStarting() {
|
|
|
578
601
|
* Low-weight, always-visible indicator shown while the session-scoped
|
|
579
602
|
* auto-approve preference is active. The "Turn off" control reverts the
|
|
580
603
|
* preference in one click — the safety affordance for "Approve & don't ask
|
|
581
|
-
* again".
|
|
604
|
+
* again". Visible from the first render when the host pre-armed the
|
|
605
|
+
* preference via `StigmerProvider`'s `approvalDefaults` (#302); otherwise
|
|
606
|
+
* nothing about approvals appears until the user opts in at a gate. Either
|
|
607
|
+
* way the user keeps the last word.
|
|
582
608
|
*/
|
|
583
609
|
function AutoApproveIndicator({ onTurnOff }) {
|
|
584
610
|
return (_jsxs("div", { role: "status", className: "stg:flex stg:items-center stg:gap-2 stg:border-t stg:border-border-muted stg:px-4 stg:py-1.5 stg:text-xs stg:text-muted-foreground", children: [_jsx(ShieldCheckIcon, {}), _jsx("span", { className: "stg:min-w-0 stg:flex-1 stg:truncate", children: "Auto-approving tool calls for this session" }), _jsx("button", { type: "button", onClick: onTurnOff, className: "stg:shrink-0 stg:rounded stg:font-medium stg:text-foreground stg:underline-offset-2 stg:hover:underline stg:focus-visible:outline-none stg:focus-visible:ring-2 stg:focus-visible:ring-ring", children: "Turn off" })] }));
|