@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,22 @@
|
|
|
1
|
+
export interface UseScrollShadowsReturn {
|
|
2
|
+
/** Attach to the scrollable container element. */
|
|
3
|
+
readonly scrollRef: React.RefObject<HTMLDivElement | null>;
|
|
4
|
+
/** `true` when the container has hidden content above the visible area. */
|
|
5
|
+
readonly canScrollUp: boolean;
|
|
6
|
+
/** `true` when the container has hidden content below the visible area. */
|
|
7
|
+
readonly canScrollDown: boolean;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Tracks whether a scrollable container can scroll up, down, or both.
|
|
11
|
+
*
|
|
12
|
+
* Attaches a passive `scroll` listener and a `ResizeObserver` to the
|
|
13
|
+
* referenced element so the returned booleans stay in sync with both
|
|
14
|
+
* user scrolling and content-size changes (e.g., new items appended).
|
|
15
|
+
*
|
|
16
|
+
* Pair with {@link ScrollFade} to render gradient overlays that signal
|
|
17
|
+
* hidden content above or below.
|
|
18
|
+
*
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
export declare function useScrollShadows(): UseScrollShadowsReturn;
|
|
22
|
+
//# sourceMappingURL=useScrollShadows.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollShadows.d.ts","sourceRoot":"","sources":["../../src/internal/useScrollShadows.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,sBAAsB;IACrC,kDAAkD;IAClD,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3D,2EAA2E;IAC3E,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,2EAA2E;IAC3E,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,IAAI,sBAAsB,CA8BzD"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* Tracks whether a scrollable container can scroll up, down, or both.
|
|
4
|
+
*
|
|
5
|
+
* Attaches a passive `scroll` listener and a `ResizeObserver` to the
|
|
6
|
+
* referenced element so the returned booleans stay in sync with both
|
|
7
|
+
* user scrolling and content-size changes (e.g., new items appended).
|
|
8
|
+
*
|
|
9
|
+
* Pair with {@link ScrollFade} to render gradient overlays that signal
|
|
10
|
+
* hidden content above or below.
|
|
11
|
+
*
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export function useScrollShadows() {
|
|
15
|
+
const scrollRef = useRef(null);
|
|
16
|
+
const [canScrollUp, setCanScrollUp] = useState(false);
|
|
17
|
+
const [canScrollDown, setCanScrollDown] = useState(false);
|
|
18
|
+
const update = useCallback(() => {
|
|
19
|
+
const el = scrollRef.current;
|
|
20
|
+
if (!el)
|
|
21
|
+
return;
|
|
22
|
+
setCanScrollUp(el.scrollTop > 0);
|
|
23
|
+
setCanScrollDown(el.scrollTop + el.clientHeight < el.scrollHeight - 1);
|
|
24
|
+
}, []);
|
|
25
|
+
useEffect(() => {
|
|
26
|
+
const el = scrollRef.current;
|
|
27
|
+
if (!el)
|
|
28
|
+
return;
|
|
29
|
+
el.addEventListener("scroll", update, { passive: true });
|
|
30
|
+
const ro = new ResizeObserver(update);
|
|
31
|
+
ro.observe(el);
|
|
32
|
+
update();
|
|
33
|
+
return () => {
|
|
34
|
+
el.removeEventListener("scroll", update);
|
|
35
|
+
ro.disconnect();
|
|
36
|
+
};
|
|
37
|
+
}, [update]);
|
|
38
|
+
return { scrollRef, canScrollUp, canScrollDown };
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=useScrollShadows.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useScrollShadows.js","sourceRoot":"","sources":["../../src/internal/useScrollShadows.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAWjE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB;IAC9B,MAAM,SAAS,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE;QAC9B,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,cAAc,CAAC,EAAE,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;QACjC,gBAAgB,CAAC,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,YAAY,GAAG,EAAE,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;IACzE,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;QAC7B,IAAI,CAAC,EAAE;YAAE,OAAO;QAEhB,EAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAEzD,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACtC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAEf,MAAM,EAAE,CAAC;QAET,OAAO,GAAG,EAAE;YACV,EAAE,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzC,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
export interface ResourceCountCardProps {
|
|
2
|
+
/**
|
|
3
|
+
* Icon element rendered at the top of the card. Sized by the consumer.
|
|
4
|
+
*
|
|
5
|
+
* Should be marked `aria-hidden="true"` when purely decorative
|
|
6
|
+
* (typical for resource type icons alongside a text label).
|
|
7
|
+
*/
|
|
8
|
+
readonly icon: React.ReactNode;
|
|
9
|
+
/** Display label — e.g. "Agents", "Skills", "MCP Servers". */
|
|
10
|
+
readonly label: string;
|
|
11
|
+
/**
|
|
12
|
+
* Resource count to display. When `undefined` and `isLoading` is
|
|
13
|
+
* true, a skeleton placeholder renders in its place. When `undefined`
|
|
14
|
+
* and `isLoading` is false, an em-dash is shown as a neutral
|
|
15
|
+
* placeholder.
|
|
16
|
+
*
|
|
17
|
+
* When a count is already available and `isLoading` becomes true
|
|
18
|
+
* again (refresh scenario), the existing count remains visible —
|
|
19
|
+
* no skeleton flash.
|
|
20
|
+
*/
|
|
21
|
+
readonly count?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Whether the count is being fetched. Shows a skeleton pulse when
|
|
24
|
+
* `count` is not yet available.
|
|
25
|
+
*/
|
|
26
|
+
readonly isLoading?: boolean;
|
|
27
|
+
/**
|
|
28
|
+
* URL for the card. When provided, the card renders as an `<a>`
|
|
29
|
+
* element for accessible navigation (right-click, open in new tab,
|
|
30
|
+
* browser status bar URL preview).
|
|
31
|
+
*
|
|
32
|
+
* For SPA routing, combine with `onClick` and call `preventDefault`:
|
|
33
|
+
*
|
|
34
|
+
* ```tsx
|
|
35
|
+
* <ResourceCountCard
|
|
36
|
+
* href="/library/agents"
|
|
37
|
+
* onClick={(e) => { e.preventDefault(); router.push("/library/agents"); }}
|
|
38
|
+
* // ...
|
|
39
|
+
* />
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
readonly href?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Click handler. When `href` is also provided, the card renders as
|
|
45
|
+
* `<a>` — call `e.preventDefault()` for SPA navigation. When only
|
|
46
|
+
* `onClick` is provided without `href`, the card renders as
|
|
47
|
+
* `<button>`.
|
|
48
|
+
*/
|
|
49
|
+
readonly onClick?: (e: React.MouseEvent) => void;
|
|
50
|
+
/** Additional CSS classes for the root element. */
|
|
51
|
+
readonly className?: string;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Card displaying a resource type icon, count, and label — designed
|
|
55
|
+
* for Library landing pages and resource dashboards.
|
|
56
|
+
*
|
|
57
|
+
* Purely presentational: the consumer provides the count (typically
|
|
58
|
+
* from {@link useAgentCount}, {@link useSkillCount}, or
|
|
59
|
+
* {@link useMcpServerCount}) and the card handles rendering, loading
|
|
60
|
+
* skeletons, and accessible navigation semantics.
|
|
61
|
+
*
|
|
62
|
+
* The root element adapts to the provided props:
|
|
63
|
+
*
|
|
64
|
+
* - `href` → `<a>` (link: right-click, open in new tab, Enter to follow)
|
|
65
|
+
* - `onClick` only → `<button>` (action: Enter/Space to activate)
|
|
66
|
+
* - Neither → `<div>` (static display)
|
|
67
|
+
*
|
|
68
|
+
* All visual properties flow through `--stgm-*` tokens.
|
|
69
|
+
*
|
|
70
|
+
* @example
|
|
71
|
+
* ```tsx
|
|
72
|
+
* // Static display
|
|
73
|
+
* const { count, isLoading } = useAgentCount("acme");
|
|
74
|
+
*
|
|
75
|
+
* <ResourceCountCard
|
|
76
|
+
* icon={<BotIcon className="h-5 w-5" aria-hidden="true" />}
|
|
77
|
+
* label="Agents"
|
|
78
|
+
* count={count}
|
|
79
|
+
* isLoading={isLoading}
|
|
80
|
+
* />
|
|
81
|
+
* ```
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```tsx
|
|
85
|
+
* // Navigable card with SPA routing
|
|
86
|
+
* <ResourceCountCard
|
|
87
|
+
* icon={<BotIcon className="h-5 w-5" aria-hidden="true" />}
|
|
88
|
+
* label="Agents"
|
|
89
|
+
* count={agentCount}
|
|
90
|
+
* isLoading={isAgentLoading}
|
|
91
|
+
* href="/library/agents"
|
|
92
|
+
* onClick={(e) => {
|
|
93
|
+
* e.preventDefault();
|
|
94
|
+
* router.push("/library/agents");
|
|
95
|
+
* }}
|
|
96
|
+
* />
|
|
97
|
+
* ```
|
|
98
|
+
*
|
|
99
|
+
* @see {@link useAgentCount} — data hook for agent count
|
|
100
|
+
* @see {@link useSkillCount} — data hook for skill count
|
|
101
|
+
* @see {@link useMcpServerCount} — data hook for MCP server count
|
|
102
|
+
*/
|
|
103
|
+
export declare function ResourceCountCard({ icon, label, count, isLoading, href, onClick, className, }: ResourceCountCardProps): import("react/jsx-runtime").JSX.Element;
|
|
104
|
+
//# sourceMappingURL=ResourceCountCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceCountCard.d.ts","sourceRoot":"","sources":["../../src/library/ResourceCountCard.tsx"],"names":[],"mappings":"AAIA,MAAM,WAAW,sBAAsB;IACrC;;;;;OAKG;IACH,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IAC/B,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB;;;;;;;;;OASG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B;;;;;;;;;;;;;;OAcG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IACjD,mDAAmD;IACnD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,KAAK,EACL,KAAK,EACL,SAAiB,EACjB,IAAI,EACJ,OAAO,EACP,SAAS,GACV,EAAE,sBAAsB,2CAyDxB"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { cn } from "@stigmer/theme";
|
|
4
|
+
/**
|
|
5
|
+
* Card displaying a resource type icon, count, and label — designed
|
|
6
|
+
* for Library landing pages and resource dashboards.
|
|
7
|
+
*
|
|
8
|
+
* Purely presentational: the consumer provides the count (typically
|
|
9
|
+
* from {@link useAgentCount}, {@link useSkillCount}, or
|
|
10
|
+
* {@link useMcpServerCount}) and the card handles rendering, loading
|
|
11
|
+
* skeletons, and accessible navigation semantics.
|
|
12
|
+
*
|
|
13
|
+
* The root element adapts to the provided props:
|
|
14
|
+
*
|
|
15
|
+
* - `href` → `<a>` (link: right-click, open in new tab, Enter to follow)
|
|
16
|
+
* - `onClick` only → `<button>` (action: Enter/Space to activate)
|
|
17
|
+
* - Neither → `<div>` (static display)
|
|
18
|
+
*
|
|
19
|
+
* All visual properties flow through `--stgm-*` tokens.
|
|
20
|
+
*
|
|
21
|
+
* @example
|
|
22
|
+
* ```tsx
|
|
23
|
+
* // Static display
|
|
24
|
+
* const { count, isLoading } = useAgentCount("acme");
|
|
25
|
+
*
|
|
26
|
+
* <ResourceCountCard
|
|
27
|
+
* icon={<BotIcon className="h-5 w-5" aria-hidden="true" />}
|
|
28
|
+
* label="Agents"
|
|
29
|
+
* count={count}
|
|
30
|
+
* isLoading={isLoading}
|
|
31
|
+
* />
|
|
32
|
+
* ```
|
|
33
|
+
*
|
|
34
|
+
* @example
|
|
35
|
+
* ```tsx
|
|
36
|
+
* // Navigable card with SPA routing
|
|
37
|
+
* <ResourceCountCard
|
|
38
|
+
* icon={<BotIcon className="h-5 w-5" aria-hidden="true" />}
|
|
39
|
+
* label="Agents"
|
|
40
|
+
* count={agentCount}
|
|
41
|
+
* isLoading={isAgentLoading}
|
|
42
|
+
* href="/library/agents"
|
|
43
|
+
* onClick={(e) => {
|
|
44
|
+
* e.preventDefault();
|
|
45
|
+
* router.push("/library/agents");
|
|
46
|
+
* }}
|
|
47
|
+
* />
|
|
48
|
+
* ```
|
|
49
|
+
*
|
|
50
|
+
* @see {@link useAgentCount} — data hook for agent count
|
|
51
|
+
* @see {@link useSkillCount} — data hook for skill count
|
|
52
|
+
* @see {@link useMcpServerCount} — data hook for MCP server count
|
|
53
|
+
*/
|
|
54
|
+
export function ResourceCountCard({ icon, label, count, isLoading = false, href, onClick, className, }) {
|
|
55
|
+
const isInteractive = !!href || !!onClick;
|
|
56
|
+
const showSkeleton = isLoading && count === undefined;
|
|
57
|
+
const rootClasses = cn("flex flex-col rounded-lg border border-border bg-card p-4 text-left no-underline", isInteractive && [
|
|
58
|
+
"cursor-pointer transition-colors hover:bg-accent/50",
|
|
59
|
+
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
60
|
+
], className);
|
|
61
|
+
const content = (_jsxs(_Fragment, { children: [_jsx("div", { className: "text-muted-foreground", children: icon }), showSkeleton ? (_jsx("div", { className: "mt-3 h-7 w-12 animate-pulse rounded bg-muted", "aria-hidden": "true" })) : (_jsx("div", { className: "mt-3 text-2xl font-semibold tabular-nums text-foreground", children: count !== undefined ? count.toLocaleString() : "\u2014" })), _jsx("div", { className: "mt-1 text-sm text-muted-foreground", children: label })] }));
|
|
62
|
+
if (href) {
|
|
63
|
+
return (_jsx("a", { href: href, onClick: onClick, "aria-label": buildAriaLabel(label, count, isLoading), className: rootClasses, children: content }));
|
|
64
|
+
}
|
|
65
|
+
if (onClick) {
|
|
66
|
+
return (_jsx("button", { type: "button", onClick: onClick, "aria-label": buildAriaLabel(label, count, isLoading), className: rootClasses, children: content }));
|
|
67
|
+
}
|
|
68
|
+
return _jsx("div", { className: rootClasses, children: content });
|
|
69
|
+
}
|
|
70
|
+
// ---------------------------------------------------------------------------
|
|
71
|
+
// Utilities
|
|
72
|
+
// ---------------------------------------------------------------------------
|
|
73
|
+
function buildAriaLabel(label, count, isLoading) {
|
|
74
|
+
if (count !== undefined)
|
|
75
|
+
return `${label}: ${count.toLocaleString()}`;
|
|
76
|
+
if (isLoading)
|
|
77
|
+
return `${label}: loading`;
|
|
78
|
+
return label;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=ResourceCountCard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceCountCard.js","sourceRoot":"","sources":["../../src/library/ResourceCountCard.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAuDpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAChC,IAAI,EACJ,KAAK,EACL,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,IAAI,EACJ,OAAO,EACP,SAAS,GACc;IACvB,MAAM,aAAa,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC;IAC1C,MAAM,YAAY,GAAG,SAAS,IAAI,KAAK,KAAK,SAAS,CAAC;IAEtD,MAAM,WAAW,GAAG,EAAE,CACpB,kFAAkF,EAClF,aAAa,IAAI;QACf,qDAAqD;QACrD,yEAAyE;KAC1E,EACD,SAAS,CACV,CAAC;IAEF,MAAM,OAAO,GAAG,CACd,8BACE,cAAK,SAAS,EAAC,uBAAuB,YAAE,IAAI,GAAO,EAClD,YAAY,CAAC,CAAC,CAAC,CACd,cACE,SAAS,EAAC,8CAA8C,iBAC5C,MAAM,GAClB,CACH,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,0DAA0D,YACtE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,QAAQ,GACpD,CACP,EACD,cAAK,SAAS,EAAC,oCAAoC,YAAE,KAAK,GAAO,IAChE,CACJ,CAAC;IAEF,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CACL,YACE,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,gBACJ,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EACnD,SAAS,EAAE,WAAW,YAErB,OAAO,GACN,CACL,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,gBACJ,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EACnD,SAAS,EAAE,WAAW,YAErB,OAAO,GACD,CACV,CAAC;IACJ,CAAC;IAED,OAAO,cAAK,SAAS,EAAE,WAAW,YAAG,OAAO,GAAO,CAAC;AACtD,CAAC;AAED,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,cAAc,CACrB,KAAa,EACb,KAAyB,EACzB,SAAkB;IAElB,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,GAAG,KAAK,KAAK,KAAK,CAAC,cAAc,EAAE,EAAE,CAAC;IACtE,IAAI,SAAS;QAAE,OAAO,GAAG,KAAK,WAAW,CAAC;IAC1C,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import type { SearchResult } from "@stigmer/protos/ai/stigmer/search/v1/io_pb";
|
|
2
|
+
import type { ResourceListScope } from "../search";
|
|
3
|
+
export interface ResourceListViewProps {
|
|
4
|
+
/** Resource entries to display. */
|
|
5
|
+
readonly items: readonly SearchResult[];
|
|
6
|
+
/** Whether data is currently being fetched. */
|
|
7
|
+
readonly isLoading: boolean;
|
|
8
|
+
/** Error message from the data hook. Shown as an alert when present and not loading. */
|
|
9
|
+
readonly error?: string | null;
|
|
10
|
+
/** Total number of results across all pages. Shown in the pagination bar when provided. */
|
|
11
|
+
readonly totalCount?: number;
|
|
12
|
+
/** Total number of pages available. Enables pagination controls when greater than 1. */
|
|
13
|
+
readonly totalPages?: number;
|
|
14
|
+
/** Current page number (1-indexed). */
|
|
15
|
+
readonly currentPage?: number;
|
|
16
|
+
/**
|
|
17
|
+
* Called with the debounced search query (300ms delay) when the user types.
|
|
18
|
+
* Providing this prop enables the search input in the toolbar.
|
|
19
|
+
*
|
|
20
|
+
* The component manages the raw input value internally and only calls
|
|
21
|
+
* this handler with the debounced value, so the parent does not need
|
|
22
|
+
* to implement debouncing.
|
|
23
|
+
*/
|
|
24
|
+
readonly onSearchChange?: (query: string) => void;
|
|
25
|
+
/** Placeholder text for the search input. @default "Search\u2026" */
|
|
26
|
+
readonly searchPlaceholder?: string;
|
|
27
|
+
/** Initial value for the search input, read only on mount (e.g. from URL params). */
|
|
28
|
+
readonly initialSearch?: string;
|
|
29
|
+
/**
|
|
30
|
+
* The currently active resource scope.
|
|
31
|
+
* Providing both `scope` and `onScopeChange` enables the ScopeToggle
|
|
32
|
+
* in the toolbar.
|
|
33
|
+
*/
|
|
34
|
+
readonly scope?: ResourceListScope;
|
|
35
|
+
/** Called when the user toggles the scope. Also resets the page to 1 via `onPageChange`. */
|
|
36
|
+
readonly onScopeChange?: (scope: ResourceListScope) => void;
|
|
37
|
+
/**
|
|
38
|
+
* Called when the user navigates to a different page.
|
|
39
|
+
* Pagination controls appear when this is provided and `totalPages > 1`.
|
|
40
|
+
* Also called with `1` automatically when the search query or scope changes.
|
|
41
|
+
*/
|
|
42
|
+
readonly onPageChange?: (page: number) => void;
|
|
43
|
+
/**
|
|
44
|
+
* Custom renderer for list items. Receives the `SearchResult` and its
|
|
45
|
+
* index. Falls back to a built-in row showing name, org, description,
|
|
46
|
+
* visibility badge, and tags.
|
|
47
|
+
*/
|
|
48
|
+
readonly renderItem?: (item: SearchResult, index: number) => React.ReactNode;
|
|
49
|
+
/**
|
|
50
|
+
* Called when a list item is clicked or activated via keyboard (Enter/Space).
|
|
51
|
+
* Providing this makes items interactive with hover/focus styles and
|
|
52
|
+
* keyboard navigation (Arrow Up/Down).
|
|
53
|
+
*/
|
|
54
|
+
readonly onItemClick?: (item: SearchResult) => void;
|
|
55
|
+
/** Icon element rendered in the empty state. */
|
|
56
|
+
readonly emptyIcon?: React.ReactNode;
|
|
57
|
+
/** Title for the empty state. @default "No resources found" */
|
|
58
|
+
readonly emptyTitle?: string;
|
|
59
|
+
/** Description for the empty state. @default "Try adjusting your search or scope." */
|
|
60
|
+
readonly emptyDescription?: string;
|
|
61
|
+
/** Called when the user clicks "Retry" after an error. */
|
|
62
|
+
readonly onRetry?: () => void;
|
|
63
|
+
/** Additional CSS classes for the root container. */
|
|
64
|
+
readonly className?: string;
|
|
65
|
+
/** Accessible label for the list region. @default "Resource list" */
|
|
66
|
+
readonly "aria-label"?: string;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Paginated, searchable list view for browsing Stigmer resources.
|
|
70
|
+
*
|
|
71
|
+
* Renders the standard Library list chrome: a toolbar with optional
|
|
72
|
+
* search input and scope toggle, a list of resource rows with
|
|
73
|
+
* loading/error/empty states, and optional pagination controls.
|
|
74
|
+
*
|
|
75
|
+
* The component is controlled — the parent owns data and filter state.
|
|
76
|
+
* Search debouncing (300ms) is managed internally so the parent only
|
|
77
|
+
* receives debounced query values via {@link ResourceListViewProps.onSearchChange}.
|
|
78
|
+
*
|
|
79
|
+
* Only `items` and `isLoading` are required. Search, scope toggle,
|
|
80
|
+
* pagination, and custom row rendering activate progressively when
|
|
81
|
+
* their corresponding props are provided.
|
|
82
|
+
*
|
|
83
|
+
* When the debounced search query or scope changes, the component
|
|
84
|
+
* automatically resets the page to 1 via `onPageChange` to prevent
|
|
85
|
+
* stale pagination after filter changes.
|
|
86
|
+
*
|
|
87
|
+
* @example
|
|
88
|
+
* ```tsx
|
|
89
|
+
* // Minimal — plain list with loading indicator
|
|
90
|
+
* <ResourceListView items={agents} isLoading={isLoading} />
|
|
91
|
+
* ```
|
|
92
|
+
*
|
|
93
|
+
* @example
|
|
94
|
+
* ```tsx
|
|
95
|
+
* // Full — search, scope toggle, pagination, and click handling
|
|
96
|
+
* const [scope, setScope] = useState<ResourceListScope>("org");
|
|
97
|
+
* const [query, setQuery] = useState("");
|
|
98
|
+
* const [page, setPage] = useState(1);
|
|
99
|
+
* const { agents, totalCount, totalPages, isLoading, error, refetch } =
|
|
100
|
+
* useAgentList(org, { query, scope, page });
|
|
101
|
+
*
|
|
102
|
+
* <ResourceListView
|
|
103
|
+
* items={agents}
|
|
104
|
+
* isLoading={isLoading}
|
|
105
|
+
* error={error}
|
|
106
|
+
* totalCount={totalCount}
|
|
107
|
+
* totalPages={totalPages}
|
|
108
|
+
* currentPage={page}
|
|
109
|
+
* onSearchChange={setQuery}
|
|
110
|
+
* searchPlaceholder="Search agents\u2026"
|
|
111
|
+
* scope={scope}
|
|
112
|
+
* onScopeChange={setScope}
|
|
113
|
+
* onPageChange={setPage}
|
|
114
|
+
* onItemClick={(item) => console.log(item.slug)}
|
|
115
|
+
* onRetry={refetch}
|
|
116
|
+
* />
|
|
117
|
+
* ```
|
|
118
|
+
*
|
|
119
|
+
* @see {@link useAgentList}, {@link useSkillList}, {@link useMcpServerList}
|
|
120
|
+
* @see {@link ScopeToggle} for the scope toggle used in the toolbar
|
|
121
|
+
*/
|
|
122
|
+
export declare function ResourceListView({ items, isLoading, error, totalCount, totalPages, currentPage, onSearchChange, searchPlaceholder, initialSearch, scope, onScopeChange, onPageChange, renderItem, onItemClick, emptyIcon, emptyTitle, emptyDescription, onRetry, className, "aria-label": ariaLabel, }: ResourceListViewProps): import("react/jsx-runtime").JSX.Element;
|
|
123
|
+
//# sourceMappingURL=ResourceListView.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceListView.d.ts","sourceRoot":"","sources":["../../src/library/ResourceListView.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4CAA4C,CAAC;AAI/E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAMnD,MAAM,WAAW,qBAAqB;IACpC,mCAAmC;IACnC,QAAQ,CAAC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IACxC,+CAA+C;IAC/C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,wFAAwF;IACxF,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,2FAA2F;IAC3F,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,wFAAwF;IACxF,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,uCAAuC;IACvC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B;;;;;;;OAOG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClD,qEAAqE;IACrE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,qFAAqF;IACrF,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAChC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACnC,4FAA4F;IAC5F,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC5D;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/C;;;;OAIG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,KAAK,KAAK,CAAC,SAAS,CAAC;IAC7E;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;IACpD,gDAAgD;IAChD,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACrC,+DAA+D;IAC/D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,sFAAsF;IACtF,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,0DAA0D;IAC1D,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IAC9B,qDAAqD;IACrD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,KAAK,EACL,SAAS,EACT,KAAK,EACL,UAAU,EACV,UAAc,EACd,WAAe,EACf,cAAc,EACd,iBAAkC,EAClC,aAAkB,EAClB,KAAK,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAiC,EACjC,gBAAwD,EACxD,OAAO,EACP,SAAS,EACT,YAAY,EAAE,SAA2B,GAC1C,EAAE,qBAAqB,2CAwLvB"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
3
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
4
|
+
import { cn } from "@stigmer/theme";
|
|
5
|
+
import { ApiResourceKind } from "@stigmer/protos/ai/stigmer/commons/apiresource/apiresourcekind/api_resource_kind_pb";
|
|
6
|
+
import { ApiResourceVisibility } from "@stigmer/protos/ai/stigmer/commons/apiresource/enum_pb";
|
|
7
|
+
import { ScopeToggle } from "./ScopeToggle";
|
|
8
|
+
const DEBOUNCE_MS = 300;
|
|
9
|
+
const SKELETON_COUNT = 5;
|
|
10
|
+
const MAX_VISIBLE_TAGS = 3;
|
|
11
|
+
/**
|
|
12
|
+
* Paginated, searchable list view for browsing Stigmer resources.
|
|
13
|
+
*
|
|
14
|
+
* Renders the standard Library list chrome: a toolbar with optional
|
|
15
|
+
* search input and scope toggle, a list of resource rows with
|
|
16
|
+
* loading/error/empty states, and optional pagination controls.
|
|
17
|
+
*
|
|
18
|
+
* The component is controlled — the parent owns data and filter state.
|
|
19
|
+
* Search debouncing (300ms) is managed internally so the parent only
|
|
20
|
+
* receives debounced query values via {@link ResourceListViewProps.onSearchChange}.
|
|
21
|
+
*
|
|
22
|
+
* Only `items` and `isLoading` are required. Search, scope toggle,
|
|
23
|
+
* pagination, and custom row rendering activate progressively when
|
|
24
|
+
* their corresponding props are provided.
|
|
25
|
+
*
|
|
26
|
+
* When the debounced search query or scope changes, the component
|
|
27
|
+
* automatically resets the page to 1 via `onPageChange` to prevent
|
|
28
|
+
* stale pagination after filter changes.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```tsx
|
|
32
|
+
* // Minimal — plain list with loading indicator
|
|
33
|
+
* <ResourceListView items={agents} isLoading={isLoading} />
|
|
34
|
+
* ```
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```tsx
|
|
38
|
+
* // Full — search, scope toggle, pagination, and click handling
|
|
39
|
+
* const [scope, setScope] = useState<ResourceListScope>("org");
|
|
40
|
+
* const [query, setQuery] = useState("");
|
|
41
|
+
* const [page, setPage] = useState(1);
|
|
42
|
+
* const { agents, totalCount, totalPages, isLoading, error, refetch } =
|
|
43
|
+
* useAgentList(org, { query, scope, page });
|
|
44
|
+
*
|
|
45
|
+
* <ResourceListView
|
|
46
|
+
* items={agents}
|
|
47
|
+
* isLoading={isLoading}
|
|
48
|
+
* error={error}
|
|
49
|
+
* totalCount={totalCount}
|
|
50
|
+
* totalPages={totalPages}
|
|
51
|
+
* currentPage={page}
|
|
52
|
+
* onSearchChange={setQuery}
|
|
53
|
+
* searchPlaceholder="Search agents\u2026"
|
|
54
|
+
* scope={scope}
|
|
55
|
+
* onScopeChange={setScope}
|
|
56
|
+
* onPageChange={setPage}
|
|
57
|
+
* onItemClick={(item) => console.log(item.slug)}
|
|
58
|
+
* onRetry={refetch}
|
|
59
|
+
* />
|
|
60
|
+
* ```
|
|
61
|
+
*
|
|
62
|
+
* @see {@link useAgentList}, {@link useSkillList}, {@link useMcpServerList}
|
|
63
|
+
* @see {@link ScopeToggle} for the scope toggle used in the toolbar
|
|
64
|
+
*/
|
|
65
|
+
export function ResourceListView({ items, isLoading, error, totalCount, totalPages = 1, currentPage = 1, onSearchChange, searchPlaceholder = "Search\u2026", initialSearch = "", scope, onScopeChange, onPageChange, renderItem, onItemClick, emptyIcon, emptyTitle = "No resources found", emptyDescription = "Try adjusting your search or scope.", onRetry, className, "aria-label": ariaLabel = "Resource list", }) {
|
|
66
|
+
const showToolbar = !!onSearchChange || (scope !== undefined && !!onScopeChange);
|
|
67
|
+
const showPagination = !!onPageChange && totalPages > 1;
|
|
68
|
+
const isInteractive = !!onItemClick;
|
|
69
|
+
// --- Search debounce ------------------------------------------------
|
|
70
|
+
// The raw input value lives here; the parent only sees debounced values.
|
|
71
|
+
const [inputValue, setInputValue] = useState(initialSearch);
|
|
72
|
+
const isFirstRender = useRef(true);
|
|
73
|
+
// Stable callback refs so the debounce timer is not reset when
|
|
74
|
+
// the parent passes new callback identities on re-render.
|
|
75
|
+
const onSearchChangeRef = useRef(onSearchChange);
|
|
76
|
+
onSearchChangeRef.current = onSearchChange;
|
|
77
|
+
const onPageChangeRef = useRef(onPageChange);
|
|
78
|
+
onPageChangeRef.current = onPageChange;
|
|
79
|
+
useEffect(() => {
|
|
80
|
+
if (isFirstRender.current) {
|
|
81
|
+
isFirstRender.current = false;
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (!onSearchChangeRef.current)
|
|
85
|
+
return;
|
|
86
|
+
const timer = setTimeout(() => {
|
|
87
|
+
onSearchChangeRef.current?.(inputValue);
|
|
88
|
+
onPageChangeRef.current?.(1);
|
|
89
|
+
}, DEBOUNCE_MS);
|
|
90
|
+
return () => clearTimeout(timer);
|
|
91
|
+
}, [inputValue]);
|
|
92
|
+
// --- Scope change resets page ---------------------------------------
|
|
93
|
+
const handleScopeChange = useCallback((newScope) => {
|
|
94
|
+
onScopeChange?.(newScope);
|
|
95
|
+
onPageChange?.(1);
|
|
96
|
+
}, [onScopeChange, onPageChange]);
|
|
97
|
+
// --- Keyboard navigation for interactive items ----------------------
|
|
98
|
+
// Implements roving tabindex: only the focused item has tabIndex 0,
|
|
99
|
+
// all others have -1. Arrow Up/Down moves focus between rows.
|
|
100
|
+
const itemRefs = useRef([]);
|
|
101
|
+
const handleItemKeyDown = useCallback((e, index, item) => {
|
|
102
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
103
|
+
e.preventDefault();
|
|
104
|
+
onItemClick?.(item);
|
|
105
|
+
}
|
|
106
|
+
else if (e.key === "ArrowDown") {
|
|
107
|
+
e.preventDefault();
|
|
108
|
+
const next = Math.min(index + 1, items.length - 1);
|
|
109
|
+
if (next !== index) {
|
|
110
|
+
e.currentTarget.tabIndex = -1;
|
|
111
|
+
const el = itemRefs.current[next];
|
|
112
|
+
if (el) {
|
|
113
|
+
el.tabIndex = 0;
|
|
114
|
+
el.focus();
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
else if (e.key === "ArrowUp") {
|
|
119
|
+
e.preventDefault();
|
|
120
|
+
const prev = Math.max(index - 1, 0);
|
|
121
|
+
if (prev !== index) {
|
|
122
|
+
e.currentTarget.tabIndex = -1;
|
|
123
|
+
const el = itemRefs.current[prev];
|
|
124
|
+
if (el) {
|
|
125
|
+
el.tabIndex = 0;
|
|
126
|
+
el.focus();
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}, [onItemClick, items.length]);
|
|
131
|
+
// --- Content resolution ---------------------------------------------
|
|
132
|
+
const showSkeletons = isLoading && items.length === 0;
|
|
133
|
+
const showError = !!error && !isLoading;
|
|
134
|
+
const showEmpty = !isLoading && !error && items.length === 0;
|
|
135
|
+
const showItems = items.length > 0;
|
|
136
|
+
return (_jsxs("div", { className: cn("flex flex-col gap-3", className), children: [showToolbar && (_jsxs("div", { role: "search", className: "flex items-center gap-2", children: [onSearchChange && (_jsxs("div", { className: "relative flex-1", children: [_jsx(SearchIcon, { className: "pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground/60" }), _jsx("input", { type: "text", value: inputValue, onChange: (e) => setInputValue(e.target.value), placeholder: searchPlaceholder, "aria-label": searchPlaceholder, className: cn("w-full rounded-md border border-input bg-background py-1.5 pl-8 pr-3 text-sm", "placeholder:text-muted-foreground/60", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring") })] })), scope !== undefined && onScopeChange && (_jsx(ScopeToggle, { value: scope, onChange: handleScopeChange }))] })), showSkeletons && _jsx(SkeletonRows, {}), showError && _jsx(ErrorState, { message: error, onRetry: onRetry }), showEmpty && (_jsx(EmptyState, { icon: emptyIcon, title: emptyTitle, description: emptyDescription })), showItems && (_jsx("div", { role: "list", "aria-label": ariaLabel, "aria-busy": isLoading || undefined, className: cn("flex flex-col", isLoading &&
|
|
137
|
+
"pointer-events-none opacity-60 transition-opacity"), children: items.map((item, index) => {
|
|
138
|
+
const content = renderItem ? (renderItem(item, index)) : (_jsx(DefaultResourceRow, { item: item }));
|
|
139
|
+
return (_jsx("div", { role: "listitem", children: isInteractive ? (_jsx("div", { ref: (el) => {
|
|
140
|
+
itemRefs.current[index] = el;
|
|
141
|
+
}, role: "button", tabIndex: index === 0 ? 0 : -1, onClick: () => onItemClick(item), onKeyDown: (e) => handleItemKeyDown(e, index, item), className: cn("group rounded-lg px-3 py-2.5 transition-colors", "cursor-pointer hover:bg-accent/50", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring"), children: content })) : (_jsx("div", { className: "px-3 py-2.5", children: content })) }, item.id || `resource-${index}`));
|
|
142
|
+
}) })), showPagination && (_jsx(PaginationBar, { currentPage: currentPage, totalPages: totalPages, totalCount: totalCount, onPageChange: onPageChange }))] }));
|
|
143
|
+
}
|
|
144
|
+
// ---------------------------------------------------------------------------
|
|
145
|
+
// Internal components
|
|
146
|
+
// ---------------------------------------------------------------------------
|
|
147
|
+
function DefaultResourceRow({ item }) {
|
|
148
|
+
const displayName = item.name || item.slug;
|
|
149
|
+
return (_jsxs("div", { className: "flex items-start gap-3", children: [_jsx(KindIcon, { kind: item.kind }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("div", { className: "flex items-center gap-2", children: [_jsx("span", { className: "truncate text-sm font-medium text-foreground", children: displayName }), item.visibility === ApiResourceVisibility.visibility_public && (_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 items-start gap-1.5 text-xs text-muted-foreground", children: [_jsx("span", { className: "shrink-0", children: item.org }), item.description && (_jsxs(_Fragment, { children: [_jsx("span", { className: "shrink-0", "aria-hidden": "true", children: "\u00B7" }), _jsx("span", { className: "line-clamp-2 group-hover:line-clamp-none", children: item.description })] }))] }), item.tags.length > 0 && (_jsxs("div", { className: "mt-1.5 flex flex-wrap gap-1", children: [item.tags.slice(0, MAX_VISIBLE_TAGS).map((tag) => (_jsx("span", { className: "rounded bg-muted px-1.5 py-0.5 text-[10px] text-muted-foreground", children: tag }, tag))), item.tags.length > MAX_VISIBLE_TAGS && (_jsxs("span", { className: "text-[10px] text-muted-foreground/60", children: ["+", item.tags.length - MAX_VISIBLE_TAGS, " more"] }))] }))] })] }));
|
|
150
|
+
}
|
|
151
|
+
function KindIcon({ kind }) {
|
|
152
|
+
const cls = "mt-0.5 h-4 w-4 shrink-0 text-muted-foreground";
|
|
153
|
+
switch (kind) {
|
|
154
|
+
case ApiResourceKind.agent:
|
|
155
|
+
return _jsx(AgentIcon, { className: cls });
|
|
156
|
+
case ApiResourceKind.skill:
|
|
157
|
+
return _jsx(SkillIcon, { className: cls });
|
|
158
|
+
case ApiResourceKind.mcp_server:
|
|
159
|
+
return _jsx(McpServerIcon, { className: cls });
|
|
160
|
+
case ApiResourceKind.workflow:
|
|
161
|
+
return _jsx(WorkflowIcon, { className: cls });
|
|
162
|
+
default:
|
|
163
|
+
return _jsx(DocumentIcon, { className: cls });
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
function SkeletonRows() {
|
|
167
|
+
const widths = [36, 45, 30, 52, 40];
|
|
168
|
+
return (_jsx("div", { "aria-busy": "true", children: Array.from({ length: SKELETON_COUNT }, (_, i) => (_jsxs("div", { className: "flex items-start gap-3 px-3 py-2.5", "aria-hidden": "true", children: [_jsx("div", { className: "mt-0.5 h-4 w-4 shrink-0 animate-pulse rounded bg-muted" }), _jsxs("div", { className: "flex-1 space-y-2", children: [_jsx("div", { className: "h-4 animate-pulse rounded bg-muted", style: { width: `${widths[i]}%` } }), _jsx("div", { className: "h-3 animate-pulse rounded bg-muted", style: { width: `${widths[i] + 25}%` } })] })] }, i))) }));
|
|
169
|
+
}
|
|
170
|
+
function EmptyState({ icon, title, description, }) {
|
|
171
|
+
return (_jsxs("div", { role: "status", className: "flex flex-col items-center gap-2 py-8 text-center", children: [icon && _jsx("div", { className: "text-muted-foreground/40", children: icon }), _jsx("p", { className: "text-sm font-medium text-muted-foreground", children: title }), _jsx("p", { className: "text-xs text-muted-foreground/60", children: description })] }));
|
|
172
|
+
}
|
|
173
|
+
function ErrorState({ message, onRetry, }) {
|
|
174
|
+
return (_jsxs("div", { role: "alert", className: "flex flex-col items-center gap-2 py-8 text-center", children: [_jsx("p", { className: "text-sm text-destructive", children: message }), onRetry && (_jsx("button", { type: "button", onClick: onRetry, className: cn("inline-flex items-center rounded-md px-3 py-1.5 text-xs font-medium", "border border-input bg-background text-foreground", "hover:bg-accent hover:text-accent-foreground", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring"), children: "Retry" }))] }));
|
|
175
|
+
}
|
|
176
|
+
function PaginationBar({ currentPage, totalPages, totalCount, onPageChange, }) {
|
|
177
|
+
const navButtonClass = cn("inline-flex items-center rounded-md p-1.5", "border border-input bg-background text-foreground", "hover:bg-accent hover:text-accent-foreground", "focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring", "disabled:pointer-events-none disabled:opacity-50");
|
|
178
|
+
return (_jsxs("nav", { "aria-label": "Pagination", className: "flex items-center justify-between border-t border-border pt-3", children: [_jsx("span", { className: "text-xs text-muted-foreground", children: totalCount !== undefined &&
|
|
179
|
+
`${totalCount.toLocaleString()} ${totalCount === 1 ? "result" : "results"}` }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx("button", { type: "button", onClick: () => onPageChange(currentPage - 1), disabled: currentPage <= 1, "aria-label": "Previous page", className: navButtonClass, children: _jsx(ChevronLeftIcon, { className: "h-3.5 w-3.5" }) }), _jsxs("span", { className: "text-xs text-muted-foreground", children: ["Page ", currentPage, " of ", totalPages] }), _jsx("button", { type: "button", onClick: () => onPageChange(currentPage + 1), disabled: currentPage >= totalPages, "aria-label": "Next page", className: navButtonClass, children: _jsx(ChevronRightIcon, { className: "h-3.5 w-3.5" }) })] })] }));
|
|
180
|
+
}
|
|
181
|
+
// ---------------------------------------------------------------------------
|
|
182
|
+
// Icons — inline SVGs following the existing SDK pattern
|
|
183
|
+
// ---------------------------------------------------------------------------
|
|
184
|
+
function SearchIcon({ className }) {
|
|
185
|
+
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("circle", { cx: "6.5", cy: "6.5", r: "4.5" }), _jsx("path", { d: "m10 10 4 4" })] }));
|
|
186
|
+
}
|
|
187
|
+
function ChevronLeftIcon({ className }) {
|
|
188
|
+
return (_jsx("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: "m10 3-5 5 5 5" }) }));
|
|
189
|
+
}
|
|
190
|
+
function ChevronRightIcon({ className }) {
|
|
191
|
+
return (_jsx("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: "m6 3 5 5-5 5" }) }));
|
|
192
|
+
}
|
|
193
|
+
function AgentIcon({ className }) {
|
|
194
|
+
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: "3", y: "5", width: "10", height: "8", rx: "1.5" }), _jsx("path", { d: "M6 9h.01M10 9h.01", strokeWidth: "2" }), _jsx("path", { d: "M8 2v3" })] }));
|
|
195
|
+
}
|
|
196
|
+
function SkillIcon({ className }) {
|
|
197
|
+
return (_jsx("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: "M9 1.5 4 9h4l-1 5.5L12 7H8l1-5.5Z" }) }));
|
|
198
|
+
}
|
|
199
|
+
function McpServerIcon({ className }) {
|
|
200
|
+
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" })] }));
|
|
201
|
+
}
|
|
202
|
+
function WorkflowIcon({ className }) {
|
|
203
|
+
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("circle", { cx: "4", cy: "4", r: "2" }), _jsx("circle", { cx: "12", cy: "4", r: "2" }), _jsx("circle", { cx: "8", cy: "12", r: "2" }), _jsx("path", { d: "M4 6v2a2 2 0 0 0 2 2h4a2 2 0 0 0 2-2V6" })] }));
|
|
204
|
+
}
|
|
205
|
+
function DocumentIcon({ className }) {
|
|
206
|
+
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: "M9 1.5H5c-.6 0-1 .4-1 1v11c0 .6.4 1 1 1h6c.6 0 1-.4 1-1V5Z" }), _jsx("path", { d: "M9 1.5V5h3" })] }));
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=ResourceListView.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ResourceListView.js","sourceRoot":"","sources":["../../src/library/ResourceListView.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjE,OAAO,EAAE,EAAE,EAAE,MAAM,gBAAgB,CAAC;AAEpC,OAAO,EAAE,eAAe,EAAE,MAAM,qFAAqF,CAAC;AACtH,OAAO,EAAE,qBAAqB,EAAE,MAAM,wDAAwD,CAAC;AAC/F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAG5C,MAAM,WAAW,GAAG,GAAG,CAAC;AACxB,MAAM,cAAc,GAAG,CAAC,CAAC;AACzB,MAAM,gBAAgB,GAAG,CAAC,CAAC;AAoE3B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqDG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,KAAK,EACL,SAAS,EACT,KAAK,EACL,UAAU,EACV,UAAU,GAAG,CAAC,EACd,WAAW,GAAG,CAAC,EACf,cAAc,EACd,iBAAiB,GAAG,cAAc,EAClC,aAAa,GAAG,EAAE,EAClB,KAAK,EACL,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,SAAS,EACT,UAAU,GAAG,oBAAoB,EACjC,gBAAgB,GAAG,qCAAqC,EACxD,OAAO,EACP,SAAS,EACT,YAAY,EAAE,SAAS,GAAG,eAAe,GACnB;IACtB,MAAM,WAAW,GACf,CAAC,CAAC,cAAc,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC;IAC/D,MAAM,cAAc,GAAG,CAAC,CAAC,YAAY,IAAI,UAAU,GAAG,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC;IAEpC,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAEnC,+DAA+D;IAC/D,0DAA0D;IAC1D,MAAM,iBAAiB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IACjD,iBAAiB,CAAC,OAAO,GAAG,cAAc,CAAC;IAC3C,MAAM,eAAe,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC;IAC7C,eAAe,CAAC,OAAO,GAAG,YAAY,CAAC;IAEvC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,aAAa,CAAC,OAAO,GAAG,KAAK,CAAC;YAC9B,OAAO;QACT,CAAC;QACD,IAAI,CAAC,iBAAiB,CAAC,OAAO;YAAE,OAAO;QAEvC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YAC5B,iBAAiB,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,CAAC;YACxC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/B,CAAC,EAAE,WAAW,CAAC,CAAC;QAEhB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,uEAAuE;IACvE,MAAM,iBAAiB,GAAG,WAAW,CACnC,CAAC,QAA2B,EAAE,EAAE;QAC9B,aAAa,EAAE,CAAC,QAAQ,CAAC,CAAC;QAC1B,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,EACD,CAAC,aAAa,EAAE,YAAY,CAAC,CAC9B,CAAC;IAEF,uEAAuE;IACvE,oEAAoE;IACpE,8DAA8D;IAC9D,MAAM,QAAQ,GAAG,MAAM,CAA4B,EAAE,CAAC,CAAC;IAEvD,MAAM,iBAAiB,GAAG,WAAW,CACnC,CACE,CAAsC,EACtC,KAAa,EACb,IAAkB,EAClB,EAAE;QACF,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACvC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,WAAW,EAAE,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,WAAW,EAAE,CAAC;YACjC,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACnD,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,CAAC,CAAC,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAC9B,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,EAAE,EAAE,CAAC;oBACP,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAChB,EAAE,CAAC,KAAK,EAAE,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC/B,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACpC,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACnB,CAAC,CAAC,aAAa,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;gBAC9B,MAAM,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,EAAE,EAAE,CAAC;oBACP,EAAE,CAAC,QAAQ,GAAG,CAAC,CAAC;oBAChB,EAAE,CAAC,KAAK,EAAE,CAAC;gBACb,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAC5B,CAAC;IAEF,uEAAuE;IACvE,MAAM,aAAa,GAAG,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IACtD,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,SAAS,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC;IAC7D,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAEnC,OAAO,CACL,eAAK,SAAS,EAAE,EAAE,CAAC,qBAAqB,EAAE,SAAS,CAAC,aACjD,WAAW,IAAI,CACd,eAAK,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,yBAAyB,aACnD,cAAc,IAAI,CACjB,eAAK,SAAS,EAAC,iBAAiB,aAC9B,KAAC,UAAU,IAAC,SAAS,EAAC,qGAAqG,GAAG,EAC9H,gBACE,IAAI,EAAC,MAAM,EACX,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC9C,WAAW,EAAE,iBAAiB,gBAClB,iBAAiB,EAC7B,SAAS,EAAE,EAAE,CACX,8EAA8E,EAC9E,sCAAsC,EACtC,yEAAyE,CAC1E,GACD,IACE,CACP,EACA,KAAK,KAAK,SAAS,IAAI,aAAa,IAAI,CACvC,KAAC,WAAW,IAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,iBAAiB,GAAI,CAC3D,IACG,CACP,EAEA,aAAa,IAAI,KAAC,YAAY,KAAG,EAEjC,SAAS,IAAI,KAAC,UAAU,IAAC,OAAO,EAAE,KAAM,EAAE,OAAO,EAAE,OAAO,GAAI,EAE9D,SAAS,IAAI,CACZ,KAAC,UAAU,IACT,IAAI,EAAE,SAAS,EACf,KAAK,EAAE,UAAU,EACjB,WAAW,EAAE,gBAAgB,GAC7B,CACH,EAEA,SAAS,IAAI,CACZ,cACE,IAAI,EAAC,MAAM,gBACC,SAAS,eACV,SAAS,IAAI,SAAS,EACjC,SAAS,EAAE,EAAE,CACX,eAAe,EACf,SAAS;oBACP,mDAAmD,CACtD,YAEA,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;oBACzB,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAC3B,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CACxB,CAAC,CAAC,CAAC,CACF,KAAC,kBAAkB,IAAC,IAAI,EAAE,IAAI,GAAI,CACnC,CAAC;oBAEF,OAAO,CACL,cAA0C,IAAI,EAAC,UAAU,YACtD,aAAa,CAAC,CAAC,CAAC,CACf,cACE,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE;gCACV,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;4BAC/B,CAAC,EACD,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAC9B,OAAO,EAAE,GAAG,EAAE,CAAC,WAAY,CAAC,IAAI,CAAC,EACjC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,EACnD,SAAS,EAAE,EAAE,CACX,gDAAgD,EAChD,mCAAmC,EACnC,kGAAkG,CACnG,YAEA,OAAO,GACJ,CACP,CAAC,CAAC,CAAC,CACF,cAAK,SAAS,EAAC,aAAa,YAAE,OAAO,GAAO,CAC7C,IApBO,IAAI,CAAC,EAAE,IAAI,YAAY,KAAK,EAAE,CAqBlC,CACP,CAAC;gBACJ,CAAC,CAAC,GACE,CACP,EAEA,cAAc,IAAI,CACjB,KAAC,aAAa,IACZ,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAa,GAC3B,CACH,IACG,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,SAAS,kBAAkB,CAAC,EAAE,IAAI,EAAmC;IACnE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;IAE3C,OAAO,CACL,eAAK,SAAS,EAAC,wBAAwB,aACrC,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,CAAC,IAAI,GAAI,EAC7B,eAAK,SAAS,EAAC,gBAAgB,aAC7B,eAAK,SAAS,EAAC,yBAAyB,aACtC,eAAM,SAAS,EAAC,8CAA8C,YAC3D,WAAW,GACP,EACN,IAAI,CAAC,UAAU,KAAK,qBAAqB,CAAC,iBAAiB,IAAI,CAC9D,eAAM,SAAS,EAAC,0FAA0F,uBAEnG,CACR,IACG,EACN,eAAK,SAAS,EAAC,+DAA+D,aAC5E,eAAM,SAAS,EAAC,UAAU,YAAE,IAAI,CAAC,GAAG,GAAQ,EAC3C,IAAI,CAAC,WAAW,IAAI,CACnB,8BACE,eAAM,SAAS,EAAC,UAAU,iBAAa,MAAM,YAC1C,QAAQ,GACJ,EACP,eAAM,SAAS,EAAC,0CAA0C,YACvD,IAAI,CAAC,WAAW,GACZ,IACN,CACJ,IACG,EACL,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,eAAK,SAAS,EAAC,6BAA6B,aACzC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CACjD,eAEE,SAAS,EAAC,kEAAkE,YAE3E,GAAG,IAHC,GAAG,CAIH,CACR,CAAC,EACD,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,gBAAgB,IAAI,CACtC,gBAAM,SAAS,EAAC,sCAAsC,kBAClD,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,gBAAgB,aAChC,CACR,IACG,CACP,IACG,IACF,CACP,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,EAAE,IAAI,EAAsC;IAC5D,MAAM,GAAG,GAAG,+CAA+C,CAAC;IAE5D,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,eAAe,CAAC,KAAK;YACxB,OAAO,KAAC,SAAS,IAAC,SAAS,EAAE,GAAG,GAAI,CAAC;QACvC,KAAK,eAAe,CAAC,KAAK;YACxB,OAAO,KAAC,SAAS,IAAC,SAAS,EAAE,GAAG,GAAI,CAAC;QACvC,KAAK,eAAe,CAAC,UAAU;YAC7B,OAAO,KAAC,aAAa,IAAC,SAAS,EAAE,GAAG,GAAI,CAAC;QAC3C,KAAK,eAAe,CAAC,QAAQ;YAC3B,OAAO,KAAC,YAAY,IAAC,SAAS,EAAE,GAAG,GAAI,CAAC;QAC1C;YACE,OAAO,KAAC,YAAY,IAAC,SAAS,EAAE,GAAG,GAAI,CAAC;IAC5C,CAAC;AACH,CAAC;AAED,SAAS,YAAY;IACnB,MAAM,MAAM,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IAEpC,OAAO,CACL,2BAAe,MAAM,YAClB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAChD,eAEE,SAAS,EAAC,oCAAoC,iBAClC,MAAM,aAElB,cAAK,SAAS,EAAC,wDAAwD,GAAG,EAC1E,eAAK,SAAS,EAAC,kBAAkB,aAC/B,cACE,SAAS,EAAC,oCAAoC,EAC9C,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GACjC,EACF,cACE,SAAS,EAAC,oCAAoC,EAC9C,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GACtC,IACE,KAdD,CAAC,CAeF,CACP,CAAC,GACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,IAAI,EACJ,KAAK,EACL,WAAW,GAKZ;IACC,OAAO,CACL,eACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAC,mDAAmD,aAE5D,IAAI,IAAI,cAAK,SAAS,EAAC,0BAA0B,YAAE,IAAI,GAAO,EAC/D,YAAG,SAAS,EAAC,2CAA2C,YAAE,KAAK,GAAK,EACpE,YAAG,SAAS,EAAC,kCAAkC,YAAE,WAAW,GAAK,IAC7D,CACP,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,EAClB,OAAO,EACP,OAAO,GAIR;IACC,OAAO,CACL,eACE,IAAI,EAAC,OAAO,EACZ,SAAS,EAAC,mDAAmD,aAE7D,YAAG,SAAS,EAAC,0BAA0B,YAAE,OAAO,GAAK,EACpD,OAAO,IAAI,CACV,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,EAAE,CACX,qEAAqE,EACrE,mDAAmD,EACnD,8CAA8C,EAC9C,yEAAyE,CAC1E,sBAGM,CACV,IACG,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EACrB,WAAW,EACX,UAAU,EACV,UAAU,EACV,YAAY,GAMb;IACC,MAAM,cAAc,GAAG,EAAE,CACvB,2CAA2C,EAC3C,mDAAmD,EACnD,8CAA8C,EAC9C,yEAAyE,EACzE,kDAAkD,CACnD,CAAC;IAEF,OAAO,CACL,6BACa,YAAY,EACvB,SAAS,EAAC,+DAA+D,aAEzE,eAAM,SAAS,EAAC,+BAA+B,YAC5C,UAAU,KAAK,SAAS;oBACvB,GAAG,UAAU,CAAC,cAAc,EAAE,IAAI,UAAU,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,EAAE,GACxE,EACP,eAAK,SAAS,EAAC,yBAAyB,aACtC,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,GAAG,CAAC,CAAC,EAC5C,QAAQ,EAAE,WAAW,IAAI,CAAC,gBACf,eAAe,EAC1B,SAAS,EAAE,cAAc,YAEzB,KAAC,eAAe,IAAC,SAAS,EAAC,aAAa,GAAG,GACpC,EACT,gBAAM,SAAS,EAAC,+BAA+B,sBACvC,WAAW,UAAM,UAAU,IAC5B,EACP,iBACE,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,GAAG,CAAC,CAAC,EAC5C,QAAQ,EAAE,WAAW,IAAI,UAAU,gBACxB,WAAW,EACtB,SAAS,EAAE,cAAc,YAEzB,KAAC,gBAAgB,IAAC,SAAS,EAAC,aAAa,GAAG,GACrC,IACL,IACF,CACP,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,yDAAyD;AACzD,8EAA8E;AAE9E,SAAS,UAAU,CAAC,EAAE,SAAS,EAAmC;IAChE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,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,aAElB,iBAAQ,EAAE,EAAC,KAAK,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,KAAK,GAAG,EACpC,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,EAAE,SAAS,EAAmC;IACrE,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,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;AAED,SAAS,gBAAgB,CAAC,EAAE,SAAS,EAAmC;IACtE,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,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,cAAc,GAAG,GACrB,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAmC;IAC/D,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,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,aAElB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,GAAG,EACnD,eAAM,CAAC,EAAC,mBAAmB,EAAC,WAAW,EAAC,GAAG,GAAG,EAC9C,eAAM,CAAC,EAAC,QAAQ,GAAG,IACf,CACP,CAAC;AACJ,CAAC;AAED,SAAS,SAAS,CAAC,EAAE,SAAS,EAAmC;IAC/D,OAAO,CACL,cACE,SAAS,EAAE,SAAS,EACpB,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,mCAAmC,GAAG,GAC1C,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,SAAS,EAAmC;IACnE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,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,aAElB,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,eAAM,CAAC,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,GAAG,EACjD,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,KAAK,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,EACrE,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,MAAM,EAAC,CAAC,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,EAAC,MAAM,EAAC,MAAM,GAAG,IAClE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAmC;IAClE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,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,aAElB,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAG,EAC9B,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,GAAG,EAAC,CAAC,EAAC,GAAG,GAAG,EAC/B,iBAAQ,EAAE,EAAC,GAAG,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAG,EAC/B,eAAM,CAAC,EAAC,wCAAwC,GAAG,IAC/C,CACP,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,EAAE,SAAS,EAAmC;IAClE,OAAO,CACL,eACE,SAAS,EAAE,SAAS,EACpB,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,aAElB,eAAM,CAAC,EAAC,4DAA4D,GAAG,EACvE,eAAM,CAAC,EAAC,YAAY,GAAG,IACnB,CACP,CAAC;AACJ,CAAC"}
|