@stigmer/react 0.0.36 → 0.0.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -88
- package/__tests__/hooks.test.d.ts +2 -0
- package/__tests__/hooks.test.d.ts.map +1 -0
- package/__tests__/hooks.test.js +18 -0
- package/__tests__/hooks.test.js.map +1 -0
- package/agent/AgentDetailView.d.ts +80 -0
- package/agent/AgentDetailView.d.ts.map +1 -0
- package/agent/AgentDetailView.js +184 -0
- package/agent/AgentDetailView.js.map +1 -0
- package/agent/AgentEnvForm.d.ts +83 -0
- package/agent/AgentEnvForm.d.ts.map +1 -0
- package/agent/AgentEnvForm.js +31 -0
- package/agent/AgentEnvForm.js.map +1 -0
- package/agent/AgentPicker.d.ts +44 -0
- package/agent/AgentPicker.d.ts.map +1 -0
- package/agent/AgentPicker.js +121 -0
- package/agent/AgentPicker.js.map +1 -0
- package/agent/agentSetupReducer.d.ts +123 -0
- package/agent/agentSetupReducer.d.ts.map +1 -0
- package/agent/agentSetupReducer.js +86 -0
- package/agent/agentSetupReducer.js.map +1 -0
- package/agent/index.d.ts +19 -8
- package/agent/index.d.ts.map +1 -1
- package/agent/index.js +10 -6
- package/agent/index.js.map +1 -1
- package/agent/useAgent.d.ts +48 -0
- package/agent/useAgent.d.ts.map +1 -0
- package/agent/useAgent.js +82 -0
- package/agent/useAgent.js.map +1 -0
- package/agent/useAgentCount.d.ts +49 -0
- package/agent/useAgentCount.d.ts.map +1 -0
- package/agent/useAgentCount.js +32 -0
- package/agent/useAgentCount.js.map +1 -0
- package/agent/useAgentList.d.ts +62 -0
- package/agent/useAgentList.d.ts.map +1 -0
- package/agent/useAgentList.js +38 -0
- package/agent/useAgentList.js.map +1 -0
- package/agent/useAgentSearch.d.ts +23 -0
- package/agent/useAgentSearch.d.ts.map +1 -0
- package/agent/useAgentSearch.js +28 -0
- package/agent/useAgentSearch.js.map +1 -0
- package/agent/useAgentSetup.d.ts +115 -0
- package/agent/useAgentSetup.d.ts.map +1 -0
- package/agent/useAgentSetup.js +279 -0
- package/agent/useAgentSetup.js.map +1 -0
- package/agent/useDefaultAgent.d.ts +29 -0
- package/agent/useDefaultAgent.d.ts.map +1 -0
- package/agent/useDefaultAgent.js +60 -0
- package/agent/useDefaultAgent.js.map +1 -0
- package/agent-instance/buildPersonalInstanceInput.d.ts +20 -0
- package/agent-instance/buildPersonalInstanceInput.d.ts.map +1 -0
- package/agent-instance/buildPersonalInstanceInput.js +29 -0
- package/agent-instance/buildPersonalInstanceInput.js.map +1 -0
- package/agent-instance/index.d.ts +9 -0
- package/agent-instance/index.d.ts.map +1 -0
- package/agent-instance/index.js +5 -0
- package/agent-instance/index.js.map +1 -0
- package/agent-instance/useAgentInstance.d.ts +35 -0
- package/agent-instance/useAgentInstance.d.ts.map +1 -0
- package/agent-instance/useAgentInstance.js +67 -0
- package/agent-instance/useAgentInstance.js.map +1 -0
- package/agent-instance/useAgentInstanceList.d.ts +29 -0
- package/agent-instance/useAgentInstanceList.d.ts.map +1 -0
- package/agent-instance/useAgentInstanceList.js +74 -0
- package/agent-instance/useAgentInstanceList.js.map +1 -0
- package/agent-instance/useCreateAgentInstance.d.ts +44 -0
- package/agent-instance/useCreateAgentInstance.d.ts.map +1 -0
- package/agent-instance/useCreateAgentInstance.js +60 -0
- package/agent-instance/useCreateAgentInstance.js.map +1 -0
- package/agent-instance/usePersonalAgentInstance.d.ts +93 -0
- package/agent-instance/usePersonalAgentInstance.d.ts.map +1 -0
- package/agent-instance/usePersonalAgentInstance.js +103 -0
- package/agent-instance/usePersonalAgentInstance.js.map +1 -0
- package/api-key/ApiKeyCreatedAlert.d.ts +33 -0
- package/api-key/ApiKeyCreatedAlert.d.ts.map +1 -0
- package/api-key/ApiKeyCreatedAlert.js +61 -0
- package/api-key/ApiKeyCreatedAlert.js.map +1 -0
- package/api-key/ApiKeyListPanel.d.ts +30 -0
- package/api-key/ApiKeyListPanel.d.ts.map +1 -0
- package/api-key/ApiKeyListPanel.js +126 -0
- package/api-key/ApiKeyListPanel.js.map +1 -0
- package/api-key/CreateApiKeyForm.d.ts +35 -0
- package/api-key/CreateApiKeyForm.d.ts.map +1 -0
- package/api-key/CreateApiKeyForm.js +81 -0
- package/api-key/CreateApiKeyForm.js.map +1 -0
- package/api-key/index.d.ts +13 -0
- package/api-key/index.d.ts.map +1 -0
- package/api-key/index.js +7 -0
- package/api-key/index.js.map +1 -0
- package/api-key/useApiKeyList.d.ts +28 -0
- package/api-key/useApiKeyList.d.ts.map +1 -0
- package/api-key/useApiKeyList.js +52 -0
- package/api-key/useApiKeyList.js.map +1 -0
- package/api-key/useCreateApiKey.d.ts +40 -0
- package/api-key/useCreateApiKey.d.ts.map +1 -0
- package/api-key/useCreateApiKey.js +56 -0
- package/api-key/useCreateApiKey.js.map +1 -0
- package/api-key/useDeleteApiKey.d.ts +26 -0
- package/api-key/useDeleteApiKey.d.ts.map +1 -0
- package/api-key/useDeleteApiKey.js +43 -0
- package/api-key/useDeleteApiKey.js.map +1 -0
- package/attachment/AttachmentChipList.d.ts +24 -0
- package/attachment/AttachmentChipList.d.ts.map +1 -0
- package/attachment/AttachmentChipList.js +45 -0
- package/attachment/AttachmentChipList.js.map +1 -0
- package/attachment/attachment-utils.d.ts +32 -0
- package/attachment/attachment-utils.d.ts.map +1 -0
- package/attachment/attachment-utils.js +104 -0
- package/attachment/attachment-utils.js.map +1 -0
- package/attachment/index.d.ts +6 -0
- package/attachment/index.d.ts.map +1 -0
- package/attachment/index.js +4 -0
- package/attachment/index.js.map +1 -0
- package/attachment/useAttachments.d.ts +113 -0
- package/attachment/useAttachments.d.ts.map +1 -0
- package/attachment/useAttachments.js +175 -0
- package/attachment/useAttachments.js.map +1 -0
- package/composer/ComposerToolbar.d.ts +37 -0
- package/composer/ComposerToolbar.d.ts.map +1 -0
- package/composer/ComposerToolbar.js +24 -0
- package/composer/ComposerToolbar.js.map +1 -0
- package/composer/ConfigureMenu.d.ts +37 -0
- package/composer/ConfigureMenu.d.ts.map +1 -0
- package/composer/ConfigureMenu.js +53 -0
- package/composer/ConfigureMenu.js.map +1 -0
- package/composer/ContextChip.d.ts +22 -0
- package/composer/ContextChip.d.ts.map +1 -0
- package/composer/ContextChip.js +19 -0
- package/composer/ContextChip.js.map +1 -0
- package/composer/ContextPopover.d.ts +10 -0
- package/composer/ContextPopover.d.ts.map +1 -0
- package/composer/ContextPopover.js +11 -0
- package/composer/ContextPopover.js.map +1 -0
- package/composer/SessionComposer.d.ts +269 -0
- package/composer/SessionComposer.d.ts.map +1 -0
- package/composer/SessionComposer.js +580 -0
- package/composer/SessionComposer.js.map +1 -0
- package/composer/icons.d.ts +15 -0
- package/composer/icons.d.ts.map +1 -0
- package/composer/icons.js +42 -0
- package/composer/icons.js.map +1 -0
- package/composer/index.d.ts +5 -0
- package/composer/index.d.ts.map +1 -0
- package/composer/index.js +3 -0
- package/composer/index.js.map +1 -0
- package/composer/useComposer.d.ts +74 -0
- package/composer/useComposer.d.ts.map +1 -0
- package/composer/useComposer.js +94 -0
- package/composer/useComposer.js.map +1 -0
- package/environment/CreateEnvironmentForm.d.ts +31 -0
- package/environment/CreateEnvironmentForm.d.ts.map +1 -0
- package/environment/CreateEnvironmentForm.js +57 -0
- package/environment/CreateEnvironmentForm.js.map +1 -0
- package/environment/EnvVarForm.d.ts +134 -0
- package/environment/EnvVarForm.d.ts.map +1 -0
- package/environment/EnvVarForm.js +122 -0
- package/environment/EnvVarForm.js.map +1 -0
- package/environment/EnvironmentListPanel.d.ts +51 -0
- package/environment/EnvironmentListPanel.d.ts.map +1 -0
- package/environment/EnvironmentListPanel.js +96 -0
- package/environment/EnvironmentListPanel.js.map +1 -0
- package/environment/EnvironmentVariableEditor.d.ts +43 -0
- package/environment/EnvironmentVariableEditor.d.ts.map +1 -0
- package/environment/EnvironmentVariableEditor.js +269 -0
- package/environment/EnvironmentVariableEditor.js.map +1 -0
- package/environment/diffEnvSpec.d.ts +34 -0
- package/environment/diffEnvSpec.d.ts.map +1 -0
- package/environment/diffEnvSpec.js +44 -0
- package/environment/diffEnvSpec.js.map +1 -0
- package/environment/index.d.ts +28 -0
- package/environment/index.d.ts.map +1 -0
- package/environment/index.js +15 -0
- package/environment/index.js.map +1 -0
- package/environment/useCreateEnvironment.d.ts +43 -0
- package/environment/useCreateEnvironment.d.ts.map +1 -0
- package/environment/useCreateEnvironment.js +59 -0
- package/environment/useCreateEnvironment.js.map +1 -0
- package/environment/useEnvironment.d.ts +37 -0
- package/environment/useEnvironment.d.ts.map +1 -0
- package/environment/useEnvironment.js +69 -0
- package/environment/useEnvironment.js.map +1 -0
- package/environment/useEnvironmentList.d.ts +31 -0
- package/environment/useEnvironmentList.d.ts.map +1 -0
- package/environment/useEnvironmentList.js +88 -0
- package/environment/useEnvironmentList.js.map +1 -0
- package/environment/usePersonalEnvironment.d.ts +100 -0
- package/environment/usePersonalEnvironment.d.ts.map +1 -0
- package/environment/usePersonalEnvironment.js +168 -0
- package/environment/usePersonalEnvironment.js.map +1 -0
- package/environment/useRemoveEnvironmentVariables.d.ts +45 -0
- package/environment/useRemoveEnvironmentVariables.d.ts.map +1 -0
- package/environment/useRemoveEnvironmentVariables.js +57 -0
- package/environment/useRemoveEnvironmentVariables.js.map +1 -0
- package/environment/useRevealSecretValue.d.ts +66 -0
- package/environment/useRevealSecretValue.d.ts.map +1 -0
- package/environment/useRevealSecretValue.js +92 -0
- package/environment/useRevealSecretValue.js.map +1 -0
- package/environment/useSessionEnvPool.d.ts +80 -0
- package/environment/useSessionEnvPool.d.ts.map +1 -0
- package/environment/useSessionEnvPool.js +72 -0
- package/environment/useSessionEnvPool.js.map +1 -0
- package/environment/useUpdateEnvironment.d.ts +43 -0
- package/environment/useUpdateEnvironment.d.ts.map +1 -0
- package/environment/useUpdateEnvironment.js +59 -0
- package/environment/useUpdateEnvironment.js.map +1 -0
- package/environment/useUpdateEnvironmentVariables.d.ts +53 -0
- package/environment/useUpdateEnvironmentVariables.d.ts.map +1 -0
- package/environment/useUpdateEnvironmentVariables.js +71 -0
- package/environment/useUpdateEnvironmentVariables.js.map +1 -0
- package/error/ErrorMessage.d.ts +33 -0
- package/error/ErrorMessage.d.ts.map +1 -0
- package/error/ErrorMessage.js +60 -0
- package/error/ErrorMessage.js.map +1 -0
- package/error/SecretFlowErrorGuide.d.ts +41 -0
- package/error/SecretFlowErrorGuide.d.ts.map +1 -0
- package/error/SecretFlowErrorGuide.js +87 -0
- package/error/SecretFlowErrorGuide.js.map +1 -0
- package/error/index.d.ts +5 -0
- package/error/index.d.ts.map +1 -0
- package/error/index.js +3 -0
- package/error/index.js.map +1 -0
- package/execution/ApprovalCard.d.ts +35 -0
- package/execution/ApprovalCard.d.ts.map +1 -0
- package/execution/ApprovalCard.js +192 -0
- package/execution/ApprovalCard.js.map +1 -0
- package/execution/ArtifactCard.d.ts +70 -0
- package/execution/ArtifactCard.d.ts.map +1 -0
- package/execution/ArtifactCard.js +109 -0
- package/execution/ArtifactCard.js.map +1 -0
- package/execution/ArtifactPreviewModal.d.ts +77 -0
- package/execution/ArtifactPreviewModal.d.ts.map +1 -0
- package/execution/ArtifactPreviewModal.js +310 -0
- package/execution/ArtifactPreviewModal.js.map +1 -0
- package/execution/ArtifactsWidget.d.ts +63 -0
- package/execution/ArtifactsWidget.d.ts.map +1 -0
- package/execution/ArtifactsWidget.js +61 -0
- package/execution/ArtifactsWidget.js.map +1 -0
- package/execution/ExecutionCostSummary.d.ts +47 -0
- package/execution/ExecutionCostSummary.d.ts.map +1 -0
- package/execution/ExecutionCostSummary.js +77 -0
- package/execution/ExecutionCostSummary.js.map +1 -0
- package/execution/ExecutionPhaseBadge.d.ts +20 -0
- package/execution/ExecutionPhaseBadge.d.ts.map +1 -0
- package/execution/ExecutionPhaseBadge.js +112 -0
- package/execution/ExecutionPhaseBadge.js.map +1 -0
- package/execution/ExecutionProgress.d.ts +32 -0
- package/execution/ExecutionProgress.d.ts.map +1 -0
- package/execution/ExecutionProgress.js +96 -0
- package/execution/ExecutionProgress.js.map +1 -0
- package/execution/FilePathContext.d.ts +22 -0
- package/execution/FilePathContext.d.ts.map +1 -0
- package/execution/FilePathContext.js +6 -0
- package/execution/FilePathContext.js.map +1 -0
- package/execution/FilePathLink.d.ts +26 -0
- package/execution/FilePathLink.d.ts.map +1 -0
- package/execution/FilePathLink.js +64 -0
- package/execution/FilePathLink.js.map +1 -0
- package/execution/FollowUpInput.d.ts +55 -0
- package/execution/FollowUpInput.d.ts.map +1 -0
- package/execution/FollowUpInput.js +95 -0
- package/execution/FollowUpInput.js.map +1 -0
- package/execution/MessageEntry.d.ts +25 -0
- package/execution/MessageEntry.d.ts.map +1 -0
- package/execution/MessageEntry.js +46 -0
- package/execution/MessageEntry.js.map +1 -0
- package/execution/MessageThread.d.ts +88 -0
- package/execution/MessageThread.d.ts.map +1 -0
- package/execution/MessageThread.js +157 -0
- package/execution/MessageThread.js.map +1 -0
- package/execution/SessionVariablesInput.d.ts +47 -0
- package/execution/SessionVariablesInput.d.ts.map +1 -0
- package/execution/SessionVariablesInput.js +80 -0
- package/execution/SessionVariablesInput.js.map +1 -0
- package/execution/SubAgentSection.d.ts +23 -0
- package/execution/SubAgentSection.d.ts.map +1 -0
- package/execution/SubAgentSection.js +103 -0
- package/execution/SubAgentSection.js.map +1 -0
- package/execution/ToolCallDetail.d.ts +32 -0
- package/execution/ToolCallDetail.d.ts.map +1 -0
- package/execution/ToolCallDetail.js +204 -0
- package/execution/ToolCallDetail.js.map +1 -0
- package/execution/ToolCallGroup.d.ts +45 -0
- package/execution/ToolCallGroup.d.ts.map +1 -0
- package/execution/ToolCallGroup.js +160 -0
- package/execution/ToolCallGroup.js.map +1 -0
- package/execution/ToolCallItem.d.ts +39 -0
- package/execution/ToolCallItem.d.ts.map +1 -0
- package/execution/ToolCallItem.js +164 -0
- package/execution/ToolCallItem.js.map +1 -0
- package/execution/__tests__/ExecutionCostSummary.test.d.ts +2 -0
- package/execution/__tests__/ExecutionCostSummary.test.d.ts.map +1 -0
- package/execution/__tests__/ExecutionCostSummary.test.js +255 -0
- package/execution/__tests__/ExecutionCostSummary.test.js.map +1 -0
- package/execution/__tests__/execution-phases.test.d.ts +2 -0
- package/execution/__tests__/execution-phases.test.d.ts.map +1 -0
- package/execution/__tests__/execution-phases.test.js +25 -0
- package/execution/__tests__/execution-phases.test.js.map +1 -0
- package/execution/__tests__/useExecutionStream.test.d.ts +2 -0
- package/execution/__tests__/useExecutionStream.test.d.ts.map +1 -0
- package/execution/__tests__/useExecutionStream.test.js +190 -0
- package/execution/__tests__/useExecutionStream.test.js.map +1 -0
- package/execution/__tests__/useExecutionUsage.test.d.ts +2 -0
- package/execution/__tests__/useExecutionUsage.test.d.ts.map +1 -0
- package/execution/__tests__/useExecutionUsage.test.js +303 -0
- package/execution/__tests__/useExecutionUsage.test.js.map +1 -0
- package/execution/artifact-utils.d.ts +58 -0
- package/execution/artifact-utils.d.ts.map +1 -0
- package/execution/artifact-utils.js +123 -0
- package/execution/artifact-utils.js.map +1 -0
- package/execution/execution-phases.d.ts +7 -0
- package/execution/execution-phases.d.ts.map +1 -0
- package/execution/execution-phases.js +15 -0
- package/execution/execution-phases.js.map +1 -0
- package/execution/file-path-resolver.d.ts +63 -0
- package/execution/file-path-resolver.d.ts.map +1 -0
- package/execution/file-path-resolver.js +121 -0
- package/execution/file-path-resolver.js.map +1 -0
- package/execution/index.d.ts +55 -0
- package/execution/index.d.ts.map +1 -0
- package/execution/index.js +29 -0
- package/execution/index.js.map +1 -0
- package/execution/tool-categories.d.ts +36 -0
- package/execution/tool-categories.d.ts.map +1 -0
- package/execution/tool-categories.js +110 -0
- package/execution/tool-categories.js.map +1 -0
- package/execution/useArtifactContent.d.ts +75 -0
- package/execution/useArtifactContent.d.ts.map +1 -0
- package/execution/useArtifactContent.js +102 -0
- package/execution/useArtifactContent.js.map +1 -0
- package/execution/useCreateAgentExecution.d.ts +84 -0
- package/execution/useCreateAgentExecution.d.ts.map +1 -0
- package/execution/useCreateAgentExecution.js +79 -0
- package/execution/useCreateAgentExecution.js.map +1 -0
- package/execution/useExecutionArtifacts.d.ts +42 -0
- package/execution/useExecutionArtifacts.d.ts.map +1 -0
- package/execution/useExecutionArtifacts.js +43 -0
- package/execution/useExecutionArtifacts.js.map +1 -0
- package/execution/useExecutionStream.d.ts +62 -0
- package/execution/useExecutionStream.d.ts.map +1 -0
- package/execution/useExecutionStream.js +99 -0
- package/execution/useExecutionStream.js.map +1 -0
- package/execution/useExecutionUsage.d.ts +45 -0
- package/execution/useExecutionUsage.d.ts.map +1 -0
- package/execution/useExecutionUsage.js +157 -0
- package/execution/useExecutionUsage.js.map +1 -0
- package/execution/useSessionVariables.d.ts +102 -0
- package/execution/useSessionVariables.d.ts.map +1 -0
- package/execution/useSessionVariables.js +102 -0
- package/execution/useSessionVariables.js.map +1 -0
- package/execution/useSubmitApproval.d.ts +39 -0
- package/execution/useSubmitApproval.d.ts.map +1 -0
- package/execution/useSubmitApproval.js +62 -0
- package/execution/useSubmitApproval.js.map +1 -0
- package/github/GitHubRepoPicker.d.ts +24 -0
- package/github/GitHubRepoPicker.d.ts.map +1 -0
- package/github/GitHubRepoPicker.js +248 -0
- package/github/GitHubRepoPicker.js.map +1 -0
- package/github/index.d.ts +4 -0
- package/github/index.d.ts.map +1 -0
- package/github/index.js +4 -0
- package/github/index.js.map +1 -0
- package/github/useGitHubConnection.d.ts +72 -0
- package/github/useGitHubConnection.d.ts.map +1 -0
- package/github/useGitHubConnection.js +268 -0
- package/github/useGitHubConnection.js.map +1 -0
- package/github/useGitHubRepos.d.ts +39 -0
- package/github/useGitHubRepos.d.ts.map +1 -0
- package/github/useGitHubRepos.js +135 -0
- package/github/useGitHubRepos.js.map +1 -0
- package/index.d.ts +34 -0
- package/index.d.ts.map +1 -1
- package/index.js +33 -0
- package/index.js.map +1 -1
- package/internal/ScrollFade.d.ts +15 -0
- package/internal/ScrollFade.d.ts.map +1 -0
- package/internal/ScrollFade.js +24 -0
- package/internal/ScrollFade.js.map +1 -0
- package/internal/markdown-components.d.ts +18 -0
- package/internal/markdown-components.d.ts.map +1 -0
- package/internal/markdown-components.js +78 -0
- package/internal/markdown-components.js.map +1 -0
- package/internal/slug.d.ts +32 -0
- package/internal/slug.d.ts.map +1 -0
- package/internal/slug.js +41 -0
- package/internal/slug.js.map +1 -0
- package/internal/toError.d.ts +16 -0
- package/internal/toError.d.ts.map +1 -0
- package/internal/toError.js +22 -0
- package/internal/toError.js.map +1 -0
- package/internal/useScrollShadows.d.ts +22 -0
- package/internal/useScrollShadows.d.ts.map +1 -0
- package/internal/useScrollShadows.js +40 -0
- package/internal/useScrollShadows.js.map +1 -0
- package/library/ResourceCountCard.d.ts +104 -0
- package/library/ResourceCountCard.d.ts.map +1 -0
- package/library/ResourceCountCard.js +80 -0
- package/library/ResourceCountCard.js.map +1 -0
- package/library/ResourceListView.d.ts +123 -0
- package/library/ResourceListView.d.ts.map +1 -0
- package/library/ResourceListView.js +208 -0
- package/library/ResourceListView.js.map +1 -0
- package/library/ScopeToggle.d.ts +38 -0
- package/library/ScopeToggle.d.ts.map +1 -0
- package/library/ScopeToggle.js +61 -0
- package/library/ScopeToggle.js.map +1 -0
- package/library/VisibilityToggle.d.ts +41 -0
- package/library/VisibilityToggle.d.ts.map +1 -0
- package/library/VisibilityToggle.js +80 -0
- package/library/VisibilityToggle.js.map +1 -0
- package/library/detect-skill-package.d.ts +79 -0
- package/library/detect-skill-package.d.ts.map +1 -0
- package/library/detect-skill-package.js +113 -0
- package/library/detect-skill-package.js.map +1 -0
- package/library/detect-stigmer-resource.d.ts +66 -0
- package/library/detect-stigmer-resource.d.ts.map +1 -0
- package/library/detect-stigmer-resource.js +77 -0
- package/library/detect-stigmer-resource.js.map +1 -0
- package/library/index.d.ts +24 -0
- package/library/index.d.ts.map +1 -0
- package/library/index.js +13 -0
- package/library/index.js.map +1 -0
- package/library/parse-resource-yaml.d.ts +59 -0
- package/library/parse-resource-yaml.d.ts.map +1 -0
- package/library/parse-resource-yaml.js +397 -0
- package/library/parse-resource-yaml.js.map +1 -0
- package/library/serialize-resource-yaml.d.ts +50 -0
- package/library/serialize-resource-yaml.d.ts.map +1 -0
- package/library/serialize-resource-yaml.js +294 -0
- package/library/serialize-resource-yaml.js.map +1 -0
- package/library/useApplyResource.d.ts +115 -0
- package/library/useApplyResource.d.ts.map +1 -0
- package/library/useApplyResource.js +124 -0
- package/library/useApplyResource.js.map +1 -0
- package/library/useDetectSkillPackage.d.ts +54 -0
- package/library/useDetectSkillPackage.d.ts.map +1 -0
- package/library/useDetectSkillPackage.js +59 -0
- package/library/useDetectSkillPackage.js.map +1 -0
- package/library/useDetectStigmerResource.d.ts +30 -0
- package/library/useDetectStigmerResource.d.ts.map +1 -0
- package/library/useDetectStigmerResource.js +35 -0
- package/library/useDetectStigmerResource.js.map +1 -0
- package/library/useUpdateVisibility.d.ts +40 -0
- package/library/useUpdateVisibility.d.ts.map +1 -0
- package/library/useUpdateVisibility.js +67 -0
- package/library/useUpdateVisibility.js.map +1 -0
- package/mcp-server/McpServerConfigPanel.d.ts +116 -0
- package/mcp-server/McpServerConfigPanel.d.ts.map +1 -0
- package/mcp-server/McpServerConfigPanel.js +72 -0
- package/mcp-server/McpServerConfigPanel.js.map +1 -0
- package/mcp-server/McpServerDetailView.d.ts +54 -0
- package/mcp-server/McpServerDetailView.d.ts.map +1 -0
- package/mcp-server/McpServerDetailView.js +138 -0
- package/mcp-server/McpServerDetailView.js.map +1 -0
- package/mcp-server/McpServerPicker.d.ts +158 -0
- package/mcp-server/McpServerPicker.d.ts.map +1 -0
- package/mcp-server/McpServerPicker.js +265 -0
- package/mcp-server/McpServerPicker.js.map +1 -0
- package/mcp-server/McpToolSelector.d.ts +44 -0
- package/mcp-server/McpToolSelector.d.ts.map +1 -0
- package/mcp-server/McpToolSelector.js +75 -0
- package/mcp-server/McpToolSelector.js.map +1 -0
- package/mcp-server/index.d.ts +18 -2
- package/mcp-server/index.d.ts.map +1 -1
- package/mcp-server/index.js +9 -2
- package/mcp-server/index.js.map +1 -1
- package/mcp-server/mcpServerSetupReducer.d.ts +138 -0
- package/mcp-server/mcpServerSetupReducer.d.ts.map +1 -0
- package/mcp-server/mcpServerSetupReducer.js +163 -0
- package/mcp-server/mcpServerSetupReducer.js.map +1 -0
- package/mcp-server/useMcpServer.d.ts +48 -0
- package/mcp-server/useMcpServer.d.ts.map +1 -0
- package/mcp-server/useMcpServer.js +82 -0
- package/mcp-server/useMcpServer.js.map +1 -0
- package/mcp-server/useMcpServerCount.d.ts +49 -0
- package/mcp-server/useMcpServerCount.d.ts.map +1 -0
- package/mcp-server/useMcpServerCount.js +32 -0
- package/mcp-server/useMcpServerCount.js.map +1 -0
- package/mcp-server/useMcpServerList.d.ts +62 -0
- package/mcp-server/useMcpServerList.d.ts.map +1 -0
- package/mcp-server/useMcpServerList.js +38 -0
- package/mcp-server/useMcpServerList.js.map +1 -0
- package/mcp-server/useMcpServerSearch.d.ts +18 -0
- package/mcp-server/useMcpServerSearch.d.ts.map +1 -0
- package/mcp-server/useMcpServerSearch.js +23 -0
- package/mcp-server/useMcpServerSearch.js.map +1 -0
- package/mcp-server/useMcpServerSetup.d.ts +162 -0
- package/mcp-server/useMcpServerSetup.d.ts.map +1 -0
- package/mcp-server/useMcpServerSetup.js +269 -0
- package/mcp-server/useMcpServerSetup.js.map +1 -0
- package/models/ModelSelector.d.ts +22 -0
- package/models/ModelSelector.d.ts.map +1 -0
- package/models/ModelSelector.js +59 -0
- package/models/ModelSelector.js.map +1 -0
- package/models/index.d.ts +7 -0
- package/models/index.d.ts.map +1 -0
- package/models/index.js +4 -0
- package/models/index.js.map +1 -0
- package/models/registry.d.ts +22 -0
- package/models/registry.d.ts.map +1 -0
- package/models/registry.js +43 -0
- package/models/registry.js.map +1 -0
- package/models/useModelRegistry.d.ts +18 -0
- package/models/useModelRegistry.d.ts.map +1 -0
- package/models/useModelRegistry.js +40 -0
- package/models/useModelRegistry.js.map +1 -0
- package/organization/CreateOrganizationForm.d.ts +28 -0
- package/organization/CreateOrganizationForm.d.ts.map +1 -0
- package/organization/CreateOrganizationForm.js +91 -0
- package/organization/CreateOrganizationForm.js.map +1 -0
- package/organization/index.d.ts +5 -0
- package/organization/index.d.ts.map +1 -0
- package/organization/index.js +3 -0
- package/organization/index.js.map +1 -0
- package/organization/useCreateOrganization.d.ts +34 -0
- package/organization/useCreateOrganization.d.ts.map +1 -0
- package/organization/useCreateOrganization.js +50 -0
- package/organization/useCreateOrganization.js.map +1 -0
- package/package.json +12 -40
- package/search/index.d.ts +7 -0
- package/search/index.d.ts.map +1 -0
- package/search/index.js +4 -0
- package/search/index.js.map +1 -0
- package/search/useResourceCount.d.ts +42 -0
- package/search/useResourceCount.d.ts.map +1 -0
- package/search/useResourceCount.js +58 -0
- package/search/useResourceCount.js.map +1 -0
- package/search/useResourceList.d.ts +48 -0
- package/search/useResourceList.d.ts.map +1 -0
- package/search/useResourceList.js +73 -0
- package/search/useResourceList.js.map +1 -0
- package/search/useResourceSearch.d.ts +27 -0
- package/search/useResourceSearch.d.ts.map +1 -0
- package/search/useResourceSearch.js +55 -0
- package/search/useResourceSearch.js.map +1 -0
- package/session/__tests__/group-sessions.test.d.ts +2 -0
- package/session/__tests__/group-sessions.test.d.ts.map +1 -0
- package/session/__tests__/group-sessions.test.js +91 -0
- package/session/__tests__/group-sessions.test.js.map +1 -0
- package/session/__tests__/useSessionConversation.test.d.ts +2 -0
- package/session/__tests__/useSessionConversation.test.d.ts.map +1 -0
- package/session/__tests__/useSessionConversation.test.js +209 -0
- package/session/__tests__/useSessionConversation.test.js.map +1 -0
- package/session/group-sessions.d.ts +20 -0
- package/session/group-sessions.d.ts.map +1 -0
- package/session/group-sessions.js +61 -0
- package/session/group-sessions.js.map +1 -0
- package/session/index.d.ts +17 -6
- package/session/index.d.ts.map +1 -1
- package/session/index.js +10 -5
- package/session/index.js.map +1 -1
- package/session/useAgentRefFromSession.d.ts +28 -0
- package/session/useAgentRefFromSession.d.ts.map +1 -0
- package/session/useAgentRefFromSession.js +73 -0
- package/session/useAgentRefFromSession.js.map +1 -0
- package/session/useCreateSession.d.ts +73 -0
- package/session/useCreateSession.d.ts.map +1 -0
- package/session/useCreateSession.js +87 -0
- package/session/useCreateSession.js.map +1 -0
- package/session/useSession.d.ts +17 -0
- package/session/useSession.d.ts.map +1 -0
- package/session/useSession.js +46 -0
- package/session/useSession.js.map +1 -0
- package/session/useSessionConversation.d.ts +151 -0
- package/session/useSessionConversation.d.ts.map +1 -0
- package/session/useSessionConversation.js +282 -0
- package/session/useSessionConversation.js.map +1 -0
- package/session/useSessionExecutions.d.ts +20 -0
- package/session/useSessionExecutions.d.ts.map +1 -0
- package/session/useSessionExecutions.js +57 -0
- package/session/useSessionExecutions.js.map +1 -0
- package/session/useSessionList.d.ts +25 -0
- package/session/useSessionList.d.ts.map +1 -0
- package/session/useSessionList.js +57 -0
- package/session/useSessionList.js.map +1 -0
- package/session/useUpdateSession.d.ts +22 -0
- package/session/useUpdateSession.d.ts.map +1 -0
- package/session/useUpdateSession.js +38 -0
- package/session/useUpdateSession.js.map +1 -0
- package/skill/SkillDetailView.d.ts +62 -0
- package/skill/SkillDetailView.d.ts.map +1 -0
- package/skill/SkillDetailView.js +157 -0
- package/skill/SkillDetailView.js.map +1 -0
- package/skill/SkillPicker.d.ts +26 -0
- package/skill/SkillPicker.d.ts.map +1 -0
- package/skill/SkillPicker.js +102 -0
- package/skill/SkillPicker.js.map +1 -0
- package/skill/index.d.ts +12 -2
- package/skill/index.d.ts.map +1 -1
- package/skill/index.js +6 -2
- package/skill/index.js.map +1 -1
- package/skill/useSkill.d.ts +49 -0
- package/skill/useSkill.d.ts.map +1 -0
- package/skill/useSkill.js +83 -0
- package/skill/useSkill.js.map +1 -0
- package/skill/useSkillCount.d.ts +49 -0
- package/skill/useSkillCount.d.ts.map +1 -0
- package/skill/useSkillCount.js +32 -0
- package/skill/useSkillCount.js.map +1 -0
- package/skill/useSkillList.d.ts +62 -0
- package/skill/useSkillList.d.ts.map +1 -0
- package/skill/useSkillList.js +38 -0
- package/skill/useSkillList.js.map +1 -0
- package/skill/useSkillSearch.d.ts +18 -0
- package/skill/useSkillSearch.d.ts.map +1 -0
- package/skill/useSkillSearch.js +23 -0
- package/skill/useSkillSearch.js.map +1 -0
- package/src/__tests__/hooks.test.tsx +28 -0
- package/src/agent/AgentDetailView.tsx +738 -0
- package/src/agent/AgentEnvForm.tsx +113 -0
- package/src/agent/AgentPicker.tsx +342 -0
- package/src/agent/agentSetupReducer.ts +234 -0
- package/src/agent/index.ts +43 -11
- package/src/agent/useAgent.ts +103 -0
- package/src/agent/useAgentCount.ts +68 -0
- package/src/agent/useAgentList.ts +84 -0
- package/src/agent/useAgentSearch.ts +43 -0
- package/src/agent/useAgentSetup.ts +434 -0
- package/src/agent/useDefaultAgent.ts +77 -0
- package/src/agent-instance/buildPersonalInstanceInput.ts +40 -0
- package/src/agent-instance/index.ts +11 -0
- package/src/agent-instance/useAgentInstance.ts +87 -0
- package/src/agent-instance/useAgentInstanceList.ts +99 -0
- package/src/agent-instance/useCreateAgentInstance.ts +75 -0
- package/src/agent-instance/usePersonalAgentInstance.ts +185 -0
- package/src/api-key/ApiKeyCreatedAlert.tsx +184 -0
- package/src/api-key/ApiKeyListPanel.tsx +359 -0
- package/src/api-key/CreateApiKeyForm.tsx +250 -0
- package/src/api-key/index.ts +12 -0
- package/src/api-key/useApiKeyList.ts +68 -0
- package/src/api-key/useCreateApiKey.ts +71 -0
- package/src/api-key/useDeleteApiKey.ts +57 -0
- package/src/attachment/AttachmentChipList.tsx +189 -0
- package/src/attachment/attachment-utils.ts +114 -0
- package/src/attachment/index.ts +17 -0
- package/src/attachment/useAttachments.ts +293 -0
- package/src/composer/ComposerToolbar.tsx +169 -0
- package/src/composer/ConfigureMenu.tsx +237 -0
- package/src/composer/ContextChip.tsx +104 -0
- package/src/composer/ContextPopover.tsx +54 -0
- package/src/composer/SessionComposer.tsx +1188 -0
- package/src/composer/icons.tsx +253 -0
- package/src/composer/index.ts +8 -0
- package/src/composer/useComposer.ts +163 -0
- package/src/environment/CreateEnvironmentForm.tsx +188 -0
- package/src/environment/EnvVarForm.tsx +475 -0
- package/src/environment/EnvironmentListPanel.tsx +258 -0
- package/src/environment/EnvironmentVariableEditor.tsx +811 -0
- package/src/environment/diffEnvSpec.ts +50 -0
- package/src/environment/index.ts +43 -0
- package/src/environment/useCreateEnvironment.ts +74 -0
- package/src/environment/useEnvironment.ts +89 -0
- package/src/environment/useEnvironmentList.ts +112 -0
- package/src/environment/usePersonalEnvironment.ts +285 -0
- package/src/environment/useRemoveEnvironmentVariables.ts +86 -0
- package/src/environment/useRevealSecretValue.ts +141 -0
- package/src/environment/useSessionEnvPool.ts +151 -0
- package/src/environment/useUpdateEnvironment.ts +74 -0
- package/src/environment/useUpdateEnvironmentVariables.ts +106 -0
- package/src/error/ErrorMessage.tsx +225 -0
- package/src/error/SecretFlowErrorGuide.tsx +189 -0
- package/src/error/index.ts +5 -0
- package/src/execution/ApprovalCard.tsx +499 -0
- package/src/execution/ArtifactCard.tsx +275 -0
- package/src/execution/ArtifactPreviewModal.tsx +942 -0
- package/src/execution/ArtifactsWidget.tsx +128 -0
- package/src/execution/ExecutionCostSummary.tsx +172 -0
- package/src/execution/ExecutionPhaseBadge.tsx +223 -0
- package/src/execution/ExecutionProgress.tsx +191 -0
- package/src/execution/FilePathContext.tsx +32 -0
- package/src/execution/FilePathLink.tsx +147 -0
- package/src/execution/FollowUpInput.tsx +220 -0
- package/src/execution/MessageEntry.tsx +120 -0
- package/src/execution/MessageThread.tsx +343 -0
- package/src/execution/SessionVariablesInput.tsx +374 -0
- package/src/execution/SubAgentSection.tsx +243 -0
- package/src/execution/ToolCallDetail.tsx +452 -0
- package/src/execution/ToolCallGroup.tsx +342 -0
- package/src/execution/ToolCallItem.tsx +426 -0
- package/src/execution/__tests__/ExecutionCostSummary.test.tsx +416 -0
- package/src/execution/__tests__/execution-phases.test.ts +31 -0
- package/src/execution/__tests__/useExecutionStream.test.tsx +242 -0
- package/src/execution/__tests__/useExecutionUsage.test.tsx +408 -0
- package/src/execution/artifact-utils.ts +136 -0
- package/src/execution/execution-phases.ts +16 -0
- package/src/execution/file-path-resolver.ts +171 -0
- package/src/execution/index.ts +97 -0
- package/src/execution/tool-categories.ts +171 -0
- package/src/execution/useArtifactContent.ts +156 -0
- package/src/execution/useCreateAgentExecution.ts +137 -0
- package/src/execution/useExecutionArtifacts.ts +58 -0
- package/src/execution/useExecutionStream.ts +149 -0
- package/src/execution/useExecutionUsage.ts +213 -0
- package/src/execution/useSessionVariables.ts +189 -0
- package/src/execution/useSubmitApproval.ts +98 -0
- package/src/github/GitHubRepoPicker.tsx +568 -0
- package/src/github/index.ts +19 -0
- package/src/github/useGitHubConnection.ts +368 -0
- package/src/github/useGitHubRepos.ts +197 -0
- package/src/index.ts +392 -0
- package/src/internal/ScrollFade.tsx +29 -0
- package/src/internal/markdown-components.tsx +197 -0
- package/src/internal/slug.ts +41 -0
- package/src/internal/toError.ts +19 -0
- package/src/internal/useScrollShadows.ts +54 -0
- package/src/library/ResourceCountCard.tsx +187 -0
- package/src/library/ResourceListView.tsx +698 -0
- package/src/library/ScopeToggle.tsx +121 -0
- package/src/library/VisibilityToggle.tsx +205 -0
- package/src/library/detect-skill-package.ts +162 -0
- package/src/library/detect-stigmer-resource.ts +130 -0
- package/src/library/index.ts +51 -0
- package/src/library/parse-resource-yaml.ts +611 -0
- package/src/library/serialize-resource-yaml.ts +407 -0
- package/src/library/useApplyResource.ts +211 -0
- package/src/library/useDetectSkillPackage.ts +91 -0
- package/src/library/useDetectStigmerResource.ts +45 -0
- package/src/library/useUpdateVisibility.ts +94 -0
- package/src/mcp-server/McpServerConfigPanel.tsx +265 -0
- package/src/mcp-server/McpServerDetailView.tsx +606 -0
- package/src/mcp-server/McpServerPicker.tsx +857 -0
- package/src/mcp-server/McpToolSelector.tsx +243 -0
- package/src/mcp-server/index.ts +44 -3
- package/src/mcp-server/mcpServerSetupReducer.ts +308 -0
- package/src/mcp-server/useMcpServer.ts +103 -0
- package/src/mcp-server/useMcpServerCount.ts +68 -0
- package/src/mcp-server/useMcpServerList.ts +84 -0
- package/src/mcp-server/useMcpServerSearch.ts +38 -0
- package/src/mcp-server/useMcpServerSetup.ts +487 -0
- package/src/models/ModelSelector.tsx +132 -0
- package/src/models/index.ts +6 -0
- package/src/models/registry.ts +60 -0
- package/src/models/useModelRegistry.ts +58 -0
- package/src/organization/CreateOrganizationForm.tsx +269 -0
- package/src/organization/index.ts +4 -0
- package/src/organization/useCreateOrganization.ts +65 -0
- package/src/search/index.ts +18 -0
- package/src/search/useResourceCount.ts +102 -0
- package/src/search/useResourceList.ts +128 -0
- package/src/search/useResourceSearch.ts +90 -0
- package/src/session/__tests__/group-sessions.test.ts +113 -0
- package/src/session/__tests__/useSessionConversation.test.tsx +305 -0
- package/src/session/group-sessions.ts +80 -0
- package/src/session/index.ts +33 -10
- package/src/session/useAgentRefFromSession.ts +94 -0
- package/src/session/useCreateSession.ts +142 -0
- package/src/session/useSession.ts +60 -0
- package/src/session/useSessionConversation.ts +515 -0
- package/src/session/useSessionExecutions.ts +77 -0
- package/src/session/useSessionList.ts +90 -0
- package/src/session/useUpdateSession.ts +54 -0
- package/src/skill/SkillDetailView.tsx +503 -0
- package/src/skill/SkillPicker.tsx +331 -0
- package/src/skill/index.ts +23 -3
- package/src/skill/useSkill.ts +105 -0
- package/src/skill/useSkillCount.ts +68 -0
- package/src/skill/useSkillList.ts +84 -0
- package/src/skill/useSkillSearch.ts +38 -0
- package/src/styles.css +2 -0
- package/src/workspace/FolderBrowser.tsx +568 -0
- package/src/workspace/WorkspaceEditor.tsx +480 -0
- package/src/workspace/WorkspaceSummary.tsx +109 -0
- package/src/workspace/index.ts +17 -0
- package/src/workspace/useFolderListing.ts +126 -0
- package/src/workspace/useWorkspaceEntries.ts +98 -0
- package/styles.css +1 -1
- package/workspace/FolderBrowser.d.ts +26 -0
- package/workspace/FolderBrowser.d.ts.map +1 -0
- package/workspace/FolderBrowser.js +179 -0
- package/workspace/FolderBrowser.js.map +1 -0
- package/workspace/WorkspaceEditor.d.ts +30 -0
- package/workspace/WorkspaceEditor.d.ts.map +1 -0
- package/workspace/WorkspaceEditor.js +116 -0
- package/workspace/WorkspaceEditor.js.map +1 -0
- package/workspace/WorkspaceSummary.d.ts +30 -0
- package/workspace/WorkspaceSummary.d.ts.map +1 -0
- package/workspace/WorkspaceSummary.js +53 -0
- package/workspace/WorkspaceSummary.js.map +1 -0
- package/workspace/index.d.ts +11 -0
- package/workspace/index.d.ts.map +1 -0
- package/workspace/index.js +6 -0
- package/workspace/index.js.map +1 -0
- package/workspace/useFolderListing.d.ts +35 -0
- package/workspace/useFolderListing.d.ts.map +1 -0
- package/workspace/useFolderListing.js +86 -0
- package/workspace/useFolderListing.js.map +1 -0
- package/workspace/useWorkspaceEntries.d.ts +28 -0
- package/workspace/useWorkspaceEntries.d.ts.map +1 -0
- package/workspace/useWorkspaceEntries.js +66 -0
- package/workspace/useWorkspaceEntries.js.map +1 -0
- package/agent/components/AgentCard.d.ts +0 -9
- package/agent/components/AgentCard.d.ts.map +0 -1
- package/agent/components/AgentCard.js +0 -26
- package/agent/components/AgentCard.js.map +0 -1
- package/agent/components/AgentOverview.d.ts +0 -7
- package/agent/components/AgentOverview.d.ts.map +0 -1
- package/agent/components/AgentOverview.js +0 -36
- package/agent/components/AgentOverview.js.map +0 -1
- package/agent/components/AgentPicker.d.ts +0 -17
- package/agent/components/AgentPicker.d.ts.map +0 -1
- package/agent/components/AgentPicker.js +0 -86
- package/agent/components/AgentPicker.js.map +0 -1
- package/agent/hooks/useAgentSearch.d.ts +0 -28
- package/agent/hooks/useAgentSearch.d.ts.map +0 -1
- package/agent/hooks/useAgentSearch.js +0 -63
- package/agent/hooks/useAgentSearch.js.map +0 -1
- package/agent-execution/components/ApprovalControls.d.ts +0 -10
- package/agent-execution/components/ApprovalControls.d.ts.map +0 -1
- package/agent-execution/components/ApprovalControls.js +0 -19
- package/agent-execution/components/ApprovalControls.js.map +0 -1
- package/agent-execution/components/ExecutionStatus.d.ts +0 -8
- package/agent-execution/components/ExecutionStatus.d.ts.map +0 -1
- package/agent-execution/components/ExecutionStatus.js +0 -14
- package/agent-execution/components/ExecutionStatus.js.map +0 -1
- package/agent-execution/components/ExecutionStream.d.ts +0 -16
- package/agent-execution/components/ExecutionStream.d.ts.map +0 -1
- package/agent-execution/components/ExecutionStream.js +0 -39
- package/agent-execution/components/ExecutionStream.js.map +0 -1
- package/agent-execution/components/MessageEntry.d.ts +0 -17
- package/agent-execution/components/MessageEntry.d.ts.map +0 -1
- package/agent-execution/components/MessageEntry.js +0 -36
- package/agent-execution/components/MessageEntry.js.map +0 -1
- package/agent-execution/components/MessageInput.d.ts +0 -10
- package/agent-execution/components/MessageInput.d.ts.map +0 -1
- package/agent-execution/components/MessageInput.js +0 -27
- package/agent-execution/components/MessageInput.js.map +0 -1
- package/agent-execution/components/OutputBlock.d.ts +0 -9
- package/agent-execution/components/OutputBlock.d.ts.map +0 -1
- package/agent-execution/components/OutputBlock.js +0 -15
- package/agent-execution/components/OutputBlock.js.map +0 -1
- package/agent-execution/components/SubAgentCard.d.ts +0 -11
- package/agent-execution/components/SubAgentCard.d.ts.map +0 -1
- package/agent-execution/components/SubAgentCard.js +0 -19
- package/agent-execution/components/SubAgentCard.js.map +0 -1
- package/agent-execution/components/ToolCallCard.d.ts +0 -11
- package/agent-execution/components/ToolCallCard.d.ts.map +0 -1
- package/agent-execution/components/ToolCallCard.js +0 -25
- package/agent-execution/components/ToolCallCard.js.map +0 -1
- package/agent-execution/helpers.d.ts +0 -35
- package/agent-execution/helpers.d.ts.map +0 -1
- package/agent-execution/helpers.js +0 -157
- package/agent-execution/helpers.js.map +0 -1
- package/agent-execution/hooks/useAgentExecution.d.ts +0 -21
- package/agent-execution/hooks/useAgentExecution.d.ts.map +0 -1
- package/agent-execution/hooks/useAgentExecution.js +0 -99
- package/agent-execution/hooks/useAgentExecution.js.map +0 -1
- package/agent-execution/hooks/useApproval.d.ts +0 -12
- package/agent-execution/hooks/useApproval.d.ts.map +0 -1
- package/agent-execution/hooks/useApproval.js +0 -32
- package/agent-execution/hooks/useApproval.js.map +0 -1
- package/agent-execution/index.d.ts +0 -14
- package/agent-execution/index.d.ts.map +0 -1
- package/agent-execution/index.js +0 -15
- package/agent-execution/index.js.map +0 -1
- package/catalog/components/ResourceSearchCard.d.ts +0 -23
- package/catalog/components/ResourceSearchCard.d.ts.map +0 -1
- package/catalog/components/ResourceSearchCard.js +0 -36
- package/catalog/components/ResourceSearchCard.js.map +0 -1
- package/catalog/index.d.ts +0 -4
- package/catalog/index.d.ts.map +0 -1
- package/catalog/index.js +0 -5
- package/catalog/index.js.map +0 -1
- package/catalog/internal/time.d.ts +0 -13
- package/catalog/internal/time.d.ts.map +0 -1
- package/catalog/internal/time.js +0 -41
- package/catalog/internal/time.js.map +0 -1
- package/internal/badge.d.ts +0 -8
- package/internal/badge.d.ts.map +0 -1
- package/internal/badge.js +0 -34
- package/internal/badge.js.map +0 -1
- package/internal/button.d.ts +0 -9
- package/internal/button.d.ts.map +0 -1
- package/internal/button.js +0 -36
- package/internal/button.js.map +0 -1
- package/internal/collapsible.d.ts +0 -6
- package/internal/collapsible.d.ts.map +0 -1
- package/internal/collapsible.js +0 -14
- package/internal/collapsible.js.map +0 -1
- package/internal/section.d.ts +0 -8
- package/internal/section.d.ts.map +0 -1
- package/internal/section.js +0 -6
- package/internal/section.js.map +0 -1
- package/internal/textarea.d.ts +0 -4
- package/internal/textarea.d.ts.map +0 -1
- package/internal/textarea.js +0 -9
- package/internal/textarea.js.map +0 -1
- package/mcp-server/hooks/useMcpServerSearch.d.ts +0 -25
- package/mcp-server/hooks/useMcpServerSearch.d.ts.map +0 -1
- package/mcp-server/hooks/useMcpServerSearch.js +0 -57
- package/mcp-server/hooks/useMcpServerSearch.js.map +0 -1
- package/session/components/AgentSessionHistory.d.ts +0 -8
- package/session/components/AgentSessionHistory.d.ts.map +0 -1
- package/session/components/AgentSessionHistory.js +0 -11
- package/session/components/AgentSessionHistory.js.map +0 -1
- package/session/components/SessionCard.d.ts +0 -8
- package/session/components/SessionCard.d.ts.map +0 -1
- package/session/components/SessionCard.js +0 -57
- package/session/components/SessionCard.js.map +0 -1
- package/session/hooks/useAgentSessionList.d.ts +0 -21
- package/session/hooks/useAgentSessionList.d.ts.map +0 -1
- package/session/hooks/useAgentSessionList.js +0 -90
- package/session/hooks/useAgentSessionList.js.map +0 -1
- package/skill/hooks/useSkillSearch.d.ts +0 -25
- package/skill/hooks/useSkillSearch.d.ts.map +0 -1
- package/skill/hooks/useSkillSearch.js +0 -57
- package/skill/hooks/useSkillSearch.js.map +0 -1
- package/src/agent/components/AgentCard.tsx +0 -125
- package/src/agent/components/AgentOverview.tsx +0 -209
- package/src/agent/components/AgentPicker.tsx +0 -255
- package/src/agent/hooks/useAgentSearch.ts +0 -94
- package/src/agent-execution/components/ApprovalControls.tsx +0 -99
- package/src/agent-execution/components/ExecutionStatus.tsx +0 -33
- package/src/agent-execution/components/ExecutionStream.tsx +0 -148
- package/src/agent-execution/components/MessageEntry.tsx +0 -125
- package/src/agent-execution/components/MessageInput.tsx +0 -70
- package/src/agent-execution/components/OutputBlock.tsx +0 -43
- package/src/agent-execution/components/SubAgentCard.tsx +0 -138
- package/src/agent-execution/components/ToolCallCard.tsx +0 -153
- package/src/agent-execution/helpers.ts +0 -193
- package/src/agent-execution/hooks/useAgentExecution.ts +0 -147
- package/src/agent-execution/hooks/useApproval.ts +0 -56
- package/src/agent-execution/index.ts +0 -46
- package/src/catalog/components/ResourceSearchCard.tsx +0 -137
- package/src/catalog/index.ts +0 -6
- package/src/catalog/internal/time.ts +0 -40
- package/src/internal/badge.tsx +0 -52
- package/src/internal/button.tsx +0 -60
- package/src/internal/collapsible.tsx +0 -21
- package/src/internal/section.tsx +0 -18
- package/src/internal/textarea.tsx +0 -23
- package/src/mcp-server/hooks/useMcpServerSearch.ts +0 -79
- package/src/session/components/AgentSessionHistory.tsx +0 -109
- package/src/session/components/SessionCard.tsx +0 -113
- package/src/session/hooks/useAgentSessionList.ts +0 -117
- package/src/skill/hooks/useSkillSearch.ts +0 -79
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDetectSkillPackage.js","sourceRoot":"","sources":["../../src/library/useDetectSkillPackage.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAEhC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EACL,kBAAkB,EAClB,cAAc,GAEf,MAAM,wBAAwB,CAAC;AAEhC,MAAM,YAAY,GAA0B,EAAE,QAAQ,EAAE,KAAK,EAAW,CAAC;AAiBzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,MAAM,UAAU,qBAAqB,CACnC,QAAkC,EAClC,WAA0B;IAE1B,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAE9D,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,kBAAkB,CACtD,SAAS,IAAI,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAC7C,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,EAClD,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAC9B,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CAAwB,GAAG,EAAE;QACpD,IAAI,CAAC,QAAQ,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;YACxC,OAAO,YAAY,CAAC;QACtB,CAAC;QACD,OAAO,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC;IAEnC,OAAO;QACL,SAAS;QACT,SAAS,EAAE,SAAS,IAAI,SAAS;QACjC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;KAChC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type StigmerResourceDetection } from "./detect-stigmer-resource";
|
|
2
|
+
/**
|
|
3
|
+
* Detects whether a YAML content string represents a Stigmer platform resource.
|
|
4
|
+
*
|
|
5
|
+
* Thin React wrapper around {@link detectStigmerResource}. The result is
|
|
6
|
+
* memoized — detection only re-runs when `content` changes by reference.
|
|
7
|
+
*
|
|
8
|
+
* Pass `null` to skip detection (returns `{ detected: false }`). This
|
|
9
|
+
* makes the hook safe to call unconditionally even while content is
|
|
10
|
+
* still loading via {@link useArtifactContent}.
|
|
11
|
+
*
|
|
12
|
+
* @param content - Raw YAML content string, or `null` to skip detection.
|
|
13
|
+
* @returns A discriminated union: `{ detected: true, kind, ... }` when a
|
|
14
|
+
* recognized Stigmer resource is found, `{ detected: false }` otherwise.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```tsx
|
|
18
|
+
* const { content } = useArtifactContent(executionId, storageKey);
|
|
19
|
+
* const detection = useDetectStigmerResource(content);
|
|
20
|
+
*
|
|
21
|
+
* if (detection.detected) {
|
|
22
|
+
* return <Badge>{detection.displayName}</Badge>;
|
|
23
|
+
* }
|
|
24
|
+
* ```
|
|
25
|
+
*
|
|
26
|
+
* @see {@link detectStigmerResource} for the pure function (non-React usage)
|
|
27
|
+
* @see {@link useArtifactContent} for fetching artifact content
|
|
28
|
+
*/
|
|
29
|
+
export declare function useDetectStigmerResource(content: string | null): StigmerResourceDetection;
|
|
30
|
+
//# sourceMappingURL=useDetectStigmerResource.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDetectStigmerResource.d.ts","sourceRoot":"","sources":["../../src/library/useDetectStigmerResource.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,wBAAwB,EAC9B,MAAM,2BAA2B,CAAC;AAInC;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,GAAG,IAAI,GACrB,wBAAwB,CAK1B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useMemo } from "react";
|
|
3
|
+
import { detectStigmerResource, } from "./detect-stigmer-resource";
|
|
4
|
+
const NOT_DETECTED = { detected: false };
|
|
5
|
+
/**
|
|
6
|
+
* Detects whether a YAML content string represents a Stigmer platform resource.
|
|
7
|
+
*
|
|
8
|
+
* Thin React wrapper around {@link detectStigmerResource}. The result is
|
|
9
|
+
* memoized — detection only re-runs when `content` changes by reference.
|
|
10
|
+
*
|
|
11
|
+
* Pass `null` to skip detection (returns `{ detected: false }`). This
|
|
12
|
+
* makes the hook safe to call unconditionally even while content is
|
|
13
|
+
* still loading via {@link useArtifactContent}.
|
|
14
|
+
*
|
|
15
|
+
* @param content - Raw YAML content string, or `null` to skip detection.
|
|
16
|
+
* @returns A discriminated union: `{ detected: true, kind, ... }` when a
|
|
17
|
+
* recognized Stigmer resource is found, `{ detected: false }` otherwise.
|
|
18
|
+
*
|
|
19
|
+
* @example
|
|
20
|
+
* ```tsx
|
|
21
|
+
* const { content } = useArtifactContent(executionId, storageKey);
|
|
22
|
+
* const detection = useDetectStigmerResource(content);
|
|
23
|
+
*
|
|
24
|
+
* if (detection.detected) {
|
|
25
|
+
* return <Badge>{detection.displayName}</Badge>;
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* @see {@link detectStigmerResource} for the pure function (non-React usage)
|
|
30
|
+
* @see {@link useArtifactContent} for fetching artifact content
|
|
31
|
+
*/
|
|
32
|
+
export function useDetectStigmerResource(content) {
|
|
33
|
+
return useMemo(() => (content === null ? NOT_DETECTED : detectStigmerResource(content)), [content]);
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=useDetectStigmerResource.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDetectStigmerResource.js","sourceRoot":"","sources":["../../src/library/useDetectStigmerResource.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EACL,qBAAqB,GAEtB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,YAAY,GAA6B,EAAE,QAAQ,EAAE,KAAK,EAAW,CAAC;AAE5E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAsB;IAEtB,OAAO,OAAO,CACZ,GAAG,EAAE,CAAC,CAAC,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,EACxE,CAAC,OAAO,CAAC,CACV,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
2
|
+
/** Resource kinds that support the `updateVisibility` RPC. */
|
|
3
|
+
export type VisibilityResourceKind = "skill" | "agent" | "mcpServer";
|
|
4
|
+
export interface UseUpdateVisibilityReturn {
|
|
5
|
+
/**
|
|
6
|
+
* Call the `updateVisibility` RPC for the specified resource.
|
|
7
|
+
* Resolves when the server confirms the change.
|
|
8
|
+
*/
|
|
9
|
+
readonly updateVisibility: (visibility: ApiResourceVisibility) => Promise<void>;
|
|
10
|
+
/** `true` while the RPC is in flight. */
|
|
11
|
+
readonly isPending: boolean;
|
|
12
|
+
/** The last error from the RPC, or `null`. */
|
|
13
|
+
readonly error: Error | null;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Behavior hook that updates the visibility of a Skill, Agent, or
|
|
17
|
+
* MCP Server.
|
|
18
|
+
*
|
|
19
|
+
* Wraps the generated `stigmer.{kind}.updateVisibility()` SDK method
|
|
20
|
+
* with loading and error state management. The hook is stateless with
|
|
21
|
+
* respect to the resource — the caller is responsible for refreshing
|
|
22
|
+
* the resource after a successful update (e.g., via `refetch` from
|
|
23
|
+
* the corresponding data hook).
|
|
24
|
+
*
|
|
25
|
+
* Pass `null` for `resourceId` to produce a stable no-op (useful when
|
|
26
|
+
* the resource hasn't loaded yet).
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* ```tsx
|
|
30
|
+
* const { updateVisibility, isPending } = useUpdateVisibility("skill", skill.metadata.id);
|
|
31
|
+
*
|
|
32
|
+
* <VisibilityToggle
|
|
33
|
+
* visibility={skill.metadata.visibility}
|
|
34
|
+
* onVisibilityChange={updateVisibility}
|
|
35
|
+
* isPending={isPending}
|
|
36
|
+
* />
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export declare function useUpdateVisibility(kind: VisibilityResourceKind, resourceId: string | null): UseUpdateVisibilityReturn;
|
|
40
|
+
//# sourceMappingURL=useUpdateVisibility.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUpdateVisibility.d.ts","sourceRoot":"","sources":["../../src/library/useUpdateVisibility.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAK/F,8DAA8D;AAC9D,MAAM,MAAM,sBAAsB,GAAG,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC;AAErE,MAAM,WAAW,yBAAyB;IACxC;;;OAGG;IACH,QAAQ,CAAC,gBAAgB,EAAE,CACzB,UAAU,EAAE,qBAAqB,KAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,yCAAyC;IACzC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,sBAAsB,EAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,GACxB,yBAAyB,CAwC3B"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { useCallback, useState } from "react";
|
|
3
|
+
import { create } from "@bufbuild/protobuf";
|
|
4
|
+
import { UpdateVisibilityInputSchema } from "@stigmer/protos/ai/stigmer/commons/apiresource/io_pb";
|
|
5
|
+
import { useStigmer } from "../hooks";
|
|
6
|
+
import { toError } from "../internal/toError";
|
|
7
|
+
/**
|
|
8
|
+
* Behavior hook that updates the visibility of a Skill, Agent, or
|
|
9
|
+
* MCP Server.
|
|
10
|
+
*
|
|
11
|
+
* Wraps the generated `stigmer.{kind}.updateVisibility()` SDK method
|
|
12
|
+
* with loading and error state management. The hook is stateless with
|
|
13
|
+
* respect to the resource — the caller is responsible for refreshing
|
|
14
|
+
* the resource after a successful update (e.g., via `refetch` from
|
|
15
|
+
* the corresponding data hook).
|
|
16
|
+
*
|
|
17
|
+
* Pass `null` for `resourceId` to produce a stable no-op (useful when
|
|
18
|
+
* the resource hasn't loaded yet).
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* const { updateVisibility, isPending } = useUpdateVisibility("skill", skill.metadata.id);
|
|
23
|
+
*
|
|
24
|
+
* <VisibilityToggle
|
|
25
|
+
* visibility={skill.metadata.visibility}
|
|
26
|
+
* onVisibilityChange={updateVisibility}
|
|
27
|
+
* isPending={isPending}
|
|
28
|
+
* />
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export function useUpdateVisibility(kind, resourceId) {
|
|
32
|
+
const stigmer = useStigmer();
|
|
33
|
+
const [isPending, setIsPending] = useState(false);
|
|
34
|
+
const [error, setError] = useState(null);
|
|
35
|
+
const updateVisibility = useCallback(async (visibility) => {
|
|
36
|
+
if (!resourceId)
|
|
37
|
+
return;
|
|
38
|
+
setIsPending(true);
|
|
39
|
+
setError(null);
|
|
40
|
+
try {
|
|
41
|
+
const input = create(UpdateVisibilityInputSchema, {
|
|
42
|
+
resourceId,
|
|
43
|
+
visibility,
|
|
44
|
+
});
|
|
45
|
+
switch (kind) {
|
|
46
|
+
case "skill":
|
|
47
|
+
await stigmer.skill.updateVisibility(input);
|
|
48
|
+
break;
|
|
49
|
+
case "agent":
|
|
50
|
+
await stigmer.agent.updateVisibility(input);
|
|
51
|
+
break;
|
|
52
|
+
case "mcpServer":
|
|
53
|
+
await stigmer.mcpServer.updateVisibility(input);
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
setError(toError(err));
|
|
59
|
+
throw err;
|
|
60
|
+
}
|
|
61
|
+
finally {
|
|
62
|
+
setIsPending(false);
|
|
63
|
+
}
|
|
64
|
+
}, [kind, resourceId, stigmer]);
|
|
65
|
+
return { updateVisibility, isPending, error };
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=useUpdateVisibility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUpdateVisibility.js","sourceRoot":"","sources":["../../src/library/useUpdateVisibility.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,sDAAsD,CAAC;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAmB9C;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAA4B,EAC5B,UAAyB;IAEzB,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,gBAAgB,GAAG,WAAW,CAClC,KAAK,EAAE,UAAiC,EAAE,EAAE;QAC1C,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,MAAM,CAAC,2BAA2B,EAAE;gBAChD,UAAU;gBACV,UAAU;aACX,CAAC,CAAC;YAEH,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,OAAO;oBACV,MAAM,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBAC5C,MAAM;gBACR,KAAK,OAAO;oBACV,MAAM,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBAC5C,MAAM;gBACR,KAAK,WAAW;oBACd,MAAM,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBAChD,MAAM;YACV,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;YACvB,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,EACD,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAC5B,CAAC;IAEF,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
import type { EnvVarInput } from "@stigmer/sdk";
|
|
2
|
+
import type { McpServer } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/api_pb";
|
|
3
|
+
import type { DiscoveredTool } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/status_pb";
|
|
4
|
+
import type { ToolApprovalPolicy } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/spec_pb";
|
|
5
|
+
import { type EnvVarFormVariable, type EnvVarFormSubmitOptions } from "../environment/EnvVarForm";
|
|
6
|
+
/**
|
|
7
|
+
* Props for the inline credentials form shown when a server requires
|
|
8
|
+
* environment variables that are missing from the user's personal
|
|
9
|
+
* environment.
|
|
10
|
+
*
|
|
11
|
+
* This is modeled as a sub-object of {@link McpServerConfigPanelProps}
|
|
12
|
+
* so the presence of `credentials` controls whether the form is
|
|
13
|
+
* rendered — no status string inspection required.
|
|
14
|
+
*/
|
|
15
|
+
export interface McpServerCredentialsProps {
|
|
16
|
+
/** Missing env vars to collect (one form field per variable). */
|
|
17
|
+
readonly variables: EnvVarFormVariable[];
|
|
18
|
+
/** Called when the user submits credentials via the form. */
|
|
19
|
+
readonly onSubmit: (values: Record<string, EnvVarInput>, options: EnvVarFormSubmitOptions) => void;
|
|
20
|
+
/** When true, form inputs are disabled and the submit button shows a spinner. */
|
|
21
|
+
readonly isSubmitting?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* Initial state of the "Save for future runs" toggle.
|
|
24
|
+
* @default true
|
|
25
|
+
*/
|
|
26
|
+
readonly defaultSaveForFuture?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* When `true`, the save toggle is hidden and the form always uses
|
|
29
|
+
* `defaultSaveForFuture` as the submit value.
|
|
30
|
+
* @default false
|
|
31
|
+
*/
|
|
32
|
+
readonly hideSaveToggle?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Lookup function for pre-filling fields from the session env pool.
|
|
35
|
+
* When provided, fields whose keys return a value are pre-populated.
|
|
36
|
+
*/
|
|
37
|
+
readonly poolValues?: (key: string) => EnvVarInput | undefined;
|
|
38
|
+
}
|
|
39
|
+
export interface McpServerConfigPanelProps {
|
|
40
|
+
/** The MCP server resource — used for header display (name, icon, description). */
|
|
41
|
+
readonly mcpServer: McpServer;
|
|
42
|
+
/**
|
|
43
|
+
* When provided, the credentials form is shown above the tool selector.
|
|
44
|
+
* Omit when no credentials are needed or they have already been provided.
|
|
45
|
+
*
|
|
46
|
+
* While credentials are pending, the tool selector is rendered in a
|
|
47
|
+
* disabled state so the user completes step 1 (credentials) before
|
|
48
|
+
* step 2 (tool customization).
|
|
49
|
+
*/
|
|
50
|
+
readonly credentials?: McpServerCredentialsProps;
|
|
51
|
+
/** Discovered tools from `status.discovered_capabilities.tools`. */
|
|
52
|
+
readonly discoveredTools: DiscoveredTool[];
|
|
53
|
+
/** Approval policies from `spec.default_tool_approvals`. */
|
|
54
|
+
readonly toolApprovals: ToolApprovalPolicy[];
|
|
55
|
+
/** Currently enabled tool names (controlled). */
|
|
56
|
+
readonly enabledTools: string[];
|
|
57
|
+
/** Called when tool selection changes. */
|
|
58
|
+
readonly onEnabledToolsChange: (enabledTools: string[]) => void;
|
|
59
|
+
/** Called when the user clicks "Back" to return to the picker list. */
|
|
60
|
+
readonly onBack: () => void;
|
|
61
|
+
/** Error to display inline (e.g., from credential submission failure). */
|
|
62
|
+
readonly error?: Error | null;
|
|
63
|
+
readonly disabled?: boolean;
|
|
64
|
+
readonly className?: string;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Per-server configuration panel composing a credentials form
|
|
68
|
+
* ({@link EnvVarForm}) and a tool selector ({@link McpToolSelector}).
|
|
69
|
+
*
|
|
70
|
+
* Designed to render inside the same popover container as
|
|
71
|
+
* {@link McpServerPicker}: the picker list transitions to this panel
|
|
72
|
+
* when the user drills into a specific server's configuration.
|
|
73
|
+
*
|
|
74
|
+
* The panel's content is driven by the `credentials` prop:
|
|
75
|
+
* - **Present** (server needs setup) — the credentials form is shown
|
|
76
|
+
* above the tool selector. The tool selector renders disabled as a
|
|
77
|
+
* preview of what tools the server provides.
|
|
78
|
+
* - **Absent** (server is ready) — only the tool selector is shown,
|
|
79
|
+
* fully interactive for customizing which tools to enable.
|
|
80
|
+
*
|
|
81
|
+
* This is a **pure presentational component** with no knowledge of
|
|
82
|
+
* the setup hook, personal environments, or session creation. All
|
|
83
|
+
* state is controlled via props — platform builders can use it with
|
|
84
|
+
* any state management approach.
|
|
85
|
+
*
|
|
86
|
+
* All visual properties flow through `--stgm-*` design tokens.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```tsx
|
|
90
|
+
* // Server that needs credentials:
|
|
91
|
+
* <McpServerConfigPanel
|
|
92
|
+
* mcpServer={server}
|
|
93
|
+
* credentials={{
|
|
94
|
+
* variables: missingVars,
|
|
95
|
+
* onSubmit: (values, opts) => submitEnvVars(ref, values, opts),
|
|
96
|
+
* }}
|
|
97
|
+
* discoveredTools={tools}
|
|
98
|
+
* toolApprovals={approvals}
|
|
99
|
+
* enabledTools={defaultEnabledTools}
|
|
100
|
+
* onEnabledToolsChange={(t) => setEnabledTools(ref, t)}
|
|
101
|
+
* onBack={() => setView("list")}
|
|
102
|
+
* />
|
|
103
|
+
*
|
|
104
|
+
* // Server that is ready (tool customization only):
|
|
105
|
+
* <McpServerConfigPanel
|
|
106
|
+
* mcpServer={server}
|
|
107
|
+
* discoveredTools={tools}
|
|
108
|
+
* toolApprovals={approvals}
|
|
109
|
+
* enabledTools={entry.enabledTools}
|
|
110
|
+
* onEnabledToolsChange={(t) => setEnabledTools(ref, t)}
|
|
111
|
+
* onBack={() => setView("list")}
|
|
112
|
+
* />
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
export declare function McpServerConfigPanel({ mcpServer, credentials, discoveredTools, toolApprovals, enabledTools, onEnabledToolsChange, onBack, error, disabled, className, }: McpServerConfigPanelProps): import("react/jsx-runtime").JSX.Element;
|
|
116
|
+
//# sourceMappingURL=McpServerConfigPanel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpServerConfigPanel.d.ts","sourceRoot":"","sources":["../../src/mcp-server/McpServerConfigPanel.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wDAAwD,CAAC;AACxF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2DAA2D,CAAC;AAChG,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yDAAyD,CAAC;AAClG,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAC7B,MAAM,2BAA2B,CAAC;AAOnC;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,kBAAkB,EAAE,CAAC;IACzC,6DAA6D;IAC7D,QAAQ,CAAC,QAAQ,EAAE,CACjB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,EACnC,OAAO,EAAE,uBAAuB,KAC7B,IAAI,CAAC;IACV,iFAAiF;IACjF,QAAQ,CAAC,YAAY,CAAC,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IACxC;;;;OAIG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,CAAC;IAClC;;;OAGG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,WAAW,GAAG,SAAS,CAAC;CAChE;AAMD,MAAM,WAAW,yBAAyB;IACxC,mFAAmF;IACnF,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B;;;;;;;OAOG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,yBAAyB,CAAC;IACjD,oEAAoE;IACpE,QAAQ,CAAC,eAAe,EAAE,cAAc,EAAE,CAAC;IAC3C,4DAA4D;IAC5D,QAAQ,CAAC,aAAa,EAAE,kBAAkB,EAAE,CAAC;IAC7C,iDAAiD;IACjD,QAAQ,CAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAChC,0CAA0C;IAC1C,QAAQ,CAAC,oBAAoB,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAChE,uEAAuE;IACvE,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAC;IAC5B,0EAA0E;IAC1E,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,SAAS,EACT,WAAW,EACX,eAAe,EACf,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,MAAM,EACN,KAAK,EACL,QAAQ,EACR,SAAS,GACV,EAAE,yBAAyB,2CA8F3B"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback } from "react";
|
|
4
|
+
import { cn } from "@stigmer/theme";
|
|
5
|
+
import { EnvVarForm, } from "../environment/EnvVarForm";
|
|
6
|
+
import { McpToolSelector } from "./McpToolSelector";
|
|
7
|
+
/**
|
|
8
|
+
* Per-server configuration panel composing a credentials form
|
|
9
|
+
* ({@link EnvVarForm}) and a tool selector ({@link McpToolSelector}).
|
|
10
|
+
*
|
|
11
|
+
* Designed to render inside the same popover container as
|
|
12
|
+
* {@link McpServerPicker}: the picker list transitions to this panel
|
|
13
|
+
* when the user drills into a specific server's configuration.
|
|
14
|
+
*
|
|
15
|
+
* The panel's content is driven by the `credentials` prop:
|
|
16
|
+
* - **Present** (server needs setup) — the credentials form is shown
|
|
17
|
+
* above the tool selector. The tool selector renders disabled as a
|
|
18
|
+
* preview of what tools the server provides.
|
|
19
|
+
* - **Absent** (server is ready) — only the tool selector is shown,
|
|
20
|
+
* fully interactive for customizing which tools to enable.
|
|
21
|
+
*
|
|
22
|
+
* This is a **pure presentational component** with no knowledge of
|
|
23
|
+
* the setup hook, personal environments, or session creation. All
|
|
24
|
+
* state is controlled via props — platform builders can use it with
|
|
25
|
+
* any state management approach.
|
|
26
|
+
*
|
|
27
|
+
* All visual properties flow through `--stgm-*` design tokens.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```tsx
|
|
31
|
+
* // Server that needs credentials:
|
|
32
|
+
* <McpServerConfigPanel
|
|
33
|
+
* mcpServer={server}
|
|
34
|
+
* credentials={{
|
|
35
|
+
* variables: missingVars,
|
|
36
|
+
* onSubmit: (values, opts) => submitEnvVars(ref, values, opts),
|
|
37
|
+
* }}
|
|
38
|
+
* discoveredTools={tools}
|
|
39
|
+
* toolApprovals={approvals}
|
|
40
|
+
* enabledTools={defaultEnabledTools}
|
|
41
|
+
* onEnabledToolsChange={(t) => setEnabledTools(ref, t)}
|
|
42
|
+
* onBack={() => setView("list")}
|
|
43
|
+
* />
|
|
44
|
+
*
|
|
45
|
+
* // Server that is ready (tool customization only):
|
|
46
|
+
* <McpServerConfigPanel
|
|
47
|
+
* mcpServer={server}
|
|
48
|
+
* discoveredTools={tools}
|
|
49
|
+
* toolApprovals={approvals}
|
|
50
|
+
* enabledTools={entry.enabledTools}
|
|
51
|
+
* onEnabledToolsChange={(t) => setEnabledTools(ref, t)}
|
|
52
|
+
* onBack={() => setView("list")}
|
|
53
|
+
* />
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
export function McpServerConfigPanel({ mcpServer, credentials, discoveredTools, toolApprovals, enabledTools, onEnabledToolsChange, onBack, error, disabled, className, }) {
|
|
57
|
+
const serverName = mcpServer.metadata?.name ?? mcpServer.metadata?.slug ?? "MCP Server";
|
|
58
|
+
const iconUrl = mcpServer.spec?.iconUrl;
|
|
59
|
+
const description = mcpServer.spec?.description;
|
|
60
|
+
const isDisabled = disabled || credentials?.isSubmitting;
|
|
61
|
+
const handleCredentialSubmit = useCallback((values, options) => {
|
|
62
|
+
credentials?.onSubmit(values, options);
|
|
63
|
+
}, [credentials]);
|
|
64
|
+
return (_jsxs("div", { className: cn("space-y-3", className), role: "region", "aria-label": `Configure ${serverName}`, children: [_jsxs("div", { className: "flex items-start gap-2", children: [_jsx("button", { type: "button", onClick: onBack, disabled: credentials?.isSubmitting, className: cn("mt-0.5 shrink-0 rounded p-0.5", "text-muted-foreground hover:text-foreground hover:bg-accent/50", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "disabled:pointer-events-none disabled:opacity-50"), "aria-label": "Back to MCP server list", children: _jsx(BackArrowIcon, {}) }), _jsxs("div", { className: "flex min-w-0 flex-1 items-start gap-2", children: [iconUrl && (_jsx("img", { src: iconUrl, alt: "", width: 16, height: 16, className: "mt-0.5 size-4 shrink-0 rounded-sm object-contain" })), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("h3", { className: "truncate text-xs font-medium text-foreground", children: serverName }), description && (_jsx("p", { className: "line-clamp-2 text-[0.65rem] leading-relaxed text-muted-foreground", children: description }))] })] })] }), credentials && (_jsx(EnvVarForm, { variables: credentials.variables, onSubmit: handleCredentialSubmit, isSubmitting: credentials.isSubmitting, disabled: disabled, title: "Credentials required", defaultSaveForFuture: credentials.defaultSaveForFuture, hideSaveToggle: credentials.hideSaveToggle, poolValues: credentials.poolValues, className: "w-full" })), error && (_jsx("div", { role: "alert", className: "rounded-md border border-destructive/30 bg-destructive/10 px-2.5 py-2 text-xs text-destructive", children: error.message })), _jsx(McpToolSelector, { tools: discoveredTools, toolApprovals: toolApprovals, enabledTools: enabledTools, onChange: onEnabledToolsChange, disabled: !!isDisabled || !!credentials })] }));
|
|
65
|
+
}
|
|
66
|
+
// ---------------------------------------------------------------------------
|
|
67
|
+
// Icons (internal to this module)
|
|
68
|
+
// ---------------------------------------------------------------------------
|
|
69
|
+
function BackArrowIcon() {
|
|
70
|
+
return (_jsx("svg", { width: "14", height: "14", viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "M10 3L5 8l5 5" }) }));
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=McpServerConfigPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpServerConfigPanel.js","sourceRoot":"","sources":["../../src/mcp-server/McpServerConfigPanel.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAKpC,OAAO,EACL,UAAU,GAGX,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AA2EpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,MAAM,UAAU,oBAAoB,CAAC,EACnC,SAAS,EACT,WAAW,EACX,eAAe,EACf,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,MAAM,EACN,KAAK,EACL,QAAQ,EACR,SAAS,GACiB;IAC1B,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,IAAI,SAAS,CAAC,QAAQ,EAAE,IAAI,IAAI,YAAY,CAAC;IACxF,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,OAAO,CAAC;IACxC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC;IAChD,MAAM,UAAU,GAAG,QAAQ,IAAI,WAAW,EAAE,YAAY,CAAC;IAEzD,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,MAAmC,EAAE,OAAgC,EAAE,EAAE;QACxE,WAAW,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC,EACD,CAAC,WAAW,CAAC,CACd,CAAC;IAEF,OAAO,CACL,eACE,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,EACrC,IAAI,EAAC,QAAQ,gBACD,aAAa,UAAU,EAAE,aAGrC,eAAK,SAAS,EAAC,wBAAwB,aACrC,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,WAAW,EAAE,YAAY,EACnC,SAAS,EAAE,EAAE,CACX,+BAA+B,EAC/B,gEAAgE,EAChE,yEAAyE,EACzE,kDAAkD,CACnD,gBACU,yBAAyB,YAEpC,KAAC,aAAa,KAAG,GACV,EAET,eAAK,SAAS,EAAC,uCAAuC,aACnD,OAAO,IAAI,CACV,cACE,GAAG,EAAE,OAAO,EACZ,GAAG,EAAC,EAAE,EACN,KAAK,EAAE,EAAE,EACT,MAAM,EAAE,EAAE,EACV,SAAS,EAAC,kDAAkD,GAC5D,CACH,EACD,eAAK,SAAS,EAAC,gBAAgB,aAC7B,aAAI,SAAS,EAAC,8CAA8C,YACzD,UAAU,GACR,EACJ,WAAW,IAAI,CACd,YAAG,SAAS,EAAC,mEAAmE,YAC7E,WAAW,GACV,CACL,IACG,IACF,IACF,EAGL,WAAW,IAAI,CACd,KAAC,UAAU,IACT,SAAS,EAAE,WAAW,CAAC,SAAS,EAChC,QAAQ,EAAE,sBAAsB,EAChC,YAAY,EAAE,WAAW,CAAC,YAAY,EACtC,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAC,sBAAsB,EAC5B,oBAAoB,EAAE,WAAW,CAAC,oBAAoB,EACtD,cAAc,EAAE,WAAW,CAAC,cAAc,EAC1C,UAAU,EAAE,WAAW,CAAC,UAAU,EAClC,SAAS,EAAC,QAAQ,GAClB,CACH,EAGA,KAAK,IAAI,CACR,cACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,gGAAgG,YAEzG,KAAK,CAAC,OAAO,GACV,CACP,EAGD,KAAC,eAAe,IACd,KAAK,EAAE,eAAe,EACtB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,QAAQ,EAAE,oBAAoB,EAC9B,QAAQ,EAAE,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,WAAW,GACvC,IACE,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,kCAAkC;AAClC,8EAA8E;AAE9E,SAAS,aAAa;IACpB,OAAO,CACL,cACE,KAAK,EAAC,IAAI,EACV,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,WAAW,EACnB,IAAI,EAAC,MAAM,EACX,MAAM,EAAC,cAAc,EACrB,WAAW,EAAC,KAAK,EACjB,aAAa,EAAC,OAAO,EACrB,cAAc,EAAC,OAAO,iBACV,MAAM,YAElB,eAAM,CAAC,EAAC,eAAe,GAAG,GACtB,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
2
|
+
export interface McpServerDetailViewProps {
|
|
3
|
+
/** Organization slug that owns the MCP server. */
|
|
4
|
+
readonly org: string;
|
|
5
|
+
/** MCP server slug (URL-friendly identifier unique within the org). */
|
|
6
|
+
readonly slug: string;
|
|
7
|
+
/**
|
|
8
|
+
* Called once when the MCP server resource has been fetched successfully.
|
|
9
|
+
* Provides the resource display name for use cases like breadcrumbs,
|
|
10
|
+
* document titles, or analytics — without requiring the consumer to
|
|
11
|
+
* also call {@link useMcpServer}.
|
|
12
|
+
*
|
|
13
|
+
* Not called on error or not-found states.
|
|
14
|
+
*/
|
|
15
|
+
readonly onResourceLoad?: (meta: {
|
|
16
|
+
name: string;
|
|
17
|
+
id: string;
|
|
18
|
+
}) => void;
|
|
19
|
+
/**
|
|
20
|
+
* Called when the user toggles visibility via the inline control.
|
|
21
|
+
* When provided, the header renders an interactive
|
|
22
|
+
* {@link VisibilityToggle} instead of a read-only badge.
|
|
23
|
+
* When omitted, visibility is displayed as a static "Public" pill.
|
|
24
|
+
*/
|
|
25
|
+
readonly onVisibilityChange?: (v: ApiResourceVisibility) => void;
|
|
26
|
+
/** `true` while a visibility update RPC is in flight. */
|
|
27
|
+
readonly isVisibilityPending?: boolean;
|
|
28
|
+
/** Additional CSS classes for the root container. */
|
|
29
|
+
readonly className?: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Read-only detail view for an MCP Server integration.
|
|
33
|
+
*
|
|
34
|
+
* Fetches the server via {@link useMcpServer} internally and renders
|
|
35
|
+
* its full configuration in structured sections: validation banner
|
|
36
|
+
* (if invalid), header, server configuration (type-specific), discovered
|
|
37
|
+
* tools, resource templates, environment variables, and tags. Sections
|
|
38
|
+
* with no data are omitted entirely.
|
|
39
|
+
*
|
|
40
|
+
* The discovered tools section is the star of this view — it answers
|
|
41
|
+
* the question every user asks: "What can this server do?"
|
|
42
|
+
*
|
|
43
|
+
* Handles loading, error, and not-found states automatically.
|
|
44
|
+
* Zero Console dependencies — safe for platform builder embedding.
|
|
45
|
+
* All visual properties flow through `--stgm-*` design tokens.
|
|
46
|
+
*
|
|
47
|
+
* @example
|
|
48
|
+
* ```tsx
|
|
49
|
+
* // Minimal — self-contained, fetches its own data
|
|
50
|
+
* <McpServerDetailView org="acme" slug="github" />
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
53
|
+
export declare function McpServerDetailView({ org, slug, onResourceLoad, onVisibilityChange, isVisibilityPending, className, }: McpServerDetailViewProps): import("react/jsx-runtime").JSX.Element;
|
|
54
|
+
//# sourceMappingURL=McpServerDetailView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpServerDetailView.d.ts","sourceRoot":"","sources":["../../src/mcp-server/McpServerDetailView.tsx"],"names":[],"mappings":"AAYA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAK/F,MAAM,WAAW,wBAAwB;IACvC,kDAAkD;IAClD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE;;;;;OAKG;IACH,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,qBAAqB,KAAK,IAAI,CAAC;IACjE,yDAAyD;IACzD,QAAQ,CAAC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IACvC,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,GAAG,EACH,IAAI,EACJ,cAAc,EACd,kBAAkB,EAClB,mBAAmB,EACnB,SAAS,GACV,EAAE,wBAAwB,2CAmE1B"}
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useEffect, useRef } from "react";
|
|
4
|
+
import { cn } from "@stigmer/theme";
|
|
5
|
+
import { timestampDate } from "@bufbuild/protobuf/wkt";
|
|
6
|
+
import { ValidationState } from "@stigmer/protos/ai/stigmer/agentic/mcpserver/v1/status_pb";
|
|
7
|
+
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
8
|
+
import { useMcpServer } from "./useMcpServer";
|
|
9
|
+
import { ErrorMessage } from "../error/ErrorMessage";
|
|
10
|
+
import { VisibilityToggle } from "../library/VisibilityToggle";
|
|
11
|
+
/**
|
|
12
|
+
* Read-only detail view for an MCP Server integration.
|
|
13
|
+
*
|
|
14
|
+
* Fetches the server via {@link useMcpServer} internally and renders
|
|
15
|
+
* its full configuration in structured sections: validation banner
|
|
16
|
+
* (if invalid), header, server configuration (type-specific), discovered
|
|
17
|
+
* tools, resource templates, environment variables, and tags. Sections
|
|
18
|
+
* with no data are omitted entirely.
|
|
19
|
+
*
|
|
20
|
+
* The discovered tools section is the star of this view — it answers
|
|
21
|
+
* the question every user asks: "What can this server do?"
|
|
22
|
+
*
|
|
23
|
+
* Handles loading, error, and not-found states automatically.
|
|
24
|
+
* Zero Console dependencies — safe for platform builder embedding.
|
|
25
|
+
* All visual properties flow through `--stgm-*` design tokens.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```tsx
|
|
29
|
+
* // Minimal — self-contained, fetches its own data
|
|
30
|
+
* <McpServerDetailView org="acme" slug="github" />
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export function McpServerDetailView({ org, slug, onResourceLoad, onVisibilityChange, isVisibilityPending, className, }) {
|
|
34
|
+
const { mcpServer, isLoading, error, refetch } = useMcpServer(org, slug);
|
|
35
|
+
const onResourceLoadRef = useRef(onResourceLoad);
|
|
36
|
+
onResourceLoadRef.current = onResourceLoad;
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
if (mcpServer?.metadata?.name) {
|
|
39
|
+
onResourceLoadRef.current?.({ name: mcpServer.metadata.name, id: mcpServer.metadata.id });
|
|
40
|
+
}
|
|
41
|
+
}, [mcpServer]);
|
|
42
|
+
if (isLoading)
|
|
43
|
+
return _jsx(LoadingSkeleton, { className: className });
|
|
44
|
+
if (error)
|
|
45
|
+
return _jsx(ErrorMessage, { error: error, retry: refetch, className: className });
|
|
46
|
+
if (!mcpServer)
|
|
47
|
+
return _jsx(NotFoundState, { className: className });
|
|
48
|
+
const spec = mcpServer.spec;
|
|
49
|
+
const status = mcpServer.status;
|
|
50
|
+
const specAudit = status?.audit?.specAudit;
|
|
51
|
+
const capabilities = status?.discoveredCapabilities;
|
|
52
|
+
return (_jsxs("div", { className: cn("flex flex-col gap-6", className), children: [status?.validationState === ValidationState.invalid &&
|
|
53
|
+
status.validationMessage && (_jsx(ValidationBanner, { message: status.validationMessage })), _jsx(Header, { server: mcpServer, createdAt: specAudit?.createdAt ? timestampDate(specAudit.createdAt) : null, updatedAt: specAudit?.updatedAt ? timestampDate(specAudit.updatedAt) : null, lastDiscoveredAt: capabilities?.lastDiscoveredAt
|
|
54
|
+
? timestampDate(capabilities.lastDiscoveredAt)
|
|
55
|
+
: null, onVisibilityChange: onVisibilityChange, isVisibilityPending: isVisibilityPending }), spec?.serverType.case && (_jsx(ServerConfigSection, { serverType: spec.serverType })), capabilities && capabilities.tools.length > 0 && (_jsx(ToolsSection, { tools: capabilities.tools })), capabilities && capabilities.resourceTemplates.length > 0 && (_jsx(ResourceTemplatesSection, { templates: capabilities.resourceTemplates })), spec?.envSpec && Object.keys(spec.envSpec.data).length > 0 && (_jsx(EnvSpecSection, { data: spec.envSpec.data })), spec && spec.tags.length > 0 && _jsx(TagsSection, { tags: spec.tags })] }));
|
|
56
|
+
}
|
|
57
|
+
// ---------------------------------------------------------------------------
|
|
58
|
+
// Internal section components
|
|
59
|
+
// ---------------------------------------------------------------------------
|
|
60
|
+
function ValidationBanner({ message }) {
|
|
61
|
+
return (_jsxs("div", { role: "alert", className: "flex items-start gap-2.5 rounded-lg border border-destructive/30 bg-destructive/5 px-4 py-3", children: [_jsx(WarningIcon, { className: "mt-0.5 size-4 shrink-0 text-destructive" }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("p", { className: "text-sm font-medium text-destructive", children: "Invalid Configuration" }), _jsx("p", { className: "mt-0.5 text-xs text-destructive/80", children: message })] })] }));
|
|
62
|
+
}
|
|
63
|
+
function Header({ server, createdAt, updatedAt, lastDiscoveredAt, onVisibilityChange, isVisibilityPending, }) {
|
|
64
|
+
const meta = server.metadata;
|
|
65
|
+
const spec = server.spec;
|
|
66
|
+
const status = server.status;
|
|
67
|
+
const displayName = meta?.name || meta?.slug || "Untitled";
|
|
68
|
+
const isPublic = meta?.visibility === ApiResourceVisibility.visibility_public;
|
|
69
|
+
return (_jsxs("div", { className: "flex items-start gap-3", children: [spec?.iconUrl ? (_jsx("img", { src: spec.iconUrl, alt: "", className: "mt-0.5 size-8 shrink-0 rounded object-cover" })) : (_jsx(McpServerIcon, { className: "mt-1 size-6 shrink-0 text-muted-foreground" })), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("h2", { className: "truncate text-lg font-semibold text-foreground", children: displayName }), onVisibilityChange && meta ? (_jsx(VisibilityToggle, { visibility: meta.visibility, onVisibilityChange: onVisibilityChange, isPending: isVisibilityPending })) : (isPublic && (_jsx("span", { className: "shrink-0 rounded-full bg-muted px-2 py-0.5 text-[10px] font-medium text-muted-foreground", children: "Public" })))] }), _jsxs("div", { className: "mt-0.5 flex flex-wrap items-center gap-x-1.5 text-xs text-muted-foreground", children: [meta?.org && _jsx("span", { children: meta.org }), status && (_jsx(ValidationStateBadge, { state: status.validationState })), lastDiscoveredAt && (_jsxs(_Fragment, { children: [_jsx(Dot, {}), _jsxs("span", { children: ["Discovered ", formatDate(lastDiscoveredAt)] })] })), createdAt && (_jsxs(_Fragment, { children: [_jsx(Dot, {}), _jsxs("span", { children: ["Created ", formatDate(createdAt)] })] })), updatedAt && (_jsxs(_Fragment, { children: [_jsx(Dot, {}), _jsxs("span", { children: ["Updated ", formatDate(updatedAt)] })] }))] }), spec?.description && (_jsx("p", { className: "mt-2 text-sm text-muted-foreground", children: spec.description }))] })] }));
|
|
70
|
+
}
|
|
71
|
+
function ValidationStateBadge({ state, }) {
|
|
72
|
+
switch (state) {
|
|
73
|
+
case ValidationState.valid:
|
|
74
|
+
return (_jsxs(_Fragment, { children: [_jsx(Dot, {}), _jsxs("span", { className: "inline-flex items-center gap-1 text-emerald-600 dark:text-emerald-400", children: [_jsx(CheckIcon, { className: "size-3" }), "Valid"] })] }));
|
|
75
|
+
case ValidationState.invalid:
|
|
76
|
+
return (_jsxs(_Fragment, { children: [_jsx(Dot, {}), _jsx("span", { className: "text-destructive", children: "Invalid" })] }));
|
|
77
|
+
default:
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
function ServerConfigSection({ serverType, }) {
|
|
82
|
+
return (_jsx(Section, { title: "Server Configuration", children: _jsxs("div", { className: "flex flex-col gap-2 p-3", children: [_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-xs font-medium text-muted-foreground", children: "Type" }), _jsx("span", { className: "rounded bg-muted px-1.5 py-0.5 font-mono text-xs font-medium text-foreground", children: serverType.case })] }), serverType.case === "stdio" && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-xs font-medium text-muted-foreground", children: "Command" }), _jsxs("code", { className: "font-mono text-sm text-foreground", children: [serverType.value.command, serverType.value.args.length > 0 &&
|
|
83
|
+
` ${serverType.value.args.join(" ")}`] })] }), serverType.value.workingDir && (_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-xs font-medium text-muted-foreground", children: "Working Dir" }), _jsx("code", { className: "font-mono text-xs text-foreground", children: serverType.value.workingDir })] }))] })), serverType.case === "http" && (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-xs font-medium text-muted-foreground", children: "URL" }), _jsx("code", { className: "break-all font-mono text-sm text-foreground", children: serverType.value.url })] }), serverType.value.timeoutSeconds > 0 && (_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-xs font-medium text-muted-foreground", children: "Timeout" }), _jsxs("span", { className: "text-xs text-foreground", children: [serverType.value.timeoutSeconds, "s"] })] }))] }))] }) }));
|
|
84
|
+
}
|
|
85
|
+
function ToolsSection({ tools, }) {
|
|
86
|
+
return (_jsx(Section, { title: `Tools (${tools.length})`, children: _jsx("div", { className: "flex flex-col divide-y divide-border", children: tools.map((tool) => (_jsxs("div", { className: "px-3 py-2.5", children: [_jsx("code", { className: "font-mono text-sm font-medium text-foreground", children: tool.name }), tool.description && (_jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: tool.description }))] }, tool.name))) }) }));
|
|
87
|
+
}
|
|
88
|
+
function ResourceTemplatesSection({ templates, }) {
|
|
89
|
+
return (_jsx(Section, { title: `Resource Templates (${templates.length})`, children: _jsx("div", { className: "flex flex-col divide-y divide-border", children: templates.map((tpl) => (_jsxs("div", { className: "px-3 py-2.5", children: [_jsxs("div", { className: "flex items-baseline gap-2", children: [_jsx("span", { className: "text-sm font-medium text-foreground", children: tpl.name }), _jsx("code", { className: "font-mono text-[10px] text-muted-foreground", children: tpl.uriTemplate })] }), tpl.description && (_jsx("p", { className: "mt-0.5 text-xs text-muted-foreground", children: tpl.description }))] }, tpl.uriTemplate || tpl.name))) }) }));
|
|
90
|
+
}
|
|
91
|
+
function EnvSpecSection({ data, }) {
|
|
92
|
+
const entries = Object.entries(data).sort(([a], [b]) => a.localeCompare(b));
|
|
93
|
+
return (_jsx(Section, { title: `Environment Variables (${entries.length})`, children: _jsx("div", { className: "flex flex-col divide-y divide-border", children: entries.map(([name, env]) => (_jsxs("div", { className: "flex items-start gap-3 px-3 py-2", children: [_jsx("code", { className: "shrink-0 font-mono text-sm font-medium text-foreground", children: name }), _jsx("span", { className: "shrink-0 rounded bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground", children: env.isSecret ? "secret" : "config" }), env.description && (_jsx("span", { className: "text-xs text-muted-foreground", children: env.description }))] }, name))) }) }));
|
|
94
|
+
}
|
|
95
|
+
function TagsSection({ tags }) {
|
|
96
|
+
return (_jsx(Section, { title: `Tags (${tags.length})`, children: _jsx("div", { className: "flex flex-wrap gap-1.5 p-3", children: tags.map((tag) => (_jsx("span", { className: "rounded-full bg-muted px-2.5 py-0.5 text-xs font-medium text-muted-foreground", children: tag }, tag))) }) }));
|
|
97
|
+
}
|
|
98
|
+
// ---------------------------------------------------------------------------
|
|
99
|
+
// Shared layout primitives
|
|
100
|
+
// ---------------------------------------------------------------------------
|
|
101
|
+
function Section({ title, children, }) {
|
|
102
|
+
return (_jsxs("section", { children: [_jsx("h3", { className: "mb-2 text-xs font-medium uppercase tracking-wider text-muted-foreground", children: title }), _jsx("div", { className: "overflow-hidden rounded-lg border border-border", children: children })] }));
|
|
103
|
+
}
|
|
104
|
+
function Dot() {
|
|
105
|
+
return (_jsx("span", { className: "shrink-0", "aria-hidden": "true", children: "\u00B7" }));
|
|
106
|
+
}
|
|
107
|
+
// ---------------------------------------------------------------------------
|
|
108
|
+
// Non-happy states
|
|
109
|
+
// ---------------------------------------------------------------------------
|
|
110
|
+
function LoadingSkeleton({ className }) {
|
|
111
|
+
return (_jsxs("div", { className: cn("flex flex-col gap-6", className), "aria-busy": "true", "aria-label": "Loading MCP server details", children: [_jsxs("div", { className: "flex items-start gap-3", children: [_jsx("div", { className: "mt-1 size-6 shrink-0 animate-pulse rounded bg-muted" }), _jsxs("div", { className: "flex-1 space-y-2", children: [_jsx("div", { className: "h-5 w-48 animate-pulse rounded bg-muted" }), _jsx("div", { className: "h-3 w-64 animate-pulse rounded bg-muted" }), _jsx("div", { className: "h-4 w-full max-w-md animate-pulse rounded bg-muted" })] })] }), [24, 48, 16, 12].map((h, i) => (_jsxs("div", { className: "space-y-2", children: [_jsx("div", { className: "h-3 w-28 animate-pulse rounded bg-muted" }), _jsx("div", { className: "animate-pulse rounded-lg border border-border bg-muted/30", style: { height: `${h * 4}px` } })] }, i)))] }));
|
|
112
|
+
}
|
|
113
|
+
function NotFoundState({ className }) {
|
|
114
|
+
return (_jsxs("div", { role: "status", className: cn("flex flex-col items-center gap-2 py-12 text-center", className), children: [_jsx(McpServerIcon, { className: "size-10 text-muted-foreground/40" }), _jsx("p", { className: "text-sm font-medium text-muted-foreground", children: "MCP Server not found" }), _jsx("p", { className: "text-xs text-muted-foreground/60", children: "This MCP server doesn't exist or you don't have access to it." })] }));
|
|
115
|
+
}
|
|
116
|
+
// ---------------------------------------------------------------------------
|
|
117
|
+
// Utilities
|
|
118
|
+
// ---------------------------------------------------------------------------
|
|
119
|
+
function formatDate(date) {
|
|
120
|
+
return date.toLocaleDateString("en-US", {
|
|
121
|
+
month: "short",
|
|
122
|
+
day: "numeric",
|
|
123
|
+
year: "numeric",
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
// ---------------------------------------------------------------------------
|
|
127
|
+
// Icons — inline SVGs following the SDK pattern (no icon library dependency)
|
|
128
|
+
// ---------------------------------------------------------------------------
|
|
129
|
+
function McpServerIcon({ className }) {
|
|
130
|
+
return (_jsxs("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("rect", { x: "2", y: "2", width: "12", height: "5", rx: "1" }), _jsx("rect", { x: "2", y: "9", width: "12", height: "5", rx: "1" }), _jsx("circle", { cx: "5", cy: "4.5", r: "0.75", fill: "currentColor", stroke: "none" }), _jsx("circle", { cx: "5", cy: "11.5", r: "0.75", fill: "currentColor", stroke: "none" })] }));
|
|
131
|
+
}
|
|
132
|
+
function CheckIcon({ className }) {
|
|
133
|
+
return (_jsx("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: _jsx("path", { d: "m3 8.5 3.5 3.5 6.5-8" }) }));
|
|
134
|
+
}
|
|
135
|
+
function WarningIcon({ className }) {
|
|
136
|
+
return (_jsxs("svg", { className: className, viewBox: "0 0 16 16", fill: "none", stroke: "currentColor", strokeWidth: "1.5", strokeLinecap: "round", strokeLinejoin: "round", "aria-hidden": "true", children: [_jsx("path", { d: "M8 1.5 1 14h14L8 1.5Z" }), _jsx("path", { d: "M8 6v3.5" }), _jsx("circle", { cx: "8", cy: "11.5", r: "0.5", fill: "currentColor", stroke: "none" })] }));
|
|
137
|
+
}
|
|
138
|
+
//# sourceMappingURL=McpServerDetailView.js.map
|